在投资组合管理、风险管理和衍生品定价中,波动性起着重要作用。
事实上如此重要,以至于您可以找到比您可以处理的更多的波动率模型。
在金融市场的研究与实践中,波动率是一个核心且关键的概念。它不仅衡量了金融资产价格的波动程度,更是风险管理、资产定价以及投资组合优化等诸多领域的重要依据。标准普尔指数作为全球金融市场的重要风向标,反映了美国股票市场的整体表现,其波动率的准确预测对于投资者、金融机构和监管部门都具有至关重要的意义。
广义自回归条件异方差(GARCH)模型及其拓展模型,在金融时间序列的波动率建模与预测方面发挥着重要作用。传统的 GARCH 模型能够捕捉到金融时间序列中波动率的聚类性和时变性特征,但在处理金融市场中的非对称效应时存在一定的局限性。而 GJR – GARCH 模型作为 GARCH 模型的一种改进,引入了杠杆效应,能够更好地刻画金融资产价格下跌时波动率上升幅度大于价格上涨时波动率上升幅度的现象,从而更准确地描述金融市场的实际波动情况。
接下来是检查每个模型在样本内外的表现如何。以下是您可以做的三件事:
1. 基于回归的检验——Mincer Zarnowitz 回归
这个想法很简单,回归预测的实际(实现)值:
现在我们共同检验假设:
截距为零意味着你的预测是无偏的。
矛盾的是,如果截距是0.02,这意味着为了使两边相等,我们在预测中平均增加0.02,所以它一直在低估观察值。
斜率应该是1,也就是说,你的预测完全 “解释 “了观察值。
2. 配对比较——Diebold Mariano 检验。
假设您有两个模型,它们产生两组预测。因此,您有两组误差。调用这些误差
在两种方法相同的情况下,这两个向量的差 平均为零(或这些向量的函数,例如 e1^2 – e2^2)。在仅使用相同方法复制预测的极端情况下,差正好为零。更重要的是,我们知道这种差是如何分布的(渐近地..),因此我们可以测试它是否确实偏离零。
难以理解这一点。如果不知道 2 的结果的可能性有多大,就不可能测量 0 和 2 之间的距离。在 {-3,3} 之间均匀分布的 2 的结果并不像具有标准正态分布的 2 的结果那样不可能。
产生明显更小的误差(通常是平方误差或绝对误差)的方法是首选。您可以轻松地将其扩展到多个比较。
3. Jarque-Bera 检验
在这种情况下,我们有一个准确的波动率预测。我们可以将序列中心化并使用我们对标准差的预测对其进行标准化。准确地说:
应该有均值零和标准差一。新的标准化序列通常不会呈正态分布,但您可以使用此检验来衡量模型获取原始序列的偏度和峰度的程度。
实证研究中,前两个方案对一般的预测评估是有效的,然而,波动率是不可观察的,所以我们用什么作为观察值并不清楚。我们所做的是用一个替代物来代替 “观察到的”,通常是收益率的平方。在这里你可以找到更准确的替代方法,但是,它们是基于日内信息的,所以你需要获得日内数据源。
我们看看在 R 中是如何工作的。
我从谷歌提取数据,采集5年的标准普尔指数收益序列,并估计标准 garch(1,1) 和另一个更准确的 GJR-garch(不对称 garch)。
dat0= as.matrix(getSymbol
n = NROW
plot
gjrc <- ugarchspec
gjrmodel = fit
gjrfit = sigma Nit = as.dsigma resq = ret^2 Nsq = Nfit^2 Tsq = Tfit^2 plot
具有两种 Garch 模型的 SPY 波动率
随时关注您喜欢的主题
######################### # mincer-zarnowitz回归 ######################### Nmz = lm Tmz = lm linsis
lineesis
######################### #DM检验 ######################### dmst
对于平方损失函数,两组预测之间没有区别
######################### # Jarque Bera 检验 ######################### stanN = scale stajr = scale scret = scale# 没有波动率模型,只有无条件波动率 jbtest$stat
rjbtestat
rjteststat
可下载资源
关于作者
Kaizong Ye是拓端研究室(TRL)的研究员。在此对他对本文所作的贡献表示诚挚感谢,他在上海财经大学完成了统计学专业的硕士学位,专注人工智能领域。擅长Python.Matlab仿真、视觉处理、神经网络、数据分析。
本文借鉴了作者最近为《R语言数据分析挖掘必知必会 》课堂做的准备。
非常感谢您阅读本文,如需帮助请联系我们!