和宏观经济数据不同,金融市场上多为高频数据,比如股票收益率序列。直观的来说 ,后者是比前者“波动”更多且随机波动的序列,在一元或多元的情况下,构建Copula函数模型和GARCH模型是最好的选择。

多元GARCH家族中,种类非常多,需要自己多推导理解,选择最优模型。本文使用R软件对3家上市公司近十年的每周收益率为例建立模型。 

【大数据部落】R语言多元Copula GARCH 模型时间序列预测_R语言教程

首先我们可以绘制这三个时间序列。

【大数据部落】R语言多元Copula GARCH 模型时间序列预测_R语言教程_02

在这里使用多变量的ARMA-GARCH模型。  

    本文考虑了两种模型

      1 ARMA模型残差的多变量GARCH过程

2 ARMA-GARCH过程残差的多变量模型(基于Copula)
 

1 ARMA-GARCH模型
> fit1 = garchFit(formula = ~arma(2,1)+ garch(1,1),data = dat [,1],cond.dist =“std”)

可视化波动 

【大数据部落】R语言多元Copula GARCH 模型时间序列预测_R语言教程_03

隐含的相关性 

> emwa_series_cor = function(i = 1,j = 2){+ if((min(i,j)== 1)&(max(i,j)== 2)){+ a = 1; B = 5; AB = 2}

+}

【大数据部落】R语言多元Copula GARCH 模型时间序列预测_R语言开发_04

2 BEKK(1,1)模型:

   BEKK11(dat_arma)

【大数据部落】R语言多元Copula GARCH 模型时间序列预测_R语言教程_05

隐含的相关性

 【大数据部落】R语言多元Copula GARCH 模型时间序列预测_R语言开发_06

对单变量GARCH模型残差建模

第一步可能是考虑残差的静态(联合)分布。单变量边际分布是

【大数据部落】R语言多元Copula GARCH 模型时间序列预测_R语言开发_07

而联合密度为

【大数据部落】R语言多元Copula GARCH 模型时间序列预测_R语言开发_08

可视化 密度 

 【大数据部落】R语言多元Copula GARCH 模型时间序列预测_R语言开发_09 

【大数据部落】R语言多元Copula GARCH 模型时间序列预测_R语言教程_10

查看相关性是否随着时间的推移而稳定。

  【大数据部落】R语言多元Copula GARCH 模型时间序列预测_R语言教程_11

斯皮尔曼相关性

【大数据部落】R语言多元Copula GARCH 模型时间序列预测_R语言开发_12

肯德尔相关性

【大数据部落】R语言多元Copula GARCH 模型时间序列预测_R语言教程_13

对相关性建模,考虑DCC模型

 【大数据部落】R语言多元Copula GARCH 模型时间序列预测_R语言开发_14 

对数据进行预测 

 > fcst = dccforecast(dcc.fit,n.ahead = 200)

 
【大数据部落】R语言多元Copula GARCH 模型时间序列预测_R语言开发_15

 

我们已经完全掌握了多元GARCH模型的使用,接下来就可以放手去用R处理时间序列了!

 


【大数据部落】R语言多元Copula GARCH 模型时间序列预测_R语言教程_16 

最受欢迎的见解

1.R语言ARMA-EGARCH模型、集成预测算法对SPX实际波动率进行预测

2.R语言基于ARMA-GARCH-VaR模型拟合和预测实证

3.R语言基于ARMA-GARCH过程的VAR拟合和预测

4.GARCH(1,1),MA以及历史模拟法的VaR比较

5.R语言多元COPULA GARCH 模型时间序列预测

6.matlab预测ARMA-GARCH 条件均值和方差模型

7.R语言对S&P500股票指数进行ARIMA + GARCH交易策略

8.R语言: GARCH模型股票交易量的研究道琼斯股票市场指数

9.R语言GARCH-DCC模型和DCC(MVT)建模估计