Скрытая марковская модель (фильтр режима)

Скрытая марковская модель (HMM) — статистическая модель, в которой рынок считается переходящим между небольшим числом ненаблюдаемых состояний, например медвежьим, боковым и бычьим, и каждое состояние порождает наблюдения вроде барных доходностей со своим распределением; будучи подогнанной на окне баров, она возвращает наиболее вероятный режим для каждого бара вместе с вероятностью.

Senzoukria · Глоссарий · Обновлено: сентябрь 2026


Что предполагает модель

HMM задаётся двумя составляющими. Матрица переходов даёт вероятность остаться в состоянии или перейти в другое на следующем баре; распределение эмиссии задаёт для каждого состояния, как разбросаны наблюдаемые значения. В гауссовской версии у каждого состояния своё среднее и своя дисперсия доходностей. Ни состояния, ни переходы напрямую не наблюдаются: их выводят из последовательности баров.

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

Что она может наблюдать

  • Доходности: логарифмические доходности баров. Это классическая квантовая модель режима, и полученные состояния описывают поведение цены: нисходящий тренд, боковик, восходящий тренд.
  • Дельта: дисбаланс потока заявок бара, дельта, делённая на объём, где дельта — объём по ask минус объём по bid. Тогда скрытое состояние описывает агрессию, а не цену. Два бара могут дать одинаковую доходность при противоположном потоке, и этот источник их различает.
  • Состояния упорядочены по среднему, поэтому состояние 0 всегда самое медвежье, а последнее — самое бычье, какой бы источник ни использовался.

Как читать её как фильтр

Фильтр режима не порождает входы. Он отвечает на вопрос, присутствуют ли сейчас условия, под которые строилась стратегия. Правило возврата к среднему, например, можно ограничить боковым состоянием и выключать в выраженно направленных. Ожидаемая оставшаяся длительность режима, выведенная из вероятности в нём остаться, — оценка в рамках допущений модели, а не прогноз следующего бара.

  • Низкая уверенность вблизи смены состояния нормальна. Модель не уверена ровно тогда, когда режим разворачивается.
  • Подгонка зависит от окна. Подгонка на 500 барах и на 2000 барах может пометить один и тот же бар по-разному.
  • Переподгонка на каждом тике заставляла бы метки скакать; разумная реализация переподгоняет на закрытии бара и декодирует текущий бар против замороженной модели.

В Senzoukria

Наложение значится среди индикаторов footprint как HMM Regime (quant) и описано как медвежий / боковой / бычий режимы, подогнанные на барах, с уверенностью модели. Его настройки: число состояний (от 2 до 4), объект наблюдения (доходности или дельта), окно подгонки в барах и оформление полосы с необязательной подсветкой колонок. В редакторе скриптов есть также шаблон на Python «Возврат к среднему с учётом режима (HMM + Хёрст)», который сначала исключает кризисный режим через HMM, затем входит по z-оценке и подтверждает по Хёрсту; он существует только на Python, требует numpy и, как и остальные шаблоны, работает на симулированном счёте или в Replay, пока автопилот не взведён вручную.

Типичные ошибки

  • Читать метку режима как прогноз, а не как наиболее вероятное описание уже увиденных баров.
  • Взять четыре состояния на коротком окне и принять лишние состояния за понимание, тогда как они в основном подогнаны под шум.
  • Подбирать окно подгонки, пока метки не совпадут с графиком, который вам уже нравится, и считать результат подтверждённым.
  • Забывать, что источнику «дельта» нужны исполненные объёмы по bid и ask: на потоке без классификации стороны модели нечего осмысленно наблюдать.

Эта страница на других языках

Частые вопросы

Чем режим HMM отличается от трендового фильтра на скользящей средней?
Фильтр на скользящей средней применяет к ценам фиксированное правило и не имеет понятия неопределённости. HMM выводит состояния из распределения доходностей или потока, учитывает устойчивость режима через вероятности переходов и сообщает, насколько уверена. Она гибче и одновременно чувствительнее к окну и к числу состояний, которое её просят найти.
Что означает число уверенности?
Это апостериорная вероятность показанного состояния для этого бара при подогнанной модели и данных наблюдениях. Значение около единицы означает, что другие состояния модель считает для этого бара неправдоподобными; значение около единицы, делённой на число состояний, — что она их не различает. Это утверждение о модели, а не вероятность того, что сделка сработает.
Может ли фильтр режима сам выставлять или блокировать ордера?
Нет. Это наложение и компонент скриптовой стратегии. Любой ордер всё равно проходит через стратегию на симулированном счёте, в Replay или через необязательный автопилот, который нужно явно взвести на совместимом счёте, с его собственными лимитами.