Избранное трейдера chuikapridi
Если говорить образно. То, чтобы отправить сообщение на сервер, нам просто нужно сформировать нужную строку со всеми данными и отправить ее на биржу. Ну например:
8=FIX.4.4;9=78;35=A;49=FG;56=tgFhcfx901U05;34=1;52=20160212-11:42:51.812;98=0;108=3000;141=Y;10=047;
Если быть внимательным, то мы увидим, что кол-во символов в строке у нас 100, а в заголовке сообщения мы передаем, что 78 (9 = 78). По правилам протокола FIX, длину сообщения нужно считать без учета концовки и первых двух полей заголовка. А именно:
С длиной сообщения разобрались. Теперь про разделитель. Пока в моем скрине это ";". В документациях западных написано что это символ SOH. Чтобы однозначно ответить на этот вопрос, я запустил прилагаемого клиента биржи и сниффером стал перехватывать сообщения между клиентом и биржей. Кстати, программа ведет логи, и их общение выглядит так (зеленое — передача запроса на биржу, красное — ответ от биржи)://Получаем ip сервера
IPAddress ipAddr = IPAddress.Parse(server);
IPEndPoint ipEndPoint = new IPEndPoint(ipAddr, port);
//Создаем заголовк
HeaderMessage msHeader = new HeaderMessage
{
BeginString = «FIX.4.4»,
MsgType = «A», //Тип сообщения на установку сессии
SenderCompID = "",
TargetCompID = «FG»,
MsgSeqNum = 1
};
//Создаем сообщение на подключение onLogon
LogonMessage msLogon = new LogonMessage
{
EncryptMethod = 0,
HeartBtInt = 3000,
ResetSeqNumFlag = true
};//Вычисляем длину сообщения
msHeader.BodyLength = msHeader.GetHeaderSize() + msLogon.GetMessageSize();
//Создаем концовку сообщения
TrailerMessage msTrailer = new TrailerMessage(msHeader.ToString() + msLogon.ToString());//Формируем полное готовое сообщение
string fullMessage = msHeader.ToString() + msLogon.ToString() + msTrailer.ToString();
Console.WriteLine(«Сообщение для отправки {0}»,fullMessage);//Создаем сокет для подключения
sSender = new Socket(ipAddr.AddressFamily, SocketType.Stream, ProtocolType.Tcp);
//Подключаемся
sSender.Connect(ipEndPoint);
Console.WriteLine(«Сокет соединился с {0} », sSender.RemoteEndPoint.ToString());
byte[] msg = Encoding.UTF8.GetBytes(fullMessage);
//Отправляем сообщение
int bytesSent = sSender.Send(msg);
Console.WriteLine(«Отправил {0} байт», bytesSent.ToString());
//Получаем ответ от сервера
byte[] bytes = new byte[1024];
int bytesRec = 0;
bytesRec = sSender.Receive(bytes);
Console.WriteLine(«Ответ от сервера: {0}», Encoding.UTF8.GetString(bytes, 0, bytesRec));
Пост о том, что нужно знать алготрейдеру — программисту Си Шарп. Какими базовыми знаниями надо обладать для того чтобы писать Роботов в СтокШарп / ВелсЛаб / ТсЛаб Api / SmartCom Api. Это не про кубико-трейдинг. Это про программирование.
Пост полезен в первую очередь трейдерам начинающим свой путь в алго, как дорожная карта. Чтобы не возникало желания изучать SmartCom Api на следующий день после изучения базовых типов данных.
Это вторая часть из серии статей Си Шарп Алго. Начало здесь.
План статьи:
1) Кто такой программист
2) Проба сил
3) Базовые знания языка
4) Продвинутые знания
5) Заключение
Недавно столкнулся с таким феноменом — про язык программирования R слышали многие. Но знают что это такое очень мало людей.
Поскольку являюсь носителем этого языка и заинтересован в его популяризации, попытаюсь немного раскрыть тему в этом посте. Будет интересно!
План простой:
1) Что такое язык R
2) Популярность в России
Что такое язык RR (вики) — язык программирования для статистической обработки данных и работы с графикой, а также свободная программная среда вычислений с открытым исходным кодом в рамках проекта GNU.
По нашему: Язык идеально подходящий для поиска рыночных закономерностей. Бесплатный, быстрый и свободный.
Он позволяет вести статистические исследования всего до чего могут дотянуться руки. За годы его существования появились десятки и сотни расширений для решения практически любых прикладных задач.
Всем привет!
Думаю с большинством пользователей Smart-lab мы уже знакомы, но для тех, кто меня видит впервые, хочу представиться, меня зовут Алексей Марков и я торгую на американском рынке уже достаточно давно и веду онлайн трансляцию для трейдеров.
Хочу поздравить вас с прошедшими праздниками и пожелать успехов в торговле, наверное уже все успели соскучиться по трейдингу, надеюсь все закупились долларами! Год обещает быть интересным.
В новом году, буду вести здесь свой блог и разбирать самые актуальные темы, если будет нравится, то выпуски будут выходить чаще.
Ниже представлены лучшие материалы за прошлый год.6 больших лекций по паттернам
Все лучшие сайты по трейдингу на NYSE
« Голос истины неизящен, а изящная речь лжива. Нравственный человек не красноречив, а красноречивый — лжец»
Лао-Цзы
В книге Новые измерения. Билла Вильямса, даётся трендовая стратегия, которая при минимальных изменениях может торговаться на российской бирже. Эта книга — склад Граалей. В ней есть адаптивный к волатильности вход на пробое, пирамидинг по тренду, бесконечное удержание позиции по тренду. Три столпа алгоритмиста-трендовика которые изменят Вашу жизнь навсегда. Всё это дано на уровне полного описания действий, как в блок-схеме.