Skip to content
On this page
  1. Key Takeaways
  2. What It Is
  3. The Intuition
  4. How It Works
  5. Worked Example
  6. Common Mistakes
  7. Frequently Asked Questions
  8. Sources
  9. Disclaimer
← All concepts
Technical AnalysisAdvanced5 min read

ZLEMA: Zero-Lag EMA That Tracks Price Faster

The **ZLEMA zero lag exponential moving average** is a variation of the EMA that subtracts older price data from the input before smoothing, so the resulting average tracks current price more closely. John Ehlers and Ric Way introduced the technique to attack the single biggest weakness of every classic moving average: lag.

Key Takeaways

  • ZLEMA reduces EMA lag by adding the current price to its own change over a half-period window before smoothing.
  • The de-lag offset is `(Period - 1) / 2`, so a 20-period ZLEMA uses prices about 10 bars ago to correct the input.
  • Traders often apply ZLEMA to short-term setups, since faster response also amplifies noise and whipsaws.
  • ZLEMA crossovers and slope changes lead a standard EMA by several bars in trending moves but mislead in choppy ranges.

Key Takeaways

  • ZLEMA reduces EMA lag by adding the current price to its own change over a half-period window before smoothing.
  • The de-lag offset is (Period - 1) / 2, so a 20-period ZLEMA uses prices about 10 bars ago to correct the input.
  • Traders often apply ZLEMA to short-term setups, since faster response also amplifies noise and whipsaws.
  • ZLEMA crossovers and slope changes lead a standard EMA by several bars in trending moves but mislead in choppy ranges.

What It Is

ZLEMA is a smoothed line plotted on a price chart, similar to an EMA, but built on a transformed input series instead of raw closes. The transformation subtracts an older price from the current price, then adds that difference back to the current price. The point is to push the input forward in time before any averaging happens.

Ehlers and Way published the method in a paper titled "Zero Lag (Well, Almost)." The "well, almost" matters. Perfect zero lag is impossible because any average uses past data, but ZLEMA gets close enough to be useful in fast markets.

The Intuition

Every moving average lags because it averages prices from the past. The further back the average looks, the smoother the line and the slower the response. Increase the period to cut noise and you fall further behind real price action.

ZLEMA attacks the problem at the input stage rather than the smoothing stage. The idea is simple: if a 20-period average is roughly 10 bars behind, take the price change over those 10 bars and add it to today's price first. The smoothed result then catches up.

How It Works

The construction has three steps.

Lag    = (Period - 1) / 2
Input  = Close + (Close - Close[Lag])
ZLEMA  = EMA(Input, Period)

The first line computes the lag offset. For a 20-period setting, Lag = 9 or 10 depending on rounding convention.

The second line creates a de-lagged input. It adds today's close to the change in close over the last Lag bars. If price rose 2 dollars over 10 bars, the input today is today's close plus 2 dollars. The smoother then averages those projected values.

The third line runs a standard EMA on the de-lagged series. The smoothing constant is the same as any EMA, alpha = 2 / (Period + 1).

Common settings range from 9 for short-term signals up to 50 for trend filtering. Many traders pair a fast and slow ZLEMA for crossover systems.

Worked Example

Assume a 20-period ZLEMA on a stock that has rallied steadily.

  • Today's close: 100.00 dollars
  • Close 10 bars ago: 92.00 dollars
  • Change over the window: 100.00 minus 92.00 equals 8.00 dollars

The de-lagged input today is 100.00 plus 8.00, or 108.00 dollars. The EMA smoother then takes 108.00 as the new data point and blends it with prior smoothed values using alpha = 2 / 21 = 0.0952.

For comparison, a standard 20-period EMA today would smooth the raw 100.00. The ZLEMA effectively pulls itself ahead by approximately the recent rate of change. In a steady uptrend it will sit much closer to current price than the EMA. In a sudden reversal, that same projection can overshoot for a few bars until the de-lag math catches up.

Common Mistakes

  1. Treating ZLEMA as noise-free. Faster response means more reaction to spikes. ZLEMA still whipsaws in sideways markets, sometimes worse than an SMA of the same period.
  2. Ignoring the lookback assumption. The de-lag uses a fixed half-period offset. If volatility regime changes, that offset can over- or under-correct, and the line drifts away from price.
  3. Using one ZLEMA for entries and exits. A single fast line creates many marginal signals. Pair with a slower filter or a regime indicator like ADX before acting.
  4. Confusing ZLEMA with Hull MA. Both reduce lag but use different methods. Hull uses weighted averages and a square-root smoothing pass; ZLEMA modifies the input itself.
  5. Backtesting without slippage. Faster signals often fire on bars with thin liquidity. Realistic backtests need bid-ask and partial-fill assumptions.

Frequently Asked Questions

What is ZLEMA zero lag exponential moving average in simple terms? ZLEMA is an exponential moving average that adjusts its input to look ahead by roughly half its period. The result tracks current price more closely than a standard EMA of the same length.

How does ZLEMA affect investment decisions? Faster response means earlier crossover and slope signals in trending markets, which can improve entry timing. In choppy markets the same speed produces extra false signals, so most users combine ZLEMA with a trend or volatility filter.

What is a real-world example of ZLEMA? On a daily chart of a steadily rising index, a 20-period ZLEMA will sit a few points closer to price than the matching 20-period EMA. When the index reverses sharply, ZLEMA reacts within one or two bars while the EMA can take five or more.

How can investors use ZLEMA effectively? Use ZLEMA as a fast component in a two-line system, paired with a longer EMA or SMA. Add a separate volatility filter such as ADX above 20 so that crossovers only trigger trades in confirmed trends.

How is ZLEMA different from a standard EMA? A standard EMA smooths raw closes, so it always trails real price. ZLEMA modifies the input first by adding the recent rate of change, so the smoother starts from a forward-projected value and ends up closer to current price.

Sources

  1. Ehlers, J. F. and Way, R. Zero Lag (Well, Almost). Mesa Software. https://www.mesasoftware.com/papers/ZeroLag.pdf
  2. Tulip Indicators. Zero-Lag Exponential Moving Average. https://tulipindicators.org/zlema
  3. Sierra Chart. Moving Average, Zero Lag Exponential. https://www.sierrachart.com/index.php?page=doc/StudiesReference.php&ID=191
  4. TrendSpider Learning Center. What is the Zero-Lag Exponential Moving Average. https://trendspider.com/learning-center/what-is-the-zero-lag-exponential-moving-average-zlema/

Disclaimer

This article is educational content only and is not financial advice. Nothing here is a recommendation to buy, sell, or hold any security. Consult a licensed advisor before making investment decisions.

The IWP Substack

You understand the concept. Now see it applied.

The Investing With Purpose Substack turns ideas like this into research and risk-managed trade plans on real stocks, updated every week.

Read on Substack (opens in a new tab)

Related concepts