Как вы оцениваете задержки и проскальзывания ордеров?
Всем привет!
Есть задача оптимизировать исполнение ордеров. Для этого надо собрать аналитику по ордерам. Главный критерий — это, конечно, проскальзывание. Насколько хуже исполнили ордер по сравнению с тем, если бы сразу просто кинули в рынок по маркету. Также нужна вспомогательная инфа по задержкам доставки ордеров на биржу, латенси. С помощью этой аналитики можно определить какие квики (коннекторы) более медленные и сделать соответствующие выводы.
Для оценки проскальзывания можно сравнивать лучшую встречную котировку в момент создания ордера и итоговое исполнение.
Задержки (латенси) можно померить через разницу локального времени отправки на биржу и ответом (round trip).
Когда я кидал заявки в рынок, я в комменте заявки указывал цену, по которой робот принял решение на вход, например S90000. Потом вечером из квика выгружал сделки и считал разницу факта и цены в комментарии. Тогда меня расхождения устраивали.
Теперь, когда торгую лимитками, у меня прога исполнитель заявок получает заявку из бота, и исполнитель ведет учет разницы цены бота и цены по которой заявка исполнилась после перестановок. И накапливает статистику по этой величине. Ранее я приводил цифры из этой статистике для каждого тикера, тут в моем блоге должно быть. Кстати давно не заглядывал в эту цифру, надо будет обновить информацию.
yurikon, ну это когда по рынку кидал. А как потом совместить таблицу из ОДБС с логом робота? Понятно, что они должны быть один в один, но время может точно не совпасть для join. А если какие-нибудь обрывы связи, или что еще.
А так, к вечеру уже готовая таблицы в квике, ничего джойнить не нужно.
SergeyJu, проверил, ошибки не нашел.
Итак, логика расчета, которую я смог реализовать следующая:
У меня исполнитель заявок получает от роботов сводную позицию и выводит ее на рынок. У него на входе, допустим позиция 50 Si, а в квике 39 Si, его задача докупить 11. Он фиксирует цену по которой он мог зайти по рынку (поле «ЦРынок») и выставляет лимитную заявку например в лучший бид или аск (с отступом или без, в зависимости от настроек) цена фиксируется в поле «ЦОрдер». Если не исполнилась через определенное время, перемещает ее в новый спред и фиксирует новую «ЦОрдер». В конце считает результат и суммирует его накопительно в первое поле «Проск», а кол-во контрактов в «Конт». В последнем поле считает 100*«Проск»/«Конт», т.е. сколько проскальзывает в % на один контракт.
Минус это убыток, плюс это значит входит лучше, чем кидать по рынку.
В акциях картина другая. Там почти всегда минус от 0 до -0.3% проскальзывание, т.е. постоянно приходится догонять сред. А фьючи более «дерганные», что-ли и проскальзывание около сейчас 0 получается.
T-800, логика понятная, собственно, она годится для отработки параметров простого алгоритма выставления заявок. Есть правда еще задержка между моментом получения данных и моментом выставления ордера.
Жаль, что предсказать, как увеличатся потери при росте объема выставляемых заявок, сложно.
А то, что проскальзывание в акциях много больше, чем во фьючах, результат естественный. Я так и закладываюсь обычно при расчетах.
SergeyJu, да, тут задержка есть, она от 1-2 секунд даже. Для моих алгоритмов это не критично, т.к. ТФ 5-60 мин. и он сдвинут на 2 минуты, чтобы сделки не совпадали с большинством, кто торгует на стандартных таймфреймах, чтобы не попадать на всплеск заявок, например по завершению часа.
Я сам капитал размазываю по облаку параметров (чтобы по частям заходить и общая эквити сглаживается). Для фьючей некритично, а вот в акциях второго эшелона бывает ордер вывалишь и видно, что влияешь на рынок своим объемом.
SergeyJu, при условии, что теоретический результат вы можете воспроизвести весь в точности и за любой период в прошлом. Когда коды систем модифицируются, это не всегда становится возможным.
Ну а как вам надо??
Микросекунды выигрывать??
Попробуйте обойти задержки на пром серверах брокеров (ну где проверяется ваша платежеспособность)
Они самое из Кремля горлышко системы.
Но у ключевых блокеров они на «МТ -Финанс» Провайдере, если у вас сервер выставляющий заявку выше уровня (например бункер ГПКС в Лосином острове) то вы в разы быстрее всех остальных будете выставляться…
Но вопрос зачем это всё?
Лимитка с моб у Алор+ ставится прекрасно для си — норм…
Sergio Fedosoni, ответ — хочу войти в сделку с лимитника и не заплатить комиссию и чтобы цена убежала не больше, чем комиссия + проскольз в момент сигнала. Это если вкратце :-)
Давно не считал проскальзывание. У меня в теории оно 0,2% на операцию для отбора системы, а сейчас, когда в одной стоп-лимит заявке не больше 20 млн. руб. по номиналу, ставлю для лимита покупки стоп+0.1% (для продажи -0.1%) для Сбербанка, Газпрома и Лукойла, плюс-минус 0.01 руб. для цены юаня и плюс-минус 50 пунктов для фьючерса на индекс РТС. Несрабатываний не было уже год с лишним точно.
yurikon, я не один ордер в сумме на эту сумму кидаю, а 5-6. Ну а про проскальзывание в конкретных инструментах при кидании этих ордеров от стопов я и написал.
__rtx, да, у объекта ордер есть несколько временных меток — создан, отправлен, зареган, зафилен и тд. По ним потом можно будет задержки мерить мин, макс, среднюю.
По задержкам: можно подбивать статистику «с какой попытки удалось всунуть BoC ордер». Если 90% не ставятся с 1-го раза, терминал лагает и все время смотрит в устаревший стакан.
🦄 Под 346% годовых - вкладыаем деньги в золото на 3 дня с минимальным риском Друзья, мы продолжаем серию обучающих постов о простых и прибыльных торговых стратегиях на фондовых биржах.В предыдущих ста...
Бекас, но ведь если тебе не нужна «их дурь — слушать/читать», то зачем тебе знать, что «что он там этот Манфред — НЕ ДЕЛАЛ», и откуда тебе известно, что «по немецким законам — 13 лет — это считай с...
🏦 Совкомбанк – Почему допэмиссия стала причиной роста акций?
📌 Всего за 1 день стоимость акций Совкомбанка сначала снизилась на 2%, после чего выросла на 8%. Сегодня разберёмся, в чём причина таког...
Теперь, когда торгую лимитками, у меня прога исполнитель заявок получает заявку из бота, и исполнитель ведет учет разницы цены бота и цены по которой заявка исполнилась после перестановок. И накапливает статистику по этой величине. Ранее я приводил цифры из этой статистике для каждого тикера, тут в моем блоге должно быть. Кстати давно не заглядывал в эту цифру, надо будет обновить информацию.
А так, к вечеру уже готовая таблицы в квике, ничего джойнить не нужно.
Итак, логика расчета, которую я смог реализовать следующая:
У меня исполнитель заявок получает от роботов сводную позицию и выводит ее на рынок. У него на входе, допустим позиция 50 Si, а в квике 39 Si, его задача докупить 11. Он фиксирует цену по которой он мог зайти по рынку (поле «ЦРынок») и выставляет лимитную заявку например в лучший бид или аск (с отступом или без, в зависимости от настроек) цена фиксируется в поле «ЦОрдер». Если не исполнилась через определенное время, перемещает ее в новый спред и фиксирует новую «ЦОрдер». В конце считает результат и суммирует его накопительно в первое поле «Проск», а кол-во контрактов в «Конт». В последнем поле считает 100*«Проск»/«Конт», т.е. сколько проскальзывает в % на один контракт.
Минус это убыток, плюс это значит входит лучше, чем кидать по рынку.
В акциях картина другая. Там почти всегда минус от 0 до -0.3% проскальзывание, т.е. постоянно приходится догонять сред. А фьючи более «дерганные», что-ли и проскальзывание около сейчас 0 получается.
Жаль, что предсказать, как увеличатся потери при росте объема выставляемых заявок, сложно.
А то, что проскальзывание в акциях много больше, чем во фьючах, результат естественный. Я так и закладываюсь обычно при расчетах.
Я сам капитал размазываю по облаку параметров (чтобы по частям заходить и общая эквити сглаживается). Для фьючей некритично, а вот в акциях второго эшелона бывает ордер вывалишь и видно, что влияешь на рынок своим объемом.
Микросекунды выигрывать??
Попробуйте обойти задержки на пром серверах брокеров (ну где проверяется ваша платежеспособность)
Они самое из Кремля горлышко системы.
Но у ключевых блокеров они на «МТ -Финанс» Провайдере, если у вас сервер выставляющий заявку выше уровня (например бункер ГПКС в Лосином острове) то вы в разы быстрее всех остальных будете выставляться…
Но вопрос зачем это всё?
Лимитка с моб у Алор+ ставится прекрасно для си — норм…