# 基于Black - Scholes 公式的期权定价公式

def bsm_call_value(s,,k,T,r,sigma):

from math import log,sqrt,exp

from scipy import stats

s=float(s)

d1=(log(s/k)+(r+0.5*sigma**2)*T)/(sqrt(T))

d2=(log(s/k)+(r-0.5*sigma**2)*T)/(sqrt(T))

value=(s*stats/norm.cdf(d1,0.0,1.0))-K*exp(-r*T)*stats.norm.cdf(d2,0.0,1.0)

return value

当前价 s

行权价 k

上面的函数只是计算隐含波动率所需的基本函数。当然,还需要单独的期权报价,也就是基于VSTOXX指数的欧式看涨期权,以及生成隐含波动率的代码,下面就用IPython来完成。

比如把参考日期t=0,

指数的收盘价为v=7,6639

对于无风险短期利率,假定年率r=0,01

这样就可以利用

print '期权价格 : %.4f' % bsm_call_value(s,,k,T,r,sigma):

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐