Вопрос алготрайдерам по внутреннему механизму сведения позиций.
Добрый день,
Хочу поинтересоваться у тех у кого крутятся одновременно большое количество стратегий с пересекающимися инструментами.
Каким образом реализовано, технически, сведение позиций между стратегиями?
Ведь возникает масса проблем с таймингом и типом исполнения. Как пример лимитный и маркет ордер, не говоря уже о алгоритмах исполнения брокера.
В целом я вижу только один более менее простой и разумный вариант это группировки стратегий по типу исполнения, используемого тайм фрейма и тд. Только в таком случае можно как то гарантировать внутренние перекрытие и не потерять в скорости выставления заявок.
У меня архитектура такая, что стратегия-TF-всеТикеры — сигналы на исполнение брокеру в одно время улетают (последовательно, но есть момент времени где я уже вижу все сигналы). А вот соседние такие же комбинации, например, другая стратегия — они уже «сами по себе» и нигде нету участка где мы ждём отстающих. Теоретически я могу ждать пока все подтянутся и дальше какую угодно логику натягивать, в т.ч. сальдировать и выводить на рынок только разницу, но в этом случае либо надо ждать самых медленных ну либо ждать какое-то время в которое N% сигналов укладывается, уложившихся сводить, остальные без сведения. В общем в любом случае «ждать» — это какие-то доп. расходы (на проскальзывании), скомпенсирует ли оно излишние комиссии — долей таких перекрытий определяется. У меня пока, вроде, не особо актуально.
Про один таймфрейм (M1) и унифицированное исполнение (лимитки) уже выше поминали. Все страты на одном тикере не сами выставляют ордера, а отправляют хочухи {цена, объем, знак} на следующий бар в общий котел. Там вычисляется общая позиция в стакане, из нее вычитается текущая позиция, сначала накатываются отмены заявок, потом добавления.
Код интернализации действительно срабатывает очень редко, он кстати на заставке профиля :). Но сведение заявок от десятков страт к 1-2 транзакциям полезно каждый день, без него брокер бы меня давно придушил за к-во транзакций/сек.
Внутри бара исполнение еще много чего делает, на практике реакция на изменение спреда много раз в минуту. Но для стратегий время нарезано по минутам, чаще они менять мнение не могут. При совершении трейдов по ордерам промежуточный слой раздает позиции по стратегиям, в справедливых пропорциях и с учетом реальной цены трейда.
По каждой стратегии на основе этих виртуальных трейдов независимо считаются все метрики — профит, ДД текущий/максимальный, рекавери, профит фактор, средний трейд и т.д. Может быть так, что одна страта в лонг, другая там же в шорт. Внутри робота бурлят страсти, а на бирже общая поза 0.
Разнонаправленные позы бывают нередко, но вероятность того, что зеркальные стратегии примут решение встать в разные стороны именно таки на одном и том же баре, околоноля. Если такое происходит, то даже в лог 1 уровня пишется запись типа «охнихренасебе случай»
Котировки группы ВТБ в ходе торгов 16 апреля поднялись на 1,15%, до 94,82 руб. за акцию.Конвертация бумаг банка не приведет к непосредственному изменению их стоимости: суть процесса сводится к...
ПАО «МГКЛ» получило международный кредитный рейтинг
Компания стала первым российским эмитентом, которому в Индии присвоен кредитный рейтинг в национальной валюте по международной шкале ПАО «МГКЛ» получило долгосрочный кредитный рейтинг по...
Валютные пары с середины прошлого года пребывают в широком боковике. Последние три недели они непрерывно снижались и почти приблизились к тем уровням, от которых может стартовать разворот наверх....
X5 операционные результаты 1 кв. 2026 г. - рост выручки ниже прогноза
X5 опубликовала операционные результаты за 1 квартал 2026 года. Выручка выросла на 11,3% до 1,19 трлн рублей. Сопоставимая выручка прибавила 6,1% при росте среднего чека на 7,9% и падении...
Бекас, я уже несколько раз писал — не зависит — есть, конечно, много разбирающихся во всем экспердов, рассказывающих, что нейронки — это обычные алгоритмы или вообще асу, но нет, это не обычные, и ...
— Отгрузки из Новороссийска рухнули на 73,2% (до 19 тыс. тонн). Балтийские порты Приморск и Усть-Луга сохранили объёмы на уровне предыдущей недели (54 и 46 тыс. тонн соответственно).снятие санкций мал...
Alvin_, а тут незачем усредняться… стоимость тела дышит в лучших пределах, чем некоторые эмитенты с более ликвидным рейтингом могут себе позволить. А там дальше только ванговать… фонду кажется целе...
МОЛНИЯ! Хуситы пригрозили закрыть Баб-эль-Мандебский пролив из-за Трампа
Хуситы пообещали закрыть важный для торговли энергоресурсами Баб-эль-Мандебский пролив, если США продолжат мешать установ...
Покидая пост президента, он напомнил о кризисах, которые пережила страна, и принес извинения гражданам: «Сегодня я обращаюсь к вам в последний раз как президент Болгарии. Прежде всего я хотел бы попро...
таймфрейм — один, самый мелкий
Послушаю в сторонке).
У меня архитектура такая, что стратегия-TF-всеТикеры — сигналы на исполнение брокеру в одно время улетают (последовательно, но есть момент времени где я уже вижу все сигналы). А вот соседние такие же комбинации, например, другая стратегия — они уже «сами по себе» и нигде нету участка где мы ждём отстающих. Теоретически я могу ждать пока все подтянутся и дальше какую угодно логику натягивать, в т.ч. сальдировать и выводить на рынок только разницу, но в этом случае либо надо ждать самых медленных ну либо ждать какое-то время в которое N% сигналов укладывается, уложившихся сводить, остальные без сведения. В общем в любом случае «ждать» — это какие-то доп. расходы (на проскальзывании), скомпенсирует ли оно излишние комиссии — долей таких перекрытий определяется. У меня пока, вроде, не особо актуально.
Про один таймфрейм (M1) и унифицированное исполнение (лимитки) уже выше поминали. Все страты на одном тикере не сами выставляют ордера, а отправляют хочухи {цена, объем, знак} на следующий бар в общий котел. Там вычисляется общая позиция в стакане, из нее вычитается текущая позиция, сначала накатываются отмены заявок, потом добавления.
Код интернализации действительно срабатывает очень редко, он кстати на заставке профиля :). Но сведение заявок от десятков страт к 1-2 транзакциям полезно каждый день, без него брокер бы меня давно придушил за к-во транзакций/сек.
Внутри бара исполнение еще много чего делает, на практике реакция на изменение спреда много раз в минуту. Но для стратегий время нарезано по минутам, чаще они менять мнение не могут. При совершении трейдов по ордерам промежуточный слой раздает позиции по стратегиям, в справедливых пропорциях и с учетом реальной цены трейда.
По каждой стратегии на основе этих виртуальных трейдов независимо считаются все метрики — профит, ДД текущий/максимальный, рекавери, профит фактор, средний трейд и т.д. Может быть так, что одна страта в лонг, другая там же в шорт. Внутри робота бурлят страсти, а на бирже общая поза 0.
Разнонаправленные позы бывают нередко, но вероятность того, что зеркальные стратегии примут решение встать в разные стороны именно таки на одном и том же баре, околоноля. Если такое происходит, то даже в лог 1 уровня пишется запись типа «охнихренасебе случай»