Python随机波动率(SV)模型对标普500指数时间序列波动性预测

简介: Python随机波动率(SV)模型对标普500指数时间序列波动性预测

资产价格具有随时间变化的波动性(逐日收益率的方差)。在某些时期,收益率是高度变化的,而在其他时期则非常平稳。随机波动率模型用一个潜在的波动率变量来模拟这种情况,该变量被建模为随机过程。下面的模型与 No-U-Turn Sampler 论文中描述的模型相似,Hoffman (2011) p21。

这里,r是每日收益率序列,s是潜在的对数波动率过程。


建立模型

首先,我们加载标普500指数的每日收益率。

returns = (pm.get_data("SP500"))
returns\[:5\]

正如你所看到的,波动性似乎随着时间的推移有很大的变化,但集中在某些时间段。在2500-3000个时间点附近,你可以看到2009年的金融风暴。

ax.plot(returns)

指定模型。

GaussianRandomWalk('s', hape=len(returns))
nu = Exponential(  .1)
r = StudentT(  pm.math.exp(-2*s),
                    obs=returns)

拟合模型

对于这个模型,最大后验(_Maximum_ A _Posteriori_,MAP)概率估计具有无限的密度。然而,NUTS给出了正确的后验。

pm.sample(tune=2000
Auto-assigning NUTS sampler...

plot(trace\['s'\]);

观察一段时间内的收益率,并叠加估计的标准差,我们可以看到该模型是如何拟合一段时间内的波动率的。

plot(returns)
plot(exp(trace\[s\]);

np.exp(trace\[s\])

参考文献

  1. Hoffman & Gelman. (2011). The No-U-Turn Sampler: Adaptively Setting Path Lengths in Hamiltonian Monte Carlo.

相关文章
|
2天前
|
机器学习/深度学习 运维 算法
python时间序列异常检测ADTK
`adtk`是Python中用于无监督时间序列异常检测的工具包,包含简单算法、特征加工和流程控制。安装使用`pip install adtk`。数据要求为`DatetimeIndex`格式。异常检测包括滑动窗口统计特征、季节性拆解、降维和重构。提供了ThresholdAD、QuantileAD、InterQuartileRangeAD、GeneralizedESDTestAD等离群点检测算法,以及PersistAD和LevelShiftAD检测突变。此外,SeasonalAD用于季节性异常检测,Pipeline可组合多种算法。5月更文挑战第16天
19 5
python时间序列异常检测ADTK
|
4天前
|
机器学习/深度学习 数据可视化 PyTorch
使用Python实现深度学习模型:变分自编码器(VAE)
使用Python实现深度学习模型:变分自编码器(VAE)
13 2
|
5天前
|
机器学习/深度学习 数据可视化 PyTorch
使用Python实现深度学习模型:生成对抗网络(GAN)
使用Python实现深度学习模型:生成对抗网络(GAN)
20 3
|
6天前
|
机器学习/深度学习 数据可视化 PyTorch
使用Python实现深度学习模型:自动编码器(Autoencoder)
使用Python实现深度学习模型:自动编码器(Autoencoder)
10 0
|
6天前
|
前端开发 JavaScript TensorFlow
如何将训练好的Python模型给JavaScript使用?
本文介绍了如何将TensorFlow模型转换为Web格式以实现浏览器中的实际应用。首先,简述了已有一个能够检测扑克牌的TensorFlow模型,目标是将其部署到Web上。接着,讲解了TensorFlow.js Converter的作用,它能将Python API创建的GraphDef模型转化为TensorFlow.js可读取的json格式,用于浏览器中的推理计算。然后,详细说明了Converter的安装、用法及不同输入输出格式,并提供了转换命令示例。最后,文中提到了模型转换后的实践步骤,包括找到导出的模型、执行转换命令以及在浏览器端部署模型的流程。
18 3
|
6天前
|
索引 Python
【Python操作基础】——序列
【Python操作基础】——序列
|
6天前
|
机器学习/深度学习 TensorFlow API
Python深度学习基于Tensorflow(3)Tensorflow 构建模型
Python深度学习基于Tensorflow(3)Tensorflow 构建模型
71 2
|
1天前
|
机器学习/深度学习 缓存 人工智能
令你膛目结舌的代码技巧 —— Python编程代码技巧
令你膛目结舌的代码技巧 —— Python编程代码技巧
7 2
|
1天前
|
数据采集 算法 Python
2024年Python最全python基础入门:高阶函数,小米面试编程题
2024年Python最全python基础入门:高阶函数,小米面试编程题
|
1天前
|
数据采集 人工智能 前端开发
干货满满,转行逆袭,0编程基础学Python拿高薪offer如何做?都在这里!
干货满满,转行逆袭,0编程基础学Python拿高薪offer如何做?都在这里!