Forecasting an equation with MA terms is a little more tricky. MA(1) estimation is estimation of the following process:
Estimation, and forecasting of MA processes is complicated, especially when
backcasting is used to obtain starting observations for the error terms. I’ll leave explanation of backcasting for text books, and concentrate on forecasting an equation without backcasting. The key to a
static forecast of an MA process is forecasting the error terms:

The only problem with this forecast is what value to use for the very first value of the error. With zero backcasting, this is simple, we simply assume that error is zero:
With the error terms forecasted, a
static forecast of
Y is simply:
The
dynamic forecast of an MA process is even easier. Since the estimate of the error terms is based upon the forecasted value of
Y, you can show, easily, that the forecast of the error term becomes zero:
The one exception to this is that, as with the
static forecast, the very first error term is calculated as:
The following program shows the manual calculation of the static and dynamic MA forecasts:
Code: Select all
rndseed 1
create u 100
series x=nrnd
series y=nrnd
equation e1.ls(z) y c x ma(1)
'Static Forecast
smpl 1 1
series e=y-c(1)-c(2)*x
smpl 2 100
series e=y-c(1)-c(2)*x-c(3)*e(-1)
e1.fit yhats1 'EViews fitted values (static)
series yhats2=c(1)+c(2)*x+c(3)*e(-1)
show yhats1 yhats2
'dynamic Forecast
e1.forecast yhatd1 'EViews forecasted values (dynamic)
smpl 2 2
series yhatd2 = c(1)+c(2)*x+c(3)*(y(-1)-c(1)-c(2)*x(-1))
smpl 3 100
series yhatd2 = c(1)+c(2)*x
smpl @all
show yhatd1 yhatd2
An Excel file showing these calculations can be found
here