public void test_presentValue() {
   MultiCurrencyAmount pvSensiTrade =
       PRICER_TRADE.presentValue(OPTION_TRADE, RATES_PROVIDER, VOLS);
   CurrencyAmount pvSensiProduct =
       PRICER_PRODUCT.presentValue(OPTION_PRODUCT, RATES_PROVIDER, VOLS);
   CurrencyAmount pvSensiPremium = PRICER_PAYMENT.presentValue(PREMIUM, RATES_PROVIDER);
   assertEquals(pvSensiTrade, MultiCurrencyAmount.of(pvSensiProduct, pvSensiPremium));
 }
 public void test_presentValueSensitivity() {
   PointSensitivities pvSensiTrade =
       PRICER_TRADE.presentValueSensitivityRates(OPTION_TRADE, RATES_PROVIDER, VOLS);
   PointSensitivities pvSensiProduct =
       PRICER_PRODUCT.presentValueSensitivityRates(OPTION_PRODUCT, RATES_PROVIDER, VOLS);
   PointSensitivities pvSensiPremium =
       PRICER_PAYMENT.presentValueSensitivity(PREMIUM, RATES_PROVIDER).build();
   assertEquals(pvSensiTrade, pvSensiProduct.combinedWith(pvSensiPremium));
 }
 public void test_presentValueSensitivityBlackVolatility() {
   PointSensitivities pvSensiTrade =
       PRICER_TRADE.presentValueSensitivityModelParamsVolatility(
           OPTION_TRADE, RATES_PROVIDER, VOLS);
   PointSensitivities pvSensiProduct =
       PRICER_PRODUCT
           .presentValueSensitivityModelParamsVolatility(OPTION_PRODUCT, RATES_PROVIDER, VOLS)
           .build();
   assertEquals(pvSensiTrade, pvSensiProduct);
 }