全部版块 我的主页
论坛 金融投资论坛 六区 金融学(理论版) 金融工程(数量金融)与金融衍生品
21332 12
2014-12-13
根据BS公式
p=-s*n(-d1)+k*exp^rt*n(-d2)
在已知行权价格为k的期权价格为p,现货价格为s,无风险利率为r,剩余到期天数/360为t的情况下,反解出公式中的隐含波动率sigma。


上述反解如何用matlab实现呀?可以提供正确代码的重谢~
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2014-12-13 21:25:46
matlab有自带的函数,

blsimpv(...) for BS model. blkimpv(...) for Black model. 可以查看帮助文件。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2014-12-13 21:42:51
Chemist_MZ 发表于 2014-12-13 21:25
matlab有自带的函数,

blsimpv(...) for BS model. blkimpv(...) for Black model. 可以查看帮助文件。
又遇到你啦,这样输入blsimpv(s,k,r,t,put),结果是NAN
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2014-12-13 21:44:09
锦sè♀ 发表于 2014-12-13 21:42
又遇到你啦,这样输入blsimpv(s,k,r,t,put),结果是NAN
具体输入的数值?
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2014-12-13 21:52:26
锦sè♀ 发表于 2014-12-13 21:42
又遇到你啦,这样输入blsimpv(s,k,r,t,put),结果是NAN
而且该公式没有看涨看跌的选项诶,输入的期权价格默认是看涨期权的,看跌期权的要怎么计算呢?
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2014-12-13 22:00:21
锦sè♀ 发表于 2014-12-13 21:52
而且该公式没有看涨看跌的选项诶,输入的期权价格默认是看涨期权的,看跌期权的要怎么计算呢?
具体输入的数值?

Volatility = blsimpv(Price, Strike, Rate, Time, Value, Limit, Yield, Tolerance, Class)

Limit 是可以改变solver搜索解到界限,比如默认是1,那么600%的implied vol肯定就搜不到就会返回NaN,意思是已经达到搜索的上限,但是还没有找到符合精度的解

Yield就是dividend yield

Tolerance,就是容忍度或者精度,比如你输入的option的价格是10,Tol=0.01,那solver找到一个implied volatiltiy使得BS price等于或者小于10.01的时候就会停下来,因为已经够精度了

Class 输入{'Call'} 或者 {'Put'}
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群