Лог заявок (full order log -> анонимный order log)

Лог заявок (full order log -> анонимный order log)
Atom
14.02.2012
Mikhail Sukhov


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


Теги:


Спасибо:


1 2 3  > >>
Alexander

Фотография
Дата: 16.02.2012
Ответить


Вчера начал заниматься этим, но не закончил. Столкнулся со следующими проблемами:

  1. Первоначально, до начала сессии, стакан уже некий существует - его надо получить и именно им инициализировать стакан инструмента.
  2. Далее начинается анализ потока заявок - есть 3 статуса - а) добавлена б) отменена в) сведена в сделку.

а) Заявка может быть добавлена с любой абсолютно ценой. К примеру, у нас в стакане офер на 11, бид на 9. Мы легко можем послать заявку бай с ценой 15. тогда в ордер_лог будет как раз: <добавлена> 15 Нам же для этого случая (цена > офера) не надо добавлять бид с ценой 15, нам надо просто запомнить что такая заявка есть. Иначе у нас поплывёт весь стакан и мы неправильно будем дальше его строить - Лучший_бид \ лучший_аск, биды, аски будут абсолютно неверными.

б) Отменена - тут всё понятно - просто cancel, удаляем нужный объём.

в) Сведена - тоже понятно, просто уменьшаем на сведённый объём.

Есть вопрос по реализации пункта 1) и по тому как корректно реализовать 2а). Свой вариант для 2а) положил на codeplex, но считаю его далеко не оптимальным.

И самый главный вопрос - так ли нам нужно построение стакана по полному ордер_логу? Слишком он большой для прокачки. Если включаем не с начала дня, то прокачивает с час.

Спасибо:

Alexander

Фотография
Дата: 08.04.2012
Ответить


С помощью Limfocit добавлена поддержка построения стакана по полному ордер логу. [cool]

Спасибо:

transdex

Фотография
Дата: 11.04.2012
Ответить


Alexander Mukhanchikov: С помощью Limfocit добавлена поддержка построения стакана по полному ордер логу. [cool]

Ну и как, сильно отличается от стакана, построенного обычным образом?

Спасибо:

Mikhail Sukhov

Фотография
Дата: 11.04.2012
Ответить


transdex: Ну и как, сильно отличается от стакана, построенного обычным образом?

Скажу как чайник. Мельтешит так, что пришлось в примере снова сделать интервальное обновление стакана. Иначе просто зависало.

Спасибо:

transdex

Фотография
Дата: 11.04.2012
Ответить


Так Вы что, каждую заявку отдельно обрабатываете? Т.е. не так как в ядре РТС?

Спасибо:

Alexander

Фотография
Дата: 11.04.2012
Ответить


transdex: Так Вы что, каждую заявку отдельно обрабатываете? Т.е. не так как в ядре РТС?

приходит ордер лог - он обрабатывается от стакана построенного обычным образом ничем не отличается и отличаться кроме скорости и синхронизации с заявками не должно

Спасибо:

transdex

Фотография
Дата: 11.04.2012
Ответить


Alexander Mukhanchikov: приходит ордер лог - он обрабатывается Давайте точнее выражаться. Приходит отдельные заявки или пакеты (очереди заявок)за некоторый интервал времени?

Спасибо:

Alexander

Фотография
Дата: 11.04.2012
Ответить


transdex:

Alexander Mukhanchikov: приходит ордер лог - он обрабатывается Давайте точнее выражаться. Приходит отдельные заявки или пакеты (очереди заявок)за некоторый интервал времени?

приходит новая порция данных по таблице ордер_лога от биржи. она обрабатывается, соответствующим образом меняется стакан

если интересно ещё точнее - подпишитесь на событие добавление новой записи в таблицу ордер лога и смотрите что присылает биржа.

Спасибо:

Mikhail Sukhov

Фотография
Дата: 12.04.2012
Ответить


transdex: Так Вы что, каждую заявку отдельно обрабатываете? Т.е. не так как в ядре РТС?

Если учитывать, что ядро РТС строит стаканы так, что оно по тайм стемпу не совпадает со сделками, то да, мы не так как в РТС[biggrin]

Спасибо:

transdex

Фотография
Дата: 13.04.2012
Ответить


Мой интерес отнюдь не праздный. Порожден он призывами ( раздающимися на некоторых форумах - rts.ru, smart-lab.ru) запретить Full_Order_Log как Вселенское зло, ибо он позволяет куклу видеть будущее и обижать маленьких. С другой стороны, по моим прикидкам (на РТС не работаю, тонких деталей не знаю, могу и ошибаться) возможен вариант, что ордерлог это просто лог, т.е. история построения текущего агрегированного стакана. Соответственно стакан построенный по ордерлогу будет (в среднем) отставать от текущего агрегированного стакана. Хотя и мельтешит.

Спасибо:
1 2 3  > >>

Добавить файлы через драг-н-дроп, , или вставить из буфера обмена.

loading
clippy