MACDt = EMA(C, Nfast) – EMA(C, Nslow).
Для определения направления MACD используется сигнальная линия, которая вычисляется как
Signalt = EMA(MACD, Nsignal).
Отдельно от двух предыдущих анализируется линия гистограмма индикатора MACD, которая строится как разность между основной и сигнальной линией.
MACDHt = MACDt – Signalt.
Сигналы Histogram
- Пересечение индикатора Histogram с нулевым уровнем – эквивалентно пересечению основной линии индикатора MACD со своей сигнальной линией.
- Для получения упреждающих сигналов используется изменение направления движения индикатора Histogram. Можно дополнительно фильтровать полученные сигналы
- Сигналы только в направлении знака индикатора Histogram.
- Сигнал шорт – после понижающихся максимумах, сигнал лонг – после повышающихся минимумах.
- Анализ дивергенций между экстремумами индикатора Histogram и ценой.
Индикатор повторяет встроенный, но отображение без основного MACD.
Автор: Джеральд Аппель (Gerald Appel)
Источник: Джеральд Аппель, Технический анализ. Эффективные инструменты для активного инвестора.
Пример:
Исходный текст:
Код: Выделить всё
function Initialize()
{
IndicatorName = "MACDH";
AddInput("Input", Inputs.Price);
PriceStudy = false;
AddSeries("MACDH", DrawAs.Custom, Color.Green, AxisType.ZeroBased);
AddParameter("pFast", 5);
AddParameter("pSlow", 96,2);
AddParameter("Period", 8);
}
function Evaluate()
{
// AlfaDirect. 2015. OX
// MACD Histogram (MACDH) - Гистограмма MACD
// Цвет - определяется направлением изменения MACD
if (CurrentIndex < 1)
MACDH = 0.0;
else
{
MACDH = MACD(Input, pFast, pSlow, Period).GetValue("Histogram", 0);
if (MACDH[0] > MACDH[-1])
MACDH.DrawHistogram(Color.Green, Color.Green, 50);
else
MACDH.DrawHistogram(Color.Red, Color.Red, 50);
}
}