如何用R查找GARCH模型的顺序/滞后?(建立GARCH模型)

时间:2019-04-01 10:46:28

标签: r time-series

我正在尝试拟合GARCH模型,现在我找到了均值方程,但对下一步一无所知。这就是波动部分。 我认为我应该先找到滞后,然后再找到系数。 许多人使用GARCH(1,1),但没有解释原因。也许有人可以一步一步地建立GARCH模型吗?

这就是我所做的。

1。模拟时间序列

library(fGarch)
set.seed(1234)
r_t<- garchSim(garchSpec(model = list(mu=0.01,ar=c(0.03,-0.03),
     alpha= 0.12, beta= 0.09, omega= 0.01)),n = 200)
ts.plot(r_t)

2。拟合均值函数,发现它是

0.6232 * r(t-1)-0.6027 * r(t-2)+ 0.7834 * r(t-3)-0.5700 * a(t-1)+ 0.4637 * a(t-2)-0.8937 * a(t-3)+0.1228965

a=matrix(0,nrow=6,ncol=6)
rownames(a)<-0:5
colnames(a)<-0:5
for(i in 0:5)
{
  for(j in 0:5)
  {
   a[i+1,j+1]=arima(r_t,order=c(i,0,j))$aic
  }
}
arima(r_t,order=c(3,0,3))
intercept=(0.0241/(1-0.6232-(-0.6027)-0.7834))
  1. 接下来,我应该像这样建模波动率,然后? enter image description here
set.seed(1234)
mu<-arima.sim(model=list(order=c(3,0,3),
             ar=c(0.6232,-0.6027,0.7834),
             ma=c(-0.5700,0.4637,-0.8937)),n=200)+0.1228965
at<-r_t-mu
set.seed(1234)
sigma2<-(at/rnorm(200))^2

0 个答案:

没有答案