Почему мы убрали сигналы grade A
Контринтуитивно: убрав самые сильные сетапы из внутридневной книги, стратегия стала прибыльнее, стабильнее и проще в сайзинге. Данные сравнения и аргументация, к которой мы пришли за год параллельной работы A и B.
Первые восемнадцать месяцев внутридневной стратегии — общий обзор которого в посте как мы торгуем уровни — мы держали трёхуровневую модель grading’а конфлюенции: A, B и C. Каждый уровень — это комбинация сигналов, которые должны сойтись на уровне: согласие на нескольких таймфреймах, volume profile, контекст рыночной структуры, постура по funding. A означал «все согласны сильно». B — «большинство согласно, один мягкий несогласный голос». C был исследовательский, на реальных деньгах мы его никогда не торговали.
С интуицией спорить было трудно. Grade A реже, чище, уверенность выше; ожидаешь win rate повыше, средний R пожирнее и просадку поспокойнее. Заходя в период, мы рассчитывали ровно на это.
Три квартала мы держали A и B параллельно, обе на реальных деньгах, обе маленьким размером. Тот же набор инструментов, тот же стек исполнения, та же логика выхода. Отличался только фильтр на входе. К концу третьего квартала таблица выглядела так:
| A grade | B grade | |
|---|---|---|
| Сделок / 90д | ~14 | ~78 |
| Win rate | 52.9% | 54.8% |
| Avg R / сделку | +0.21 | +0.18 |
| Stddev R | 0.94 | 0.71 |
| 90д R итого | +2.9 | +14.0 |
| Max просадка | -3.4 R | -2.1 R |
У A средний R оказался чуть жирнее, win rate — чуть ниже, но напрягло стандартное отклонение. На сделку дисперсия у A была шире на 33%, чем у B, при 18% от количества сделок. Когда это компаундится за квартал, A получается громче, медленнее и в итоге проигрывает по Sharpe. Через квартал мы убрали A из живой книги.
Первое объяснение, которое мы рассмотрели и отбросили, — недостаток статистической мощности. Grade A даёт ~14 сделок за квартал — мало для уверенного сайзинга. Сайзеру по Sharpe нужны несколько десятков наблюдений, чтобы стабилизировать веса. На одном A сайзинг всегда отставал от режима на две-три недели; на B с ~78 сделками сайзер обычно был в пределах недели от оптимума. Этого мы и ждали; но само по себе это разрыв в дисперсии не объясняет.
Второе объяснение объясняет. Сигналы grade A кучкуются. Когда макрокартинка выстраивается, вы за несколько часов получаете три входа A по коррелированным тикерам. Портфель думает, что у него три независимых edge’а, а по факту — один и тот же edge, выраженный трижды. Просадки на A всегда были резче, чем на B, ровно по этой причине: когда общий драйвер шёл против, все три позиции теряли одновременно. Сделки B капают через более широкое окно наблюдения и так не группируются.
Третье объяснение — то, к которому мы шли год: информационный edge живёт в несогласии. A — это «все согласны», то есть, по определению, консенсус. B — это «большинство согласно, один мягкий несогласный голос», и этот несогласный голос — часть сделки, ещё не заложенная в консенсус. Те сделки B, что отрабатывают, отрабатывают потому, что несогласный был прав, а консенсус — это толпа. Upside у B при правильности больше, потому что «быть правым на B» означает «толпа ошибалась». Сделки A, что отрабатывают, отрабатывают потому, что консенсус был прав — нормально само по себе, но консенсус уже двинул цену до того, как мы туда подошли.
Машину grading’а мы оставили. Просто перестали торговать A. Grader по-прежнему считает A; используем его как сигнал подавления — когда срабатывает grade A, входы B по этому инструменту глушатся на следующие четыре часа, потому что консенсус уже двинулся. Это подавление стоит около +0.04 R в среднем на пропущенную сделку — это разница между чистым B и «B с подавлением от A» на тех же данных. Хорошее напоминание, что отброшенная модель ещё может зарабатывать как фильтр для другой модели.
Сдвинулся и потолок размера. С A вне книги потолок на сделку упал с 1.0 R до 0.6 R, потому что B срабатывает чаще, и notional по стратегии надо ограничивать по кластеру коррелированных B, а не только на сделку.
Общий урок неприятный. Если у вас модель, где можно градировать собственные сигналы — A-D, 1-5, как угодно, — сильнейший уровень, скорее всего, не то место, где стоит жить. Сильнейший уровень — это консенсус, а консенсус по определению — часть движения, которая уже произошла. Уровень ниже — там сидит несогласие, а там, где сидит несогласие, — там и edge.
Та же логика почти один в один применима к портфельной части, только на другом временном масштабе. У классификатора режимов есть свой аналог grade A — моменты, когда все входные признаки согласны с режимом. Эти же моменты — когда консенсус максимально заложен в цену. Изучаем, не должен ли аллокатор активов фейдить такие единогласные показания, а не идти за ними. Ранний backtest обнадёживает. Подробнее — когда наберётся квартал forward-данных.
— inite team
- 2026-04-10Как мы торгуем уровни
Движок зон, MTF-конфлюенция, лимитный maker-вход, сайзинг по Sharpe, поправка на funding. Внутридневная сторона целиком, от и до.
- 2026-05-03Классификатор режимов, в одной заметке
Что сидит в сердце сбалансированной стратегии: HMM с тремя состояниями на вручную подобранном векторе наблюдений и потолки экспозиции под режимы рынка вместо ставок под режим.
- 2026-05-06Просадка как акселератор, а не тормоз
Почему портфель режет риск на −8% — сильно раньше целевого диапазона −15% — и почему срез частичный, а не полный. Математика, философия и пограничные случаи, сломавшие первые три дизайна.