悬赏 20 个论坛币 已解决
小论文中用到均值方程中带外生变量的garch模型,用的是rugarch包,可惜模型设定好之后一直跑不过去,提示的问题是:
错误于pars[idx["mxreg", 1]:idx["mxreg", 2], 1] = fit.mean : 
  更换参数长度为零
为了搞清楚,用作者自己的程序包,作者原程序如下:
data(dji30ret,package="rugarch")
dim(dji30ret)
dates = rownames(dji30ret[,"AA", drop = FALSE])
        monday = rugarch:::.WeekDayDummy(dates, date.format = "%Y-%m-%d", weekday = "Monday")
        # convert to matrix which is what the specification expects
        monday = matrix(monday, ncol = 1)
        # create a dummy day-of-week variable for the variance regression (Friday)
        friday = rugarch:::.WeekDayDummy(dates, date.format = "%Y-%m-%d", weekday = "Friday")
        # convert to matrix which is what the specification expects
        friday = matrix(friday, ncol = 1)
datas=dji30ret[,"AA",drop=F]
spec = ugarchspec(
                        variance.model = list(model = "sGARCH", garchOrder = c(1,1), 
                                        external.regressors = matrix(monday,ncol=1)), 
                        mean.model = list(armaOrder = c(1,1), include.mean = TRUE, 
                                        external.regressors = matrix(friday)), 
                        distribution.model = "std")
        
        sgarch.fit5 = ugarchfit(data=dji30ret[,"AA", drop = FALSE], spec = spec, 
                        solver = "solnp")
但是现在的rugarch包中已经移除了WeekDayDummy程序,所以为了试验,我做了如下修改:
monday=matrix(1:5521,ncol=1)
friday=matrix(rnorm(5521),ncol=1)
可是即使用作者的程序,还是出现以下问题:
错误于pars[idx["mxreg", 1]:idx["mxreg", 2], 1] = fit.mean : 
  更换参数长度为零
楼主已经被这个问题折磨得快阵亡了,求各路大神赐教啊!!!