Mean Reversion Strategy
Overextension → Revert to Mean
The Concept
In range-bound markets, price often snaps back after an overextended move away from a fair value proxy like the EMA or VWAP. This strategy captures these "rubber band" moves back to the mean.
Key Insight: This works best when the 1-hour trend state is RANGE. In trending markets, price can stay overextended much longer than expected.
Long Mean Reversion Setup
Buy the Dip — Price Overextended Below EMA
Price drops sharply below EMA(20), creating a Z-score ≤ -2.0. The reclaim candle confirms reversal.
Short Mean Reversion Setup
Sell the Rip — Price Overextended Above EMA
Price rallies sharply above EMA(20), creating a Z-score ≥ +2.0. The rejection candle confirms reversal.
Z-Score Calculation
z_ema20 = (close - ema_20) / stdev(close, 50)The Z-score measures how many standard deviations price is from the 20-period EMA. Values beyond ±2.0 indicate overextension.
Entry Conditions
- Regime— 1h trend_state = RANGE
- Long trigger— Z-score ≤ -2.0
- Short trigger— Z-score ≥ +2.0
- Confirmation— Next candle reclaims prior high/low
Exit Rules
- Target 1— EMA(20) on 5m — the mean
- Target 2— EMA(50) or range midpoint
- Stop Loss— Below swing low (long) / Above swing high (short)
When It Works
Range-bound markets where price oscillates around a mean. Works best during consolidation phases.
Watch Out For
Trending markets where price can stay overextended. Strong momentum can push through mean reversion levels.
Avoid When
During breakouts, news events, or when volatility is spiking. The 'rubber band' can break in these conditions.
Trigger Confirmation (Avoid Falling Knives)
Don't just buy because Z-score hit -2.0. Wait for deceleration + reclaim:
For Long Entry:
- Z-score reaches ≤ -2.0
- Next candle closes above prior candle's high
- OR price reclaims EMA(20) on 5m timeframe
For Short Entry:
- Z-score reaches ≥ +2.0
- Next candle closes below prior candle's low
- OR price breaks below EMA(20) on 5m timeframe
Strategy Variants
Trend Pullback Variant
Allow mean reversion long entries even in a 1h UP trend, but only target the EMA(50) instead of EMA(20), and use tighter invalidation. This catches pullbacks in trending markets.