/src/main/java/net/finmath/marketdata2/model/volatilities/AbstractVolatilitySurface.java
final LocalDate endDate  = referenceDate.plusDays( ( short ) Math.round( periodEnd*365) ) ;
final LocalDate endDate = referenceDate.plusDays ( ( int ) Math.round ( periodEnd*365 ) ) ;
final double periodStart = optionMaturity; final double periodEnd = periodStart + getForwardCurve().getPaymentOffset(periodStart); final double forward = getForwardCurve().getForward(model, periodStart); double daycountFraction; if(getDaycountConvention() != null) { final LocalDate startDate = referenceDate.plusDays((int)Math.round(periodStart*365)); <extra_id_0> daycountFraction = getDaycountConvention().getDaycountFraction(startDate, endDate); } else { daycountFraction = getForwardCurve().getPaymentOffset(periodStart); } final double payoffUnit = getDiscountCurve().getDiscountFactor(optionMaturity+getForwardCurve().getPaymentOffset(optionMaturity)) * daycountFraction;