如何用python计算隐含波动率

论坛 期权论坛 期权     
匿名   2018-4-26 10:50   5952   1
分享到 :
0 人收藏

1 个回复

倒序浏览
2#
LButtondown1  2级吧友 | 2018-4-30 04:43: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