OrderBook Utilities
- Утилиты
- Stanislav Korotky
- Версия: 1.3
- Обновлено: 9 мая 2020
OrderBook Utilities - это скрипт, который выполняет несколько вспомогательных операций с hob-файлами истории стакана, сохраненными с помощью OrderBook Recorder.
Скрипт обрабатывает файл для рабочего символа текущего графика. Конкретный файл определяется с помощью параметра CustomDate (если он заполнен) или по точке сброса скрипта на график. В зависимости от операции, результат обработки пишется только в лог, или в лог и выходной файл.
Операция выбирается с помощью параметра Operation:
- проверка Check - проверка записей на корректность; по различным причинам неверные стаканы могут попадать в терминал довольно часто; возможные ошибки, подлежащие исправлению, перечислены ниже; операция Check ошибки не исправляет, а лишь выводит их статистику в лог; для вывода подробностей следует включить режим PrintDetails; помимо ошибок, операция выводит статистику по стаканам с нулевым спредом и стаканам, в которых уровни цен Bid и/или Ask заходят внахлест на противоположную половину покупок и/или продаж; см. примеры на вкладке Обсуждений;
- исправление Fix - исправление файла путем отбрасывания ошибочных записей; удаляются как серьезные, так и мелкие ошибки (см. классификацию ниже); исправленная версия записывается в одноименный файл с двойным расширением.hob.fix;
- упаковка Pack - уплотнение файла, может пригодиться перед передачей кому-либо в целях уменьшения трафика; сжатый файл имеет расширение.hop;
- распаковка Unpack - восстановление hob-файла из сжатого hop-файла;
- экспорт Export - сохранение информации в текстовом виде, в csv-файле; может быть удобно для редактирования, контекстного сравнения, слияния;
- импорт Import - восстановление hob-файла из экспортированного csv-файла;
Типы проверок
Серьезные ошибки помечены жирным.
- Последовательные одинаковые стаканы, т.е. без изменений;
- Нарушенный порядок следования Sell и Buy уровней, т.е. они не формируют строго 2 половины, в каждой из которых только приказы одного типа;
- Нарушенный порядок сортировки цен в одной из половин стакана;
- Полностью дублирующиеся элементы в стакане, т.е. с равными типами и ценами;
- Пустой стакан;
- Стакан с одним уровнем;
При наличии серьезных ошибок невозможно выполнять упаковку.
Параметры
- Operation - тип операции, один из: Check (по-умолчанию), Fix, Pack, Unpack, Export, Import;
- FileFolder - имя корневой папки, где находятся подпапки с файлами стакана; по умолчанию "Books"; каждая подпапка называется по имени символа;
- UseCommonFiles - опция чтения файлов из папки текущего терминала (значение false, по умолчанию) или из общей папки всех терминалов (true);
- CustomDate - день, идентифицирующий рабочий hob-файл (файлы создаются по принципу один день = один файл); по умолчанию - 0 (отображается в интерфейсе МТ5 как '1970.01.01 00:00:00'), что означает, что день будет выбираться исходя из точки на графике, где был запущен скрипт; например, если скрипт был перетянут мышью из навигатора и отпущен на барах за 2018.08.01 число, то будет обрабатываться файл 20180801.hob; если параметр CustomDate заполнить конкретной датой, то точка сброса скрипта уже не имеет значения;
- MinimalBookSizeFilter - минимальный размер стакана, который будет сохраняться во время операции исправления Fix, по-умолчанию - 0, т.е. фильтра нет, и стаканы всех размеров сохраняются;
- PrintDetails - опция включения более подробного лога, по умолчанию - false;
Пользователь не оставил комментарий к оценке