Resource

Mean reversion screening: finding candidates that actually revert

A mean-reversion screen is easy to write and easy to fool yourself with. The edge is in the filters you add after the obvious ones.

Mean reversion is a bet that stretched prices come back. The market agrees with you right up until it doesn't, so the screen is only the first filter — what separates a usable candidate list from a list of ways to bleed out slowly is everything you check next.

What the screen should measure

  • ▸Distance from a reference, not a guess. Z-scores against a rolling mean, Bollinger distance, or percentile rank within the symbol's own history — a number with a distribution behind it, not “looks oversold.”
  • ▸Liquidity before entry. Average volume and spread determine whether the reversion you measured is one you can trade. A signal you cannot enter or exit cleanly is a statistic, not a strategy.
  • ▸Volatility state. Reversion behaves differently in high-vol and low-vol regimes. Filtering or sizing by the current volatility environment keeps the screen from mixing two incompatible markets.
  • ▸Time at the edge. How long the symbol has been stretched matters: reversion from a two-day stretch and from a two-month drift are different trades with different holding periods.

Where screens lie

Two habits inflate reversion results. First, testing only on symbols that still exist — the ones that never reverted because they went bankrupt are missing from your sample. Second, ignoring costs: a strategy that harvests small spreads pays those costs on every cycle, and commission assumptions that were “close enough” in a spreadsheet decide the outcome.

There is also the regime problem. A reversion screen run during a calm year will look brilliant and then fail spectacularly in the first violent trend, because the premise — prices oscillate around a mean — stopped being true. The honest version of the screen reports how it performed across different volatility environments, not just its average.

That is why the useful workflow is a loop, not a funnel: screen a wide universe, backtest the survivors with costs, validate out-of-sample, and re-run the screen when the regime shifts. The screen finds candidates; the validation decides which of them deserve capital.

The platform

How Trade OS handles mean reversion

  • Mean-reversion is a first-class category in the 129-template strategy catalog — start from a working implementation instead of re-deriving z-score bands and exit rules from scratch.
  • Screen fast on the vectorized engine, then promote the survivors to the event-driven engine, where reversion entries are checked against realistic fills and your configured trading costs.
  • Regime-aware templates such as regime_switch, volatility_regime, and credit_regime switch their rules between trending and ranging markets and classify volatility environments — the exact failure mode that kills naive reversion in a trending tape.
  • The Risk Center supplies VaR, CVaR, Monte Carlo simulation, and GARCH volatility fitting so position size and drawdown expectations are set before the screen becomes a portfolio.

Screen your reversion universe on a 14-day free trial.

Start free trial