Обсуждение статьи "Категориальная скрытая марковская модель на языке MQL5"

 

Опубликована статья Категориальная скрытая марковская модель на языке MQL5:

В статье подробно рассматриваются теоретические основы и практическая реализация скрытой марковской модели с категориальными эмиссиями (Categorical HMM) на языке MQL5. На конкретных примерах демонстрируются процессы инференса, итерационного обучения параметров, онлайн-фильтрации, а также методология выбора оптимальной архитектуры модели по информационным критериям AIC/BIC.

Предметом исследования данной статьи является категориальная скрытая марковская модель (Categorical Hidden Markov Model, HMM) — классический представитель класса SSM с дискретными латентными состояниями и категориальным распределением наблюдаемых данных. Переходы между состояниями в ней описываются с помощью матрицы переходных вероятностей.

Например, модель позволяет по последовательности рыночных событий (белая или чёрная свеча) определять скрытые режимы рынка. В одном режиме (назовём его восходящим трендом) белые свечи встречаются значительно чаще, в другом (нисходящий тренд) — чаще чёрные, в третьем (флэт) — их вероятности равны. Сами режимы мы, конечно, не наблюдаем, они скрыты. Задача модели — угадать текущее состояние рынка, анализируя лишь доступный результат (цвет свечей). 

Для проверки подобных гипотез на языке MQL5 был реализован класс CCategoricalHMM. На простых и наглядных примерах мы разберём основные возможности класса:
  • вычисление апостериорных вероятностей скрытых состояний (Inference),
  • обучение параметров модели с помощью EM-алгоритма (Fit),
  • генерацию синтетических данных (Sample),
  • выбор оптимального числа скрытых состояний с помощью критериев AIC и BIC (Model Selection),
  • онлайн-фильтрацию скрытых состояний в реальном времени (Filter).


    Автор: Evgeniy Chernish

     
    From a learning perspective you write very interesting articles.Since these are very advanced topics, it would be more helpful if you could show how they can be used in trading with a few examples.For example how to   use the online filtering of hidden states filter in real time?Is this a substitute to classic moving averages ?How to benefit from  EM algorithm (Fit) etc..?
     
    cemal #:
    From a learning perspective you write very interesting articles.Since these are very advanced topics, it would be more helpful if you could show how they can be used in trading with a few examples.For example how to   use the online filtering of hidden states filter in real time?Is this a substitute to classic moving averages ?How to benefit from  EM algorithm (Fit) etc..?

    Благодарю за отзыв.

    Смотрите, фильтрация и скользящее среднее это совершенно разные вещи. СС — это просто среднее вычисленное в скользящем окне. Фильтрация — это процесс вычисления распределения вероятностей скрытых состояний. Это набор вероятностей. То есть оценка того, в каком состоянии мы пребываем в текущий момент времени. Если вероятность выше для состояния тренда вверх, значит рынок, скорее всего, находится в этом состоянии и тогда можно открываться по тренду. Если вероятность находиться в состоянии шума(шансы белой свечи 50/50) выше, значит сейчас рынок случаен и открывать сделки не рекомендуется. Вот это основная идея.  Поэтому, если вы используете скользящие средние для определения точки входа, то HMM это предохранитель, который не даст вам открыть сделку, если он считает, что тренда нет в данный момент.

    Но прежде чем приступать к реализации торгового алгоритма, нужно эти скрытые состояния обнаружить. Каким образом, если у нас есть только набор данных ? С помощью алгоритма обучения (EM). Это как поиск параметров в MLP через градиентный спуск. Анализируя полученные параметры, мы можем сделать вывод, присутствуют ли вообще в данных какие-то скрытые состояния или рынок находится в хаосе и режим только один (одинаковые вероятности эмиссий для каждого состояния). 

    Потренируйте  модель для  случая монетки (белая/черная свеча) для двух состояний(честная/смещенная), Вы  тогда сможете лучше понять возможности модели.