Итак. Немного скучновато самому раскуривать тему быстрого доступа к бирже. Готов поделится информацией, которой владею на данный момент, а также последующим опытом написания реального торгового робота на этой платформе. Но для этого мне нужны ваши палюсики и хотя бы какая то активность в комментариях. Я не сомневаюсь, что уже давно имеется много людей, которые разобрались в технологии и успешно торгуют, однако на Смартлабе по прежнему достаточно участников, которые спрашивают с чего стоит начать программировать роботов и просят предложить им «что то посерьезнее» чем готовые платные фреймворки, оснащенные всеми необходимыми средствами интеграции как в инфраструктуру биржи так и в инфраструктуру брокера.
Прошу обратить внимание, что подобная работа требует от вас достаточно хорошей подготовки в программировании, во всяком случае выше базовой, иначе рискуете довольно быстро застрять на первых же плохо документированных или ошибочно описаных функциях и инструкциях.
Вот ряд вопросов, ответы на которые вам нужно будет знать перед тем как начинать разработку своей торговой системы.
1) В чем отличие программных продуктов по типу TSLAb, StockSharp, LiveTradeHFT и прочих от голого софта без оболочки
2) Каким образом биржа пускает к себе внешние приложения, какова должна быть архитектура подобного взаимодействия по мнению биржи
3) Какую клиентскую часть/API для Плаза2 выбрать, их есть две ClientGate и СGate. Не смотря на похожие названия это разные вещи.
4) Как завести учетную запись на бирже, зачем нужна тестовая запись и когда можно будет пускать робота через торговую запись
5) Какой язык программирования выбрать для навписания приложения и где брать тестовые примеры и документацию по АПИ
В комментариях пишите какие еще вопросы вас интересуют по теме HFT, буду пристально обращать внимание на эти вопросы, буду пробовать разбираться в них и объяснять тут простым языком.
Интересно было бы узнать стек торгового робота. К примеру
1. На чем написано ядро робота
2. клиентская часть (MVC/WPF)
3. какая СУБД используется Microsoft SQL ?
4. используете ли Microsoft CEP
5. что вы там HFT'шники находите в стакане, хоть один пример.
6. Хотелось бы подробнее про эту схему, актуальна ли она, и схему hft на Российском рынке )
1) Ядро робота предпочтительно на С++, менее предпочтительно С# или Java. Мой выбор C# в угоду удобству.
2) Консольное приложение, внутренняя организация кода объектная.
3) Никакой СУБД в ядре, а так любая
4) Код должен быть кроссплатформенным, на Microsoft не ориентируюсь
5) В стакане ищутся крупные заявки, которые тормозят движение цены в одну из сторон. В какую сторону тормозят против того движения и засовываем свою заявку.
6) Схема очень общая, но как минимум не включает транспортную инфраструктуру, а это поважнее будет некоторых блочков.
ну и парочка вопросов от любопытного нуба
Прямое подключение, максимально оптимизированный алгоритм + сервер в локальной сети биржи это уже хфт, или хфт это нечто большее?
Как высока частота дискретизации времени, с которой биржа обрабатывает заявки, 1мс или гораздо глубже?
На сколько микро\миллисекунд я должен опаздывать, чтобы гарантированно не успевать за конкурентами?
На тестовом полигоне же, я никогда не видел задержки меньше 16 мс.
Задержку я считаю, от момента исполнения POST в приложении до получения ответа в коллбэк своего робота.
вопрос, если у меня из дома до брокера пинг порядка 5мс,
есть ли шанс что из дома до биржи будет пинг пошустрее?
я пробовал пинговать 91.208.232.246 (нашел где-то в интернетах) — он не возвращает ответ.
до ближайшего к нему xxx.MACcomnet.net порядка 3 мсек.
как достичь пинга 1мс без колокейшена? у меня до роутера домашнего 1 мс…
Это две разные библиотеки об одном и том же.
CGate больше подходит для любителей всяких Си и линуксов, а ClientGate для Дельфи/C# и виндовса?
И разницы в скорости, логике потоков и таблиц у них нет?
Это потому, что тема почти не масштабируется. Если HFT робот даёт надёжную прибыль при выставлении заявок в 1 лот, это не гарантирует прибыль при заявках в 100 лотов и даже при 10.
Если имеешь хороший грааль (а они есть, см. ЛЧИ) то можно хорошо рубить и при 100к и 200к депозита. Хорошо это от 10к в день.
А вообще отгонять народ от плазы это для правильных людей гуд! Денег вначале надо не мало.
4000р за логин, +4000р если нужен ордер лог и ещё раз и то и то за подключение единовременно. + НДС + ещё брокер своё накручивает + за хостнг, если хош нормальный пинг. moex.com/s324#gateway
А если хочешь в сетку биржи свой комп, то просто за место для него там 10000р/мес + интернет там 2000р/мес(1мbit, 10м->15к). + 1000р за ip-адрес. moex.com/a1374.
Но это всё копейки. Потому, как комп того форм-фактора, что они требуют(1U) стоит от 80000. www.wit.ru/equipment/server/server-Intel-1cpu-e3-1u-hotswap.asp
И биржа ещё не малые бабки возьмёт за установку и конфигурирование всего этого, даже если всё и так настроено.
Так шо, если нет рабочего, проверенного алгоритма, лучше не соваться. Вариант, «щас не пашет потому что скорость мала. а на плазе пойдёт» не прокатит!