如何用python计算隐含波动率

论坛 期权论坛 期权     
匿名   2017-8-22 21:24   53840   1
如何用python计算隐含波动率
分享到 :
0 人收藏

1 个回复

正序浏览
2#
LButtondown1  2级吧友 | 2017-8-25 14:11:06 发帖IP地址来自
  • 设定参数[/*]
  • r=0.032 # risk-free interest rate[/*]
  • t=float(30)/365 # time to expire (30 days)[/*]
  • q=0 # dividend yield[/*]
  • S0=2.3 # underlying price[/*]
  • X=2.2 # strike price[/*]
  • mktprice=0.18 # market price[/*]
  • # 用二分法求implied volatility,暂只针对call option[/*]
  • sigma=0.3 # initial volatility[/*]
  • C=P=0[/*]
  • upper=1[/*]
  • lower=0[/*]
  • while abs(C-mktprice)>1e-6:[/*]
  • d1=(np.log(S0/X)+(r-q+sigma**2/2)*t)/(sigma*np.sqrt(t))[/*]
  • d2=d1-sigma*np.sqrt(t)[/*]
  • C=S0*np.exp(-q*t)*norm.cdf(d1)-X*np.exp(-r*t)*norm.cdf(d2)[/*]
  • P=X*np.exp(-r*t)*norm.cdf(-d2)-S0*np.exp(-q*t)*norm.cdf(-d1)[/*]
  • if C-mktprice>0: 聽聽聽聽[/*]
  • upper=sigma 聽[/*]
  • sigma=(sigma+lower)/2[/*]
  • else: 聽聽聽聽聽聽[/*]
  • lower=sigma 聽聽聽聽[/*]
  • sigma=(sigma+upper)/2[/*]
  • print sigma # implied volatility
    [/*]
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

下载期权论坛手机APP