class DiscountingBillTradePricer {

  public CurrencyAmount currentCash(ResolvedBillTrade trade, LocalDate valuationDate) {
    if (trade.getProduct().getNotional().getDate().equals(valuationDate)) {
      return trade.getProduct().getNotional().getValue().multipliedBy(trade.getQuantity());
    }
    if (trade.getSettlement().isPresent() && trade.getSettlement().get().getDate().equals(valuationDate)) {
      return trade.getSettlement().get().getValue();
    }
    return CurrencyAmount.zero(trade.getProduct().getCurrency());
  }

  public  DiscountingBillTradePricer(
      DiscountingBillProductPricer productPricer,
      DiscountingPaymentPricer paymentPricer);

}