bsopt.py 文件源码

python
阅读 45 收藏 0 点赞 0 评论 0

项目:pyktrader2 作者: harveywwu 项目源码 文件源码
def AsianFwdGamma(Fwd, strike, RlzAvg, Vol, Texp, AvgPeriod, Rd):
    Fwd = float(Fwd)
    strike = float(strike)
    RlzAvg = float(RlzAvg)

    if AvgPeriod > Texp:
        x = strike * (AvgPeriod / Texp) - RlzAvg * (AvgPeriod - Texp) / Texp
    else:
        x = strike
    tau = numpy.max([0, Texp - AvgPeriod])

    if AvgPeriod > 0:
        volA = asian_vol_adj(Vol, Texp, tau)
    else:
        volA = Vol

    if x < 0:
        return 0
    else:
        if Texp < AvgPeriod:
            multi = Texp / AvgPeriod
        else:
            multi = 1.0

        Asiand1 = (log(Fwd / x) + (volA * volA * 0.5) * Texp) / (volA * sqrt(Texp))
        ND = exp(-(Asiand1 * Asiand1 * 0.5)) / sqrt(2 * pi)
        return multi * exp(- Rd * Texp) * ND / (Fwd * volA * sqrt(Texp))
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号