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

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


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

Tags:


Thanks:


1 2 3  > >>
Alexander

Avatar
Date: 2/16/2012
Reply


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

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


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

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

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




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

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

Alexander

Avatar
Date: 4/8/2012
Reply


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

transdex

Avatar
Date: 4/11/2012
Reply


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


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

Mikhail Sukhov

Avatar
Date: 4/11/2012
Reply


transdex

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


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

transdex

Avatar
Date: 4/11/2012
Reply


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

Alexander

Avatar
Date: 4/11/2012
Reply


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


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

transdex

Avatar
Date: 4/11/2012
Reply


Alexander Mukhanchikov

приходит ордер лог - он обрабатывается

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

Alexander

Avatar
Date: 4/11/2012
Reply


transdex
Alexander Mukhanchikov

приходит ордер лог - он обрабатывается

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


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

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

Mikhail Sukhov

Avatar
Date: 4/12/2012
Reply


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


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

transdex

Avatar
Date: 4/13/2012
Reply


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

Attach files by dragging & dropping, , or pasting from the clipboard.

loading
clippy