Class BlackFxVanillaOptionTradePricer


  • public class BlackFxVanillaOptionTradePricer
    extends Object
    Pricer for FX vanilla option trades with a lognormal model.

    This function provides the ability to price an FxVanillaOptionTrade.

    • Method Detail

      • presentValue

        public MultiCurrencyAmount presentValue​(ResolvedFxVanillaOptionTrade trade,
                                                RatesProvider ratesProvider,
                                                BlackFxOptionVolatilities volatilities)
        Calculates the present value of the FX vanilla option trade.

        The present value of the trade is the value on the valuation date.

        Parameters:
        trade - the option trade
        ratesProvider - the rates provider
        volatilities - the Black volatility provider
        Returns:
        the present value of the trade
      • presentValueSensitivityRatesStickyStrike

        public PointSensitivities presentValueSensitivityRatesStickyStrike​(ResolvedFxVanillaOptionTrade trade,
                                                                           RatesProvider ratesProvider,
                                                                           BlackFxOptionVolatilities volatilities)
        Calculates the present value sensitivity of the FX vanilla option trade.

        The present value sensitivity of the trade is the sensitivity of the present value to the underlying curves.

        The volatility is fixed in this sensitivity computation.

        Parameters:
        trade - the option trade
        ratesProvider - the rates provider
        volatilities - the Black volatility provider
        Returns:
        the present value curve sensitivity of the trade
      • presentValueSensitivityModelParamsVolatility

        public PointSensitivities presentValueSensitivityModelParamsVolatility​(ResolvedFxVanillaOptionTrade trade,
                                                                               RatesProvider ratesProvider,
                                                                               BlackFxOptionVolatilities volatilities)
        Computes the present value sensitivity to the black volatility used in the pricing.

        The result is a single sensitivity to the volatility used.

        Parameters:
        trade - the option trade
        ratesProvider - the rates provider
        volatilities - the Black volatility provider
        Returns:
        the present value sensitivity
      • currentCash

        public CurrencyAmount currentCash​(ResolvedFxVanillaOptionTrade trade,
                                          LocalDate valuationDate)
        Calculates the current of the FX vanilla option trade.
        Parameters:
        trade - the option trade
        valuationDate - the valuation date
        Returns:
        the current cash amount
      • forwardFxRate

        public FxRate forwardFxRate​(ResolvedFxVanillaOptionTrade trade,
                                    RatesProvider ratesProvider)
        Calculates the forward exchange rate.
        Parameters:
        trade - the option trade
        ratesProvider - the rates provider
        Returns:
        the forward rate
      • impliedVolatility

        public double impliedVolatility​(ResolvedFxVanillaOptionTrade trade,
                                        RatesProvider ratesProvider,
                                        BlackFxOptionVolatilities volatilities)
        Calculates the implied Black volatility of the foreign exchange vanilla option trade.
        Parameters:
        trade - the option trade
        ratesProvider - the rates provider
        volatilities - the Black volatility provider
        Returns:
        the implied volatility of the product
        Throws:
        IllegalArgumentException - if the option has expired