Slow drift is harder to detect than abrupt breaks because standard tests have weak power against it. CUSUM and long-vs-short divergence catch what ADF misses. Trust the alarm when it triggers.
Every trading rule assumes stationarity. Markets violate it constantly. Strategies do not break because the rule fails; they break because the regime moves. Rolling stats first, then ADF and KPSS.
Market cycles exist but are evanescent: period drifts, amplitude decays, phase loses coherence. SPX cycle ranged 8 to 28 bars across six regimes in seven years. Gate cycle-mode strategies by regime.
The dominant cycle is measurable. Autocorrelation periodogram gives a number with known precision. Elliott Wave, Gann, Bradley dates produce no falsifiable measurement. Numbers feed adaptive logic.
Indicators inherit the input's amplitude. BPF on SPX swings ±0.4% in 2017 and ±3.1% in March 2020. AGC rescales continuously so thresholds become regime-independent. The fix is one pipeline stage.
Linear filters integrate every bar including outliers. Median filters select the typical value. For volume, true range, and tick data, median (or Hampel) is the default; linear smoothers come after.
Every linear indicator has known lag. Sum cascades, compare to time-to-half-move. EMA+RSI on 5-bar mean reversion: 17-bar lag, structurally broken. Audit lag before backtesting, not after deployment.
Every linear indicator is a filter with a unique frequency response. RSI(14), MACD(12,26), Stochastic(14) read the same 15-40 bar cycle band three different ways. The confluence is redundancy.
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.
The decycler extracts trend by subtracting the cycle, not by smoothing. On SPX, decycler at T=30 cuts EMA(50)'s 18% cycle leakage to 4% with less lag. Specify the cycle to cancel, not a lookback.
The band-pass rejects both trend and noise, keeping only the cycle band. Direct second-order form has two parameters (T, δ). On SPX at T = 20, δ = 0.3, BPF MI is 1.9 vs 1.2 for close-minus-MA.
HPF output = input − LPF. Each pole adds 6 dB/octave rolloff and one bar of lag. The 2-pole HPF at critical period T is the cleanest detrender for daily mean-reversion features.