Секреты TSLab | Торговые роботы | События
12 Мар

Ордер лог через Plaza2 и StockSharp.

На российском фондовом рынке существует уникальная возможность – получение полного лога заявок (Full orders log) от участников торгов. В этой статье мы расскажем, как выглядит Full orders log, как он может быть использован, и какую интересную информацию можно в нем увидеть, как можно сохранять и обрабатывать ордерлог, в том числе через StockSharp.

Эта статья является дополнением к статье Создание торгового робота на Plaza2 с помощью StockSharp.

В течении 2х недель к статье будут добавлены 3 дня ордер лога доступных для скачивания. Данные файлы были сохранены с помощью StockSharp (S#.Data)

http://yadi.sk/d/VAeEk6Xn4SA18

http://yadi.sk/d/AtxRyPjq4SA2g

http://yadi.sk/d/eCqUPOsT4SA5M

Начнем с определения и общих понятий и свойств.

Full orders log (в статье будем использовать сокращение FOL) — это список всех заявок с полной информацией по каждой заявке. Его также называют анонимным ордер логом, т.к. из всей информации о заявке в нем не доступен только номер счета клиента, пославшего эту заявку, эта информация конфиденциальна. Ордер лог через Plaza2, это самый глубокий и детальный уровень бержевых данных, который доступен трейдеру. Из ордер лога можно построить стаканы, получить тики и много другое.

 Онлайн данные по full_orders_log можно получать через шлюз Plaza2.

Через шлюз Plaza II будет доступна информация  по следующим рынкам:

Cрочный рынок FORTS

  • Фондовый рынок в Секторе рынка Standard
  • Валютный рынок в режиме РТС Money
  • Фондовый рынок в Секторе Основной рынок

Полный список полей таблицы orders_log

Поле Тип Описание

  • replID – Служебное поле подсистемы репликации
  • replRev – Служебное поле подсистемы репликации
  • replAct – Служебное поле подсистемы репликации
  • id_ord – Номер заявки
  • sess_id – Идентификатор торговой сессии
  • client_code – Код клиента
  • moment – Время изменения состояния заявки
  • status – Статус заявки
  • action – Действие с заявкой
  • isin_id – Уникальный числовой идентификатор инструмента
  • dir – Направление
  • price – Цена
  • amount – Количество в операции
  • amount_rest – Оставшееся количество в заявке
  • comment – Комментарий трейдера
  • hedge – Признак хеджевой заявки
  • trust – Признак заявки доверительного управления
  • ext_id – Внешний номер
  • login_from – Логин пользователя, поставившего заявку
  • broker_to – Код FORTS фирмы-адресата внесистемной заявки
  • broker_to_rts – Код RTS фирмы-адресата внесистемной заявки
  • date_exp – Дата истечения заявки
  • id_ord1 – Номер первой заявки
  • broker_from_rts – Код РТС клиента – владельца заявки
  • id_deal – Идентификатор сделки по данной записи журнала заявок
  • deal_price – Цена заключенной сделки
  • local_stamp – Локальное время пользователя

Таблица выше, это полный список полей таблицы ордер лог. Из всего перечня  можно выделить основные, несущую наиболее важную информацию. Мы изменили некоторые названия столбцов, дали им свои, более понятные для чтения названия. Эти названия мы будем пользоваться в дальнейшем.

  • Symbol  – название инструмента = isin_id
  • Type  – покупка/продажа = dir
  • ID  – уникальный номер заявки = id_ord
  • Moment  – время изменения состояния заявки  = moment
  • Volume  – количество лотов = amount
  • Price  – цены по которой выставляли заявку = price
  • Action Действие с заявкой   – выставление  1/удаление  0 /сделка 2 = action
  • ID_Deal – уникальный номер сделки = id_deal
  • Price_Deal – цена по которой прошла сделка = deal_price

В отформатированном виде ордер лог выглядеть примерно так.

таблица Plaza2 stocksharp ордерлог

таблица Plaza2, ордерлог

Tорговые роботы. Full Orders Log – Вид из программы MS SQL

Как работать с ордер логом

Один день ордер лога по инструментам срочного рынка FORTS, может занимать 4-5 гигабайт в формате csv. Файлы столь большого размера могут открывать лишь немногие программы. FAR является одной их этих программ.

Файл с сохраненными данными FOL выглядит примерно следующим образом. Вид из FAR’a.

Plaza2 stocksharp order log

Plaza2 order log

Tорговые роботы. Full Orders Log Рис.

По одному только инструменту RTSi, ордер лог весит порядка 1 гигабайта за один день. В одном дне RTSi в среднем содержится 8-10 млн строк, из них сделок – 600-800 тысяч строк.

Нужно ли говорить, что такой объем информации невозможно обрабатывать руками?  Для обработки и хранения ордер лога можно использовать программы для создания и хранения баз данных , таких как SQL Server – Microsoft.  Язык SQL, доволно просто освоить и его удобно использовать для работы с одер логом, но область его применения доволно узкая: мы можем исопльзовать его для анализа ордер лога, вычленения нужной нам информации и других манипуляций, но содавать робота оперирущего с ордер логом, надо на другом языке.

Одним из вариантов, создания робота для шлюза Plaza2 – использование библиотеки StockSharp. Библиотека  StockSharp, написана на языке C#.

В соответствии с требованиями биржи, программное обеспечение, работающее через шлюз PLAZA2 должно быть сертифицировано биржей.  Библиотека StockSharp сертифицирована биржей РТС для работы с Plaza II, это означает, что создавая роботов на StockSharp, вам не придется самостоятельно проходить сертификацию.

Кроме того, в нашей библиотеке есть функции тестирования торговых стратегий на основе ордер лога, а с помощью программы StockSharp – Гидра, вы можете уже сегодня начать сохранять ордер лог на свой компьютер.

 Ордер лог для тестирования

Давайте теперь рассмотрим ордер лог с точки зрения тестирования высокочастотных стратегий. На российском рынке существуют другие возможности сохранения стаканов и тиков через другие источники, без использование шлюза Plaza2. Но, стаканы и сделки, сохраняемые через другие источники, не синхронизированы, т.е. мы можем получить такую ситуацию, когда те или другие данные пришли с запаздыванием, в итоге сделка будет относиться к стакану, который был несколькими секундами ранее или позднее. Например, при стакане с офером на 160 600 проходит сделка на покупку 160 700. Ордер лог может избавить нас от такой проблемы, с его помощью можно собрать синхронизированный со сделками стакан.

На сайте биржи, история ордер лога за один год по всем инструментам стоит 5000$. Если вам интересно это направление, стоит задуматься о сохранении истории уже с сегодняшнего дня, чтобы потом не тратить деньги на покупку.


comments powered by HyperComments

Сергей
2013-04-29 19:55:22
А где можно скачать обещанные 3 дня ордер лога?
admin
2013-04-29 21:17:25
Добавил ссылки для скачивания, проверьте в начале статьи :)
Mike LEv
2016-04-15 10:32:29
А файлики с ордерлогом уже не работают, как понимаю? Хотелось бы посмотреть на них.
ra81
2016-04-18 10:17:55
да файлы уже потерялись. Но подойдут любые для примера. Опять же S# все время меняется непонятно как, так что может быть уже совсем не актуальная статья.
8
Сен
2017

Доверительное управление. Результаты в августе 2017 года.

Доверительное управление. Результаты в августе 2017 года. Стратегия “Опционы” принесла в августе прибыль в размере… »

6
Авг
2017

Доверительное управление. Результаты в июле 2017 года.

Доверительное управление. Результаты в июле 2017 года. В июле индекс РТС вновь колебался в достаточно узком… »

14
Июл
2017

Доверительное управление. Результаты в июне 2017 года.

Доверительное управление. Результаты в июне 2017 года. Июнь индекс РТС вновь провел преимущественно в боковых движениях, а… »

11
Июн
2017

Доверительное управление. Результаты в мае 2017 года.

Доверительное управление. Результаты в мае 2017 года. В мае “болтанка” индекса РТС продолжилась, на паре… »

7
Май
2017

Доверительное управление. Результаты в апреле 2017 года.

Доверительное управление. Результаты в апреле 2017 года. В апреле мы наблюдали очередной месяц “боковика” по… »