Лог заявок (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