从 BayesDCCgarch 中提取相关矩阵 R

Extraction of correlation matrix, R, from BayesDCCgarch

我目前正在试验 bayesDCCgarch 包,一直在寻找从模型估计中提取双变量条件相关性的方法。

函数的输出只提供方差、协方差矩阵H_t,它由H=DRD组成(其中 D_t 来自单变量 garch 模型的条件方差估计)。我正在寻找 R 矩阵

我查看了 github here 上的代码并在脚本中看到,bayesDccGarch.c 他们确实计算了相关矩阵 R (第 291 - 300 行)

// compute the R matrix
    for(i = 0; i < k; i++){
        hiit = omega[i];// /(1.0-beta[i]); // H_{ii,1}
        MEs[i][0]  = y[0][i]/sqrt(hiit);
        for(t = 1; t < n; t++){
            hiit = omega[i] + alpha[i]*y[t-1][i]*y[t-1][i] + beta[i]*hiit; // H_{ii,t}
            MEs[i][t]  = y[t][i]/sqrt(hiit); // Standard Errors
        }
    }   
    mcov(n, k, MEs, R); // compute the R matrix

任何帮助我如何绘制相关矩阵 R 而不是如下代码中每个系列的估计波动率:

 library(bayesDccGarch)
 data(DaxCacNik)  
 mY<-DaxCacNik[,1:2]
 out = bayesDccGarch(mY, nSim=1000)
 plotVol(mY, out$H[,c("H_1,1","H_2,2")], c("DAX","CAC40"))

我希望将相关结构与 rmgarch 库中的 dccfit 函数进行比较。

在与包的作者交谈后,提取相关性的正确答案确实是使用 H 矩阵以及 cov/sqrt(var)sqrt(var):

 library(bayesDccGarch)
 data(DaxCacNik)  
 mY<-DaxCacNik[,1:2]
 out = bayesDccGarch(mY, nSim=10000)
 R<-out$H[,("H_2,1")]/sqrt(out$H[,("H_1,1")]*out$H[,("H_2,2")])