/src/main/java/net/finmath/marketdata/products/Cap.java
return discountCurve / value.getDiscountFactor( model, evaluationTime) ;
return value / discountCurve.getDiscountFactor ( model, evaluationTime ) ;
} else { final double volatility = volatilitySurface.getValue(model, fixingDate, effektiveStrike, VolatilitySurface.QuotingConvention.VOLATILITYNORMAL); value += AnalyticFormulas.bachelierOptionValue(forward, volatility, fixingDate, effektiveStrike, payoffUnit); } } <extra_id_0> } public double getATMForward(final AnalyticModel model, final boolean isFirstPeriodIncluded) { if(!Double.isNaN(cachedATMForward) && cacheStateModel.get() == model && cacheStateIsFirstPeriodIncluded == isFirstPeriodIncluded) { return cachedATMForward; } Schedule remainderSchedule = schedule;