Продолжаем разговаривать про класс, предоставляющий данные для источников в OsEngine. А именно про класс ConnectorCandles. И в данной статье поговорим о его коде. Что там есть.

Сам класс находится в проекте вот здесь:

0. Регионы в классе.

1) Сервисный код.
2) Настройки и свойства.
3) Настройки для серии свечных данных.
4) Подписка на данные. По данному региону будет(есть) отдельная статья.
5) Входящие данные.
6) Доступ к информации о торгах.
7) Ордера. Выставление, снятие.
8) Исходящие события.
9) Логирование работы.
1. Service Code.
1) Конструктор класса.
2) Программа, которая запускает класс. Тестер / Реал / Оптимизатор.
3) Блок кода, отвечающий за сохранение/загрузку/удаление настроек.
4) Вызов окна настроек.
2. Settings and properties.
1) Уникальное имя, заданное при создании объекта.
2) Сервер, к которому подключен класс. Сам сервер, его тип и его уникальный номер. ServerUid используется в Оптимизаторе.
3) Подписались ли мы на обновление свечей?
4) Можно ли уже выставлять заявки в торговую систему?
5) Название портфеля и доступ к классу портфель.
6) Название и класс бумаги, а также доступ к классу бумаги, обслуживаемой в рамках класса.
7) Поддерживает ли данный коннектор маркет ордера.
8) Эмулятор сделок внутри платформы. Вкл/выкл + сам класс эмулятора.
9) Исходящие события. Вкл/выкл
10) Тип и размер комиссии за каждую сделку.
3. Candle series settings.
1) Хранение серии свечных данных.
2) Класс, отвечающий за сохранение настроек типа свечей, который будет формироваться.
3) Тип взятия цены для формирования свечи. Стакан или трейды.
4) Тип свечи.
5) Таймфрейм, создаваемой серии данных, для типа свечей Simple.
6) Таймфрейм в формате отрезка времени. TimeSpan.
7) Период для типа свечей Delta.
8) Кол-во пунктов для закрытия свечи типа Renco.
9) Нужно ли строить тени у свечей типа Renco.
10) Кол-во пунктов для закрытия свечи по минимальному движению. Тип: Range.
11) Движение для закрытия свечи типа Revers.
12) Движение в обратную сторону для закрытия свечи типа Revers.
13) Нужно ли сохранять трейды в свече.
14) Нужно ли прорисовываеть временные пустоты между свечками.
15) Количество трейдов в свече, которая закрывается по кол-ву трейдов. Тип: Ticks
16) Объём для закрытия свечи, которая закрывается по объёму. Тип: Volume.
4. Data subscription.
1) Базовый способ запросить переподключение к серверу.
2) Жёсткое, мгновенное переподключение.
3) Метод подписки на данные сервера. В нём происходит основная работа класса.
4) Метод для подписки на события сервера.
5) Метод для отписки от событий сервера.
6) Сервер сигнализирует о том, что нужно переподключиться. Вызывается в случае обрыва соединения.
5. Incoming data.
1) Событие от тестового сервера, говорящего о том, что тестирование окончено.
2) Время последней завершённой свечи из серии свечек.
3) В серии данных завершила формирование свеча.
4) В серии свечек обновилась свеча.
5) Новый ордер из сервера.
6) Новые трейд по нашему портфелю из сервера.
7) Обновился бид и аск.
8) Обновился стакан по подписанной у сервера бумаге.
9) Обновились трейды у сервера.
10) Изменилось время сервера.
6. Trade data access interface.
1) Взять ленту сделок у сервера по инструменту, на который мы подписаны.
2) Взять свечи по инструменту, на которые подписан класс.
3) Взять цену лучшей продажи по инструменту.
4) Взять цену лучшей покупки по инструменту.
5) Взять текущее время сервера.
7. Orders.

1) Исполнить ордер.
2) Отменить ордер.
3) Сервисное событие для работы эмулятора исполнения ордеров.
4) Сервисный метод хранения ордеров.
8. Events.
1) Обновился ордер в сервере.
2) Завершилась свеча.
3) Обновилась свеча.
4) Обновился стакан. АХАХАХА!!! GlassChangeEvent! Я писал это 11 лет назад в институте для дипломной работы! Оставим для потомков.
5) Обновился трейд по портфелю.
6) Обновилась лента сделок по инструменту.
7) Обновился бид с аском.
8) Событие завершения тестирования.
9) Изменилось время сервера.
10) Коннектор запрашивает переподключение.
11) Бумага успешно подписана на получение свечей и стакана.
Удачных алгоритмов!
Пост из серии «Коннекторы к OsEngine»
Серия о том, как стать настоящим программистом и изменить свою профессию.
Оглавление и смыслы здесь: https://smart-lab.ru/company/os_engine/blog/959953.php
Комментарии открыты для друзей, добавляйтесь!
OsEngine: https://github.com/AlexWan/OsEngine
FAQ: https://o-s-a.net/os-engine-faq
Поддержка OsEngine: https://t.me/osengine_official_support
Курилка, общаемся здесь: https://t.me/o_s_a_chat
Регистрируйся в АЛОР и получай бонусы: https://www.alorbroker.ru/open
Сайт АЛОР БРОКЕР: https://www.alorbroker.ru
Раздел «Для клиентов»: https://www.alorbroker.ru/openinfo/for-clients
Подробнее https://smart-lab.ru/compan...







