Сегодня рассмотрим интерфейс с названием IServer, через который осуществляется доступ к коннекторам в OsEngine. Посмотрим, что у него там есть внутри.
IServer. Общие сведения.
IServer – интерфейс для доступа к реализациям серверов почти во всём проекте. Нужен для того, чтобы унифицировать методы и свойства, нужные для роботов и OsData.
Родился сразу же, как появился второй коннектор в OsEngine.
Коннекторы – идеальная история для того, чтобы унифицировать доступ к ним через интерфейс.
ВАЖНО!
Во время создания коннектора логику нужно будет писать в классе IServerRealization. Создание нового подключения сразу через IServer устарело. https://smart-lab.ru/company/os_engine/blog/966948.php
Однако данным интерфейсом OsEngine продолжает пользоваться, не зная о том, что реализация происходит через AServer + IServerRealization.
Регионы интерфейса IServer.
- Сервисный регион.
- Включение / выключение.
- Время сервера.
- Доступ к портфелям.
- Доступ к бумагам.
- Подписка на обновления данных по бумагам.
- Доступ к данным.
- Торговые операции.
- Логирование.
1 Service.
- Тип сервера.
- Показать окно настроек сервера.
2 Connect / Disconnect
- Активировать подключение.
- Остановить подключение.
- Статус сервера. Connect / Disconnect.
- Событие: Изменился статус сервера.
- Событие: Необходимо перезаказать все данные. Сервер перезапустился.
3 Server time.
- Текущее время сервера.
- Последнее время запуска сервера.
- Событие: Изменилось время сервера.
4 Portfolios.
- Доступные портфели.
- Взять портфель по названию.
- Событие: Обновилось состояние портфеля.
5 Securities.
- Доступные бумаги.
- Взять бумагу по имени и классу.
- Событие: Обновился список доступных бумаг.
6 Data subscription.
- Запустить бумагу на прослушку стаканов, трейдов, свечей. Возвращает объект CandleSeries (серию свечей).
- Остановить прослушивание бумаги.
- Событие: По серии свечей обновилась свеча.
- Событие: По бумаге обновились цены bid и ask.
- Событие: По бумаге обновился стакан котировок.
- Событие: По бумаге обновилась лента сделок.
7 Data upload.
- Взять последние свечи по инструменту. Вызывается в боевых торгах для активации серии свечей.
- Взять исторические свечи по инструменту. Вызывается OsData.
- Взять исторические трейды (ленту сделок) по инструменту. Вызывается OsData.
- Взять все имеющиеся в хранилище трейды (ленту сделок) по инструменту. Вызывается в боевых торгах.
- Массив массивов лент сделок по всем инструментам, что доступны в данный момент.
8 Work with orders.
- Исполнить ордер.
- Изменить у ордера цену.
- Отменить ордер.
- Отменить все ордера у клиента во всех портфелях по всем площадкам.
- Массив моих сделок.
- Событие: Обновилось состояние ордера клиента.
- Событие: Новый мой трейд по ордерам клиента.
Удачных алгоритмов!
Пост из серии «Коннекторы к OsEngine»
Серия о том, как стать настоящим программистом и изменить свою профессию.
Оглавление и смыслы здесь: 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
Программа лояльности от АЛОР БРОКЕР и OsEngine: https://smart-lab.ru/company/os_engine/blog/972745.php