/src/main/java/net/finmath/functions/AnalyticFormulas.java
final double rateAdjusted = forwardSwaprate * rateUnadjusted;
final double rateAdjusted = forwardSwaprate * convexityAdjustment;
final double payoffUnit) { final double a = 1.0/swapMaturity; final double b = (payoffUnit / swapAnnuity - a) / forwardSwaprate; final double convexityAdjustment = Math.exp(volatility*volatility*optionMaturity); final double rateUnadjusted = forwardSwaprate; <extra_id_0> return (a * rateUnadjusted + b * forwardSwaprate * rateAdjusted) * swapAnnuity / payoffUnit; } public static double sabrHaganLognormalBlackVolatilityApproximation(final double alpha, final double beta, final double rho, final double nu, final double underlying, final double strike, final double maturity) { return sabrHaganLognormalBlackVolatilityApproximation(alpha, beta, rho, nu, 0.0, underlying, strike, maturity); }