public SimpleFXFuture toDerivative(final ZonedDateTime date) {
Validate.notNull(date, "date");
Validate.isTrue(date.isBefore(_expiryDate));
double timeToFixing = TimeCalculator.getTimeBetween(date, _expiryDate);
double timeToDelivery = TimeCalculator.getTimeBetween(date, _settlementDate);
return new SimpleFXFuture(timeToFixing, timeToDelivery, _referencePrice, _unitAmount, _payCurrency, _receiveCurrency);
}