Продолжаем разговаривать про класс, предоставляющий данные для источников в OsEngine. А именно про класс ConnectorCandles. И в данной статье поговорим о его коде. Что там есть.
Сам класс находится в проекте вот здесь:
1) Сервисный код.
2) Настройки и свойства.
3) Настройки для серии свечных данных.
4) Подписка на данные. По данному региону будет(есть) отдельная статья.
5) Входящие данные.
6) Доступ к информации о торгах.
7) Ордера. Выставление, снятие.
8) Исходящие события.
9) Логирование работы.
1) Конструктор класса.
2) Программа, которая запускает класс. Тестер / Реал / Оптимизатор.
3) Блок кода, отвечающий за сохранение/загрузку/удаление настроек.
4) Вызов окна настроек.
1) Уникальное имя, заданное при создании объекта.
2) Сервер, к которому подключен класс. Сам сервер, его тип и его уникальный номер. ServerUid используется в Оптимизаторе.
3) Подписались ли мы на обновление свечей?
4) Можно ли уже выставлять заявки в торговую систему?
5) Название портфеля и доступ к классу портфель.
6) Название и класс бумаги, а также доступ к классу бумаги, обслуживаемой в рамках класса.
7) Поддерживает ли данный коннектор маркет ордера.
8) Эмулятор сделок внутри платформы. Вкл/выкл + сам класс эмулятора.
9) Исходящие события. Вкл/выкл
10) Тип и размер комиссии за каждую сделку.
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.
1) Базовый способ запросить переподключение к серверу.
2) Жёсткое, мгновенное переподключение.
3) Метод подписки на данные сервера. В нём происходит основная работа класса.
4) Метод для отписки от событий сервера.
5) Метод для подписки на события сервера.
6) Сервер сигнализирует о том, что нужно переподключиться. Вызывается в случае обрыва соединения.
1) Событие от тестового сервера, говорящего о том, что тестирование окончено.
2) Время последней завершённой свечи из серии свечек.
3) В серии данных завершила формирование свеча.
4) В серии свечек обновилась свеча.
5) Новый ордер из сервера.
6) Новые трейд по нашему портфелю из сервера.
7) Обновился бид и аск.
8) Обновился стакан по подписанной у сервера бумаге.
9) Обновились трейды у сервера.
10) Изменилось время сервера.
1) Взять ленту сделок у сервера по инструменту, на который мы подписаны.
2) Взять свечи по инструменту, на которые подписан класс.
3) Взять цену лучшей продажи по инструменту.
4) Взять цену лучшей покупки по инструменту.
5) Взять текущее время сервера.
1) Исполнить ордер.
2) Отменить ордер.
3) Сервисное событие для работы эмулятора исполнения ордеров.
4) Сервисный метод хранения ордеров.
1) Обновился ордер в сервере.
2) Завершилась свеча.
3) Обновилась свеча.
4) Обновился стакан. АХАХАХА!!! GlassChangeEvent! Я писал это 11 лет назад в институте для дипломной работы! Оставим для потомков.
5) Обновился трейд по портфелю.
6) Обновилась лента сделок по инструменту.
7) Обновился бид с аском.
8) Событие завершения тестирования.
9) Изменилось время сервера.
10) Коннектор запрашивает переподключение.
11) Бумага успешно подписана на получение свечей и стакана.
Удачных алгоритмов!
Серия о том, как стать настоящим программистом и изменить свою профессию.
Оглавление и смыслы здесь: https://smart-lab.ru/company/os_engine/blog/959953.php
Комментарии открыты для друзей, добавляйтесь!
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