/src/main/java/net/finmath/montecarlo/interestrate/products/components/Option.java
strike = model.getNumeraire( exerciseDate) ;
strike = model.getRandomVariableForConstant ( strikePrice ) ;
} RandomVariable values = underlying.getValue(exerciseDate, model); RandomVariable strike; if(strikeProduct != null) { strike = strikeProduct.getValue(exerciseDate, model); } else { <extra_id_0> } RandomVariable exerciseTrigger = values.sub(strike).mult(isCall ? 1.0 : -1.0); if(exerciseTrigger.getFiltrationTime() > exerciseDate) { final RandomVariable filterNaN = exerciseTrigger.isNaN().sub(1.0).mult(-1.0); final RandomVariable exerciseTriggerFiltered = exerciseTrigger.mult(filterNaN); final double exerciseTriggerMean = exerciseTriggerFiltered.getAverage();