全文链接:http://tecdat.cn/?p=30647
原文出处:拓端数据部落公众号
从Engle在1982发表自回归条件异方差(ARCH)模型的论文以来,金融时间序列数据的波动性就倍受关注。同时,近几年又出现了研究股票市场的波动传递性。多市场的多维广义自回归条件异方差模型及其在不同条件下的扩展与变形,它们不仅包含了单变量的波动特性,而且很好的描述了不同变量间的相互关系。所以,多维GARCH模型为分析金融市场的相互影响提供了有力的工具。
我们围绕多变量GARCH技术进行一些咨询,帮助客户解决独特的业务问题。本文涉及多变量GARCH模型示例的构建。为此,请考虑以下模型
- BEKK
- CCC-GARCH 和 DCC-GARCH
- GO-GARCH
BEKK
BEKK(1,1)具有以下形式:
下图显示了具有上述参数的模拟序列:
BEKK 模型的调整通常计算成本很高,因为它们需要估计大量参数。在本节中,我们将使用该包来估计上一节中模拟多变量序列的参数。 对于 BEKK 模型(1,1) 的调整,我们使用以下语法
代码语言:javascript复制fit.bek.m<-BE(matsim)
估计数由以下公式给出:
CCC-GARCH和DCC-GARCH
代码语言:javascript复制c.H1<-eccc.sim(nobs=1000, c.a1, c.A1, c.B1, c.R1, d.f=5, model="diagonal")
#'h'模拟条件方差的矩阵(T × N )
#'eps'是模拟的时间序列与(E)CCC-GARCH过程的矩阵(T × N )
代码语言:javascript复制plot.ts(c.H1$eps, main = "Processos simulados")
对于模拟过程,我们将使用相同的包估计参数,函数 .我们有两个模拟序列,然后我们假设它们遵循 CCC-GARCH(1,1) 以下过程
估算结果为:
DCC-GARCH
DCC-GARCH 模型是 CCC-GARCH 情况的推广,也就是说,我们有 R matris 不一定是固定的,也就是说它随时间变化:
模拟示例
为了模拟 DCC-GARCH 过程,我们考虑比较性能。
代码语言:javascript复制obs=1000, d.a1, d.A1, d.B1, d.R1, dcc.para=c(d.alpha1,d.beta1), d.f=5, model="diagonal")
ccgarch
与CCC-GARCH的情况一样,我们将使用以下初始量进行迭代过程
代码语言:javascript复制estimation(inia=d.w0,iniA=d.A0,iniB=d.B0,ini.dcc=d.w0,model="diagonal",dvar=d.H1$eps)
结果如下:
rmgarch
拟合模型的结果如下:
DCC-GARCH模型
最初,仅实现 DCC 模型(1,1)。
模拟模型平差的结果如下所示:
CCC-GARCH和DCC-GARCH模型的结论
我们在 CCC-GARCH 和 DCC-GARCH 示例中都看到,该软件包没有对模拟模型的参数提供令人满意的估计值。
GO-GARCH
在GO-GARCH模型中,我们对构建协方差矩阵的正交分解感兴趣
模拟
给出的矩阵M由下式给出:
我们将得到:
代码语言:javascript复制gog.rt<-t(M%*%t(bt))
gogarch
rmgarch
让我们首先指定流程参数:rmgarch
mean.model=list(model="constant"),distribution.model="mvnorm
根据估计因子构建数据矩阵的不同序列之间的估计关系表面
最受欢迎的见解
1.R语言对S&P500股票指数进行ARIMA GARCH交易策略
2.R语言改进的股票配对交易策略分析SPY—TLT组合和中国股市投资组合
3.R语言时间序列:ARIMA GARCH模型的交易策略在外汇市场预测应用
4.TMA三均线期指高频交易策略的R语言实现
5.r语言多均线量化策略回测比较
6.用R语言实现神经网络预测股票实例
7.r语言预测波动率的实现:ARCH模型与HAR-RV模型
8.R语言如何做马尔科夫转换模型markov switching model
9.matlab使用Copula仿真优化市场风险