Playground
Walk-Forward Validation Visualizer
Paste a strategy returns CSV; see in-sample vs out-of-sample Sharpe per window plus the IS→OOS drop. Browser-only deterministic math.
- Inputs
- Paste + configure
- Runtime
- 1–15 s
- Privacy
- Client-side · no upload
- API key
- Not required
- Methodology
- Open →
Inputs
Window mode
OOS Sharpe drop vs IS
-526%
IS Sharpe -0.20 · OOS Sharpe 0.84 · 8 windows (rolling).
Per-window Sharpe
| # | IS span | OOS span | IS Sharpe | OOS Sharpe | Δ |
|---|---|---|---|---|---|
| 1 | 44 | 19 | -2.48 | 1.70 | +4.18 |
| 2 | 44 | 19 | -0.55 | -4.28 | −3.73 |
| 3 | 44 | 19 | -0.81 | 3.50 | +4.31 |
| 4 | 44 | 19 | 0.24 | -2.09 | −2.33 |
| 5 | 44 | 19 | 0.51 | -3.91 | −4.42 |
| 6 | 44 | 19 | -2.21 | 4.02 | +6.23 |
| 7 | 44 | 19 | 0.87 | -0.65 | −1.52 |
| 8 | 44 | 19 | 2.86 | 8.40 | +5.53 |
Reading the result
A drop >50% is a red flag — the strategy looks overfit to the in-sample window. 20–50% is typical for honest strategies once costs are added. <20% is rare and worth verifying. See the methodology.
How to use
Step-by-step
- 1
Upload return data (or strategy backtest results split by parameter combination).
- 2
Set training window (e.g., 3 years) and testing window (e.g., 1 year). Slide the window forward.
- 3
Watch the parameter visualization across windows. Stable parameters = robust strategy; swinging parameters = overfit.
- 4
Read the OOS Sharpe across all test windows. Aggregate OOS Sharpe is what your strategy actually would have produced.
- 5
If parameters swing wildly, simplify the strategy or use shrinkage on the parameter estimates.
Glossary references
Terms used by this tool
Questions people ask next
FAQ
What's walk-forward validation?
Iterative out-of-sample validation: optimize on the first N years, test on years N+1 to N+2, then slide the window forward. Repeat. Each test window is genuinely out-of-sample with respect to the optimization. This is much more robust than a single train/test split.
How is window length chosen?
Two parameters: training window (how many years for optimization) and testing window (how many years to test before re-optimizing). The methodology page recommends 3-5 years training, 1 year testing for most strategies. Shorter testing windows cause excess re-optimization noise; longer testing windows let drift accumulate.
What's the visualization showing?
Each window's parameters as colored bars, with the test-window performance below. Stable strategies show consistent parameters across windows and consistent OOS performance. Unstable strategies show parameters that swing wildly window-to-window — that's the visual signature of overfitting.
Should I aggregate the test windows for a single Sharpe?
Yes, but report it correctly. Aggregated OOS Sharpe is what your strategy would have produced if you actually ran it through walk-forward. That number is meaningful. In-sample Sharpe across the full period is not — it's an average of optimization results, which is biased upward.
How does this compare to k-fold cross-validation?
K-fold is fine for static prediction problems but wrong for time series, because folds shuffle past and future. Walk-forward respects time order. Time-series CV (rolling-origin CV) is mathematically equivalent to walk-forward. The tool implements it.
Related deep dive
All articles →Read further
Long-form context behind the tool output.
- Tutorial · Runnable·12 min
Did You Overfit? PBO and Deflated Sharpe
A practical tutorial on the two best-documented tests for backtest overfitting — PBO via CSCV and the Deflated Sharpe Ratio. Runnable Python + tool.
Read - Tutorial · Runnable·9 min
How to Read a Backtest Report: 2026 Cheat Sheet
Five questions a backtest report must answer — edge real, persistent, cheap to trade, bearable, explainable — with the statistics that verify each.
Read - Tutorial · Runnable·11 min
Walk-Forward Validation: A Cookbook
Walk-forward is the cheapest honest backtest you can run. Anchored vs rolling windows, the four parameters that matter, and a 60-line Python template.
Read
Complementary tools
Users of this tool often explore
Walk-Forward Validator
Upload a returns CSV. Rolling or expanding IS/OOS windows, per-window Sharpe, walk-forward efficiency, and a concatenated OOS equity curve. Catches regime.
Deflated Sharpe Ratio Calculator
Bailey & López de Prado deflated Sharpe — corrects observed Sharpe for selection bias across K trials. Reports deflated Sharpe, PSR (probability of skill).
Backtest Overfitting Score
Upload a backtest trade log and compute Probability of Backtest Overfitting (PBO), Deflated Sharpe Ratio, and the odds your edge survives live trading.