The forecasting method described here doesn't make sense to me.
Suppose we have a MA(1) process $Y_t = \epsilon_t + \theta \epsilon_{t-1}$. Let $\hat{Y}_t$ be the forecast of $Y_t$ at time $t-1$. We have a sample $\{Y_1,Y_2,\dots,Y_n\}$.
According to the method, $Y_{t+1} = \epsilon_{t+1} + \theta \epsilon_{t}$, so to get the forecast, we replace the future error $\epsilon_{t+1}$ with 0, and $\epsilon_{t}$ with its residual $\hat\epsilon_{t}$, thus $\hat{Y}_{t+1}=\theta \hat{\epsilon}_t$. The residual is defined as $\hat\epsilon_{t} = Y_t - \hat{Y}_{t}$.
Here are the problems I have:
What is the initial value? Use this to find $\hat{Y}_2=\theta\hat{\epsilon}_1$, where $\hat{\epsilon}_1 = Y_1 - \hat{Y}_1$. But how is $\hat{Y}_1$ defined? We can't define it as $\hat{Y}_1=\theta\hat{\epsilon}_0$. I would say it should be $\hat{Y}_1=0$ since the mean of the process is 0, which is equivalent to what this post says ($\hat{\epsilon}_1=Y_1$). And then $\hat{Y}_2=\theta Y_1$. Is this correct?
It's not the same as the best linear predictor. The Brockwell and Davis book gives a formula for the best linear predictor of a stationary process, which in this case would give $\hat{Y}_2=\frac{\gamma(1)}{\gamma(0)}Y_1 = \frac{\theta}{1+\theta^2}Y_1$, where $\gamma$ is the autocovariance function, not $\hat{Y}_2=\theta Y_1$.
Replacing past values of the error with the residual doesn't seem fully justified. At time $t+1$, I guess the reason to replace $\epsilon_{t}$ with the residual $\hat\epsilon_{t}$ is because $\hat\epsilon_{t}=E(\epsilon_{t}|\mathcal{F}_t)$, but I can't prove this and I can't find a reference for this. More generally, I'm not sure why the residuals are meant to approximate the errors in an ARMA model (this is a generally accepted claim, people check the residuals have no autocorrelation as a diagnostic tool). It may seem intuitive because in analogy with a linear regression $y-X\beta = \epsilon$ implies $y-X\hat\beta = \hat\epsilon$, but this argument can't be applied to ARMA processes because it seems to me that it's not possible to manipulate the ARMA recursion into an analogous form.
Can someone help answer these questions. Also, which of these methods is used in R and if it's the method in point 1, what is the initial value?
Arima
,forecast
,auto.arima()
etc.)? $\endgroup$Arima
andforecast
, which are wrappers for the basearima
andpredict.arima
. $\endgroup$