/src/main/java/net/finmath/montecarlo/assetderivativevaluation/products/BasketOption.java
final RandomVariable monteCarloWeightsAtEvalTime = model.getMonteCarloWeights( evaluationTime) ;final RandomVariable numeraireAtEvalTime  = model.getNumeraire( evaluationTime) ;
final RandomVariable numeraireAtEvalTime  = model.getNumeraire ( evaluationTime ) ;
values = values.addProduct(underlyingAtMaturity, weights[underlyingIndex]); } values = values.sub(strike).floor(0.0); final RandomVariable numeraireAtMaturity = model.getNumeraire(maturity); final RandomVariable monteCarloWeights = model.getMonteCarloWeights(maturity); values = values.div(numeraireAtMaturity).mult(monteCarloWeights); <extra_id_0> final RandomVariable monteCarloWeightsAtEvalTime = model.getMonteCarloWeights(evaluationTime); values = values.mult(numeraireAtEvalTime).div(monteCarloWeightsAtEvalTime); return values; } }