statsmodels.tsa.forecasting.theta.ThetaModelResults.forecast

ThetaModelResults.forecast(steps: int = 1, theta: float = 2) → pandas.core.series.Series[source]

Forecast the model for a given theta

Parameters
stepsint

The number of steps ahead to compute the forecast components.

thetafloat

The theta value to use when computing the weight to combine the trend and the SES forecasts.

Returns
Series

A Series containing the forecasts

Notes

The forecast is computed as

\[\hat{X}_{T+h|T} = \frac{\theta-1}{\theta} b_0 \left[h - 1 + \frac{1}{\alpha} - \frac{(1-\alpha)^T}{\alpha} \right] + \tilde{X}_{T+h|T}\]

where \(\tilde{X}_{T+h|T}\) is the SES forecast of the endogenous variable using the parameter \(\alpha\). \(b_0\) is the slope of a time trend line fitted to X using the terms 0, 1, …, T-1.

This expression follows from [1] and [2] when the combination weights are restricted to be (theta-1)/theta and 1/theta. This nests the original implementation when theta=2 and the two weights are both 1/2.

References

1

Hyndman, R. J., & Billah, B. (2003). Unmasking the Theta method. International Journal of Forecasting, 19(2), 287-290.

2

Fioruci, J. A., Pellegrini, T. R., Louzada, F., & Petropoulos, F. (2015). The optimized theta method. arXiv preprint arXiv:1503.03529.