Matlab中的隐含波动率 您所在的位置:网站首页 matlab隐含波动率的计算程序 Matlab中的隐含波动率

Matlab中的隐含波动率

2023-05-08 22:23| 来源: 网络整理| 查看: 265

牛顿Rhapson方法不适用于隐含波动率很好地工作。你应该使用二分法(不确定它在Matlab中如何使用)。它在http://en.wikipedia.org/wiki/Bisection_method中描述。为了完整性,它的工作原理如下:

1)选择任意高(不可能)波动率,如高= 200%/年。

2)选择尽可能低的波动率(低位= 0%)。 2a)计算0%波动率下的期权溢价,如果实际溢价低于此值,则意味着负波动率(这是“不可能的”)。

3)虽然没有发现隐含波动率:

3.1)如果“高”和“低”非常接近(例如相当于多达5位数),无论是人是你的隐含波动率。如果不是...

3.2)计算“高”和“低”之间的平均值。 avg =(高+低)/ 2

3.3)计算平均波动率的期权溢价。 3.4)如果实际溢价高于p(avg),则min = avg,因为隐含波动率必须介于avg和max之间。

3.4a)如果实际保费低于p(avg),则max = avg,因为隐含卷必须位于min和avg之间。

对分的主要缺点是您必须选择一个最大值,所以您的函数不会发现隐含波动率大于此值。但是,像200%/年这样的东西应该足以满足现实世界的使用。

我使用的又一方法更像牛顿法,因此不限于范围,因为维加是衍生物,但具有“线性化”修复避免狩猎和失败由于小拉斯维加斯:

def implied_volatility(type, premium, S, K, r, s_dummy, t): if S 9999%/year return 100.0 return 0.0

不过,我认为对分是你最好的选择。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有