Aggregate market timing with a handful of linear predictors has a mixed track record. Kelly, Malamud, and Zhou show that complex models — with more parameters than observations — can extract stronger out-of-sample timing signals from standard macro-financial inputs. This list links to the published paper, working paper, and the benchmark data they build on.
Complexity in market return prediction
The Virtue of Complexity in Return Prediction
Open-access journal version. Theoretically and empirically argues that simple timing models understate predictability; neural nets with thousands of parameters can outperform on aggregate US equity returns. NBER working paper
The Virtue of Complexity in Return Prediction (Working Paper)
Earlier working-paper release with full abstract, citation metadata, and links to the published Journal of Finance version.
Artificial Intelligence Asset Pricing Models
Embeds a large-scale transformer in the stochastic discount factor with cross-asset attention. Extends the Kelly line from aggregate timing to conditional cross-sectional pricing on 132 stock-level characteristics. Revised June 2026.
Benchmark predictors and data
Kelly et al. use the standard Goyal-Welch predictor set. Reproduce their baseline before extending to alt data or higher-frequency features.
Goyal-Welch Predictor Data
Monthly macro-financial variables used in the aggregate return prediction literature. The standard input panel for timing model benchmarks.
Empirical Asset Pricing via Machine Learning
Complementary large-scale ML work on cross-sectional returns. Pairs with the aggregate-timing focus above when building a full ML research stack.
Visual pattern recognition
Complex models need not rely on tabular macro inputs alone. Jiang, Kelly, and Xiu treat price charts as images and learn return-predictive patterns with convolutional networks.
(Re-)Imag(in)ing Price Trends
Panel CNN on stock-level price and volume charts learns trend patterns beyond standard momentum or reversal signals. Out-of-sample decile spreads are strong gross of costs; patterns transfer across horizons and international markets. Open PDF
Implementation notes
- Complex models need strict out-of-sample protocols — complexity helps only with proper validation
- Start from the Goyal-Welch panel before adding proprietary features
- Separate aggregate timing from cross-sectional alpha; they have different capacity profiles
- Transaction costs and turnover can erase timing gains even when R² improves
For cross-sectional ML validation see our ML signals reading list.