Изображение блога
OS_Engine_team
OS_Engine_team Блог компании Os_Engine
11 марта 2025, 18:21

Общая логика взаимодействия. Источники робота OsEngine #2

Продолжаем учиться делать «Источники» для OsEngine. Источники – классы, дающие уникальную функциональность для торговых роботов.

Сегодня поговорим про общую логику работы источников в терминале.

Общая логика взаимодействия. Источники робота OsEngine #2 

1. Источники как доступ к группированным данным.

Если смотреть на данные доступные с биржи совсем сверху, то источники являются классами «преобразования» чистых рыночных данных. Источники дают расширенный функционал к тому, что уже есть на рынке, или преобразуют эти данные в совершенно новые формы:

Общая логика взаимодействия. Источники робота OsEngine #2 

Вспомним текущие источники:

  1. BotTabSimple (Текст. Видео.) – базовый и самый большой источник данных OsEngine. Позволяет получать информацию по какой-то одной бумаге и проводить по ней торговые операции. На нем основаны все остальные источники.
  2. BotTabIndex (  Текст. Видео. ) – источник для создания своих кастомных индексов, группированных и взвешенных определённым образом данных по разным бумагам вместе.
  3. BotTabPair ( Текст. Видео. ) – источник для торговли парами инструментов.
  4. BotTabScreener ( Текст. Видео. ) – источник для торговли неограниченным набором инструментов. Десятком или Сотней. Логика источника заточена под обработку данных по разным инструментам с помощью одного кода.
  5. BotTabPolygon (Текст. Видео. ) – источник для торговли валютным (треугольным) арбитражем.
  6. BotTabCluster (Текст. Видео. ) – источник для торговли на основе горизонтальных объёмов.


2. Роботы и источники.

Если смотреть со стороны робота, то для него это классы, которые дают ему определённого рода функциональность:

Общая логика взаимодействия. Источники робота OsEngine #2 

  1. Робот создаёт источники при помощи метода TabCreate и после этого может обращаться к определённому типу источника, запрашивая данные, выставляя заявки, подписываясь на события.
  2. Функциональность по развёртыванию источников реализует в себе класс BotPanel (родитель любого робота в OsEngine).

 

3. Как источник получает данные с рынка.

Источники как-то должны подписываться на события, происходящие в сервере, подключённом к торгам. Для этого на данный момент они используют класс CandleConnector. Все данные проходят через него:

Общая логика взаимодействия. Источники робота OsEngine #2 

  1. CandleConnector – класс, реализующий подписку на данные сервера. Через него в источники идут все данные, которые генерируются на стороне биржи.
  2. ServerMaster – класс, разворачивающий и хранящий в себе коннекторы к биржам.
  3. Все данные передаются в CandleConnector. Все запросы к серверам идут через CandleConnector.
  4. BotTabSimple – на прямую создаёт в себе экземпляр CandleConnector и обращается к нему.
  5. BotTabIndex – на прямую создаёт в себе экземпляр CandleConnector и обращается к нему.
  6. BotTabPairs – внутри себя имеет массив источников BotTabSimple, которые уже в свою очередь создают в себе CandleConnector.
  7. BotTabScreeners – внутри себя имеет массив источников BotTabSimple, которые уже в свою очередь создают в себе CandleConnector.
  8. BotTabPolygon – внутри себя имеет массив источников BotTabSimple, которые уже в свою очередь создают в себе CandleConnector.
  9. BotTabCluster – внутри себя имеет массив источников BotTabSimple, которые уже в свою очередь создают в себе CandleConnector.


ВАЖНО!!!

Несмотря на то, что на данный момент CandleConnector является единственным способом общения источников с серверами, он не обязателен для этого. Вполне возможно создавать свои Connector сразу. Например, в конце данной серии статей мы будем с Вами создавать источник BotTabNews и сделаем для него свой класс для подписки на сервера данных.

 

4. Проброс данных из Сервера в Робота и обратно.

И, возвращаясь к торговым роботам, для них (роботов) общение с биржей выглядит так:

Общая логика взаимодействия. Источники робота OsEngine #2 

  1. Красное – поток данных с биржи.
  2. Синее – поток заявок, отправляющихся на биржу.

Удачных алгоритмов!

Оглавление данной серии статей здесь.

Комментарии открыты для друзей!

Общая логика взаимодействия. Источники робота OsEngine #2

OsEngine: https://github.com/AlexWan/OsEngine
Поддержка OsEngine: https://t.me/osengine_official_support

Регистрируйся в АЛОР и получай бонусы: https://www.alorbroker.ru/open
Сайт АЛОР БРОКЕР: https://www.alorbroker.ru
Раздел «Для клиентов»: https://www.alorbroker.ru/openinfo/for-clients
Программа лояльности от АЛОР БРОКЕР и OsEngine: https://smart-lab.ru/company/os_engine/blog/972745.php

Общая логика взаимодействия. Источники робота OsEngine #2

0 Комментариев

Активные форумы
Что сейчас обсуждают

Старый дизайн
Старый
дизайн