我想在 R 中使用 ccgarch 包。首先,这个包中的初始值是什么?
我很确定没有默认参数。如果您尝试在未指定的情况下运行您的代码,param
您应该会得到类似的东西(注意:我是使用命令执行此操作的loglik.dcc
):
Error in loglik.dcc(dvar = my.df, model = "diagonal") :
argument "param" is missing, with no default
如何指定这些值?
我建议您查看 ccgarch 包文档中的示例。虽然没有给出例子loglik.eccc
,但是有一个很好的例子loglik.dcc
。
可以在此处访问文档。第 24/25 页上的示例如下:
## Not run:
# Simulating data from the original DCC-GARCH(1,1) process
nobs <- 1000; cut <- 1000
a <- c(0.003, 0.005, 0.001)
A <- diag(c(0.2,0.3,0.15))
B <- diag(c(0.75, 0.6, 0.8))
uncR <- matrix(c(1.0, 0.4, 0.3, 0.4, 1.0, 0.12, 0.3, 0.12, 1.0),3,3)
dcc.para <- c(0.01,0.98)
dcc.data <- dcc.sim(nobs, a, A, B, uncR, dcc.para, model="diagonal")
# Estimating a DCC-GARCH(1,1) model
dcc.results <- dcc.estimation(inia=a, iniA=A, iniB=B, ini.dcc=dcc.para,
dvar=dcc.data$eps, model="diagonal")
# Parameter estimates and their robust standard errors
dcc.results$out
# Computing the value of the log-likelihood at the estimates
loglik.dcc(dcc.results$out[1,], dcc.data$eps, model="diagonal")
## End(Not run)
dcc.results$out
将向您显示估计的参数:
> dcc.results$out
a1 a2 a3 A11 A22 A33 B11 B22 B33 dcc alpha
estimates 0.002390773 0.00477909 0.001010304 0.199707914 0.2738877 0.13370911 0.7644433750 0.61175081 0.82020157 0.018729549
std.err 0.000703168 0.03576364 0.032840012 0.001213087 0.0439388 0.05675561 0.0003626412 0.02548092 0.03398187 0.008090084
dcc beta
estimates 0.93071563
std.err 0.03659041
您可以在计算中使用它loglik.dcc
:
loglik.dcc(dcc.results$out[1,], dcc.data$eps, model="diagonal")
[1] 6316.604
由此得出结论,您可以:
1.自己设置一个参数向量
您的示例param=c(1,2,3,4,5,6,7,8,9,10,11,12,13,14)
违反了一些非常重要的模型限制。我强烈建议您阅读更多有关您正在研究的模型的限制的信息(我发现这在所有 GARCH 模型的祖父 Robert Engle 的第 160 页的这篇期刊文章中得到了很好的叙述。)
简而言之:您可以在上面的估计参数中看到它们都在 Range 中0 < a, A and B < 1
。如果您追求某些东西,请根据这些参数定位自己。
2. 根据您的数据估算它们,并如上例所示使用它们。
请注意,该示例适用于 3 系列。如果您使用更多/更少的尺寸,您将需要调整初始参数。例如,该ccgarch2
软件包将让您在不设置初始值的情况下进行估算。它将随机生成它们。
此外,我如何使用 loglik.eccc 并为其定义参数?
这应该包含在上面的示例/叙述中。