Блог им. glencore

Алготрейдерские размышления о market impact

Всем привет!

Некоторое время назад я активно занимался HFT, но по ряду причин был вынужден сменить класс активно развиваемых стратегий. Всвязи с этим решил формализовать и опубликовать подход, на основе которого я разрабатывал стратегии, неплохо работавшие на российских рынках.

Предлагаемая к обсуждению статья расчитана, как минимум, на опытных трейдеров с хорошим знанием математики: https://dl.dropboxusercontent.com/u/79808150/impact-limits.pdf

upd: Пример кода, осуществляющего оптимальную расстановку ордеров в стакане: dl.dropboxusercontent.com/u/79808150/proto-opt-place.cpp

p.s. Это мой первый пост на Smart-Lab'е
Данная публикация является личным мнением автора. Мнение владельца сайта может не совпадать с мнением автора.
189 | ★5
9 комментариев
перевод, похоже?
avatar
karapuz, не перевод. писатель из меня не очень
avatar
Круто, только почти ничего не понятно. А на языке программирования никак не описать модель? Профиль стакана как задается? Что если убрать все биди или аски, как модель отреагирует?
avatar
Bocman, код рабочих роботов я по понятным причинам выкладывать не буду. Вот простенький пример оптимальной расстановки ордеров в стакане, вместе со статьёй этого достаточно, чтобы понять идею: dl.dropboxusercontent.com/u/79808150/proto-opt-place.cpp

В статье профиль стакана задается функциями {q+(t;p);q-(t;p)}, см. часть 1.1. В коде используется лишь одна сторона стакана, которая инициализируется в начале функции main() и хранится в структуре типа t_ob.

Если убрать все биды и аски — в некоторых случаях будет проблематично использовать модель. Тем не менее, даже в случае пустого стакана или отсутствия одной из его сторон можно что-нибудь придумать.
avatar
glencore, запустил пример — почему-то ордера добавляются всегда в самый конец стакана (максимальная цена из px). В чем причина такого поведения?

До конца не разобрался еще с ->score и ->ord_sim, возможно в них ответ.

Переписал пример на перле, мне так проще разбираться, чем c++, хоть ваш код и очень хорошо написан: gist.github.com/anonymous/6790771
avatar
Bocman, нужно задать более реалистичное начальное состояние стакана и выборку из потока ордеров (нужные характеристики можно посчитать из full order log).
avatar
glencore, подключил full orders log, попытаюсь применить модель, никогда до этого hft не занимался. Правильно я понимаю, что позиция как таковая не направленная получается (вернее нет такой цели получить направленную позу)? В теории мы же можем наоткрывать с одной стороны стакана кучу сделать и рынок протащит в противоположную сторону? Как такие риски перекрываются в общем случае? Стопы предусмотрены? Заранее спасибо за ответ!
avatar
Bocman, цели получить направленную позицию нет, но она может получаться направленной. Идея в том, что хозяева остальных лимитных ордеров в случае их исполнения вместе с вашим потеряют не меньше или заработают не больше, чем вы. И вы раньше окажетесь в безубытке, чем остальные.

Если роботов с подобным алгоритмом в стакане больше одного — скорее всего оба будут работать в ноль.

Управление позицией — это отдельный элемент стратегии. Тестируйте разные варианты и выбирайте лучший.

Стопы в этом алгоритме не предусмотрены, опять же — это отдельный элемент стратегии, который нужно тестировать.
avatar
Продолжения наверное уже не будет в виде новых постов.
avatar

Читайте на SMART-LAB:
Фото
🧮 Барометр настроений биржи и рынка
Индекс ВТБ помогает понять, как действуют другие участники торгов. Он отражает баланс реальных сделок частных инвесторов. Значение на текущий день...
Фото
Отвечаем на частые вопросы про дивиденды
🟢Кто получит дивиденды? Все, кто владел акциями ДОМ.PФ на 20 июля 2026 года. Это дата закрытия реестра акционеров. 🟢Когда выплата? ДОМ.PФ...
Фото
«Селигдар» отмечен престижной премией в области корпоративного управления.
Ежегодно в состав экспертного совета профессиональной премии «Лучшие в профессии «Корпоративный секретарь-2026» входят специалисты в сфере...
Фото
РУСАГРО: возвращение дивидендов и неизбежных иксов
РУСАГРО помимо хорошего операционно отчета, выпустила долгожданный (хотя и невероятный) сущфакт «С учетом установленных Определением...

теги блога glencore

....все тэги



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