全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
4215 2
2012-08-01
RT,代码如下
library(ccgarch)
nobs <- 1573; nu <- 9.8   
a <- c(0.0016,0.0001,0.0155,0.0001)
A <- diag(c(0.0556,0.1695,0.0802,0.1008))
B <- diag(c(0.9435,0.8304,0.8793,0.8911))
uncR <- matrix(c(1,-0.3050,0.1664,-0.4027,-0.3050,1,-0.1614,0.7632,0.1664,-0.1614,1,-0.1639,-0.4027,0.7632,-0.1639,1),4,4)
dcc.para <- c(0.01,0.98)

data1=read.csv("e:\\xeu.csv",header = FALSE);
data2=read.csv("e:\\xhk.csv",header = FALSE);
data3=read.csv("e:\\xjpn.csv",header = FALSE);
data4=read.csv("e:\\xus.csv",header = FALSE);

data=matrix(c(data1[,1],data2[,1],data3[,1],data4[,1]),1573,4)

# for t distributed innovations
dcc.data.t <- dcc.sim(nobs, a, A, B, uncR, dcc.para, d.f=nu,model="diagonal")
write.csv(dcc.data.t,file="DCC-T.csv")


以上的a,A,B,uucR全部是正态分布dcc.estimates的估值,我可以不通过程序包在t分布一元GARCH的情况下改正过来,但是自由度不知道如何调整?程序包自带的dcc.estimates的估值默认是正态分布的,无法求得自由度,求高手指点!是自己设定?
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2012-8-1 19:40:02
dcc.estimation的代码如下,默认正态分布:
dcc.results2 <- dcc.estimation(inia=a, iniA=A, iniB=B, ini.dcc=dcc.para, dvar=data, model="diagonal")
dcc.results2$out(这里得出系数代入上边的a,A,B,程序这里使用的是正态分布)
write.csv(dcc.results2$std.resid,file="residualforcor.cav"
(输出文件用于用cor来计算相关系数,代入uucR)

在Tomoaki Nakatani的ccgarch说明文件中,没有提及自由度如何估计和设定的问题。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2012-11-23 19:30:14
lywei1988 发表于 2012-8-1 19:40
dcc.estimation的代码如下,默认正态分布:
dcc.results2
我也想知道怎么做基于t分布的,不知道你现在有没有程序
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群