/**
  * Computes the option security price from future price.
  *
  * @param security The future option security.
  * @param normalData The normal volatility and multi-curves provider.
  * @param priceFuture The price of the underlying future.
  * @return The security price.
  */
 public double priceFromFuturePrice(
     final InterestRateFutureOptionMarginSecurity security,
     final NormalSTIRFuturesSmileProviderInterface normalData,
     final double priceFuture) {
   ArgumentChecker.notNull(security, "Option security");
   ArgumentChecker.notNull(normalData, "Normal data");
   final EuropeanVanillaOption option =
       new EuropeanVanillaOption(
           security.getStrike(), security.getExpirationTime(), security.isCall());
   final double delay =
       security.getUnderlyingFuture().getLastTradingTime() - security.getExpirationTime();
   final double volatility =
       normalData.getVolatility(security.getExpirationTime(), security.getStrike(), delay);
   final NormalFunctionData normalPoint = new NormalFunctionData(priceFuture, 1.0, volatility);
   final double priceSecurity = NORMAL_FUNCTION.getPriceFunction(option).evaluate(normalPoint);
   return priceSecurity;
 }