Loading…
Each weekly forecast uses only information that was public at the time — no peeking ahead — and is validated on a strict out-of-sample backtest. The steps:
Weekly series from EIA (retail price, gasoline stocks, refinery utilization, product supplied) and FRED (WTI, Brent, broad USD index), plus WTI / Brent / RBOB futures. Built for the national average and each of the 5 PADD regions.
Everything is aligned to a weekly grid by publication time: a value enters the model only once it would actually have been released (retail price +1 day, EIA weekly reports +5 days, daily market data +1 day). A row dated week t uses only what was knowable by then — so the backtest can't cheat.
Per region: crude levels & lags (WTI / Brent / RBOB); asymmetric 4-week crude moves — rises and falls counted separately, for the “rockets & feathers” effect (pump prices rise fast, fall slow); crack spread (RBOB×42 − WTI); gasoline stocks; refinery utilization; demand (product supplied); USD index; the price's own 1–4-week lags; and seasonality (cyclical week-of-year + summer-blend flag).
A standardized RidgeCV (linear regression with cross-validated regularization) predicts the price h weeks ahead. A gradient-boosting model and a naive “last-price” baseline are run identically for the comparison table above. Ridge wins on real data; gradient boosting tends to overfit because the weekly gas–crude relationship is close to linear.
Expanding-window walk-forward: at each week the model trains only on rows whose outcome was already observable (an embargo of h weeks blocks leakage), then predicts forward. The historical predicted line is therefore strictly out-of-sample; its final h weeks extend past the “now” marker as the live forecast.
MAE / RMSE — average error in $/gal. MAPE — average percentage error. Skill vs. naive — how much lower the error is than simply assuming “next period ≈ today”; positive means the model beats that naive guess.
For the chosen wait window (1–4 weeks) the model forecasts the path ahead. If the cheapest predicted week is more than ~2¢/gal below today's price, it says wait (and roughly when); otherwise fill now. Its line reports, for that window: average ¢/gal saved versus always filling today, the share of the best-achievable savings captured, and how often a “wait” call was right.
Short-term gasoline prices are close to a random walk, so level forecasts only modestly beat naive — the buy/wait direction is the more useful output. WTI's most recent week is backfilled from futures (FRED spot publishes ~a week late). Taxes, station-level prices, and one-off events (hurricanes, pipeline outages) are not modeled.