Rolling Forecast Origin
A good forecast should work not just once, but repeatedly as new data arrives. Rolling forecast origin is a simple evaluation setup that mimics that real-world rhythm: you keep moving the “today” point forward and test how well your model predicts what comes next.
What it means
In time series, the forecast origin is the time point where you stop using past data and start forecasting the future. With rolling forecast origin, you create many such origins by sliding that cutoff forward through time. At each origin, you fit (or update) the model using only data available up to that time, then generate forecasts for one or more steps ahead (the forecast horizon), and compare them to what actually happened.
How it’s done (two common variants)
- Expanding window: training data grows over time (e.g., use months 1–12, then 1–13, then 1–14…).
- Sliding window: training data stays a fixed length (e.g., always the most recent 12 months), useful when older patterns become irrelevant.
This is a form of time-series cross-validation that respects time order (no peeking into the future).
Practical example
Suppose you forecast weekly sales. You might train on weeks 1–52 and forecast weeks 53–56. Then shift the origin: train on weeks 1–53 (or weeks 2–53 for a sliding window) and forecast 54–57, and so on. You aggregate errors (e.g., MAE, RMSE, MAPE) across all origins to estimate how the model performs in deployment.
Why it matters in ML
Random train/test splits can seriously overestimate performance because they break temporal dependence. Rolling forecast origin gives a more honest measure of generalization, helps tune hyperparameters for ARIMA/ETS/Prophet or ML models (XGBoost, LSTMs), and reveals performance drift across seasons or regime changes.
Rolling Forecast Origin is a time-series evaluation procedure where the forecast “start point” moves forward through time: at each step, a model is refit (or updated) using data available up to that origin, then used to predict the next horizon. It matters because it mimics real deployment, avoids look-ahead bias, and yields robust error estimates. Example: train on months 1–12 to predict 13, then 1–13 to predict 14, etc.
Imagine you’re trying to guess tomorrow’s weather using everything you know up to today. Then the next day, you update your guess using the new information, and you keep repeating this. That “moving starting point” is the idea behind a Rolling Forecast Origin.
In time series forecasting (like sales, traffic, or temperature over time), you train a model using data up to a certain date, make a prediction for the next step (or next few steps), then “roll” the origin forward and do it again. This helps test how well a forecasting method performs in a realistic, day-by-day setting.