如何用迭代计算期权的隐含波动率?

论坛 期权论坛 期权     
期权屋   2019-6-8 13:43   2574   0
  在期权的实际运用中,隐含波动率历来有着举足轻重的地位。可惜的是,我们常用来计算期权理论价格的BS公式,并没有针对于波动率的反函数,也就是说,很难直接通过一个计算公式来求解隐含波动率。  好在波动率和期权价格的函数关系单调(Vega恒为正),且数值的范围也相对比较确定,因此还是可以比较轻松地用常用的迭代法来求解。  今天,小编就向大家介绍,如何用二分法和牛顿法来求解期权的隐含波动率。  二分法  用二分法来寻找目标值,首先把一个目标区间分成两个相等的小区间,然后通过比较目标值与目标区间中值,来判断目标值在这两个小区间中的哪一个里面,把选定的小区间作为新的目标区间,进行二等分......循环往复,不断地缩小区间范围,直到得出足够精度的值为止。  因此,在用二分法迭代的时候,首先需要确定一个目标区间。就50ETF的波动率而言,不会低于0,也不太会出现高于200%的情况,因此我们选定0-2为初始目标范围。  算法流程图如下:

  需要注意的是,如果实际值不在目标区间内,程序可能会出现无限循环的情况,所以在实际运用中,要注意限制迭代次数。  牛顿法  二分法虽然简单易懂,但是缺点也比较明显的。  首先,用二分法只能在一个确定的范围内有效;其次,收敛速度比较慢,一般需要10次以上的迭代,才能获得比较精确的结果。  而牛顿法没有上述两个缺点,可以在任意范围内有效,并且收敛速度很快,只需要迭代4-5次,就能够得到非常精确的结果,程序代码也远比二分法简洁,只是理解起来稍稍有些难度。  牛顿法顾名思义,最初由牛顿于1736年在 Method of Fluxions 中公开提出。而事实上方法此时已经由Joseph Raphson于1690年在Analysis Aequationum中提出,与牛顿法相关的章节《流数法》在更早的1671年已经完成了。  数学的原理和证明就不说了,直接说结论。用牛顿法迭代求根的整个过程如下图:
  具体来说:  第一步:X轴上任取一个点x(n);  第二步:求出函数y=f(x)在点(x(n),f[x(n)])上的导函数,这个导函数会和X轴有个交点x(n+1)。这时可以看出,x(n+1)要比x(n)更接近根值。  第三步:把x(n+1)迭代进第二步,得出更接近根值的x(n+2)  循环往复,直到得出足够精度的值为止。.........  具体到期权隐含波动率的计算,我们可以取期权价格为Y轴,波动率为X轴。而我们知道,期权价格对于波动率求导,导数就是期权的希腊值Vega,基于BS公式:
  这样,还是以刚才的图为例,我们可以得到:

  Vega(x(n)) = f(x(n)) / [x(n)-x(n+1)]  即x(n+1) = x(n) - f(x(n))/Vega(x(n))  其中,Vega(x(n))就是在波动率取x(n)时算出的Vega值。  当然,计算隐含波动率并不是求函数的根,而是求期权价格在特定值时的波动率,因此,我们需要进行一个简单的移轴变换,得到这样的算法流程图:

  是不是很简单呢?

  算法就介绍到这里,即将上线的和讯期权频道从分时和历史两个维度,为大家展示每个合约的隐含波动率情况,同时也可以对两个不同合约的隐含波动率走势进行对比分析,敬请期待吧~~!


分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:12478
帖子:2577
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP