yurikon
yurikon личный блог
08 октября 2024, 07:52

Как вы оцениваете задержки и проскальзывания ордеров?

Всем привет!

Есть задача оптимизировать исполнение ордеров. Для этого надо собрать аналитику по ордерам. Главный критерий — это, конечно, проскальзывание. Насколько хуже исполнили ордер по сравнению с тем, если бы сразу просто кинули в рынок по маркету. Также нужна вспомогательная инфа по задержкам доставки ордеров на биржу, латенси. С помощью этой аналитики можно определить какие квики (коннекторы) более медленные и сделать соответствующие выводы.

Для оценки проскальзывания можно сравнивать лучшую встречную котировку в момент создания ордера и итоговое исполнение.
Задержки (латенси) можно померить через разницу локального времени отправки на биржу и ответом (round trip).

Какие метрики еще посоветуете ?

Всех благ.
25 Комментариев
  • T-800
    08 октября 2024, 08:26
    Когда я кидал заявки в рынок, я в комменте заявки указывал цену, по которой робот принял решение на вход, например S90000. Потом вечером из квика выгружал сделки и считал разницу факта и цены в комментарии. Тогда меня расхождения устраивали.

    Теперь, когда торгую лимитками, у меня прога исполнитель заявок получает заявку из бота, и исполнитель ведет учет разницы цены бота и цены по которой заявка исполнилась после перестановок. И накапливает статистику по этой величине. Ранее я приводил цифры из этой статистике для каждого тикера, тут в моем блоге должно быть. Кстати давно не заглядывал в эту цифру, надо будет обновить информацию.
      • T-800
        08 октября 2024, 08:35
        yurikon, ну это когда по рынку кидал. А как потом совместить таблицу из ОДБС с логом робота? Понятно, что они должны быть один в один, но время может точно не совпасть для join. А если какие-нибудь обрывы связи, или что еще.
        А так, к вечеру уже готовая таблицы в квике, ничего джойнить не нужно.
    • SergeyJu
      08 октября 2024, 08:59
      T-800, когда и если обновите, пожалуйста, опубликуйте здесь снова.
      • T-800
        08 октября 2024, 14:07
        SergeyJu, хорошо
      • T-800
        08 октября 2024, 15:59
        SergeyJu, сейчас посмотрел, слишком статистика хорошая получилась, возможно ошибка, буду перепроверять.
      • T-800
        09 октября 2024, 07:27
        SergeyJu, проверил, ошибки не нашел.
        Итак, логика расчета, которую я смог реализовать следующая:
        У меня исполнитель заявок получает от роботов сводную позицию и выводит ее на рынок. У него на входе, допустим позиция 50 Si, а в квике 39 Si, его задача докупить 11. Он фиксирует цену по которой он мог зайти по рынку (поле  «ЦРынок») и выставляет лимитную заявку например в лучший бид или аск (с отступом или без, в зависимости от настроек) цена фиксируется в поле «ЦОрдер». Если не исполнилась через определенное время, перемещает ее в новый спред и фиксирует новую «ЦОрдер». В конце считает результат и суммирует его накопительно в первое поле «Проск», а кол-во контрактов в «Конт». В последнем поле считает 100*«Проск»/«Конт», т.е. сколько проскальзывает в % на один контракт.

        Минус это убыток, плюс это значит входит лучше, чем кидать по рынку.
        В акциях картина другая. Там почти всегда минус от 0 до -0.3% проскальзывание, т.е. постоянно приходится догонять сред. А фьючи более «дерганные», что-ли и проскальзывание около сейчас 0 получается.
        • SergeyJu
          09 октября 2024, 08:54
          T-800, логика понятная, собственно, она годится для отработки параметров простого алгоритма выставления заявок. Есть правда еще задержка между моментом получения данных и моментом выставления ордера. 
          Жаль, что  предсказать, как увеличатся потери при росте объема выставляемых заявок, сложно. 
          А то, что проскальзывание в акциях много больше, чем во фьючах, результат естественный. Я так и закладываюсь обычно при расчетах. 
          • T-800
            09 октября 2024, 09:27
            SergeyJu, да, тут задержка есть, она от 1-2 секунд даже. Для моих алгоритмов это не критично, т.к. ТФ 5-60 мин. и он сдвинут на 2 минуты, чтобы сделки не совпадали с большинством, кто торгует на стандартных таймфреймах, чтобы не попадать на всплеск заявок, например по завершению часа.

            Я сам капитал размазываю по облаку параметров (чтобы по частям заходить и общая эквити сглаживается). Для фьючей некритично, а вот в акциях второго эшелона бывает ордер вывалишь и видно, что влияешь на рынок своим объемом. 
  • SergeyJu
    08 октября 2024, 08:58
    а просто посчитать потери относительно теоретического результата недостаточно? 
  • Sergio Fedosoni
    08 октября 2024, 09:22
    Ну а как вам надо??
    Микросекунды выигрывать??
    Попробуйте обойти задержки на пром серверах брокеров (ну где проверяется ваша платежеспособность)
    Они самое из Кремля горлышко системы.
    Но у ключевых блокеров они на «МТ -Финанс» Провайдере, если у вас сервер выставляющий заявку выше уровня (например бункер ГПКС в Лосином острове) то вы в разы быстрее всех остальных будете выставляться…
    Но вопрос зачем это всё?
    Лимитка с моб у Алор+ ставится прекрасно для си — норм…
  • Sergio Fedosoni
    08 октября 2024, 09:26
    Хотите быстро и дешего Алор фаст или АПИ + мт-финанс rdp
  • А. Г.
    08 октября 2024, 09:38
    Давно не считал проскальзывание. У меня в теории оно 0,2% на операцию для отбора системы, а сейчас, когда в одной стоп-лимит заявке не больше 20 млн. руб. по номиналу, ставлю для лимита покупки стоп+0.1% (для продажи -0.1%) для Сбербанка, Газпрома и Лукойла, плюс-минус 0.01 руб. для цены юаня и плюс-минус 50 пунктов для фьючерса на индекс РТС. Несрабатываний не было уже год с лишним точно.
      • А. Г.
        08 октября 2024, 11:18
        yurikon, я не один ордер в сумме на эту сумму кидаю, а 5-6. Ну а про проскальзывание в конкретных инструментах при кидании этих ордеров от стопов я и написал.
    • T-800
      08 октября 2024, 14:10
      А. Г., Вы ордера по рынку кидаете?
      • А. Г.
        08 октября 2024, 17:08
        T-800, нет, я стоп-лимиты ставлю в Квики.
  • svgr
    08 октября 2024, 10:23
    Негативно.
  • __rtx
    08 октября 2024, 16:23
      
      • __rtx
        08 октября 2024, 16:23
          
  • Кирилл Гудков
    09 октября 2024, 10:48
    По задержкам: можно подбивать статистику «с какой попытки удалось всунуть BoC ордер».  Если 90% не ставятся с 1-го раза, терминал лагает и все время смотрит в устаревший стакан.

Активные форумы
Что сейчас обсуждают

Старый дизайн
Старый
дизайн