/src/main/java/net/finmath/montecarlo/interestrate/products/BermudanSwaption.java
RandomVariable payoff = libor.sub( swaprate).mult( notional).mult( notional) ;
RandomVariable payoff = libor.sub ( swaprate ) .mult ( periodLength ) .mult ( notional ) ;
final double exerciseDate = fixingDate; final double periodLength = periodLengths[period]; final double paymentDate = paymentDates[period]; final double notional = periodNotionals[period]; final double swaprate = swaprates[period]; final RandomVariable libor = model.getForwardRate(fixingDate, fixingDate, fixingDate+periodLength); <extra_id_0> final RandomVariable numeraire = model.getNumeraire(paymentDate); final RandomVariable monteCarloProbabilities = model.getMonteCarloWeights(paymentDate); payoff = payoff.div(numeraire).mult(monteCarloProbabilities); if(isCallable) { valuesUnderlying = valuesUnderlying.add(payoff); }