Predicting TIPS excess returns with an expanding-window walk-forward, then asking whether the prediction is worth trading.
Target is next month's TIPS excess return, built from yield changes via a stated duration approximation minus the three-month bill rate. Duration is an explicit, adjustable assumption at 8.5 years rather than a hidden one, because FRED's constant-maturity yields do not carry a duration figure.
Validation is a true expanding-window walk-forward: retrain every month on everything up to the month before, predict the next one. Not a single train and test split.
Gradient Boosting is the only model with a positive out-of-sample R-squared, at 0.27%. Random Forest actually posts the best net Sharpe, at 0.41, despite a slightly negative R-squared of -2.16%.
Then read the other end of the table. OLS, fit unregularised on 108 features, has an R-squared of roughly -2,236%, a textbook overfit once feature count starts to rival the size of the training window. Ridge, the same model with an L2 penalty added, recovers to -19.2%. Lasso goes the other way and shrinks almost every coefficient to zero, landing close to the benchmark. Predictions that are wrong in level can still be right in sign often enough to size a position, which is why Random Forest keeps a positive net Sharpe despite a negative R-squared.
Run the identical pipeline on nominal ten-year Treasuries and every model goes negative. If the signal were an artefact of the method it would show up on both. It does not, which is what you would expect if it is genuinely about inflation expectations rather than rates in general.
The strategy overlay is a pure function of the stored predictions, so the whole backtest recomputes live. Includes the input yield series, predicted against actual, and what each model leans on.