【视频】Copula算法原理和R语言股市收益率相依性可视化分析(下)

简介: 【视频】Copula算法原理和R语言股市收益率相依性可视化分析

【视频】Copula算法原理和R语言股市收益率相依性可视化分析(上):https://developer.aliyun.com/article/1489858


点击标题查阅往期内容


R语言多元Copula GARCH 模型时间序列预测


01

02

03

04

我们可以绘制矢量的3D图表示u

现在,作为最后一步,我们只需要选择边缘并应用它。我选择了边缘为Gamma,Beta和Student,并使用下面指定的参数。

x1 < -  qgamma(u \[,1\],shape = 2,scale = 1)
x2 < -  qbeta(u \[,2\],2,2)
x3 < -  qt(u \[,3\],df = 5)

下面是我们模拟数据的3D图。


df < -  cbind(x1,x2,x3)
pairs.panels(DF)
 
          x1 x2 x3
x1 1.0000000 0.3812244 0.1937548
x2 0.3812244 1.0000000 -0.7890814
x3 0.1937548 -0.7890814 1.0000000

这是随机变量的散点图矩阵:

使用copula


让我们使用copula复制上面的过程。

现在我们已经通过copula(普通copula)指定了相依结构并设置了边缘,mvdc()函数生成了所需的分布。然后我们可以使用rmvdc()函数生成随机样本。

colnames(Z2)< -  c(“x1”,“x2”,“x3”)
pairs.panels(Z2)

模拟数据当然非常接近之前的数据,显示在下面的散点图矩阵中:

简单的应用示例


现在为现实世界的例子。我们将拟合两个股票 ,并尝试使用copula模拟 。

让我们在R中加载 :

cree < -  read.csv('cree_r.csv',header = F)$ V2
yahoo < -  read.csv('yahoo_r.csv',header = F)$ V2

在直接进入copula拟合过程之前,让我们检查两个股票收益之间的相关性并绘制回归线:

我们可以看到 正相关 :

在上面的第一个例子中,我选择了一个正态的copula模型,但是,当将这些模型应用于实际数据时,应该仔细考虑哪些更适合数据。例如,许多copula更适合建模非对称相关,其他强调尾部相关性等等。我对股票收益率的猜测是,t-copula应该没问题,但是猜测肯定是不够的。本质上, 允许我们通过函数使用BIC和AIC执行copula选择 :

pobs(as.matrix(cbind(cree,yahoo)))\[,1\]
  selectedCopula
 
$ PAR
\[1\] 0.4356302
$ PAR2
\[1\] 3.844534

拟合算法确实选择了t-copula并为我们估计了参数。

让我们尝试拟合建议的模型,并检查参数拟合。

t.cop  
set.seed(500)
m < -  pobs(as.matrix(cbind(cree,yahoo)))
 
COEF(FIT)
  rho.1 df 
0.43563 3.84453

我们来看看我们刚估计的copula的密度

rho < -  coef(fit)\[1\]
df < -  coef(fit)\[2\]

现在我们只需要建立Copula并从中抽取3965个随机样本。

rCopula(3965,tCopula(  = 2, ,df = df))
 
          \[,1\] \[,2\]
\[1,\] 1.0000000 0.3972454
\[2,\] 0.3972454 1.0000000

这是包含的样本的图:

t-copula通常适用于在极值(分布的尾部)中存在高度相关性的现象。

现在我们面临困难:对边缘进行建模。为简单起见,我们将假设正态分布 。因此,我们估计边缘的参数。

直方图显示如下:

现在我们在函数中应用copula,从生成的多变量分布中获取模拟观测值。最后,我们将模拟结果与原始数据进行比较。

这是在假设正态分布边缘和相依结构的t-copula的情况下数据的最终散点图:

正如您所看到的,t-copula导致结果接近实际观察结果 。

让我们尝试df=1df=8:

显然,该参数df对于确定分布的形状非常重要。随着df增加,t-copula倾向于正态分布copula。

相关文章
|
3月前
|
消息中间件 存储 缓存
zk基础—1.一致性原理和算法
本文详细介绍了分布式系统的特点、理论及一致性算法。首先分析了分布式系统的五大特点:分布性、对等性、并发性、缺乏全局时钟和故障随时发生。接着探讨了分布式系统理论,包括CAP理论(一致性、可用性、分区容错性)和BASE理论(基本可用、软状态、最终一致性)。文中还深入讲解了两阶段提交(2PC)与三阶段提交(3PC)协议,以及Paxos算法的推导过程和核心思想,强调了其在ZooKeeper中的应用。最后简述了ZAB算法,指出其通过改编的两阶段提交协议确保节点间数据一致性,并在Leader故障时快速恢复服务。这些内容为理解分布式系统的设计与实现提供了全面的基础。
|
4月前
|
NoSQL 算法 安全
分布式锁—1.原理算法和使用建议
本文主要探讨了Redis分布式锁的八大问题,包括非原子操作、忘记释放锁、释放其他线程的锁、加锁失败处理、锁重入问题、锁竞争问题、锁超时失效及主从复制问题,并提供了相应的优化措施。接着分析了Redis的RedLock算法,讨论其优缺点以及分布式专家Martin对其的质疑。此外,文章对比了基于Redis和Zookeeper(zk)的分布式锁实现原理,包括获取与释放锁的具体流程。最后总结了两种分布式锁的适用场景及使用建议,指出Redis分布式锁虽有性能优势但模型不够健壮,而zk分布式锁更稳定但部署成本较高。实际应用中需根据业务需求权衡选择。
|
6月前
|
人工智能 算法 语音技术
Video-T1:视频生成实时手术刀!清华腾讯「帧树算法」终结闪烁抖动
清华大学与腾讯联合推出的Video-T1技术,通过测试时扩展(TTS)和Tree-of-Frames方法,显著提升视频生成的连贯性与文本匹配度,为影视制作、游戏开发等领域带来突破性解决方案。
182 4
Video-T1:视频生成实时手术刀!清华腾讯「帧树算法」终结闪烁抖动
|
6月前
|
机器学习/深度学习 数据采集 算法
短视频到底如何推荐的?深度剖析视频算法推送原理详细且专业的解读-优雅草卓伊凡-【01】短视频算法推荐之数据收集
短视频到底如何推荐的?深度剖析视频算法推送原理详细且专业的解读-优雅草卓伊凡-【01】短视频算法推荐之数据收集
537 12
短视频到底如何推荐的?深度剖析视频算法推送原理详细且专业的解读-优雅草卓伊凡-【01】短视频算法推荐之数据收集
|
7月前
|
运维 NoSQL 算法
【📕分布式锁通关指南 04】redis分布式锁的细节问题以及RedLock算法原理
本文深入探讨了基于Redis实现分布式锁时遇到的细节问题及解决方案。首先,针对锁续期问题,提出了通过独立服务、获取锁进程自己续期和异步线程三种方式,并详细介绍了如何利用Lua脚本和守护线程实现自动续期。接着,解决了锁阻塞问题,引入了带超时时间的`tryLock`机制,确保在高并发场景下不会无限等待锁。最后,作为知识扩展,讲解了RedLock算法原理及其在实际业务中的局限性。文章强调,在并发量不高的场景中手写分布式锁可行,但推荐使用更成熟的Redisson框架来实现分布式锁,以保证系统的稳定性和可靠性。
314 0
【📕分布式锁通关指南 04】redis分布式锁的细节问题以及RedLock算法原理
|
8月前
|
机器学习/深度学习 算法 PyTorch
深度强化学习中SAC算法:数学原理、网络架构及其PyTorch实现
软演员-评论家算法(Soft Actor-Critic, SAC)是深度强化学习领域的重要进展,基于最大熵框架优化策略,在探索与利用之间实现动态平衡。SAC通过双Q网络设计和自适应温度参数,提升了训练稳定性和样本效率。本文详细解析了SAC的数学原理、网络架构及PyTorch实现,涵盖演员网络的动作采样与对数概率计算、评论家网络的Q值估计及其损失函数,并介绍了完整的SAC智能体实现流程。SAC在连续动作空间中表现出色,具有高样本效率和稳定的训练过程,适合实际应用场景。
2178 7
深度强化学习中SAC算法:数学原理、网络架构及其PyTorch实现
|
9月前
|
机器学习/深度学习 人工智能 算法
Enhance-A-Video:上海 AI Lab 推出视频生成质量增强算法,显著提升 AI 视频生成的真实度和细节表现
Enhance-A-Video 是由上海人工智能实验室、新加坡国立大学和德克萨斯大学奥斯汀分校联合推出的视频生成质量增强算法,能够显著提升视频的对比度、清晰度和细节真实性。
342 8
Enhance-A-Video:上海 AI Lab 推出视频生成质量增强算法,显著提升 AI 视频生成的真实度和细节表现
|
9月前
|
算法 Java 数据库
理解CAS算法原理
CAS(Compare and Swap,比较并交换)是一种无锁算法,用于实现多线程环境下的原子操作。它通过比较内存中的值与预期值是否相同来决定是否进行更新。JDK 5引入了基于CAS的乐观锁机制,替代了传统的synchronized独占锁,提升了并发性能。然而,CAS存在ABA问题、循环时间长开销大和只能保证单个共享变量原子性等缺点。为解决这些问题,可以使用版本号机制、合并多个变量或引入pause指令优化CPU执行效率。CAS广泛应用于JDK的原子类中,如AtomicInteger.incrementAndGet(),利用底层Unsafe库实现高效的无锁自增操作。
369 0
理解CAS算法原理
|
9月前
|
存储 人工智能 缓存
【AI系统】布局转换原理与算法
数据布局转换技术通过优化内存中数据的排布,提升程序执行效率,特别是对于缓存性能的影响显著。本文介绍了数据在内存中的排布方式,包括内存对齐、大小端存储等概念,并详细探讨了张量数据在内存中的排布,如行优先与列优先排布,以及在深度学习中常见的NCHW与NHWC两种数据布局方式。这些布局方式的选择直接影响到程序的性能,尤其是在GPU和CPU上的表现。此外,还讨论了连续与非连续张量的概念及其对性能的影响。
269 3
|
10月前
|
机器学习/深度学习 人工智能 算法
探索人工智能中的强化学习:原理、算法与应用
探索人工智能中的强化学习:原理、算法与应用

热门文章

最新文章