Zero Lag: как работает индикатор ZLEMA

Обложка статьи «Zero Lag: как работает индикатор ZLEMA»: Учебная схема: ступенька цены, быстрая линия выходит за неё, обычная средняя отстаёт; числа условные

Что означает Zero Lag EMA?

Zero Lag EMA, или ZLEMA, означает экспоненциальную скользящую среднюю, которую считают по цене с поправкой на отставание. Документация QuantConnect описывает ZLEMA как индикатор, цель которого убрать задержку, присущую трендовым индикаторам с усреднением цены. Слово «цель» здесь важное: так описан замысел метода, нулевой задержки на любом графике документация не обещает. Справка Sierra Chart называет авторами индикатора Джона Элерса и Рика Уэя.

Поправка считается в три шага. Берут период N и находят сдвиг: от N отнимают 1 и делят пополам, то есть (N - 1) / 2. Sierra Chart округляет результат вверх, в коде QuantConnect стоит округление до целого, для нечётного периода оба способа дают одно число. Потом из удвоенного текущего закрытия вычитают закрытие, которое было сдвиг баров назад. Получается поправленная цена, и уже её сглаживает EMA с тем же периодом и коэффициентом 2 / (N + 1).

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

Как ZLEMA уменьшает задержку: пример с периодом 5

ZLEMA уменьшает задержку тем, что при росте подаёт в среднюю число больше самой цены, а при падении меньше. Проверим на учебном расчёте. Период 5, сдвиг 2 бара, коэффициент равен одной трети. До примера цена десять баров подряд закрывалась на 100, обе линии прогреты и равны 100. Дальше идут два закрытия по 110 и два по 100.

БарЗакрытиеЗакрытие 2 бара назадПоправленная ценаZLEMA(5)EMA(5)
1110100120106,67103,33
2110100120111,11105,56
310011090104,07103,70
41001109099,38102,47

Первая строка руками. Поправленная цена: 2 × 110 - 100 = 120. ZLEMA берёт треть от 120 и две трети от прошлого значения 100, выходит 106,67. Обычная EMA берёт треть от самого закрытия 110 и даёт 103,33. За один бар ZLEMA прошла две трети пути до новой цены, EMA одну треть.

Это учебный расчёт на условных числах. Котировок и результата торговой платформы здесь нет.

Учебный расчёт: закрытия, ZLEMA(5) и EMA(5) на одной ступеньке цены

учебная схема · не котировка и не сигнал

Закрытия и ZLEMA(5)

Закрытия и ZLEMA(5)124ZLEMA(5)

Закрытия и EMA(5)

Закрытия и EMA(5)EMA(5)
  1. 1Бар 1: закрытие 110, ZLEMA уже 106,67, EMA только 103,33
  2. 2Бар 2: ZLEMA 111,11, это выше закрытия 110. EMA в этот момент 105,56
  3. 4Бар 4: цена вернулась к 100, ZLEMA 99,38 и ушла ниже закрытия. EMA ещё 102,47
Схема учебная, числа условные. Ломаная с точками показывает закрытия: два бара по 100 до примера, потом четыре бара из таблицы. Линия без точек слева показывает ZLEMA(5), справа обычную EMA(5).

Почему линия может обогнать цену?

Линия может обогнать цену, потому что поправленная цена оказывается выше любого закрытия на графике: в примере это 120 при закрытии 110. На втором баре ZLEMA равна 111,11 и стоит выше закрытия на 1,11 пункта, хотя цена выше 110 не поднималась. Обычная EMA так не умеет. Она каждый раз встаёт между своим прошлым значением и ценой, поэтому на том же баре равна 105,56.

При возврате цены картина зеркальная. На третьем баре поправленная цена уже 90, и на четвёртом ZLEMA опускается до 99,38, ниже закрытия 100. EMA в это время ещё 102,47. Выходит, быстрый поворот оплачен выносом линии за цену в обе стороны. Запаздывание индикатора у ZLEMA меньше, но остаётся: на первом баре линия прошла только две трети движения. Другие способы сократить задержку разобраны в материале про трендовые индикаторы без запаздывания и перерисовки.

Что проверить перед сравнением с обычной EMA?

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

  • Исходный ряд. Обе линии должны считаться по одной цене, например по закрытию.
  • Период индикатора. ZLEMA(5) сравнивают с EMA(5). Рядом с EMA(20) разницу даст уже сам период.
  • Округление сдвига. При чётном периоде (N - 1) / 2 получается дробным. Sierra Chart округляет её вверх, другая платформа может округлить иначе.
  • Прогрев. В коде QuantConnect период прогрева равен N плюс половина N с округлением вниз, для периода 5 это 7 баров. Sierra Chart показывает линию только с N-го бара.
  • Закрытие бара. Пример посчитан по закрытым барам. На текущем баре цена ещё меняется, и линия меняется вместе с ней.

Риски и ограничения. Числа в таблице условные: это проверка формулы, рыночных данных и теста стратегии здесь нет. Расчёт следует коду QuantConnect и справке Sierra Chart, на другой платформе округление сдвига и первые значения могут отличаться. Название Zero Lag носят и другие скрипты, например варианты MACD и стохастика, у них свои алгоритмы, и этот разбор на них не переносится. Индикатор Zero Lag EMA описывает прошлые бары и не обещает результата сделки. Не перерисовывается ли конкретный скрипт, проверяют отдельно на нём самом. Торговля связана с риском потери капитала. Материал образовательный, это не индивидуальная инвестиционная рекомендация.

Источники

График TradingView с сигналами Buy и Sell индикатора Midas
Midas multi-индикатор for TradingViewОдин из самых продвинутых индикаторов для трейдинга
  • Сигналы без перерисовки
  • Интерактивный теханализ
  • 7 стратегий на выбор
Midas multi-индикатор for TradingViewСигнал, стоп и 3 цели - прямо на графике
  • Сигнал фиксируется по закрытию свечи
  • Стоп и 3 цели строятся автоматически
  • План сделки виден до входа