Strategy Validation

Forward-Walk (Walk-Forward) Analysis

Repeatedly optimizing a strategy on one window of history and testing it on the unseen window that follows. The standard defense against curve-fit backtests.

By AlphaProve

Forward-walk, also called walk-forward, analysis repeatedly selects strategy parameters on an earlier in-sample (IS) window and evaluates the frozen choice on the out-of-sample (OOS) window immediately after it. It approximates the sequence of decisions a researcher could have made through time.

The procedure

Here is a rolling schedule with 12 months of training and three months of evaluation:

BatchParameter selection (IS)Frozen evaluation (OOS)
1Jan–Dec 2024Jan–Mar 2025
2Apr 2024–Mar 2025Apr–Jun 2025
3Jul 2024–Jun 2025Jul–Sep 2025

For each row, the OOS data must remain outside parameter selection. The final analysis stitches the OOS segments, rather than presenting the optimized IS curves as if they were one tradable record. This is the same chronological idea behind scikit-learn's official time-series split: training comes before testing so future observations do not train a past model.

Rolling windows keep a fixed IS length and discard the oldest observations. Anchored windows keep the same start and grow with each batch. Rolling gives recent conditions more weight; anchored gives each later fit more history. Neither is universally better, so the schedule should be chosen before reading the results.

How to read the result

There is no universal acceptable ratio between IS and OOS Sharpe. Interpretation depends on sample size, turnover, parameter search breadth, and uncertainty around both estimates. A large, repeated drop from IS to OOS is evidence worth investigating, but it does not by itself identify the cause. Costs, market change, and chance can also produce the gap.

A common misconception is that every OOS window stays “unseen” forever. Once a researcher reads it and changes the strategy, it has influenced development. Keep a final untouched holdout if the research claim depends on a last independent check, and report whether that holdout exists.

On AlphaProve

AlphaProve supports rolling and anchored schedules, parameter selection within each IS window, and a report built from per-batch OOS results. It reports the selected parameters, OOS PnL, win rate, and max drawdown, alongside WFO efficiency. The historical walk-forward testing example shows five three-month evaluation batches and also states the fields its original record did not preserve.