John Ehlers & Ric Way Zero-Lag EMA (well almost)
All smoothing filters and moving averages have lag. It’s a law. The lag is necessary because the smoothing is done using past data. Therefore, the averaging includes the effects of the data several bars ago. In this article we show you how to remove a selected amount of lag from an Exponential Moving Average (EMA). Removing all the lag is not necessarily a good thing because with no lag the indicator would just track out the price you were filtering. That is, the amount of lag removed is a tradeoff with the amount of smoothing you are willing to forgo.
The Zero-Lag is included in all strategies and can be used in the moving average toolbox and as a directional filter.
The below image demonstrates the zerolag compared with a standard EMA.