QuantLab, part 4 of 6
Validation.
Chronological splits, purging and embargoing, walk-forward folds, the naive baseline, overfitting.
6 articles, about 44 minutes in order. Foundational first, then applied, then advanced.
- 01
Why random train/test splits break on time series
Random k-fold cross-validation assumes independent rows. Financial data never is. Here is the arithmetic behind why that assumption fails.
- 02
Purging and embargoing explained visually
Why the gap between train and test has to be at least as wide as the label horizon, and what purging and embargoing each remove.
- 03
Walk-forward validation, fold by fold
Rolling versus expanding windows, what gets reported per fold, and why the worst fold matters more than the mean.
- 04
ROC AUC, worst-fold performance, and reporting honestly
What ROC AUC actually measures, where it misleads on imbalanced financial targets, and why the worst fold belongs in every report.
- 05
Beating the naive baseline (and what it means when you don't)
Why every forecast has to be measured against last-value-carried-forward first, and how to read a skill score that comes out negative.
- 06
Overfitting: detection, not prevention
Deflated Sharpe, probability of backtest overfitting, Reality Check, SPA and minimum track record length — worked, with formulas.
Other parts of QuantLab
- 01FoundationsWhat quantitative research is, the loop it runs in, and how a result fools you.
- 02Data and featuresPreparing financial time series, building features without leakage, choosing a benchmark.
- 03ModelsModel families and when to use them, linear against trees, hyperparameters, forecasting.
- 05Portfolio and riskOptimisation from first principles, risk metrics that matter, stress testing, explainability.
- 06PracticeReproducibility, checkable reports, re-runnable workflows, presenting work, teaching a term.
Read it here, then run it in the workspace.
Every article links to the platform page that implements the idea. Beta access is free and opens by cohort.