Блог им. mariodo
Добрый день!
Интересует, каким образом компании, занимающиеся алготрейдингом, обеспечивают быструю скорость обработки своих ордеров?
На данный момент наткнулся на проблему масштабирования (есть 1 стратегия и 200 аккаунтов).
Задача: произвести одновременный вход по всем аккаунтам (т.е должны зайти в одно время, по одной цене) <= небольшое отклонение допускаю в силу ограниченной пропускной способности стакана в моменте.
Начал упираться в железо (либо, уход на более низкие языки программирования) и получается так, что, если масштабировать систему до 100 / 200 / 300 и т.д аккаунтов — стоимость железа увеличивается на безумные суммы.
(работаю с крипто-биржами).
Хочу понять, как в традиционных финансах реализована техническая сторона алготрейдинга, какое железо используется, какие метрики по итогу есть.
Буду признателен, если кто-то поделится личным опытом или полезными ссылками на эту тему.
www.theguardian.com/business/2014/jun/07/inside-murky-world-high-frequency-trading
filmitorrentom.org/thriller/operaciya_kolibri_2018_skachat_torrent
Чтобы быть ближе к бирже насколько это возможно, достаточно арендовать 10-баксовый VPS в облаке Amazon.
10 баксовый дает ужасающее время исполнения из-за тупости пересчета котировок роботами в момент повышенной волатильности рынка.
Устриц ел ©
Вот это из лога терминала- время исполнения:
2019.09.09 15:05:47.076 Trades 'XXXXXX': order #108962573 sell limit 6.00 / 6.00 BR-10.19 at 62.15 done in 9.997 ms
А это пинг:
2019.09.09 14:39:33.392 Network 'ХХХХХХ': ping to current access point Access Server IX is 3.02 ms [next point Access Server VI is 3.00 ms]
Так вот у ВПС от Амазон, разница между пинг и исполнением будет не 3 раза, а 30. Или 300.Я понял, вы под «временем исполнения» подразумеваете раундтрип + время необходимое бирже для исполнения вашей заявки. Тут действительно, чем дольше пинг тем дольше «время исполнения» (в вашей терминологии). Но если заметили, в посте речь идёт о криптобиржах, большинство из них используют облачные мощности того же Amazon (европейские, японские, американские) или Alibaba Cloud, Huawei Cloud (китайские и гонконгские), и пинг с арендованной 10-баксовой впски до «биржи» часто бывает даже меньше 1ms.
вопрос не в пинге, а в скорости обработки информации и выдаче ордеров терминалом, установленным на маломощный ВПС с разделением ресурсов.
По моему опыту работы с MOEX с терминала, размещенного в Amazon, достичь приемлемого времени исполнения не получилось.
Про криптобиржу ничего не скажу, информацией не владею и не интересуюсь.
Если вы торгуете на MOEX и достичь приемлемого времени не получилось — то это именно потому, что пинг слишком высокий. Сервера MOEX в Москве, а ближайшая точка присутствия Amazon — в Ирландии например. Или вы вообще не задавались таким вопросом, как регион размещения ВПС и по умолчанию подняли её в Америке. Вот ваш пинг вырос с 3 мс до 300.
а я отвечаю вам, а не топикстартеру.
И отвечаю вам на ваш комментарий, что ВПС от Амазон за 10 USD решает.
Так вот ДЕШЕВЫЙ ВПС от Амазон или от любого другого провайдера не решает и совсем не из-за пинга, а из-за недостатка вычислительной мощности.
а какая вычислительная мощность требуется для отправки готового ордера на биржу, по вашему? ))
Ilya, если задача состоит в одновременном выставлении ордеров то должно за глаза хватать.
Вот мое утверждение. Вы с ним не согласны чтоли?
www.chitai-gorod.ru/catalog/book/812435/?watch_fromlist=
Про какую биржу идет речь?
Сделайте, чтобы одним ордером занимался один поток. Также учтите, что там есть Rate Limit на кол-во запросов к бирже с одного IP. Поэтому вам надо дробить коннекты по разным адресам либо договариваться с биржей.