2.25: Why Moving Averages Can Lie at Turning Points
At a turning point, the MA reports the prior regime as the present. EMA(50) signaled the SPX March 2020 bottom 27 bars late; cycle-mode detectors fired in 2-5 bars. Structural lag, not a tuning bug.
March 23, 2020. SPX bottoms at 2237 and rips 9% over the next two sessions. A trader watching an EMA(50) sees the moving average still pointed down. The 20-day MA is still under the 50-day MA. The price-cross-MA signal hasn't fired. By every MA-based reading, the trend is still down. By April 17, three weeks and 600 SPX points later, the EMA(20) finally crosses above the EMA(50). The classic "golden cross" arrives at 2875. The bottom was at 2237. The MA-based system missed a 28% move before signaling that a turn had happened.
The trader rationalizes the lag as "confirmation," shipping the system with a footnote that says "MA crossovers are confirmatory by design." The footnote is doing the work of pretending that a structural cost is a feature. The MA does not confirm the turn. It reports a weighted average of the past N bars, and at the turning point those bars are mostly from the prior regime. The MA's slope, level, and crossover signals all carry a delay that is determined by the lookback and the regime-change magnitude. The article "The Hidden Cost of Every Moving Average: Lag" gave the general lag formula. This article unpacks the specific failure mode at turning points and the three mechanisms by which MAs mislead.
A moving average at any turning point is not slow because the trader chose a bad lookback. It is slow because the construction averages the past, and at the turning point the past disagrees with the present. The lag is the price paid for the smoothing. Any MA-based turning point detector inherits this lag and converts it into a quantifiable cost: missed P&L, false confidence, and decisions made on stale state.
The lag is structural
A simple moving average at time t is:
$$ \text{SMA}_t \;=\; \frac{1}{N} \sum_{i=0}^{N-1} x_{t-i} $$
At a turning point that happened k bars ago (k less than N), the sum contains (N − k) bars from the prior regime and k bars from the new regime. Until k exceeds N/2, the prior regime dominates the average. The SMA's level reflects the old regime even when the most recent k bars all show the new direction.
For an EMA with smoothing constant α corresponding to a lookback of N bars, the equivalent statement holds with exponentially decaying weights. The most recent bar carries weight α (roughly 2/(N+1)); the bar from 5 bars ago still carries a non-negligible weight; the cumulative weight of the prior regime decays slowly. At a turning point k bars ago, the EMA's level is approximately:
$$ \text{EMA}_t \;\approx\; \alpha \sum_{i=0}^{k-1} (1-\alpha)^{i} \cdot x^{\text{new}}_{t-i} \;+\; (1-\alpha)^k \cdot \text{EMA}_{\text{pre-turn}} $$
The second term is the inertia from the prior regime. For α = 0.04 (EMA lookback ≈ 50), even 10 bars after a turn the prior regime still contributes (1 − 0.04)^10 ≈ 0.66 of the EMA's value. The EMA is still 66% the old regime, 34% the new regime. The level lies about the present state.
This is not a failure of EMA choice. Any linear filter that smooths the input over a window of N bars carries this property. The article "No Filter Is Predictive: What Traders Misunderstand About Smoothing" framed the general result: a filter's output at time t depends only on past inputs, and at a turning point those past inputs encode the past regime.
Three mechanisms of MA failure at turning points
Mechanism 1: direction lag
The MA's slope changes sign only after enough post-turn bars accumulate to flip the average. For an SMA(N), this happens approximately when k ≈ N/2 bars have passed since the turn, assuming a clean step change in direction. For an EMA(N), the slope flip is gradual and the unambiguous direction change arrives at roughly the same delay.
For an EMA(50) on a sharp turn at SPX, the slope flip typically arrives 25 to 30 bars after the price bottom. Half a year of weekly bars. A trader who waits for "the MA to start rising" before going long has paid 30 bars of carry on the wrong side of the trade.
Mechanism 2: crossover lag
Price-cross-MA: the price must move enough above the MA to register a crossover. At a turning point, the MA continues to fall (or rise) for several bars after the price has reversed. The crossing happens not when the price reverses, but when the price has run enough above the falling MA to clear it. For an EMA(50) at a major turn, this is typically 10 to 20 bars.
MA-cross-MA: the fast MA must overtake the slow MA. Both are lagging, and the lag difference is what drives the signal. For EMA(20) crossing EMA(50), the signal arrives roughly when the fast MA has accumulated enough new-regime data to outweigh the slow MA's inertia. For sharp turns, this is 15 to 30 bars.
The combined cost: any MA-crossover-based system loses the first 10-30 bars of the new trend by construction. The system is mechanically incapable of catching the turn near the inflection.
Mechanism 3: magnitude misrepresentation
The most insidious failure is not the lag itself but the false reading the lag produces. At 10 bars past a major bottom, the EMA(50) is still well above the current price. A trader looking at "close minus EMA(50)" reads a negative number and interprets it as "the trend is still down." The reality is that the trend has turned and the price is rising fast; the negative close-minus-MA reflects only how far the MA still has to fall to catch up to the new regime.
This produces false short signals exactly at the worst time. The structural decomposition is:
$$ \text{close} - \text{EMA}_t \;=\; \underbrace{(\text{close} - \text{trend}_{\text{true}})}_{\text{cycle/deviation}} \;+\; \underbrace{(\text{trend}_{\text{true}} - \text{EMA}_t)}_{\text{MA's lag from current trend}} $$
The trader assumes close-minus-MA measures the first term (current deviation from current trend). At turning points it is dominated by the second term (MA's lag from current trend). The reading is structurally biased toward "the trend is in the prior direction" because the MA is anchored to the prior regime.
Why shortening the lookback doesn't fix it
The naive response is to shorten the MA. EMA(50) lies too long? Switch to EMA(20). EMA(20) still lies? Switch to EMA(10). The lag at the turning point shrinks proportionally.
The cost is noise amplification. The article "Why the SMA Is Often a Terrible Smoother" covered the frequency-response failure that makes short MAs leak sub-cycle noise into the trend reading. The trade is:
$$ \begin{array}{l|c|c|c} \text{Construction} & \text{Turn-detection lag (bars)} & \text{False turn signals/year} & \text{Net cost} \\ \hline \text{EMA(10)} & 5 & 18 & \text{High false-positive rate} \\ \text{EMA(20)} & 11 & 7 & \text{Moderate} \\ \text{EMA(50)} & 27 & 2 & \text{Late but high precision} \\ \text{EMA(100)} & 54 & 0.5 & \text{Trend is over before detection} \\ \end{array} $$
The trader who wants a 5-bar lag pays 18 false turns per year on SPX. The trader who wants 2 false turns pays 27 bars of lag. The MA-based turn detector lives on a Pareto frontier where shortening the lookback trades lag for false positives at a fixed structural rate. There is no setting that escapes the tradeoff.
The escape comes from changing the construction.
Worked example: SPX 2020 bottom and 2022 top
SPX daily. Compare turn-detection lag for the March 23, 2020 bottom (sharp V-shaped reversal) and the January 4, 2022 top (slower rolling top). Measure detection lag as bars from the true extreme to the first signal that the turn has happened, where "signal" is defined per construction.
Eight readings.
The EMA-based turn detectors (rows 1-4) all carry 11 to 31 bars of lag with the false-turn rate inversely proportional to the lag. Choosing among them is choosing a point on the lag-vs-noise frontier.
The super-smoother and decycler (rows 5-6) reduce lag because they have steeper frequency-response rolloffs that pass less cycle energy through the trend channel. The lag at the 2020 bottom drops from 27 (EMA(50)) to 8-9 bars at comparable noise. The construction is mechanically better at turn detection, not because it predicts the turn, but because it leaks less past-regime energy into the present reading.
The BPF zero crossing (row 7) and decycler oscillator zero crossing (row 8) are the structurally cleanest constructions for turn detection. They operate in the cycle channel rather than the trend channel: at a turning point, the cycle channel's output crosses zero with much less lag than any trend-channel construction can flip slope. The cost is that these constructions are not trend lines and require interpretation as cycle-mode signals. The article "Band-Pass Filters: The Most Underused Tool in Technical Analysis" covered the BPF; the article "Decyclers: Extracting Trend by Removing Cycle Energy" covered the decycler oscillator.
Alternatives that handle turning points better
Four constructions that beat MA-based turn detection on the structural axis.
Alternative 1: BPF zero crossings. The band-pass filter output crosses zero at the cycle peaks and troughs. For a BPF centered at the dominant cycle period, the zero crossing is the structurally direct turn detector. Lag is approximately T/4 to T/3 where T is the BPF's center period. Much smaller than any MA's lag at comparable smoothness.
Alternative 2: decycler oscillator transitions. The decycler oscillator (HPF_long minus HPF_short, covered in the prior article) crosses zero at trend-cycle regime transitions, which often align with major turning points. The construction has a principled cycle-band specification and lower turn-detection lag than equivalent MA crossovers.
Alternative 3: autocorrelation-based reversal detection. The autocorrelation of the recent price across lags shifts dramatically at cyclic reversals. Summing bar-to-bar differences in the autocorrelation across all lags produces a "reversal spike" indicator that fires at the turn. The article "Why Markets Are Not Random: The Autocorrelation Story" in this pillar covers the construction. The detector has very short lag (2-4 bars) but higher false-positive rate.
Alternative 4: phase-based indicators (Hilbert transform, sine-wave indicator). For cyclic data, the Hilbert transform extracts the instantaneous phase, and the sine-wave indicator fires when the phase reaches the peak or trough position. The article "The Hilbert Transform: Extracting Instantaneous Phase and Amplitude" in this pillar covers the construction. The detector is the closest thing to a "leading" indicator that physics allows, with lag of 1-2 bars when cycles are present.
All four alternatives are cycle-mode constructions. They work when the market is cycling and fail when the market is in pure trend mode. The MA-based detectors work in the opposite regime: they flag every cycle as a false trend reversal but eventually detect the true regime change after the lag pays out. The right operational answer is to use cycle-mode detectors in cycle regimes and to not use MA crossovers as turn detectors at all.
What this changes in practice
Four operational shifts.
Drop MA-crossover-based turn detection from the strategy infrastructure. Replace with one of the four alternatives above, selected by current regime. Cycle-mode regimes use BPF zero crossings or Hilbert phase. Trend-mode regimes use slow trend filters with the explicit understanding that any turn detection in this regime is structurally late.
When MA-based trend lines are kept (for the trend-mode component of a strategy), report the MA's lag explicitly alongside its value. The level of EMA(50) at any bar is meaningful only in conjunction with the lag (27 bars for EMA(50)). Strategies that consume the EMA value treat it as a 27-bar-old estimate of the trend, not as a current state.
Decouple trend estimation from turn detection. The trend filter (super-smoother, decycler) gives the current trend with a known lag. The turn detector (BPF, decycler oscillator, autocorr reversal) gives the regime change signal with much lower lag. Combining the two into a single MA-crossover signal compresses both into a delayed and noisy composite. Separating them produces two clean signals, each fit for purpose.
Calibrate strategy backtests against turn-detection lag. A strategy that "catches the bottom" with an EMA(50) crossover is catching the bottom 27 bars late on average. The P&L attribution should isolate the lag cost so that the alpha-generation claim is honest about which part of the return came from the detector and which part came from the post-detection trend continuation.
Decision matrix
| Goal | Recommended detector | Avoid |
|---|---|---|
| Catch turn at cycle peak/trough | BPF zero crossing or Hilbert phase | EMA crossover, MACD |
| Detect trend-to-cycle regime change | Decycler oscillator transition | Price-cross-MA |
| Detect cycle-to-trend regime change | Autocorr reversal indicator | MA-cross-MA |
| Confirm trend continuation | Slow trend filter slope (with lag disclosed) | Any short MA |
| Identify major reversal in real time | Combination: BPF + decycler oscillator + autocorr | Any single MA construction |
| Position-sizing trend conviction | Decycler at T = 60 with magnitude | EMA(50) value alone |
| Stop placement near turn | Cycle-mode amplitude (BPF) | MA level (will lie) |
Anti-patterns
Five mistakes in turn-detection systems.
Anti-pattern 1: treating an MA crossover as a turn signal. The lag is structural and unavoidable. Use cycle-mode constructions for turn detection.
Anti-pattern 2: shortening the MA to chase lag. The lag-vs-false-positives Pareto frontier is fixed by the linear-filter construction. Shortening trades one cost for another at a fixed rate. The escape is to change construction, not to retune.
Anti-pattern 3: reading close-minus-MA at turning points as "deviation from current trend." At turning points, close-minus-MA is dominated by the MA's lag from the current trend, not by the cycle deviation. Use a decycler (input minus HPF) or BPF for the deviation reading; the MA-based version is structurally biased.
Anti-pattern 4: assuming "no MA signal" means "no turn." The absence of an MA crossover at a turning point is the expected outcome. A turn at time t will not produce an MA-crossover signal until t + 10 to t + 30 bars. Relying on the MA signal as a turn-presence indicator builds the lag into the strategy.
Anti-pattern 5: backtesting MA-crossover systems on cycle-rich data without accounting for the lag cost. The historical P&L of an MA-crossover strategy reflects post-detection trend continuation, not turn-catching. Strategies tested only on trend continuation will fail when deployed in markets where cycles dominate, because the lag will swallow the entire move before the signal fires.
Visualizing the lie

The three-panel figure makes the structural argument visible. Panel (a) shows the lag cost in P&L terms. Panel (b) shows the alternative detectors. Panel (c) shows the Pareto frontier separation.
KEY POINTS
- A moving average at a turning point reports a weighted average of the past N bars. At the turn, those bars are mostly from the prior regime, so the MA's level, slope, and crossover signals carry a structural delay.
- Three mechanisms of failure: direction lag (slope flips after N/2 post-turn bars), crossover lag (price-cross-MA and MA-cross-MA both delayed by 10-30 bars on sharp turns), and magnitude misrepresentation (close-minus-MA at turning points is dominated by the MA's lag from the current trend, not by the cycle deviation).
- Shortening the MA trades lag for false positives along a fixed Pareto frontier. EMA(10) has 5-bar lag and 18 false turns per year on SPX; EMA(100) has 54-bar lag and 0.5 false turns per year. No setting escapes the tradeoff.
- The escape is to change construction. Super-smoother and decycler slope-flip detectors halve the EMA lag at comparable noise.
- The structurally cleanest turn detectors operate in the cycle channel: BPF zero crossings (lag T/4 to T/3), decycler oscillator zero crossings (lag 4-10 bars), autocorr reversal indicator (lag 2-4 bars), Hilbert phase indicators (lag 1-2 bars when cycles are present).
- On the SPX March 2020 bottom, EMA-based detectors signaled the turn 11-31 bars late. Cycle-mode detectors signaled it 2-5 bars late.
- Drop MA crossover from turn-detection. Use BPF zero crossing for cycle-peak/trough detection. Use decycler oscillator for trend-cycle regime change. Use autocorr reversal for cycle-to-trend regime change.
- Decouple trend estimation from turn detection. The trend filter gives the current trend with a known lag. The turn detector gives the regime change with low lag. Combining them into one MA signal compresses both into a delayed composite.
- When MA-based trend lines are kept, report their lag (e.g., "EMA(50): 27-bar lag") alongside their value. Strategies consume the MA as a 27-bar-old estimate of the trend, not as a current state reading.
- Backtest MA-crossover strategies with explicit lag cost in the P&L attribution. The historical return reflects post-detection trend continuation, not turn-catching. Strategies tested only on trend continuation will fail in cycle-rich regimes.