Validate.notNull(curves);
Validate.notNull(option);
if (curves instanceof SABRInterestRateDataBundle) {
final SABRInterestRateDataBundle sabrBundle = (SABRInterestRateDataBundle) curves;
final InterestRateFutureOptionMarginTransactionSABRMethod method = InterestRateFutureOptionMarginTransactionSABRMethod.getInstance();
return method.presentValueSABRSensitivity(option, sabrBundle);
}
throw new UnsupportedOperationException("The PresentValueSABRCalculator visitor visitInterestRateFutureOptionMarginTransaction requires a SABRInterestRateDataBundle as data.");
}
}