Всем привет! В данной статье будем учиться подключать OsEngine к тестовому серверу Мосбиржи по протоколам FIX и FIX/FAST для фондового рынка.
ПОДКЛЮЧАЕМ OSENGINE
Чтобы запустить Os Engine, скачиваем программу с Гит Хаб github.com/AlexWan/OsEngine. Распаковываем и запускаем exe-файл.
В главном меню идём в Bot station light:
Далее заходим в подключение серверов и выбираем подключение «MoexFixFastSpot»:
Откроется окно для подключения к Мосбирже по протоколам FIX/FAST:
Вводим данные:
- Ip-адрес MFIX Trade сервера.
- Порт MFIX Trade сервера.
- FIX-идентификатор MFIX Trade сервера.
- Ip-адрес MFIX Trade Capture сервера.
- Порт MFIX Trade Capture сервера.
- FIX-идентификатор MFIX Trade Capture сервера.
- Логин для MFIX Trade сервера (один из тех 5 штук).
- Пароль для MFIX Trade сервера.
- Логин для MFIX Trade Capture сервера (второй любой другой из выданных 5).
- Пароль для MFIX Trade Capture сервера.
- MFIX Trade счет.
Чтобы выяснить, какой вам выдали счет, необходимо запустить тестовый терминал MOEX Trade SE (тестовая версия), который нужно скачать по адресу http://ftp.moex.com/pub/Terminals/ASTS/Equities/Test/:
11.1 Вводим еще один из логинов и пароль.
11.2 В настройках подключения должен быть вид подключения TEST UAT_GW Internet
11.3 Выбрать режим торгов Т+ Акции и ДР.
11.4 Выбираем меню Таблицы и Торговые счета:
Нам нужен торговый счет, у которого в скобках (обеспечение). На примере L00+00002BAB. Вот это и вписываем в параметрах коннектора.
11.5 Заодно стоит проверить, выдали ли вам тестовые деньги.
Жмем Таблицы – Позиции по деньгам:
После ввода счета переходим к следующему пункту:
12. Код клиента. Это тоже в тестовом терминале.
Жмем Таблицы – Таблицы фирмы – Клиенты
Нужный код будет первым в списке (на примере подчеркнут красным).
13. Указываем папку, в которой лежат настройки для FIX/FAST UDP Multicast сервера
13.1. Заходим по адресу https://ftp.moex.com/pub/FAST/ASTS/ — здесь Мосбиржа разместила все инструкции и настройки для подключения.
13.2. Из папки config скачиваем два xml файла config_test_next.xml, config_test_uat.xml.
13.3. Переименовываем config_test_uat.xml в config.xml и сохраняем в папку, например, Test_FIXFAST_Config – эту папку мы и будем указывать в качестве места для хранения конфигурации.
13.4. Из папки template скачиваем файл шаблонов FAST-сообщений самую последнюю версию.
На картинке это FIX50SP2-2021-Dec.xml.
13.5. Переименовываем этот файл в template.xml и кладем в нашу папку конфигурации.
13.6. В результате мы получили три файла конфигурации в одной папке:
Две версии config_test_uat, config_test_next позволят при необходимости переключаться на версию тестового контура UAT (текущая) или Next (для разработчиков). По сути нам нужна только текущая, но оставим файл настроек для next, чтобы в будущем было возможно на нее переключиться. Достаточно будет переименовать файл в config.xml.
Итак, выбираем папку Test_FIXFAST_Config в качестве параметра в настройках коннектора.
- Указываем лимит количества операций в секунду для нашего логина. На тестовом сервере это 30 операций в секунду. На боевом информацию надо уточнять у поддержки, но не менее 300.
- Новый пароль для сервера MFIX Trade задаем, только если хотим изменить пароль. Оставляем пустым.
- Новый пароль для сервера MFIX Trade Capture задаем, только если хотим изменить пароль. Оставляем пустым.
- Skip trades with same price – False, так как сделки с одинаковой ценой вполне возможны в реальном мире.
18. Жмём на кнопку «Подключиться»!
Включаем любого робота и торгуем!
ВАЖНЫЕ НЮАНСЫ
- Мосбиржа определяет «стандартный» режим подключения к торгам – это, когда мы подключаемся до начала торгов. Если подключение происходит после начала торгов, то у коннектора может занять весьма продолжительное время (около 10 минут на тестовом сервере) для получения всех пропущенных с начала торгов рыночных данных.
- В коннекторе нет возможности получить информацию о позициях по деньгам и ценным бумагам, подключение MFIX не обладает этой информацией.
- В коннекторе нет возможности запросить рыночные данные за прошедшие периоды. То есть историю сделок до текущего торгового дня можно получить, только если вы ее сохранили сами (OsEngine сохраняет историю сделок в файл на диске).
Спасибо за внимание! Далее я расскажу, как устроен коннектор FIX/FAST для фондовой секции в коде OsEngine.
OsEngine: https://github.com/AlexWan/OsEngine
FAQ: https://o-s-a.net/os-engine-faq
Поддержка 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