首页 > 其他分享 >R语言多元Copula GARCH 模型时间序列预测|附代码数据

R语言多元Copula GARCH 模型时间序列预测|附代码数据

时间:2023-11-14 23:55:06浏览次数:32  
标签:语言 模型 序列 GARCH Copula ARMA

原文链接  http://tecdat.cn/?p=2623

原文出处:拓端数据部落公众号

 最近我们被要求撰写关于Copula GARCH的研究报告,包括一些图形和统计输出。

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

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

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

IMG_256

在这里使用多变量的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”)

可视化波动 

IMG_257

隐含的相关性 

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

+}

IMG_258

2 BEKK(1,1)模型:

   BEKK11(dat_arma)

IMG_259

隐含的相关性

 IMG_260

对单变量GARCH模型残差建模

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

IMG_261

而联合密度为

IMG_262

可视化 密度 

 IMG_263 

IMG_264

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

  IMG_265

斯皮尔曼相关性

IMG_266

肯德尔相关性

IMG_267

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

 IMG_268 

对数据进行预测 

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

 
IMG_269

 

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

 


最受欢迎的见解

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)建模估计

标签:语言,模型,序列,GARCH,Copula,ARMA
From: https://www.cnblogs.com/tecdat/p/17832892.html

相关文章

  • ACwing 334 K匿名序列
    首先这道题很容易发现如果已经知道了最后的答案序列,那么操作顺序是无所谓的所以我们可以假设从头操作到尾由于题目给的是非严格递增序列,我们猜想最后的答案一定是一段一段的,段与段之间单调递增比如1112222233455反证:如果最终的答案序列存在\(a_{i}\)和\(a_{j}\),其......
  • 基于时间频率一致性对时间序列进行自监督对比预训练《Self-Supervised Contrastive Pr
    2023年11月10日,今天看一篇论文,现在17:34,说实话,想摆烂休息,不想看,可还是要看,拴Q。论文:Self-SupervisedContrastivePre-TrainingforTimeSeriesviaTime-FrequencyConsistency或者是:Self-SupervisedContrastivePre-TrainingforTimeSeriesviaTime-FrequencyConsistenc......
  • 序列计数
    给定\(n(n\le10^6)\),对于\([0,n]\)中的每一个\(k\),求出有多少个长度为\(n\)的\(01\)串,其中最长\(1\)连续段长度恰好为\(k\)。由于是\(1\)连续段,不妨按照每个\(0\)把\(01\)串划分为\(i+1\)段,即串中有\(i\)个\(0\)。记\(f_k\)为长度为\(n\)的\(01\)串......
  • 推导式创建序列_列表推导式_字典推导式_集合推导式_生成器推导式
    推导式创建序列:推导式是一个或多个迭代器快速创建序列的一种方法列表推导式列表推导式生成列表对象,语法如下[表达式for变量in可迭代对象]或者[表达式for变量in可迭代对象if条件判断]例如:y=[xforxinrange(1,5)]print(y)字典推导式字典的推导式生成字典对象,格式如......
  • 1822_使用python内置的库进行日期序列的生成
    使用python的内置的库进行日期序列的生成用到的库介绍datetime实现这样的功能其实只需要这一个库就够了,但是网络上找到的例程很多都额外增加了对time库的引用。只能说,这样不会出现错误,但是这样肯定会有一些计算资源上的消耗。#!/usr/bin/python3importdatetimestart_date=......
  • SnakeYaml反序列化漏洞研究
    一、SnakeYaml简介SnakeYaml是Java中解析yaml的库,而yaml是一种人类可读的数据序列化语言,通常用于编写配置文件等。YAML的语法和其他高级语言类似,并且可以简单表达清单、散列表,标量等数据形态。它使用空白符号缩进和大量依赖外观的特色,特别适合用来表达或编辑数据结构、各种配置......
  • 序列和索引
    序列是一个用于储存多个值的连续空间,每个值都对应一个整数的编号,称为索引。索引分为两种一种正向递增索引一种反向递减索引 正向递增索引:从左往右,从0开始,0,1,2,3,4,5,6.....以此类推反向递减索引:从右往左,从从-1开始,-n,-n+1,-n+2........-3-,2,-1  切片操作#序列[sta......
  • 1.1 集合与序列
    德摩根律序列......
  • PHP反序列化题型_Laravel框架漏洞利用
    ctfshowweb271<?phpdefine('LARAVEL_START',microtime(true));require__DIR__.'/../vendor/autoload.php';/*|--------------------------------------------------------------------------|TurnOnTheLights|-------------------......
  • 利用Biopython – Pairwise Alignment计算序列相似度
    #ImportlibrariesfromBioimportpairwise2fromBio.SeqimportSeq#Creatingsamplesequencesseq1=Seq("TGTGACTA")seq2=Seq("CATGGTCA")#Findingsimilaritiesalignments=pairwise2.align.globalxx(seq1,seq2)#Showingresultsformat......