Glossary

Walk-forward validation

Walk-forward validation tests a strategy by fitting it on one window of historical data and then running it, unchanged, on the window that comes immediately after — repeated across the whole history, so the strategy is only ever judged on data it has not seen.

In plain terms

A normal backtest builds the strategy and measures it on the same data. That is like marking your own exam with the answers in front of you.

Walk-forward splits history into consecutive chunks. Fit on chunk one, measure on chunk two. Move forward. Fit on chunks one and two, measure on chunk three. And so on. Every measurement is taken on genuinely unseen data, and it is taken in the correct chronological order — which matters, because markets change, and a strategy that worked in 2019 and stopped working in 2022 should be exposed as exactly that.

Why it matters

Walk-forward is the closest a backtest gets to honesty about time. It answers the question that actually matters: if I had built this strategy back then, with only the information available at the time, what would have happened next?

It also catches a failure mode that a single out-of-sample split misses entirely — a strategy that works in some regimes and not others. A single split can land luckily. A walk-forward across many windows cannot.

How Atlas Edge handles it

Every strategy is validated walk-forward as standard. There is no setting to turn it off, and no path to arming a strategy that has not been through it. The windows are fixed in advance so that the split cannot be chosen after the fact to flatter a result.

Related
Common questions

Answers to the usual ones

How is this different from a simple train/test split?
A single split gives you one measurement on one period, which may have been unusually kind or unusually harsh. Walk-forward gives you many, spread across different market conditions.
Does a strategy have to pass every window?
No, and demanding that would itself be a form of overfitting. What matters is the distribution of results across windows, not a perfect record.