The claim needs a destination: new observations from which assets, at which forecast horizon, under which information and market conditions? A model can generalise to further observations from a familiar population yet fail when the traded universe or market mechanism changes.
The error you fit and the error you need
Let be a model after fitting, its inputs and its prediction target. With squared-error loss, its generalisation error under a specified deployment distribution is
Classical analyses often assume independent training and test observations drawn from the same distribution. Forecasting future returns requires more care: neighbouring observations can be dependent, and the future distribution can differ from the historical one. A low estimated error under one distribution does not establish the same error under another.
Perfect memory, imperfect forecasts
Consider a fictional model that achieves training MSE of zero. It then makes two frozen forecasts of next-session simple returns. Features are available when each forecast is issued; its return label becomes observable only after the forecast session finishes. Returns are quoted in basis points, so squared errors have units of basis points squared.
| Unseen observation | Forecast | Realised return | Realised minus forecast | Squared error |
|---|---|---|---|---|
| A | 1 | 2 | 1 | 1 |
| B | 3 | 1 | −2 | 4 |
Make “new” an enforceable boundary
For an equity return model, define the eligible universe, prediction timestamp, horizon, target construction and planned update schedule before interpreting its score. Then test the full procedure that could actually run:
- Fit with information available then. Completed labels and point-in-time features must precede their use. Otherwise look-ahead bias can make an apparent success depend on unavailable information.
- Keep selection separate from assessment. Use development data to choose features, tuning settings and preprocessing. Once a final test set influences those choices, it has joined development. Official scikit-learn guidance explains why preprocessing also belongs inside the training boundary.
- Match the split to the claim. Chronological evaluation addresses future-time forecasting; holding out entire issuers addresses transfer to unfamiliar issuers. Randomly mixing dependent rows can make the test artificially similar to training. The official time-series evaluation discussion explains this limitation.
- Assess uncertainty and market change. Report performance across suitable time blocks and relevant conditions, with uncertainty methods that respect dependence. Monitor genuinely arriving observations after development; more historical rows do not guarantee coverage of a new market regime.
Generalisation of a forecast is one component of a trading decision. Even a credible predictive improvement can be consumed by turnover, fees, slippage or capacity limits. Evaluate the forecast's loss and the strategy's economic outcome as distinct claims.
Sources
- James, Witten, Hastie and Tibshirani, An Introduction to Statistical Learning with Applications in R, second edition (2021), §2.2.1, pp.29–31. Author-hosted book resources.
- scikit-learn, Cross-validation: evaluating estimator performance, especially the time-series discussion.
- scikit-learn, Common pitfalls and recommended practices: data leakage.