Сколько стоит коннектор к бирже.

Наконец допилил модель автоматической торговой системы (ТС) на Python, все вполне устраивает. Реализация, естественно, планируется тоже на Python. Вопрос стал только за выбором коннектора к бирже — дальше не вопрос. Тут мы и приехали. Пару лет назад пробовал Python коннектор от Unicorn — открытый код и все такое. Очень, уж, подробно не рассматривал, все что нужно есть, неплохо работает, понравился. Естественно, и сейчас этот коннектор скачал, попытался приконнектиться к бирже: и так его, и этак — не работает. Оказалось, теперь он платный, лицензия — 10$/месяц или 100$/год. Вроде, код открытый — смотри, пробуй — не, лицензия так вшита, что, по крайней мере, быстро не выковыришь. Не беда, на GitHub несколько бесплатных есть. Скачиваю — смотрю код — там, то DLL непонятного назначения, то сделано криво. Попался один бесплатный, вроде, даже ничего, от известного разработчика (чтобы не рекламировать, называть не буду). Поставил на комп, попробовал, вроде коннектится, все что нужно делает, сделан на основе известных библиотек — вроде никаких подводных камней. Начал смотреть код (код открытый) — мама родная — понакручено, чтобы дойти до самого коннекта, одна функция вызывает другую, та третью и т.д. И так везде. Там и другие странные вещи сделаны. Ну, и результат — все работает с большими задержками. Не подвисает, т.к. никакой нагрузки еще нет, но все уже оч медленно. Ну, медленно, это миллисекунды, но уже даже визуально это видно, и если нагрузить это индикаторами и ТС, то коннектор просто встанет. Приужахнулся, и на пару недель все встало. А чего делать-то? И решил я, таки, написать свой коннектор к бирже на Python. Ну, очень не хотелось, но, все-таки сел за это дело. В итоге, заняло все это 3 дня. Три дня, Карл! Вся функциональность есть, коннектор летает, задержки наносекунды. Измерял — 60-70 нс. Итак, что мы имеем: 1. Самоподдерживающийся коннект с биржей. 2. Историю 1м любой глубины. 3. Обновление 1м свечей через каждые 0.2 с. 4. Буферизованную реал-тайм таблицу сделок с произвольным доступом к буферу. 5. Реал-тайм буферизованные данные по стакану с произвольным доступом к буферу. Биржа еще много всяких данных передает, и это все можно легко получить, но это пока не нужно, и за ненадобностью я этим не занимался. Понятно, можно посылать и контролировать заявки, данные по счету и пр. Если кто знает «советник» МТ5, то вся функциональность этого «советника» уже присутствует в этом коннекторе. Ничего больше не нужно. Кроме того, коннектор еще и асинхронный и поддерживает многопоточность, чего в МТ5 по жизни никогда не было. У меня знакомый работает с OS Engine и ему, вроде, это даже нравится. Он говорит, что А.Ван доведет до ума эту Энжину примерно через год. Я и подумал, что если мой коннектор попробовать приконнектить через Lua к Квик. Оказалось, вполне элементарно, только немного скриптов Lua написать, ну и типы рыночных данных под Квик поменять. Вопрос пары вечеров. Естественно, предложил этот вариант знакомому, однако он отказался — будет еще год допиленную Энжину ждать (про Энжину я ничего не знаю, только передаю некое мнение). Ну, как-то так получилось с коннектором.

Мар 12, 2025 - 14:57
 0
Сколько стоит коннектор к бирже.
Наконец допилил модель автоматической торговой системы (ТС) на Python, все вполне устраивает. Реализация, естественно, планируется тоже на Python. Вопрос стал только за выбором коннектора к бирже — дальше не вопрос. Тут мы и приехали.
Пару лет назад пробовал Python коннектор от Unicorn — открытый код и все такое. Очень, уж, подробно не рассматривал, все что нужно есть, неплохо работает, понравился. Естественно, и сейчас этот коннектор скачал, попытался приконнектиться к бирже: и так его, и этак — не работает. Оказалось, теперь он платный, лицензия — 10$/месяц или 100$/год. Вроде, код открытый — смотри, пробуй — не, лицензия так вшита, что, по крайней мере, быстро не выковыришь.
Не беда, на GitHub несколько бесплатных есть. Скачиваю — смотрю код — там, то DLL непонятного назначения, то сделано криво. Попался один бесплатный, вроде, даже ничего, от известного разработчика (чтобы не рекламировать, называть не буду). Поставил на комп, попробовал, вроде коннектится, все что нужно делает, сделан на основе известных библиотек — вроде никаких подводных камней. Начал смотреть код (код открытый) — мама родная — понакручено, чтобы дойти до самого коннекта, одна функция вызывает другую, та третью и т.д. И так везде. Там и другие странные вещи сделаны. Ну, и результат — все работает с большими задержками. Не подвисает, т.к. никакой нагрузки еще нет, но все уже оч медленно. Ну, медленно, это миллисекунды, но уже даже визуально это видно, и если нагрузить это индикаторами и ТС, то коннектор просто встанет.
Приужахнулся, и на пару недель все встало. А чего делать-то?
И решил я, таки, написать свой коннектор к бирже на Python. Ну, очень не хотелось, но, все-таки сел за это дело.
В итоге, заняло все это 3 дня. Три дня, Карл! Вся функциональность есть, коннектор летает, задержки наносекунды. Измерял — 60-70 нс.
Итак, что мы имеем:
1. Самоподдерживающийся коннект с биржей.
2. Историю 1м любой глубины.
3. Обновление 1м свечей через каждые 0.2 с.
4. Буферизованную реал-тайм таблицу сделок с произвольным доступом к буферу.
5. Реал-тайм буферизованные данные по стакану с произвольным доступом к буферу.
Биржа еще много всяких данных передает, и это все можно легко получить, но это пока не нужно, и за ненадобностью я этим не занимался.
Понятно, можно посылать и контролировать заявки, данные по счету и пр.
Если кто знает «советник» МТ5, то вся функциональность этого «советника» уже присутствует в этом коннекторе. Ничего больше не нужно. Кроме того, коннектор еще и асинхронный и поддерживает многопоточность, чего в МТ5 по жизни никогда не было.

У меня знакомый работает с OS Engine и ему, вроде, это даже нравится. Он говорит, что А.Ван доведет до ума эту Энжину примерно через год. Я и подумал, что если мой коннектор попробовать приконнектить через Lua к Квик. Оказалось, вполне элементарно, только немного скриптов Lua написать, ну и типы рыночных данных под Квик поменять. Вопрос пары вечеров. Естественно, предложил этот вариант знакомому, однако он отказался — будет еще год допиленную Энжину ждать (про Энжину я ничего не знаю, только передаю некое мнение).
Ну, как-то так получилось с коннектором.