def calculate_dv01(forward, strike, implied_sigma, annuity, days_to_maturity, pay_rec):
from scipy.stats import norm
if pay_rec == "Payer":
extra_addend = 0
else:
if pay_rec == "Receiver":
extra_addend = -1
else:
raise NotImplementedError()
d1 = calculate_d1(forward, strike, implied_sigma, days_to_maturity)
dv01 = annuity * (norm.cdf(d1) + extra_addend)
return dv01
评论列表
文章目录