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

Продолжаем учиться делать «Источники» для OsEngine. Источники – классы, дающие уникальную функциональность для торговых роботов.Сегодня поговорим про общую логику работы источников в терминале. 1. Источники как доступ к группированным данным.Если смотреть на данные доступные с биржи совсем сверху, то источники являются классами «преобразования» чистых рыночных данных. Источники дают расширенный функционал к тому, что уже есть на рынке, или преобразуют эти данные в совершенно новые формы:  Вспомним текущие источники:BotTabSimple (Текст. Видео.) – базовый и самый большой источник данных OsEngine. Позволяет получать информацию по какой-то одной бумаге и проводить по ней торговые операции. На нем основаны все остальные источники.BotTabIndex (  Текст. Видео. ) – источник для создания своих кастомных индексов, группированных и взвешенных определённым образом данных по разным бумагам вместе.BotTabPair ( Текст. Видео. ) – источник для торговли парами инструментов.BotTabScreener ( Текст. Видео. ) – источник для торговли неограниченным набором инструментов. Десятком или Сотней. Логика источника заточена под обработку данных по разным инструментам с помощью одного кода.BotTabPolygon (Текст. Видео. ) – источник для торговли валютным (треугольным) арбитражем.BotTabCluster (Текст. Видео. ) – источник для торговли на основе горизонтальных объёмов. 2. Роботы и источники.Если смотреть со стороны робота, то для него это классы, которые дают ему определённого рода функциональность: Робот создаёт источники при помощи метода TabCreate и после этого может обращаться к определённому типу источника, запрашивая данные, выставляя заявки, подписываясь на события.Функциональность по развёртыванию источников реализует в себе класс BotPanel (родитель любого робота в OsEngine). 3. Как источник получает данные с рынка.Источники как-то должны подписываться на события, происходящие в сервере, подключённом к торгам. Для этого на данный момент они используют класс CandleConnector. Все данные проходят через него: CandleConnector – класс, реализующий подписку на данные сервера. Через него в источники идут все данные, которые генерируются на стороне биржи.ServerMaster – класс, разворачивающий и хранящий в себе коннекторы к биржам.Все данные передаются в CandleConnector. Все запросы к серверам идут через CandleConnector.BotTabSimple – на прямую создаёт в себе экземпляр CandleConnector и обращается к нему.BotTabIndex – на прямую создаёт в себе экземпляр CandleConnector и обращается к нему.BotTabPairs – внутри себя имеет массив источников BotTabSimple, которые уже в свою очередь создают в себе CandleConnector.BotTabScreeners – внутри себя имеет массив источников BotTabSimple, которые уже в свою очередь создают в себе CandleConnector.BotTabPolygon – внутри себя имеет массив источников BotTabSimple, которые уже в свою очередь создают в себе CandleConnector.BotTabCluster – внутри себя имеет массив источников BotTabSimple, которые уже в свою очередь создают в себе CandleConnector. ВАЖНО!!!Несмотря на то, что на данный момент CandleConnector является единственным способом общения источников с серверами, он не обязателен для этого. Вполне возможно создавать свои Connector сразу. Например, в конце данной серии статей мы будем с Вами создавать источник BotTabNews и сделаем для него свой класс для подписки на сервера данных. 4. Проброс данных из Сервера в Робота и обратно.И, возвращаясь к торговым роботам, для них (роботов) общение с биржей выглядит так: Красное – поток данных с биржи.Синее – поток заявок, отправляющихся на биржу.Удачных алгоритмов!Оглавление данной серии статей здесь.Комментарии открыты для друзей!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

Мар 11, 2025 - 16:47
 0
Общая логика взаимодействия. Источники робота 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