Блог им. anikitoz

Вопрос к знатокам: order_log FAST

    • 23 октября 2023, 19:24
    • |
    • Andrey
  • Еще
Разбираю order log полученным по FAST, цель построить полный стакан заявок.
Что имеем: несколько order_log в формате csv, не полный день, инструмент CNYRUB_TOM, ['id', 'buysell', 'action', 'price', 'volume', 'timestamp']
'action':
NEW — новая заявка;UPDATE — обновление заявки после сделки, соответственно разница между предыдущим объемом UPDATE или NEW и новым это объем сделки сделки;
DELETE — удаление заявки.

Теперь вопрос как такое может быть:
Вопрос к знатокам: order_log FAST






У нас есть новая заявка, после идут апдейты, соответственно сделки 230т, 59т, 200т, 11т., а потом идет удаление на 300т!
Как это расценивать, кто-нибудь знает?
Сделки с Финама:
Вопрос к знатокам: order_log FAST
Вопрос к знатокам: order_log FAST

Вопрос:
DELETE может быть с объемом меньше, больше и равным предыдущему NEW/UPDATE.
Как их расценивать?






16 комментариев
В строке с DELETE должно быть по смыслу всегда volume=0. Возможно просто это поле не обновляется для экономии и показывает какой-то мусор.
В смысле DELETE это почти как  UPDATE volume=0, но DELETE означает, что номер заявки удаляется из системы.
avatar
а чего за id такие странные? это точно номера заявок?
avatar
Андрей К, да вроде норм id, а что с ними не так?
avatar
Andrey, шибко большой разброс номеров заявок в короткий промежуток времени. В рамках одного инструмента, номера ж должны последовательно идти

ps. Ерунду написал. Не в рамках одного инструмента, а в рамках одного режима рынка
avatar
Андрей К, вроде не очень большой разброс, на четверть секунды 72 новых заявки:
9704093 BUY NEW 11.860 300000 2023-04-18 10:27:21.253
9704165 BUY NEW 11.859 300000 2023-04-18 10:27:21.499
avatar
Andrey, я только ща понял, что я клюнул на вашу ошибку. Вы написали ордерлог, но рыночные данные с валютного рынка. А там ордерлога как такового нет ) есть схожий ордерлист.

Если смотреть доку именно ордерлогу, то там действительно для delete имеет значение vol. В ордерлисте все по другому ) Так что первый коммент был достаточно верный.


avatar
delete c volume=0, всего 295 строчек:
Остальная статистика:
# last_update       =0          >0# del > new        106257      965# del < new        251122    4336# del = new        112868      414
last_update =0, обновлений/сделок не было и тогда delete может быть <, > или =.
last_update >0, были обновления/сделки и тогда delete может быть <, > или =.
как delete может быть больше первоначального объема или остатка в update, только айсберг.
данные пока не за полный день, с 10:30 до 17:30 примерно.
Посчитал все сделки(с финама взял) за период, получилось 26396 шт., апдейтов всего 16323, т.е. часть сделок должна в delete быть получается.
avatar
еще обратил внимание, есть заявка и снятие с объемом ноль, но в сделках финама нет такой сделки и сделки проходили по ценам ниже, похоже это снятие заявки без сделки. 





avatar
Andrey, я сейчас тоже пытаюсь разобраться в этом же (fullorderlog). Подключился только на прошлой неделе, так что просто мысли, а не опыт и знания. В общем если заявка с нулевым объемом была зарегистрирована, то это имхо какая-то внебиржевая заявка может быть? И по поводу того, что у вас общая сумма DELETE NEW UPDATE не совпадает (я так понял ваш вопрос в статье) может быть дело в том же самом, т.е. во внебиржевых заявках/сделках? Похожую ситуацию получал при анализе открытого интереса, когда объемы и направление трейдов не сходились с изменением ОИ. Посчитал что в сумме таких случаев около 5% в день из всего потока и просто выкинул их из расчётов, определив для себя как неясные/внебиржевые. В общем не думаю что был особый толк в моём комменте, но вдруг. Скорее мне интересно к каким выводам вы придёте и откуда и как в DELETE попадают объемы, превышающие расчётные.
avatar
Sprite, новых заявок с vol=0 нет, РПС(адресные заявки) в другом режиме нежели «стакан».
Похоже delete c vol=0 это снятие заявки без сделок.
Вопрос по delete c vol !=0
Буду обрабатывать delete как удаление заявки с заданным id.
Хотел помимо стакана, генерировать еще сделки, но пока не понимаю как трактовать delete с разными объемами.
avatar
Andrey, комон ) вам же уже два раза написали, что на валютном рынке в del не надо смотреть на объем. Там транслируется мусор и сделано это из за оптимизации

и в целом все складывается и по транзакциям и по ленте сделок
avatar
Андрей К, ок, спасибо!
имхо для оптимизации можно было писать и ноль))
avatar
Andrey, такие специфики работы. Все делается для ультра лоу летенси участников. Правда фаст для них уже не актуален.
avatar
Андрей К, а что сейчас использую «большие дяди»?
кстати раньше форум на сайте мосбиржи был, куда он переехал сейчас? там много информации было судя по сейвам на web.archive
avatar
Andrey, инфы там было море ) вроде даже я отвечал всем подряд ) биржа все удалила с корнями. 

сейчас есть более быстрые протоколы, например simba. Где то на 10мксек быстрее. Но там суть даже еще не в быстрости, а протокол легко разбирать в аппаратных средствах, типа fpga
avatar

теги блога Andrey

....все тэги



UPDONW
Новый дизайн