Индекс направленного движения (DMI)
Индекс направленного движения (Directional Movement Index, DMI) — это технический индикатор, разработанный Дж. Уэллсом Уайлдером в рамках его книги “Новые концепции в технических торговых системах”, опубликованной в 1978 году. DMI оценивает силу ценового тренда и помогает трейдерам различать трендовые и нетрендовые условия. Он служит инструментом как для следования за трендом, так и для фильтрации рыночного шума, способствуя более информированному принятию решений на финансовых рынках.
Компоненты DMI
DMI состоит из трех основных компонентов:
- Плюс-индикатор направленности (+DI): Этот индикатор измеряет восходящее движение или силу положительных изменений цены. Он учитывает наибольшую часть дневных максимумов за определенный период.
- Минус-индикатор направленности (-DI): Этот элемент фиксирует нисходящие ценовые движения и показывает силу отрицательных изменений цены, учитывая наибольшую часть дневных минимумов за определенный период.
- Средний индекс направленного движения (ADX): Этот компонент определяет общую силу тренда независимо от его направления. ADX выводится из сглаженных средних разности между +DI и -DI.
Расчет DMI
Чтобы понять компоненты DMI, сначала необходимо рассчитать истинный диапазон (TR), плюс-направленное движение (+DM) и минус-направленное движение (-DM).
- Истинный диапазон (TR): Максимальный диапазон ценового движения за данный период, который определяется следующим образом:
-
TR = max[(Максимум_t - Минимум_t), Максимум_t - Закрытие_{t-1} , Минимум_t - Закрытие_{t-1} ]
-
- Плюс-направленное движение (+DM): Только положительная часть ценового движения между текущим и предыдущим периодами:
- Если Максимум_t - Максимум_{t-1} > Минимум_{t-1} - Минимум_t и Максимум_t - Максимум_{t-1} > 0, тогда +DM = Максимум_t - Максимум_{t-1}; иначе +DM = 0
- Минус-направленное движение (-DM): Отрицательная часть ценового движения между текущим и предыдущим периодами:
- Если Минимум_{t-1} - Минимум_t > Максимум_t - Максимум_{t-1} и Минимум_{t-1} - Минимум_t > 0, тогда -DM = Минимум_{t-1} - Минимум_t; иначе -DM = 0
Сглаженные средние +DM и -DM за определенный период (обычно 14 дней) затем рассчитываются для получения плюс- и минус-индикаторов направленности:
- +DI = (SMMA(+DM) / TR) x 100
- -DI = (SMMA(-DM) / TR) x 100
Где SMMA означает сглаженное скользящее среднее. ADX затем вычисляется как сглаженное среднее индекса направленного движения (DX):
-
DX = ( +DI - -DI / (+DI + -DI)) x 100 - ADX = SMMA(DX)
Интерпретация DMI
Сила тренда
Значение ADX представляет общую силу тренда по шкале от 0 до 100:
- 0-20: Слабый тренд или рынок, вероятно, движется боком.
- 20-40: Формирующийся или умеренно сильный тренд.
- 40-60: Сильный тренд.
- 60-100: Очень сильный тренд.
Индикаторы направления
- Когда +DI выше -DI, это указывает на восходящий тренд.
- Когда -DI выше +DI, это указывает на нисходящий тренд.
Пересечения
Точки пересечения между +DI и -DI особенно значимы:
- Бычье пересечение происходит, когда +DI пересекает -DI снизу вверх, что предполагает потенциальный сигнал на покупку.
- Медвежье пересечение происходит, когда -DI пересекает +DI снизу вверх, что сигнализирует о потенциальной возможности продажи.
DMI в алгоритмической торговле
Системы алгоритмической торговли часто включают DMI как часть сложных торговых алгоритмов. DMI предлагает четкие количественные критерии, позволяющие торговым системам автоматически генерировать сигналы на покупку или продажу. Интегрируя DMI с другими индикаторами, такими как схождение-расхождение скользящих средних (MACD), индекс относительной силы (RSI) или полосы Боллинджера, алгоритмы могут повысить точность принятия решений и потенциально улучшить прибыльность.
Вот пара примеров использования индекса направленного движения в алгоритмической торговле:
Пример 1: Системы следования за трендом
Алгоритм следования за трендом может использовать ADX для подтверждения существования тренда. Система может:
- Открывать длинные позиции, когда ADX превышает порог (например, 25) и +DI находится выше -DI.
- Открывать короткие позиции, когда ADX превышает порог, но -DI находится выше +DI.
- Закрывать позиции, когда ADX падает ниже определенного значения (указывая на ослабление силы тренда).
Пример 2: Фильтрация бокового рынка
Другой пример использования — фильтрация бокового рынка:
- Если ADX падает ниже определенного порога (например, 20), алгоритм может избегать открытия новых направленных сделок, поскольку это указывает на меньшую вероятность формирования тренда.
- Этот фильтр также может применяться к стратегиям следования за трендом, чтобы избежать убытков в нетрендовые периоды.
Популярные провайдеры алгоритмической торговли
Несколько платформ и провайдеров алгоритмической торговли включают DMI в свои стратегии. Некоторые заметные примеры:
- QuantConnect: Облачная платформа алгоритмической торговли
- AlgoTrader: Институциональное программное обеспечение алгоритмической торговли для нескольких классов активов
- Zipline-reloaded: Открытая библиотека, поддерживаемая сообществом для образовательных целей и бэктестирования
Заключение
Индекс направленного движения (DMI) — мощный инструмент в арсенале как ручных, так и алгоритмических трейдеров. Его способность количественно оценивать силу тренда и предоставлять четкие сигналы на покупку и продажу делает его бесценным для разработки сложных торговых стратегий. При использовании в сочетании с другими техническими индикаторами DMI предлагает обогащенные инсайты и надежные торговые возможности, дополнительно подчеркивая его непреходящее значение в мире финансовых рынков.