You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从mgarchBEKK/BEKKs提取BEKK-GARCH的ML估计渐近协方差矩阵?

提取BEKK-GARCH模型ML估计的渐近协方差矩阵

问题描述

我正尝试从BEKKs或mgarchBEKK包的BEKK-GARCH模型估计过程中提取极大似然(ML)估计的渐近协方差矩阵。mgarchBEKK包可提供参数标准误,BEKKs包则给出参数的t值。我希望进行Wald检验,以验证“A”或“G”矩阵的非对角线元素是否非零,从而研究波动溢出效应。请问如何提取BEKK-GARCH模型ML估计的渐近协方差矩阵?

用户提供的示例代码

library(mgarchBEKK)
library(BEKKs)

# mgarchBEKK version (H IS SINGULAR!... message does not happen with my data, but it does in this simulated example):

## Simulate series:
simulated <- simulateBEKK(2, 1000, c(1,1))

## Prepare the matrix:
simulated <- do.call(cbind, simulated$eps)

## Estimate with default arguments:
estimated1 <- BEKK(simulated)

## Standard errors:
se <- estimated$asy.se.coef


# BEKKs version
data <- StocksBonds # data comes with package
spec <- bekk_spec()
estimated2 <- bekk_fit(spec, data)
summary(bekk_fit)

解决方案

1. 使用mgarchBEKK包

mgarchBEKK的BEKK()拟合结果中直接内置了渐近协方差矩阵,无需额外计算:

# 提取渐近协方差矩阵
cov_matrix_mgarch <- estimated1$asy.cov.coef
  • 该矩阵的对角线元素对应参数标准误的平方(与asy.se.coef的平方一致),非对角线元素为参数间的协方差,可直接用于后续Wald检验。

2. 使用BEKKs包

BEKKs包支持通过vcov()函数直接提取渐近协方差矩阵,比通过t值反推更准确:

# 直接提取拟合结果的渐近协方差矩阵
cov_matrix_bekks <- vcov(estimated2)

如果需要从summary输出手动推导,可通过参数估计值 / t值得到标准误,再构造对角矩阵,但vcov()方法更可靠——它直接调用模型拟合时计算的信息矩阵结果。

3. 用于Wald检验的示例

以检验2变量BEKK模型中A矩阵的非对角线元素为例,假设该元素对应第3个参数,可使用lmtest包的waldtest函数完成检验:

library(lmtest)

# 构造约束矩阵:检验第3个参数等于0
constraint <- matrix(c(0, 0, 1), nrow = 1)
# mgarchBEKK模型的Wald检验
wald_result_mgarch <- waldtest(estimated1, constraint = constraint)
# BEKKs模型的Wald检验
wald_result_bekks <- waldtest(estimated2, constraint = constraint)

# 查看检验结果
print(wald_result_mgarch)
print(wald_result_bekks)

内容的提问来源于stack exchange,提问作者Sylvia

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 11:35:22