波动率预测的准确性

机器算法验证 时间序列 预测 模型评估 加奇
2022-03-11 05:11:22

我了解 ARCH/GARCH 模型的基本概念及其背后的基本数学原理。也就是说,对时间序列的“波动性”进行建模,即时间序列描述模型的残差,这反过来又允许预测波动性。

但是,如何评估波动率预测?在条件均值设置中,只需将实际值与预测值进行比较。在条件波动率设置中,比较的是什么?上述值与预测残差之间的差异?

在这种情况下,我理论上可以想象残差总是被正确预测的场景,反过来意味着点预测总是错误的(如果残差大于零)。这不可能是正确的评估方法,因为它在很大程度上取决于点预测的偏差程度。但是我们如何正确评估 ARCH/GARCH 预测呢?

3个回答

波动率预测的重点是预测完整的预测密度。例如,您可能假设一个均值为 0 的正常未来密度,并预测一个自由参数,它恰好是方差。或者使用一些非参数方法。

评估预测密度的选择方法是适当的评分规则我们有一个标签。它的标签 wiki包含一些指向文学的指针。

举个例子,我随机挑选了本期International Journal of Forecasting上的第一篇相关文章,恰好是Catania & Proietti (2020, IJF )的《Forecastingvolatility with time-varying杠杆和波动率效应的波动率》 . 他们使用连续排名概率分数(CRPS),这是一种非常常用的正确评分规则。

谈到总体上评估波动率预测(具体不是 GARCH),我将提到 Stephan Kolassa 答案的替代方案。

还可以研究统计或分布“属性”的适当评分规则;这个区域有时被称为启发。在那里,人们可以提出以下问题:是否有一个“适当的”评分规则使用样本评估随机变量方差这里的正确概念应该是当是真实方差时,期望得分最大化。S(v,y)vyv

事实证明,答案是否定的。但是,有一个窍门。平均值肯定有这样的评分规则,例如由此可见,第二个时刻(不居中)有一个评分规则,例如S(u,y)=(uy)2S(w,y)=(wy2)2

因此,为了以无偏的方式评估方差预测,在这种情况下,只需查询两个参数的预测,即确定方差的第一个和第二个矩。换句话说,实际上没有必要生成和评估完整的分布。(这基本上是您的建议:我们首先评估条件均值,然后粗略地评估残差。)

当然,除了方差之外,还有其他衡量波动性的方法,并且研究了它们是否“直接可引出”(即存在引出它们的适当评分规则),或者,如果不是,它们的“引出复杂性”(即必须有多少参数从基础分布中提取以对其进行评估)。研究的一个地方是金融中的风险度量所研究的统计数据包括期望值、风险价值和条件风险价值。

Gneiting, Making and Evaluating Point Forecasts , Journal of the American Statistical Association (2011) 中有一些一般性讨论。https://arxiv.org/abs/0912.0902引出复杂性在 Frongillo 和 Kash,向量值属性引出,学习理论会议(COLT,2015)中进行了研究。http://proceedings.mlr.press/v40/Frongillo15.html

也许让事情尽可能简单是 shenflow 所寻找的。所以:

但是我们如何正确评估 ARCH/GARCH 预测呢?

情况与条件均值情况(如 ARMA)没有太大区别。诀窍是您必须关心您尝试预测的内容。

例如,对于财务回报 ( ),通常将波动性识别为平方回报,例如现在,像 ARCH/GARCH 这样的模型为您提供条件方差的规范:rtrt2V[rt|rt1,,rtp]

例如在 ARCH(1) 情况下,我们有 V[rt|rt1]=ω+α1rt12

然后为了评估预测准确性,您必须将条件方差(波动率预测)与平方收益(观察到的波动率)进行比较。然后,对于准确性评估,均方损失很常见。在 ARCH(1) 案例中:

MSE[rt2(ω+α1rt12)]对于一些t

请注意,在此示例后面,假设条件均值为零。否则,即使想法没有那么不同,二阶矩和方差也不重合,事情变得更加复杂。rt