MATLAB: Linear regression with GARCH/EGARCH errors

egarchgarchregression

I need to estimate a linear model with GARCH or EGARCH errors:
mean eqn: Y = c +b1X1 +b2X2 + e e_t ~ N(0,sigma_t^2)
vol eqn: sigma_t^2 follows GARCH or EGARCH
I have written the likelihood function and optimise it. I would prefer to use built-in matlab functions to estimate it (as a check).
any guidance appreciated!

Best Answer

with a little guidance from Mathworks support, my PhD student solved this problem.
Use the "estimate" syntax to estimate a garch (1,1) or egarch(1,1) model.
Mdl = arima('Variance',egarch(1,1));
this seems to "turn off" the lagged AR terms in the conditional mean, but still allows e/garch in the conditional variance.
then, it's just a matter of:
[EstMdl,EstParamCov,logL,info] = estimate(Mdl,Y,'X',X);
The "X" tells matlab to expect a matrix of exogenous regressors. No need to include a vector of ones in X, since an intercept comes as standard in the "estimate" routine.
Related Question