期权定价模型系列【13】标的资产波动率估计

本文介绍了期权定价中资产价格波动率的几种计算方法,包括历史波动率、Parkinson波动率、Garman-Klass波动率、Roger-Satchell波动率、Yang-Zhang波动率、EWMA波动率以及GARCH波动率,并提供了Python实践示例。这些方法各有优缺点,适用于不同市场环境下的波动率估计。
摘要由CSDN通过智能技术生成

期权定价的核心主要在于资产价格波动率。资产价格波动率的计算方法较多,本文将简要介绍几种主要的基本算法与garch模型算法。

历史波动率

➢ 过去一段时间,标的波动的程度

• 确定基于的价格,如每日收盘价

• 计算每日价格收益率

• 计算一段时间内收益率标准差

• 标准差进行年化

Parkinson波动率

➢ 极差构造波动率

➢ 更快的收敛于真实波动率

• 模拟几何布朗运动,基于极差的估计量方差/收盘价-收盘价估计量的方差 ≥ 5


优点: • 引入日内极差的计算方式,提供更全面的信息

 缺点: • 只适用于几何布朗运动的波动率估计,不能处理趋势和跳空 

Garman-Klass波动率

极差 + 收盘价

➢ 更快收敛于真实波动率 • 模拟几何布朗运动,基于极差的估计量方差/收盘价-收盘价估计量的方差 ≈ 8

优点: • 相比于基于收盘价的算法,收敛效率提高 • 充分利用可获取的价格信息

缺点: • 有时偏差比Parkinson算法更大


Roger-Satchell波动率

➢ 极值+收盘价、开盘价

➢ 放宽限制条件,引入存在非零均值参数

优点:允许趋势的存在

缺点:同样无法处理价格的跳空

Garman-Klass-Yang-Zhang波动率

 Garman-Klass的基础上,允许开盘跳空
 

优点:弥补Garman-Klass无法处理开盘跳空的情况

缺点:当资产收益率均不为零时,会高估波动率

Yang-Zhang波动率

➢ 适用于开盘价格跳空 ➢ 收盘价-开盘价 + 开盘价-收盘价 + Rogers-Satchel的加权平均

➢ 收敛效率:基于极差的估计量方差/收盘价-收盘价估计量的方差 ≈ 14

• 与开盘跳空所导致的波动率/整体波动率,高度相关

优点: • 通常情况,拥有最小估计误差 • 能够处理漂移项和价格跳空 • 在可用数据的使用上最为有效

缺点: • 如果价格过程由跳空主导,效果会降低到与收盘价与收盘价的方式差不多


EWMA波动率

➢ 指数加权移动平均模型

➢ 基本思想:不同时间的数据以不同的权重,权重随着时间以指数速度衰减

约束条件𝜆通常取0.94,𝜆越大,权重之间的差别越小

缺点:忽略连续回报率之间可能的相关性、波动率均值回归的特性

GARCH波动率

➢ GARCH(广义自回归条件异方差)

• ARCH误差序列,低阶自相关的拟合

• 日频数据,ARCH中的滞后阶数m很大,应用难度增加

➢ GARCH用少量𝜎t的滞后值替代许多𝑎𝑡的滞后值

➢ 构成:波动率估计值+相关性因素+均值回归因素

➢ GARCH(1,1)

python实践

if __name__=='__main__':
    ori_df=pd.read_excel('ori_df.xlsx')
    val=volatility(ori_df,20,245,yearly=True)
    df=pd.DataFrame()
    df['date']=ori_df['date']
    df['hv_sigma']=val.history_volatility().values
    df['parkinson_sigma']=val.Parkinson()
    df['Garman_Klass_sigma']=val.high_low_close_valitility()
    df['Garman_Klass_YZ_sigma']=val.Garman_Klass_YZ()
    df['Yang_Zhang_sigma']=val.Yang_Zhang()
    df['Roger_Satchell_sigma']=val.Roger_Satchell()
    df['ema_sigma']=val.ewma_volatility(alpha_=0.94)
    df['garch_sigma']=val.garch_volatility()
    
    plt.figure(figsize=(15,4))
    x=pd.to_datetime(df['date'])
    plt.plot(x,df['hv_sigma'],label='hv_sigma')
    plt.plot(x,df['parkinson_sigma'],label='parkinson_sigma')
    plt.plot(x,df['Garman_Klass_sigma'],label='Garman_Klass_sigma')
    plt.plot(x,df['Garman_Klass_YZ_sigma'],label='Garman_Klass_YZ_sigma')
    plt.plot(x,df['Yang_Zhang_sigma'],label='Yang_Zhang_sigma')
    plt.plot(x,df['Roger_Satchell_sigma'],label='Roger_Satchell_sigma')
    plt.plot(x,df['ema_sigma'],label='ema_sigma')
    plt.plot(x,df['garch_sigma'],label='garch_sigma')
    plt.legend()
    plt.show()

  • 4
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
期权定价模型与其捕捉标的现货价格过程动态的能力有关。 它的错误指定将导致定价和对冲错误。 参数定价公式取决于标的资产动态的特定形式。 出于易处理性的原因,做出了一些与市场回报的多重分形性质不一致的假设。 另一方面,神经网络等非参数模型使用市场数据来估计驱动现货价格的隐式随机过程及其与或有债权的关系。 在为多维或有债权,甚至是具有复杂模型的普通期权定价时,必须依赖于偏微分方程等数值方法、傅里叶方法等数值积分方法或蒙特卡罗模拟。 此外,在根据市场价格校准金融模型时,必须生成大量模型价格以拟合模型参数。 因此,人们需要快速且准确的高效计算方法。 具有多个隐藏层的神经网络是具有表示任何平滑多维函数能力的通用插值器。 因此,监督学习关注的是解决函数估计问题。 网络被分解为两个独立的阶段,一个是离线优化模型的训练阶段,另一个是模型在线逼近解决方案的测试阶段。 因此,这些方法可以以快速而稳健的方式用于金融领域,用于为奇异期权定价以及根据内插/外推波动表面来校准期权价格。 鉴于执行某些信用风险分析,它们还可用于风险管理以在投资组合级别拟合期权价格。 我们回顾了一些使用神经网络为市场和模型价格定价的现有方法,提出了校准,并介绍了奇异的期权定价。 我们讨论这些方法的可行性,突出问题,并提出替代解决方案。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

马尔可夫宽

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值