R语言单变量和多变量(多元)动态条件相关系数DCC-GARCH模型分析股票收益率金融时间序列数据波动率-1

简介: R语言单变量和多变量(多元)动态条件相关系数DCC-GARCH模型分析股票收益率金融时间序列数据波动率

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

介绍

当您处理金融时间序列时,我们通常可以获得相对高频的观察结果。例如,每天进行观察是很常见的。事实上,现在可以获得每小时、分钟、秒甚至毫秒的观测值。

使用的包

有许多软件包可以使我们能够估计波动率模型。我们还将使用该 quantmod 软件包,因为它可以让我们轻松访问一些标准财务数据。

数据上传

在这里,我们将使用包提供的方便的数据检索功能(getSymbolsquantmod 来检索一些数据。例如,此函数可用于检索股票数据。默认来源是 Yahoo Finance. 如果您想找出哪些股票有哪个符号,您应该能够在互联网上搜索以找到股票代码列表。下面介绍如何使用该功能。但请注意,我的经验是有时连接不起作用,您可能会收到错误消息。在这种情况下,只需在几秒钟后重试,它就可以正常工作。

getSymbols("IBM")
## \[1\] "IBM"
getSymbols("GOOG")
## \[1\] "GOOG"
getSymbols("BP")
## \[1\] "BP"

在您的环境中,您可以看到这些命令中的每一个都使用各自的股票代码名称加载一个对象。让我们看一下这些数据框之一,以了解这些数据是什么:

image.png

您可以看到该对象包含一系列每日观察结果(  OpenHighClose股价  )。我们还了解到对象被格式化为xts 对象,  是一种时间序列格式,实际上我们了解到数据范围从 2007-01-03 到 2022-03-24。

使用以下命令生成一个看起来有点花哨的图表

image.png

当我们估计波动率模型时,我们使用收益率。有一个函数可以将数据转换为收益率。

dailyReturn(IBM)

单变量 GARCH 模型

您需要做的第一件事是确保您知道要估计的 GARCH 模型类型,然后让 R 知道这一点。让我们看看:

image.png

这里的关键问题是 Mean Model (这里是 ARMA(1,1) 模型)和 GARCH Model, 这里 sGARCH(1,1) 基本上是 GARCH(1,1) 的模型。


假设您要将平均模型从 ARMA(1,1) 更改为 ARMA(1,0),即 AR(1) 模型。

uec <- ugarchspec

以下是 EWMA 模型示例。

ewm = ugarchspe

模型估计

现在我们已经指定了一个模型来估计,我们需要找到最好的参数,即我们需要估计模型。这一步是通过 it 函数来实现的。

fit(specrIBM)

fit 现在是一个包含一系列估计结果的列表。让我们看看结果

image.png

image.png

image.png

ar1 是均值模型的 AR1 系数(这里非常小且基本上不显着), alpha1 是 GARCH 方程中残差平方 beta1 的系数,是滞后方差的系数。

通常,您会希望使用模型输出进行一些进一步的分析。因此,了解如何提取参数估计值、标准误差或残差等信息非常重要。该对象 ugfit 包含所有信息。

names

如果您想提取估计的系数,您可以通过以下方式进行:

image.png

让我们绘制平方残差和估计的条件方差:

image.png


R语言单变量和多变量(多元)动态条件相关系数DCC-GARCH模型分析股票收益率金融时间序列数据波动率-2

https://developer.aliyun.com/article/1488200

相关文章
|
19天前
|
数据挖掘 C语言 C++
R语言是一种强大的统计分析工具,提供了丰富的函数和包用于时间序列分析。
【10月更文挑战第21天】时间序列分析是一种重要的数据分析方法,广泛应用于经济学、金融学、气象学、生态学等领域。R语言是一种强大的统计分析工具,提供了丰富的函数和包用于时间序列分析。本文将介绍使用R语言进行时间序列分析的基本概念、方法和实例,帮助读者掌握R语言在时间序列分析中的应用。
40 3
|
6月前
【R语言实战】——带有高斯新息的金融时序的GARCH模型拟合预测及VAR/ES风险度量
【R语言实战】——带有高斯新息的金融时序的GARCH模型拟合预测及VAR/ES风险度量
|
6月前
【R语言实战】——带有新息为标准学生t分布的金融时序的GARCH模型拟合预测
【R语言实战】——带有新息为标准学生t分布的金融时序的GARCH模型拟合预测
|
2月前
|
机器学习/深度学习 算法 前端开发
R语言基础机器学习模型:深入探索决策树与随机森林
【9月更文挑战第2天】决策树和随机森林作为R语言中基础且强大的机器学习模型,各有其独特的优势和适用范围。了解并熟练掌握这两种模型,对于数据科学家和机器学习爱好者来说,无疑是一个重要的里程碑。希望本文能够帮助您更好地理解这两种模型,并在实际项目中灵活应用。
|
3月前
|
数据采集 存储 数据可视化
R语言时间序列分析:处理与建模时间序列数据的深度探索
【8月更文挑战第31天】R语言作为一款功能强大的数据分析工具,为处理时间序列数据提供了丰富的函数和包。从数据读取、预处理、建模到可视化,R语言都提供了灵活且强大的解决方案。然而,时间序列数据的处理和分析是一个复杂的过程,需要结合具体的应用场景和需求来选择合适的方法和模型。希望本文能为读者在R语言中进行时间序列分析提供一些有益的参考和启示。
|
3月前
|
资源调度 数据挖掘
R语言回归分析:线性回归模型的构建与评估
【8月更文挑战第31天】线性回归模型是统计分析中一种重要且实用的工具,能够帮助我们理解和预测自变量与因变量之间的线性关系。在R语言中,我们可以轻松地构建和评估线性回归模型,从而对数据背后的关系进行深入的探索和分析。
|
6月前
【R语言实战】——Logistic回归模型
【R语言实战】——Logistic回归模型
|
6月前
|
数据可视化
R语言广义线性混合模型GLMMs在生态学中应用可视化2实例合集|附数据代码2
R语言广义线性混合模型GLMMs在生态学中应用可视化2实例合集|附数据代码
|
6月前
|
机器学习/深度学习 数据可视化
R语言Stan贝叶斯回归置信区间后验分布可视化模型检验|附数据代码
R语言Stan贝叶斯回归置信区间后验分布可视化模型检验|附数据代码
|
2月前
|
数据采集 机器学习/深度学习 数据可视化
R语言从数据到决策:R语言在商业分析中的实践
【9月更文挑战第1天】R语言在商业分析中的应用广泛而深入,从数据收集、预处理、分析到预测模型构建和决策支持,R语言都提供了强大的工具和功能。通过学习和掌握R语言在商业分析中的实践应用,我们可以更好地利用数据驱动企业决策,提升企业的竞争力和盈利能力。未来,随着大数据和人工智能技术的不断发展,R语言在商业分析领域的应用将更加广泛和深入,为企业带来更多的机遇和挑战。