Documentation |
On this page… |
---|
A common objective of time series modeling is generating forecasts for a process over a future time horizon. That is, given an observed series y_{1}, y_{2},...,y_{N} and a forecast horizon h, generate predictions for $${y}_{N+1},{y}_{N+2},\dots ,{y}_{N+h}.$$
Let $${\widehat{y}}_{t+1}$$ denote a forecast for the process at time t + 1, conditional on the history of the process up to time t, H_{t}, and the exogenous covariate series up to time t + 1, X_{t + 1}, if a regression component is included in the model. The minimum mean square error (MMSE) forecast is the forecast $${\widehat{y}}_{t+1}$$ that minimizes expected square loss,
$$E{\left({y}_{t+1}-{\widehat{y}}_{t+1}|{H}_{t},{X}_{t+1}\right)}^{2}.$$
Minimizing this loss function yields the MMSE forecast,
$${\widehat{y}}_{t+1}=E({y}_{t+1}|{H}_{t},{X}_{t+1}).$$
The forecast method generates MMSE forecasts recursively. When you call forecast, you can specify presample observations (Y0), innovations (E0), conditional variances (V0), and exogenous covariate data (X0) using name-value arguments. If you include presample exogenous covariate data, then you must also specify exogenous covariate forecasts (XF).
To begin forecasting from the end of an observed series, say Y, use the last few observations of Y as presample responses Y0 to initialize the forecast. There are several points to keep in mind when you specify presample data:
The minimum number of responses needed to initialize forecasting is stored in the property P of an arima model. If you provide too few presample observations, forecast returns an error.
If you do not provide any presample responses, then forecast assigns default values:
For models that are stationary and do not contain a regression component, all presample observations are set to the unconditional mean of the process.
For nonstationary models or models with a regression component, all presample observations are set to zero.
If you forecast a model with an MA component, then forecast requires presample innovations. The number of innovations needed is stored in the property Q of an arima model. If you also have a conditional variance model, you must additionally account for any presample innovations it requires. If you specify presample innovations, but not enough, forecast returns an error.
If you forecast a model with a regression component, then forecast requires presample exogenous covariate data. The number of presample exogenous covariate data needed is at least the number of presample responses minus P. If you provide presample exogenous covariate data, but not enough, then forecast returns an error.
If you do not specify any presample innovations, but specify sufficient presample responses (at least P + Q) and exogenous covariate data (at least the number of presample responses minus P), then forecast automatically infers presample innovations. In general, the longer the presample response series you provide, the better the inferred presample innovations will be. If you provide presample responses and exogenous covariate data, but not enough, forecast sets presample innovations equal to zero.
Consider generating forecasts for an AR(2) process,
$${y}_{t}=c+{\varphi}_{1}{y}_{t-1}+{\varphi}_{2}{y}_{t-2}+{\epsilon}_{t}.$$
Given presample observations $${y}_{N-1}$$ and $${y}_{N},$$ forecasts are recursively generated as follows:
$${\widehat{y}}_{N+1}=c+{\varphi}_{1}{y}_{N}+{\varphi}_{2}{y}_{N-1}$$
$${\widehat{y}}_{N+2}=c+{\varphi}_{1}{\widehat{y}}_{N+1}+{\varphi}_{2}{y}_{N}$$
$${\widehat{y}}_{N+3}=c+{\varphi}_{1}{\widehat{y}}_{N+2}+{\varphi}_{2}{\widehat{y}}_{N+1}$$
$$\vdots $$
For a stationary AR process, this recursion converges to the unconditional mean of the process,
$$\mu =\frac{c}{\left(1-{\varphi}_{1}-{\varphi}_{2}\right)}.$$
For an MA(12) process, e.g.,
$${y}_{t}=\mu +{\epsilon}_{t}+{\theta}_{1}{\epsilon}_{t-1}+\mathrm{...}+{\theta}_{12}{\epsilon}_{t-12},$$
you need 12 presample innovations to initialize the forecasts. All innovations from time N + 1 and greater are set to their expectation, zero. Thus, for an MA(12) process, the forecast for any time more than 12 steps in the future is the unconditional mean, μ.
The forecast mean square error for an s-step ahead forecast is given by
$$MSE=E{\left({y}_{t+s}-{\widehat{y}}_{t+s}|{H}_{t+s-1},{X}_{t+s}\right)}^{2}.$$
Consider a conditional mean model given by
$${y}_{t}=\mu +{x}_{t}^{\prime}\beta +\psi (L){\epsilon}_{t},$$
where $$\psi (L)=1+{\psi}_{1}L+{\psi}_{2}{L}^{2}+\dots $$. Sum the variances of the lagged innovations to get the s-step MSE,
$$(1+{\psi}_{1}^{2}+{\psi}_{2}^{2}+\dots +{\psi}_{s-1}^{2}){\sigma}_{\epsilon}^{2},$$
where $${\sigma}_{\epsilon}^{2}$$ denotes the innovation variance.
For stationary processes, the coefficients of the infinite lag operator polynomial are absolutely summable, and the MSE converges to the unconditional variance of the process.
For nonstationary processes, the series does not converge, and the forecast error grows over time.