final ZonedDateTime nextCouponDate = nominalDates[index + 1].atStartOfDay(ZoneOffset.UTC);
final double accruedInterest = getAccruedInterest(dayCount, index, length, previousCouponDate, date, nextCouponDate, coupon, paymentsPerYear, isEndOfMonthConvention);
LocalDate exDividendDate = nominalDates[index + 1];
for (int j = 0; j < exDividendDays; j++) {
while (!calendar.isWorkingDay(exDividendDate)) {
exDividendDate = exDividendDate.minusDays(1);
}
exDividendDate = exDividendDate.minusDays(1);
}
if (exDividendDays != 0 && exDividendDate.isBefore(settlementDate)) {
return accruedInterest - coupon;