Case study
WTI oil price forecasting
WTI crude oil prices move with geopolitical events, supply and demand, and market sentiment. This project benchmarked six forecasting models on five years of daily prices, then produced a 3-month forward forecast.
- Best validation RMSE, naive baseline
- 1.287
- Improved LSTM RMSE
- 1.693
- Models compared
- 6
- Engineered features
- 17
Approach
- Reindexed 1,305 daily prices to business days, with linear interpolation for holidays.
- Engineered 17 features: price lags of 1, 5, 21 and 63 days, rolling means and standard deviations over 7, 21 and 63 days, returns and calendar features.
- Split by time, 981 days for training and 261 for validation, so no future data leaks into training.
- Compared a naive baseline, linear regression, random forest, LightGBM, a basic LSTM on 21-day sequences, and an improved LSTM on 60-day sequences with dropout and early stopping.
Results
| Model | Validation RMSE |
|---|---|
| Naive baseline | 1.287 |
| LightGBM | 1.598 |
| Random forest | 1.629 |
| Improved LSTM | 1.693 |
| Basic LSTM | 2.314 |
- The naive baseline won, which is consistent with daily WTI prices behaving like a random walk with strong autocorrelation.
- The tree models overfit the training data and fell behind on validation.
- Every model predicted the direction of the next move about 50% of the time.
- The improved LSTM produced the 3-month forward forecast. It did not beat the baseline in validation, so that forecast is an experiment, not a validated prediction.