拟合 GARCH(1, 1) 模型

机器算法验证 最大似然 加奇
2022-04-02 18:52:06

我正在尝试使用 python 拟合我自己的 GARCH(1,1) 模型。在这一点上,我已经阅读了许多论文来寻找我需要优化的参数的对数似然函数。更令人困惑的是,我读到的每一个不同的东西都会有一个稍微不同的变化。

本文稍微讨论了参数的性质。即,它们是正态分布的。

这种拟合最清楚的解释来自Euan Sinclair 的Volatility Trading给定 GARCH(1,1) 模型的方程:

σt2=ω+αrt12+βσt12

其中是第 t 个对数回报,而是过去的第 t 个波动率估计。鉴于此,作者手动挥动对数似然函数:rtσt

i=1t[ln(σt2)rt22σi2]

然而,不幸的是,他没有说明这需要如何使用,也没有说明它是如何派生的。我了解使用 MLE需要推导不知何故,我需要使用这个函数的导数来获得结果。γ,α,β

有没有可以让我自己实现的解释?到目前为止,我所看到的一切都无法解释整个过程,而且我读过的每篇论文和每本书都衍生出不同的 LL 方程。

1个回答

我在这个问题的答案中解释了如何获得 GARCH(1,1) 模型的对数似然函数

GARCH 模型以特定方式指定,但论文和应用程序之间的符号可能不同。由于省略了常数,对数似然可能会有所不同(最大化时它们无关紧要)。

MLE 通常是使用数值优化程序找到的。

python中的一个快速实现示例:

  1. 定义相关包:

在此处输入图像描述

  1. 定义算法

在此处输入图像描述

  1. 检查输出是否合理

在此处输入图像描述