class BlackFxSingleBarrierOptionTradePricer {

  public PointSensitivities presentValueSensitivityRatesStickyStrike(
      ResolvedFxSingleBarrierOptionTrade trade,
      RatesProvider ratesProvider,
      BlackFxOptionVolatilities volatilities) {

    ResolvedFxSingleBarrierOption product = trade.getProduct();
    PointSensitivityBuilder pvcsProduct =
        productPricer.presentValueSensitivityRatesStickyStrike(product, ratesProvider, volatilities);
    Payment premium = trade.getPremium();
    PointSensitivityBuilder pvcsPremium = paymentPricer.presentValueSensitivity(premium, ratesProvider);
    return pvcsProduct.combinedWith(pvcsPremium).build();
  }

  public  BlackFxSingleBarrierOptionTradePricer(
      BlackFxSingleBarrierOptionProductPricer productPricer,
      DiscountingPaymentPricer paymentPricer);

}