Технический индикатор Адаптивное Скользящее Среднее (Adaptive Moving Average, AMA) используется для построения скользящей средней с малой чувствительностью к шумам в ценовых сериях и характеризуется минимальным запаздыванием для определения тренда. Его разработал и описал Перри Кауфман (Perry Kaufman) в своей книге "Smarter Trading".
Один из недостатков различных алгоритмов сглаживания ценовых рядов заключается в том, что случайные всплески цены могут приводить к появлению ложных сигналов о появлении тренда. С другой стороны, сглаживание приводит к неизбежному запаздыванию сигнала об остановке или развороте тренда. Данный индикатор был разработан с тем, чтобы обойти два этих недостатка.
Вы можете проверить торговые сигналы данного индикатора, создав советник при помощи MQL5 Wizard. |
---|
Для определения текущего состояния рынка Кауфман ввел понятие коэффициента эффективности (Efficiency Ratio, ER), который измеряется по формуле:
ER(i) = Signal(i)/Noise(i)
где:
ER(i) — текущее значение коэффициента эффективности
Signal(i) = ABS(Price(i) - Price(i - N)) — текущее значение сигнала, абсолютное значение разности между текущей ценой и ценой N периодов назад;
Noise(i) = Sum(ABS(Price(i) - Price(i-1)),N) — текущее значение шума, сумма абсолютных значений разности между ценой текущего и ценой предыдущего периода за N периодов.
При сильном тренде коэффициент эффективности (ER) будет стремиться к 1, при отсутствии направленного движения он будет чуть более 0. Полученное значение ER используется в формуле экспоненциального сглаживания:
EMA(i) = Price(i) * SC + EMA(i-1) * (1 - SC)
где:
SC = 2/(n+1) — константа сглаживания EMA (smoothing constant), n — период экспоненциальной скользящей;
EMA(i—1) — предыдущее значение EMA.
Необходимо, чтобы сглаживающий коэффициент для быстрого рынка был как для EMA с периодом 2 (fast SC = 2/(2+1) = 0.6667), а для периода отсутствия тренда период EMA равнялся 30 (slow SC = 2/(30+1) = 0.06452). Таким образом, вводится новая изменяющаяся константа сглаживания (scaled smoothing constant) SSC:
SSC(i) = (ER(i) * ( fast SC - slow SC) + slow SC
или
SSC(i) = ER(i) * 0.60215 + 0.06425
Для более эффективного воздействия полученной изменяющейся сглаживающей константы на период усреднения Кауфман рекомендует возводить ее в квадрат.
Окончательная формула для расчета:
AMA(i) = Price(i) * (SSC(i)^2) + AMA(i-1)*(1-SSC(i)^2)
или (после преобразования):
AMA(i) = AMA(i-1) + (SSC(i)^2) * (Price(i) - AMA(i-1))
где:
AMA(i) — текущее значение AMA;
AMA(i—1) — предыдущее значение AMA;
SSC(i) — текущее значение изменяющейся сглаживающей константы.