// Finite differences
method = "Finite differences";
europeanOption.setPricingEngine(new FDEuropeanEngine(bsmProcess, timeSteps, timeSteps-1, false));
bermudanOption.setPricingEngine(new FDBermudanEngine(bsmProcess, timeSteps, timeSteps-1));
americanOption.setPricingEngine(new FDAmericanEngine(bsmProcess, timeSteps, timeSteps-1, false));
if (System.getProperty("EXPERIMENTAL") != null) {
bNPV = bermudanOption.NPV();
}
System.out.printf(fmt, method, europeanOption.NPV(), bNPV, americanOption.NPV() );