I fitted a standard GARCH model. The mean equation has no AR or MA terms. All the coefficients in the variance equation are significant at 5%. However the mean equation has a constant term equal to zero, and it is not significant at 5%. My question is: can I use this model if I am only interested in forecasting volatility?

  • $\begingroup$ Have you considered accepting one of the answers you got? See how this works. $\endgroup$ Commented Dec 13, 2020 at 18:05

2 Answers 2


When you model log-returns $(Y_t)$ by $Y_t=\varepsilon_t$ where $\varepsilon_t|\mathcal{F}_{t-1}\sim N(0,\sigma^2_t)$ and a standard GARCH($p,q$) model with $$\sigma_t^2=\omega+\sum_{i=1}^p \alpha_{i}\varepsilon^2_{t-i}+\sum_{i=1}^q \beta_i \sigma^2_{t-i},$$ where $\omega>0, \alpha_i,\beta_i\geq0$. This model assumes indeed a constant mean of zero for the log-returns. Now, since $Y_t=\varepsilon_t$, you can use the squared returns $Y_t^2$ in the above GARCH equation for $\varepsilon_t^2$ and forecast the conditional variance. The parameters $\omega,\alpha_i$, $\beta_i$ arre found by maximising the corresponding likelihood function.

You can introduce any mean function and model the log-returns by $Y_t=\mathbb{E}[Y_t|\mathcal{F}_{t-1}]+\varepsilon_t$, where again $\varepsilon_t|\mathcal{F}_{t-1}\sim N(0,\sigma^2_t)$. Here, you can use an ARMA-model for $\mathbb{E}[Y_t|\mathcal{F}_{t-1}]$ and may find a few lags to be significant. This gives rise to an ARMA-GARCH model. Many coding languages (e.g. Matlab) allow you to estimate the coefficients by a few lines of code.

As the ARCH part of $\sigma_t^2$ is computed based on $\varepsilon_t=Y_t-\mathbb{E}[Y_t|\mathcal{F}_{t-1}]$, the conditional mean function does matter for forecasting the variance. So, you should make sure that when you compute $\varepsilon^2_t$ that you subtracted the corresponding mean.


1. Forecast accuracy. Making an assumption that the conditional mean equals zero can be either beneficial or detrimental depending on how far off it is from reality. Here is a perspective of bias-variance trade-off.

  • Mean squared prediction error can be additively decomposed into squared bias, variance and irreducible error.*
  • A model with the conditional mean restricted at zero is a simpler model compared to one where the conditional mean has some other form (e.g. ARMA).
  • The simpler model will have a higher bias (as it ignores the true conditional mean which may very well be nonzero) but a lower variance (because there will be no need for estimating coefficients of the conditional mean model).
  • The richer model (with some nonezero specification for the conditional mean) will have a lower bias (less crude an approximation of the conditional mean) but a higher variance (since coefficients of the conditional mean model need to be estimated).
  • If the decrease in squared bias when moving from the simpler to the richer model outweights the increase in variance, you may expect more accurate predictions from the richer model. Otherwise, the simpler model may be better.

This general logic applies not only to point predictions under square loss but also more generally. Hence, if you are interested in modeling and forecasting volatility, you are still facing the trade-off.

2. Computational complexity. A model with nonzero conditional mean will generally take a longer time to estimate (unless the conditional mean is a constant; then the difference should be trivial).

*Consider a data generating process $$ Y = f(X) + \varepsilon $$ with $\mathbb{E}(\varepsilon)=0$ and $\text{Var}(\varepsilon)=\sigma^2_{\varepsilon}$. The expected squared forecast error at point $x_0$ can be decomposed in the following way: \begin{aligned} \text{Err}(x_0) &= \mathbb{E}\left( [ y - \hat f(x_0) ]^2 | X = x_0 \right) \\ &= \dots \\ &= \sigma^2_{\varepsilon} + \text{Bias}^2(\hat f(x_0)) + \text{Var}(\hat f(x_0)) \\ &= \text{Irreducible error} + \text{Bias}^2 + \text{Variance} .\\ \end{aligned} See Hastie et al. "The Elements of Statistical Learning" (2009) p. 223, formula 7.9.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.