} else {
settlementTime = TimeCalculator.getTimeBetween(date, settlementDate);
}
final AnnuityPaymentFixed nominal = (AnnuityPaymentFixed) getNominal().toDerivative(date, creditCurveName);
final Annuity<Coupon> coupon = (Annuity<Coupon>) getCoupons().toDerivative(date, indexFixingTS, yieldCurveNames);
return new BondIborSecurity(nominal.trimBefore(settlementTime), coupon.trimBefore(settlementTime), settlementTime, riskFreeCurveName);
}
@Override
public BondIborSecurity toDerivative(final ZonedDateTime date) {
ArgumentChecker.notNull(date, "date");