Индикатор RHA (Recursive Heiken Ashi)

Индикатор реализует идею вложенности и сходимости вычислений известного индикатора Heiken Ashi. Помимо собственно идеи демонстрируется возможность рисовать нестандартные бары с помощью пары цветных гистограмм.

Расчёт

Первый бар равен ценовому бару, остальные рассчитываются по формуле:

ha_close = mean(open, close, high, low)
ha_open  = mean(prev_open, prev_close)
ha_high  = max(high, open, close)
ha_low   = min(low, open, close)

, где:
  • ha_close, ha_open, ha_high, ha_low - новые значения бара
  • close, open, high, low - данные исходного бара
  • prev_open, prev_close - открытие и закрытие предыдущего бара
  • mean - среднее арифметическое
  • max, min - максимум и минимум

Так получается классический Heiken Ashi на основе ценовых данных.


Идея моего варианта индикатора в том, чтобы повторить эти вычисления на полученных барах снова и снова до тех пор, пока что-нибудь не получится. К счастью, уже примерно на 10-й итерации значения сходятся к некоторому стабильному состоянию, и делать больше 10-15 итераций смысла уже нет.

Очевидно, для этого есть математическое объяснение, но я не стал разбираться, удовлетворившись интересным результатом. Интересно здесь то, что получается примерно то же самое, что и стандартный HA, но сглаженный, причём без каких-либо субъективных значений параметров.


По сравнению с оригинальным HA сглаживаются лишь тела свечей, хвосты остаются теми же. Цвет (направление) может измениться, причём как с опозданием, так и с опережением.

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

Визуализация

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


В MT5 есть баг (mki#55), который мешает нормальному отображению подобных индикаторов.

В этом индикаторе есть возможность отображать исходную цену, так что можно использовать пару таких индикаторов - один для исходной цены (сверху) и второй для HA желаемого уровня вложенности (снизу), оригинальные бары при этом можно убрать с графика сбросом соответствующих цветов в None.


Кроме того, можно отображать оригинальные ценовые бары, но с цветом HA (см. параметр Color Only).

Проект

Исходный код скрипта и описание параметров находятся в хранилище: https://gitlab.com/fxcoder-mql/rha-mt5.