问题描述
我正在尝试使用 Python 中的 QuantLib 为欧洲外汇看涨期权定价。
国内无风险利率为0.16%。 国外无风险利率为-0.46%。 估值日为2020年6月30日。 交易日期为2020年6月25日。 行使日期为2020年7月2日。 波动率为9.935%。
行使价为 1.122,即期汇率为 1.12385。
代码如下:
import QuantLib as ql
calculation_date = ql.Date(30,6,2020)
ql.Settings.instance().evaluationDate = calculation_date
rf_domestic = 0.16 # in %
rf_foreign = -0.46 # in %
usd_domestic = ql.YieldTermStructureHandle(ql.FlatForward(calculation_date,rf_domestic/100,ql.ActualActual()))
eur_foreign = ql.YieldTermStructureHandle(ql.FlatForward(calculation_date,rf_foreign/100,ql.ActualActual()))
volTS = ql.BlackVolTermStructureHandle(ql.BlackConstantVol(ql.Date(30,2020),ql.NullCalendar(),9.935/100,ql.ActualActual()))
gkp = ql.GarmanKohlagenProcess(ql.QuoteHandle(ql.SimpleQuote(1.122)),usd_domestic,eur_foreign,volTS)
engine = ql.BinomialVanillaEngine(gkp,'crr',1000)
option = ql.EuropeanOption(ql.PlainVanillaPayoff(ql.Option.Call,1.12385),ql.EuropeanExercise(ql.Date(2,7,2020)))
option.setPricingEngine(engine)
print('NPV:',option.NPV())
print('Diffusion:',gkp.diffusion(t,x))
print('Drift:',gkp.drift(t,x))
print('Variance:',gkp.variance(t0,x0,dt))
print('Standard Deviation:',gkp.stdDeviation(t0,dt))
print('Expectation:',gkp.expectation(t0,dt))
对于漂移、扩散、方差、标准差和期望(上述代码的最后 5 行)的计算,参数 (t,x,dt,t0) 应该是什么?
任何帮助将不胜感激。
谢谢, AA
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)