Antes de la predicción debe ver qué modelos se ajustan mejor a sus datos. En primer lugar, antes de elegir un modelo GARCH o un modelo de tipo GARCH con efecto de apalancamiento, debe realizar la prueba de sesgo de signo de Engle-Ng para ver si el activo que está modelando se ve afectado por él, si es así, un modelo GARCH simple no será un buen modelo. Después de la estimación y dado que todos los parámetros son significativos compare los criterios de información; por ejemplo el Akaike, Bayes o Hannan-Quinn y vea que modelo tiene el menor. Con esto deberías seleccionar el modelo y luego realizar una predicción, y puedes evaluar el rendimiento del mismo con un back test. Personalmente he hecho esto y usualmente un APARCH con distribución hiperbólica generalizada es el mejor si los datos presentan erección de palanca.
ACTUALIZACIÓN
Seguro que esto es lo que hice con r
y el paquete rugarch
por las acciones de la empresa colombiana EXITO:
1) ajustar un GARCH(1,1):
garch11Spec=ugarchspec(variance.model = list(model='sGARCH',garchOrder=c(1,1)),mean.model=list(armaOrder=c(0,0)))
garch11Fit=ugarchfit(garch11Spec,rtn) ## rtn is the date which is daily last price
2) Sesgo de signo Engle-Ng para el efecto palanca:
signbias(garch11Fit)
t-value prob sig
Sign Bias 0.19343098 0.8466364
Negative Sign Bias 0.15413313 0.8775166
Positive Sign Bias 0.02615509 0.9791356
Joint Effect 0.06291070 0.9958816
ver que todos los valores p son superiores a 0,1 hijo no se rechaza la hipótesis nula por lo que no hay efecto palanca
3) Observe los coeficientes (la versión robusta) y su valor p, es de esperar que todos los temas sean estadísticamente significativos
garch11Fit@fit$robust.matcoef
Estimate Std. Error t value Pr(>|t|)
mu 3.735730e-05 1.237313e-04 0.3019229 7.627109e-01
omega 1.238605e-05 5.156212e-08 240.2160962 0.000000e+00
alpha1 2.517465e-01 5.271207e-02 4.7758795 1.789235e-06
beta1 5.822453e-01 3.733553e-02 15.5949369 0.000000e+00
4) Criterios de información:
infocriteria(garch11Fit)
Akaike -6.941621
Bayes -6.932700
Shibata -6.941626
Hannan-Quinn -6.938391
quieres el menor valor posible
Aquí están los 4 pasos juntos para el aparch:
signbias(aparchFit)
t-value prob sig
Sign Bias 0.17982812 0.8573014
Negative Sign Bias 0.05186043 0.9586438
Positive Sign Bias 0.57709943 0.5639217
Joint Effect 0.35736070 0.9489028
aparchFit@fit$robust.matcoef
Estimate Std. Error t value Pr(>|t|)
mu 0.0000186132 0.0001385818 0.1343120 8.931558e-01
omega 0.0019649457 0.0004959927 3.9616428 7.443584e-05
alpha1 0.2521930795 0.0433561290 5.8167804 5.999189e-09
beta1 0.5734338681 0.0809929461 7.0800470 1.441069e-12
**gamma1 0.0482664316 0.0886992553 0.5441583 5.863326e-01**
delta 1.0000000000 NA NA NA
se puede ver, gamma1 que es el parámetro de efecto de apalancamiento no es significativo, valor p = 0,58 como se esperaba, por lo que no es un buen modelo
infocriteria(aparchFit)
Akaike -6.942806
Bayes -6.931655
Shibata -6.942813
Hannan-Quinn -6.938769
si comparas los criterios con el GARCH(1,1) puedes ver que el Bayes y el Hannan-Quinn son más pequeños en el primer modelo, los otros 2 más pequeños para el aparch pero SABES que el aparch no es el modelo correcto porque NO hay efecto apalancamiento, no puedes solo confiar en los criterios de información tienes que entender los modelos para seleccionar uno. Con esta acción es fácil porque no tiene efecto de apalancamiento por lo que tienes que seguir con un GARCH(1,1) si obtienes efecto de apalancamiento debes realizar esto con los diferentes modelos que quieras utilizar para encontrar el mejor.
Si después de hacer esto con los diferentes modelos no tienes un claro ganador haz un backtest sobre la predicción y compara el RMSE, MSE o MAE y también haz un backtest de VaR como dice el otro comentario