class ForexNonDeliverableForwardDefinition implements InstrumentDefinition<InstrumentDerivative> {

  @Override
  public ForexNonDeliverableForward toDerivative(final ZonedDateTime date) {
    ArgumentChecker.isTrue(!date.isAfter(_fixingDate), "Date is after fixing date");
    return new ForexNonDeliverableForward(_currency1, _currency2, _notional, _exchangeRate, TimeCalculator.getTimeBetween(date, _fixingDate),
        TimeCalculator.getTimeBetween(date, _paymentDate));
  }

  public  ForexNonDeliverableForwardDefinition(final Currency currency1, final Currency currency2, final double notional, final double exchangeRate,
      final ZonedDateTime fixingDate, final ZonedDateTime paymentDate);

}