Логи

Важным элементом в разработке стратегии является сбор и анализ информации, полученной по ходу торгов. Так как биржевых событий за один день может быть очень много (порядка 1-5 миллионов), возникает необходимость извлекать самые важные детали, характеристики и действия стратегии.

Здесь мы рассмотрим несколько типов логов:

Сделки и заявки стратегии

Система симуляции по умолчанию логирует все заявки и сделки вашей стратегии в файлы orders.tsv и deals.tsv соответственно. Рассмотрим формат каждого из файлов подробнее.

Список заявок

Рассмотрим для примера поля и значения одной строки из файла с заявками стратегии orders.tsv:

поле значение описание
action add действие над заявкой: add / del
time 2016-11-01 09:15:00.223000 биржевое время действия
symbol HFTBI название инструмента
price 8639 цена заявки
amount 10 объём заявки (число лотов)
executed_amount 10 количество сведённых лотов
dir BID направление заявки: BID — покупка / ASK — продажа
order_meaning Quote смысл заявки, Quote для Limit заявок и Beat для IOC
order_type Limit тип заявки: Limit / IOC
status added статус операции
reject_reason "" причина отказа выполнения, если есть
order_id 320000001 уникальный идентификатор заявки

Список сделок

Аналогично рассмотрим строчку из файла со сделками стратегии deals.tsv:

поле значение описание
time 2016-11-01 09:15:00.223000 биржевое время сделки
symbol HFTBI название инструмента
price 8639 цена сделки
amount 10 объём заявки (число лотов)
dir BID направление нашей заявки в сделке: BID — покупка / ASK — продажа
order_meaning Quote смысл нашей заявки, Quote для Limit заявок и Beat для IOC
our_order_status active статус нашей заявки
executed_amount 10 сведенный объём со знаком: < 0 — продали, > 0 — купили
approx_result -127.5 приблизительный общий результат после пачки одновременных сделок
saldo -86390 баланс всех сделок, совершённых стратегий
order_id_bid 320000001 уникальный идентификатор заявки на покупку
order_id_ask 300000000 уникальный идентификатор заявки на продажу
aggressor_side BID направление заявки-агрессора: BID — покупка / ASK — продажа

Вывод информации из стратегии

Для всех посылок в тренировочном режиме доступны следующие способы вывода информации из стратегии:

  1. Стандартный вывод в stdout и stderr. Его рекомендуется использовать для вывода небольшого объёма информации (проверки правильности задания параметров и т.п.). Логи в stdout и stderr ограничены 1 000 000 символов, 6000 строк и 1000 символов в одной строке.
  2. Логирование в файлы с помощью наших потоков вывода, например SCREEN() << (только для C++):

    SCREEN() << "This is my awesome strategy";
    

    Для логирования большого объёма информации рекомендуется использовать логирование в файлы с помощью потоков вывода. Подробнее про потоки вывода, вы можете прочитать здесь.

    Размер ваших логов в сумме с автоматическими логами ваших заявок и сделок ограничены 1000 мегабайтами для одной симуляции.

results matching ""

    No results matching ""