Concept

ZLEMA

ZLEMA, also known as zero-lag EMA, is a Trend concept. The Library holds 3 implementations, each one a working definition you can pull into Quant.

Top ZLEMA indicators

3 total

What is a ZLEMA?

A ZLEMA (zero-lag exponential moving average) is an EMA applied to a de-lagged version of price rather than to price itself. The standard construction, usually credited to John Ehlers and Ric Way, works like this: compute a lag of (length minus 1) divided by 2 bars, build a modified input equal to twice the current price minus the price from that many bars back, then run a normal EMA of the chosen length over the modified series. Adding the recent change back into price cancels much of the phase delay ordinary smoothing introduces.

The cancellation is really extrapolation: the modified input assumes the move of the last half-window continues, so a ZLEMA hugs trends closely and turns quickly, at the price of overshooting when the market snaps back. The article that popularized zero-lag smoothing carried the qualifier "well, almost" in its own title, which is the honest way to read the name. Lag is reduced, not eliminated, and the reduction is paid for with false turns a slower average would have smoothed through.

How to calculate a ZLEMA

The construction de-lags the input first, then smooths it. For a length N:

  1. 1Compute the lag as (N minus 1) divided by 2, rounded to a whole number of bars.
  2. 2Build the de-lagged input: two times the current price, minus the price from lag bars ago.
  3. 3Apply a standard EMA of length N to that de-lagged series and plot the result.
  4. 4Sanity-check against a plain EMA of the same length: the ZLEMA should sit closer to price in trends and cross earlier at turns, including some turns that never follow through.

How traders use it

  • In crossover setups where EMA lag is the main complaint: price/ZLEMA or fast/slow ZLEMA pairs signal earlier, at the cost of more failed crosses.
  • As a drop-in smoother inside other indicators; the zero-lag MACD is the best-known example, rebuilding both of MACD's averages from de-lagged inputs.
  • As a tighter trend baseline for pullback entries and trailing logic, with the line's slope doubling as a quick regime read that flips sooner than an equal-length EMA's.

ZLEMA vs other low-lag averages

EMA: The EMA smooths raw price and accepts the resulting lag. The ZLEMA keeps the same smoother but feeds it a momentum-augmented input, so it tracks tighter and turns sooner while carrying overshoot risk the EMA does not have.

DEMA: DEMA attacks lag inside the smoother, doubling the EMA and subtracting an EMA of the EMA. ZLEMA attacks lag before smoothing by de-lagging the input series. Both are faster than a plain EMA; the machinery differs.

HMA: The HMA does its de-lagging with weighted moving averages plus a final square-root-length smoothing pass. It is typically smoother than a ZLEMA of similar speed, but both share the family trait: less lag, more overshoot.

Related concepts · Moving-average lineage

Concept family

Trend

100 concepts mapped · 88 in the Library

ZLEMA FAQ

Is the ZLEMA really zero lag?

No, and its popularizers said so: the article that spread the technique carried the qualifier "well, almost" in its title. The de-lagging step removes much of the phase delay by extrapolating the last half-window's change forward, which works while the move persists and overshoots when it reverses sharply. Expect reduced lag rather than none, and more false turns than a plain EMA.

When should I use a ZLEMA instead of an EMA?

When lateness costs you more than noise. ZLEMA crossovers and slope changes arrive earlier, which helps in fast, trending conditions; the same sensitivity produces extra whipsaw in ranges. A common compromise is using the ZLEMA where speed matters most, such as exits or trailing, keeping a calmer average for regime, and testing both on your market.

Can a ZLEMA be used inside MACD or other indicators?

Yes. Because it is just an EMA of a modified input, a ZLEMA can replace the EMA anywhere one appears: MACD lines, signal lines, oscillator smoothing, or band centers. Zero-lag MACD variants are the most common application. The swap speeds every signal up and raises the false-positive rate, so re-test any system after making it.

Build ZLEMA your way.

Quant writes, tests, and refines it with you — then it runs on LuxAlgo charting or ports to TradingView.