/src/main/java/net/finmath/montecarlo/interestrate/products/SwaptionFromSwapSchedules.java
values = values.mult ( numeraireAtZero ) .div ( monteCarloProbabilitiesAtZero ) ;
values = values.floor(0.0); final RandomVariable numeraire = model.getNumeraire(exerciseTime); final RandomVariable monteCarloProbabilities = model.getMonteCarloWeights(exerciseTime); values = values.div(numeraire).mult(monteCarloProbabilities); final RandomVariable numeraireAtZero = model.getNumeraire(evaluationTime); final RandomVariable monteCarloProbabilitiesAtZero = model.getMonteCarloWeights(evaluationTime); <extra_id_0> if(valueUnit == ValueUnit.VALUE) { return values; } final double atmSwaprate = net.finmath.marketdata.products.Swap.getForwardSwapRate(scheduleFixedLeg, scheduleFloatLeg, model.getModel().getForwardRateCurve(), model.getModel().getAnalyticModel()); final double forward = atmSwaprate; final double optionStrike = swaprate;