Skip to content
Prev 12765 / 15274 Next

Problem with estimation results of ARMAX-GARCHX

Philipp,

I've checked your data and here are my comments:
spec <- arfimaspec(mean.model = list(armaOrder = c(1,
1),include.mean=FALSE,arfima=FALSE,
external.regressors=X),distribution.model ="norm")
setbounds(spec)<-list(mxreg1=c(-2,2), mxreg2=c(-2,2), mxreg3=c(-2,2))
fit1 <- arfimafit(spec,data=P)
fit2 = arima(P, order=c(1,0,1), method="ML",xreg=X, include.mean=FALSE)

cbind(c(coef(fit1),"LLH"=likelihood(fit1)), c(coef(fit2),
"sigma"=sqrt(fit2$sigma2), "LLH"=fit2$loglik))

ar1       0.22517917    0.22668311
ma1      -0.99999998   -0.99999860
mxreg1    1.39220340    1.35950370
mxreg2   -0.04714268   -0.04866735
mxreg3    0.03632310    0.03341936
sigma     0.34747055    0.34745002
LLH    -247.51441921 -250.50795353

As far as the pure arma estimation goes, I don't see any problems here.
rugarch and arima are identical (small difference which gives a higher
likelihood to the rugarch estimation is probably down to start-up
recursion method).

As regards the ARMA-GARCH model:

spec <- ugarchspec(mean.model = list(armaOrder = c(1,
1),include.mean=FALSE,arfima=FALSE,
external.regressors=X),distribution.model ="norm")
fit3 <- ugarchfit(spec,data=P)


data.frame("ARMA-GARCH"=c(coef(fit3), "LLH"=likelihood(fit3)))

          ARMA.GARCH
ar1      0.709683664
ma1     -0.997124020
mxreg1   0.448243364
mxreg2  -0.031824864
mxreg3  -0.016998532
omega    0.001552758
alpha1   0.315193600
beta1    0.241478834
LLH    942.895313178

The log-likelihood is significantly higher, but the GARCH persistence is
not very high. If you look at your dataset (P), you have a HUGE
spike/outlier. Try removing that and re-test for
heteroscedasticity...but I am guessing that you already know all this
since you must have learned it in class?

Alexios
On 18/09/2014 11:42, Philipp Lammers wrote: