У меня есть вопрос, касающийся оценки параметров моих моделей, т.е. ARIMA (p, d, q) и ARIMA (p, d, q) -GARCH (r, s).
После проверки стационарностиЯ установил модель ARIMA, используя функцию auto.arima()
, и модель ARIMA (1,0,0) была определена как оптимальная (самая низкая AIC).
Остатки все еще демонстрировали признаки автокорреляции, поэтому ярешил установить гибридную модель, а не просто модель ARIMA. После нахождения оптимальных параметров для моей модели ARIMA () - GARCH () я получил следующее: ARIMA (8,0,6) -GARCH (1,1). Теперь остатки следуют нормальному распределению, квадраты остатков не показывают автокорреляции, и никаких дальнейших эффектов ARCH нет. Код, который я использовал:
ug_spec = ugarchspec()
i_opt=0
j_opt=0
p_opt=0
q_opt=0
AIC_best<-Inf
for(i in 0:7){
for(j in 0:7){
for (p in 1:5){
for (q in 1:5){
ug_spec = ugarchspec(mean.model = list(armaOrder=c(i,j), include.mean=FALSE),variance.model = list(model = "sGARCH", garchOrder = c(p, q)))
ugfit<- ugarchfit(spec=ug_spec, data)
AIC<-infocriteria(ugfit)[1]
if (AIC<AIC_best){
AIC_best <- AIC
i_opt=i
j_opt=j
q_opt=q
p_opt=p
}
}
}
}
}
Теперь мой вопрос: как параметры модели ARIMA могут измениться с (1,0,0) до (8,0,6)? Мне кажется, это большое изменение, которое должно было быть зафиксировано и в auto.arima
.
Я думал, что это может быть проблемой переоснащения, но после того, как я дал понять, что модель с большим количеством параметров должна как минимум уменьшить AIC на 5 или 10 (убедительные доказательства в пользу более сложной модели), она все же дала мнетот же результат.