R语言风险价值:ARIMA,GARCH,Delta-normal法滚动估计VaR(Value at Risk)和回测分析股票数据-1

简介: R语言风险价值:ARIMA,GARCH,Delta-normal法滚动估计VaR(Value at Risk)和回测分析股票数据

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

介绍

此分析的目的是构建一个过程,以在给定时变波动性的情况下正确估计风险价值。风险价值被广泛用于衡量金融机构的市场风险。我们的时间序列数据包括 1258 天的股票收益。为了解释每日收益率方差的一小部分,我们使用 Box-Jenkins 方法来拟合自回归综合移动平均 (ARIMA) 模型,并测试带下划线的假设。稍后,当我们寻找替代方案、最佳拟合分布形式时,我们会检查收益率的正态性。我们使用广义自回归异方差 (GARCH) 方法估计残差的条件方差,并将其与 delta-normal 方法进行比较。


数据

出于建模过程的目的,我们每天收集了 5 年(2013 年 2 月至 2018 年 2 月)的花旗公司股票(共 1259 个观察样本)。

# 加载库
library(tidyverse)
# 加载数据
read.csv('stock.csv', header = T)
# 每只股票一栏
plot( y = stok$C , geo = 'line')

image.png

红线表示此特定时间范围内的平均收盘价。

非平稳过程具有随时间变化的均值、方差和协方差。使用非平稳时间序列数据会导致预测不可靠。平稳过程是均值回归的,即它在具有恒定方差的恒定均值附近波动。在我们的例子中,平稳性是指平稳时间序列满足三个条件的弱平稳性:

image.png

为了解决这个问题,我们主要使用差分法。一阶差分可以描述为

image.png

对于平稳性变换,我们更倾向于计算简单的日收益,表示如下

image.png

ret = diff(stoks$C) / socs$C\[-legth\]
 
plot(x = 1:length, y = res )

image.png

为了验证收益率的平稳性,我们使用了 Dickey-Fuller 检验,其中零假设表示非平稳时间序列。


adf.test(ret)

image.png

小的 P 值 (<0.01) 表明有足够的证据拒绝原假设,因此时间序列被认为是平稳的。

Box-Jenkins 方法

对于时间序列分析,Box-Jenkins 方法应用 ARIMA 模型来找到代表生成时间序列的随机过程的时间序列模型的最佳拟合。该方法使用三阶段建模方法:a) 识别,b) 估计,c) 诊断检查

识别

要使用 Box-Jenkins 方法,我们必须确保时间序列是平稳的。在我们的例子中,我们使用我们在前一部分中已经检查过平稳性的股票的收益率。此外,基于自相关函数 (ACF) 和偏自相关函数 (PACF),可以确定 ARIMA 模型的 p、d 和 q 阶。识别模型的另一种方法是 Akaike 信息准则 (AICc)。AIC 估计每个模型相对于其他每个模型的质量。

image.png

其中

  • ∑u^2= 残差平方和
  • T = 观察次数
  • k = 模型参数的数量 (p + q + 1)

很明显,当模型中加入额外的滞后参数时,残差总和会减少,但可能会出现过拟合的问题。AIC 处理过拟合和欠拟合的风险。将选择 AIC 最低的模型。

auto.arima(rets )

image.png

可以通过上面的过程观察到我们计算了各种 ARIMA 模型的 AIC ,并且我们推断出合适的模型是 二阶自回归 (AR(2))

估计

为了估计参数的系数,我们使用最大似然。使用ARIMA(2, 0, 0)作为选择模型,结果如下:

model

image.png

因此,该过程可以描述为:

rt=0.0437∗rt−1−0.0542∗rt−2+ϵt 其中 ϵt 是白噪声

诊断检查

该程序包括观察残差图及其 ACF & PACF 图,并检查 Ljung-Box 测试结果。如果模型残差的 ACF 和 PACF 没有显示显着滞后,则所选模型是合适的。

ggtsdisplay(plot)

image.png

ACF 和 PACF 图很相似,自相关似乎为零。右下角图表示残差与正态分布 N(0, σ2σ2) 相比的直方图。

为了进一步检验残差不相关的假设,我们执行 Ljung-Box 检验。

image.png

QLB统计量不对称地遵循具有 mpq 自由度的 X2 分布。零假设是指 H0:ρ1=ρ2=⋯=ρm=0

Box.test(resiuas)
Box.test(resiuas)

image.png

我们不能拒绝原假设,因此残差的过程表现得像白噪声,所以没有可能被建模。


R语言风险价值:ARIMA,GARCH,Delta-normal法滚动估计VaR(Value at Risk)和回测分析股票数据-2

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

相关文章
|
4月前
|
数据采集 机器学习/深度学习 数据可视化
R语言从数据到决策:R语言在商业分析中的实践
【9月更文挑战第1天】R语言在商业分析中的应用广泛而深入,从数据收集、预处理、分析到预测模型构建和决策支持,R语言都提供了强大的工具和功能。通过学习和掌握R语言在商业分析中的实践应用,我们可以更好地利用数据驱动企业决策,提升企业的竞争力和盈利能力。未来,随着大数据和人工智能技术的不断发展,R语言在商业分析领域的应用将更加广泛和深入,为企业带来更多的机遇和挑战。
|
3月前
|
数据挖掘 C语言 C++
R语言是一种强大的统计分析工具,提供了丰富的函数和包用于时间序列分析。
【10月更文挑战第21天】时间序列分析是一种重要的数据分析方法,广泛应用于经济学、金融学、气象学、生态学等领域。R语言是一种强大的统计分析工具,提供了丰富的函数和包用于时间序列分析。本文将介绍使用R语言进行时间序列分析的基本概念、方法和实例,帮助读者掌握R语言在时间序列分析中的应用。
66 3
|
4月前
|
数据采集 数据可视化 数据挖掘
R语言在金融数据分析中的深度应用:探索数据背后的市场智慧
【9月更文挑战第1天】R语言在金融数据分析中展现出了强大的功能和广泛的应用前景。通过丰富的数据处理函数、强大的统计分析功能和优秀的可视化效果,R语言能够帮助金融机构深入挖掘数据价值,洞察市场动态。未来,随着金融数据的不断积累和技术的不断进步,R语言在金融数据分析中的应用将更加广泛和深入。
|
8月前
|
数据可视化 数据挖掘 API
【R语言实战】聚类分析及可视化
【R语言实战】聚类分析及可视化
|
8月前
|
机器学习/深度学习 数据可视化
R语言逻辑回归logistic模型ROC曲线可视化分析2例:麻醉剂用量影响、汽车购买行为2
R语言逻辑回归logistic模型ROC曲线可视化分析2例:麻醉剂用量影响、汽车购买行为
|
5月前
|
机器学习/深度学习 数据采集 数据可视化
R语言在数据科学中的应用实例:探索与预测分析
【8月更文挑战第31天】通过上述实例,我们展示了R语言在数据科学中的强大应用。从数据准备、探索、预处理到建模与预测,R语言提供了完整的解决方案和丰富的工具集。当然,数据科学远不止于此,随着技术的不断发展和业务需求的不断变化,我们需要不断学习和探索新的方法和工具,以更好地应对挑战,挖掘数据的潜在价值。 未来,随着大数据和人工智能技术的普及,R语言在数据科学领域的应用将更加广泛和深入。我们期待看到更多创新的应用实例,为各行各业的发展注入新的动力。
|
5月前
|
数据采集 存储 数据可视化
R语言时间序列分析:处理与建模时间序列数据的深度探索
【8月更文挑战第31天】R语言作为一款功能强大的数据分析工具,为处理时间序列数据提供了丰富的函数和包。从数据读取、预处理、建模到可视化,R语言都提供了灵活且强大的解决方案。然而,时间序列数据的处理和分析是一个复杂的过程,需要结合具体的应用场景和需求来选择合适的方法和模型。希望本文能为读者在R语言中进行时间序列分析提供一些有益的参考和启示。
|
5月前
|
资源调度 数据挖掘
R语言回归分析:线性回归模型的构建与评估
【8月更文挑战第31天】线性回归模型是统计分析中一种重要且实用的工具,能够帮助我们理解和预测自变量与因变量之间的线性关系。在R语言中,我们可以轻松地构建和评估线性回归模型,从而对数据背后的关系进行深入的探索和分析。
|
5月前
|
机器学习/深度学习 数据采集
R语言逻辑回归、GAM、LDA、KNN、PCA主成分分类分析预测房价及交叉验证
上述介绍仅为简要概述,每个模型在实施时都需要仔细调整与优化。为了实现高度精确的预测,模型选择与调参是至关重要的步骤,并且交叉验证是提升模型稳健性的有效途径。在真实世界的房价预测问题中,可能还需要结合地域经济、市场趋势等宏观因素进行综合分析。
98 3
|
8月前
|
数据采集 数据可视化
利用R语言进行因子分析实战(数据+代码+可视化+详细分析)
利用R语言进行因子分析实战(数据+代码+可视化+详细分析)