2
$\begingroup$

I have been working on a manual implementation of ARMA GARCH (1,1) with: $$\sigma_{t}^2 = \omega + \alpha\epsilon_{t-1}^2 + \beta\sigma_{t-1}^2$$

and estimating parameters through MLE. However, my constant term in GARCH, $\omega$, seems to grow without bound as the optimization proceeds. Is there any sort of constraint on the GARCH parameters other than they must all be non-negative and that $\alpha + \beta < 1$?

$\endgroup$

1 Answer 1

1
$\begingroup$

In order to ensure that the conditional variance is always non-negative you have the restrictions $\omega>0$, $\alpha \geq 0$ and $\beta\geq 0$. Also for a weakly stationary process you need have $\alpha+\beta<1$. There are other constrains in order to ensure that higher moments exist. For example, assuming normal distributed innovations, you need the parameter restriction $3\alpha^2+2\alpha\beta+\beta^2<1$ for a finite fourth moment. However, this should not effect your estimation process, since for many GARCH models higher moments do not exist, when these models are estimated using real financial data. I assume there may be an error in your code, but this is difficult to answer without without seeing the code.

Regards

$\endgroup$
9
  • $\begingroup$ Thank you very much! At the moment I am feeding my ARMA residuals into GARCH and using that as data. I set $\sigma_0 = \text{Var}(\{\epsilon_i\})$ as an initial guess and march ahead using the GARCH equations, including the first four constraints you mentioned. Since $\epsilon_i = \sigma_i z_i$ I evaluate $\frac{\epsilon_i}{\sigma_i}$ at the PDF to obtain a probability. This is a rough outline for how I am carrying out my GARCH MLE. Is any of this incorrect? Currently I have gotten the code to run by setting an arbitrary constraint that $\omega \leq 1$. $\endgroup$
    – CBBAM
    Commented Apr 27, 2021 at 20:47
  • $\begingroup$ @CBBAM, you should rather set $\sigma_0^2$, not $\sigma_0$ to be the variance of $\epsilon$. But perhaps this was just a typo. $\endgroup$ Commented Apr 28, 2021 at 5:30
  • $\begingroup$ @RichardHardy How big of an impact would that change make? At the moment I have it set as the variance of $\{\epsilon_i\}$. I would rerun my code but due to all the optimization it takes quite a bit of time (2-3 days to complete). $\endgroup$
    – CBBAM
    Commented Apr 28, 2021 at 17:10
  • $\begingroup$ @CBBAM, I think it can make a big change. It might even be the root of the problem you are describing in your question. $\endgroup$ Commented Apr 28, 2021 at 19:31
  • $\begingroup$ @RichardHardy I changed $\sigma_0^2$ to zero and I'm still getting my constant term to increase without bound. $\endgroup$
    – CBBAM
    Commented Apr 28, 2021 at 20:07

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.