@ImmutableDefaults private static void applyDefaults(Builder builder) { builder.dayCount = DayCounts.ACT_360; builder.paymentOnDefault = PaymentOnDefault.ACCRUED_PREMIUM; builder.protectionStart = ProtectionStartOfDay.BEGINNING; builder.stepinDateOffset = DaysAdjustment.ofCalendarDays(1); }
@ImmutableDefaults private static void applyDefaults(Builder builder) { builder.dayCount = DayCounts.ACT_360; builder.paymentOnDefault = PaymentOnDefault.ACCRUED_PREMIUM; builder.protectionStart = ProtectionStartOfDay.BEGINNING; builder.stepinDateOffset = DaysAdjustment.ofCalendarDays(1); }
public void test_getResultCalendar3() { DaysAdjustment test = DaysAdjustment.ofCalendarDays(3); assertEquals(test.getResultCalendar(), NO_HOLIDAYS); }
public void test_ofCalendarDays2_null() { assertThrowsIllegalArg(() -> DaysAdjustment.ofCalendarDays(2, null)); }
public void test_serialization() { assertSerialization(DaysAdjustment.ofCalendarDays(4, BDA_FOLLOW_SAT_SUN)); }
public void coverage() { coverImmutableBean(DaysAdjustment.ofCalendarDays(4, BDA_FOLLOW_SAT_SUN)); }
public void test_ofCalendarDays1_threeDays() { DaysAdjustment test = DaysAdjustment.ofCalendarDays(3); assertEquals(test.getDays(), 3); assertEquals(test.getCalendar(), NO_HOLIDAYS); assertEquals(test.getAdjustment(), BDA_NONE); assertEquals(test.toString(), "3 calendar days"); }
public void test_ofCalendarDays2_fourDays() { DaysAdjustment test = DaysAdjustment.ofCalendarDays(4, BDA_FOLLOW_SAT_SUN); assertEquals(test.getDays(), 4); assertEquals(test.getCalendar(), NO_HOLIDAYS); assertEquals(test.getAdjustment(), BDA_FOLLOW_SAT_SUN); assertEquals(test.toString(), "4 calendar days then apply Following using calendar Sat/Sun"); }
public void test_ofCalendarDays1_oneDay() { DaysAdjustment test = DaysAdjustment.ofCalendarDays(1); assertEquals(test.getDays(), 1); assertEquals(test.getCalendar(), NO_HOLIDAYS); assertEquals(test.getAdjustment(), BDA_NONE); assertEquals(test.toString(), "1 calendar day"); }
public void test_ofCalendarDays2_oneDay() { DaysAdjustment test = DaysAdjustment.ofCalendarDays(1, BDA_FOLLOW_SAT_SUN); assertEquals(test.getDays(), 1); assertEquals(test.getCalendar(), NO_HOLIDAYS); assertEquals(test.getAdjustment(), BDA_FOLLOW_SAT_SUN); assertEquals(test.toString(), "1 calendar day then apply Following using calendar Sat/Sun"); }
@Override public DaysAdjustment toIborIndexFixingOffset() { DaysAdjustment base = FloatingRateName.super.toIborIndexFixingOffset(); if (fixingDateOffsetDays == null) { return base; } if (fixingDateOffsetDays == 0) { return DaysAdjustment.ofCalendarDays(0, BusinessDayAdjustment.of(PRECEDING, base.getResultCalendar())); } return base.toBuilder().days(fixingDateOffsetDays).build().normalized(); }
public void test_normalized() { DaysAdjustment zeroDays = DaysAdjustment.ofCalendarDays(0, BDA_FOLLOW_SAT_SUN); DaysAdjustment zeroDaysWithCalendar = DaysAdjustment.ofBusinessDays(0, WED_THU, BDA_FOLLOW_SAT_SUN); DaysAdjustment twoDays = DaysAdjustment.ofCalendarDays(2, BDA_FOLLOW_SAT_SUN); DaysAdjustment twoDaysWithCalendar = DaysAdjustment.ofBusinessDays(2, WED_THU, BDA_FOLLOW_SAT_SUN); DaysAdjustment twoDaysWithSameCalendar = DaysAdjustment.ofBusinessDays(2, SAT_SUN, BDA_FOLLOW_SAT_SUN); DaysAdjustment twoDaysWithNoAdjust = DaysAdjustment.ofBusinessDays(2, SAT_SUN); assertEquals(zeroDays.normalized(), zeroDays); assertEquals(zeroDaysWithCalendar.normalized(), zeroDays); assertEquals(twoDays.normalized(), twoDays); assertEquals(twoDaysWithCalendar.normalized(), twoDaysWithCalendar); assertEquals(twoDaysWithSameCalendar.normalized(), twoDaysWithNoAdjust); assertEquals(twoDaysWithNoAdjust.normalized(), twoDaysWithNoAdjust); }
public void test_nzd_bkbm() { IborIndex test = IborIndex.of("NZD-BKBM-3M"); assertEquals(test.getCurrency(), NZD); assertEquals(test.getName(), "NZD-BKBM-3M"); assertEquals(test.getTenor(), TENOR_3M); assertEquals(test.getFixingCalendar(), NZBD); assertEquals(test.getFixingDateOffset(), DaysAdjustment.ofCalendarDays(0, BusinessDayAdjustment.of(PRECEDING, NZBD))); assertEquals(test.getEffectiveDateOffset(), DaysAdjustment.ofCalendarDays(0, BusinessDayAdjustment.of(FOLLOWING, NZBD))); assertEquals(test.getMaturityDateOffset(), TenorAdjustment.of(TENOR_3M, PeriodAdditionConventions.NONE, BusinessDayAdjustment.of(MODIFIED_FOLLOWING, NZBD))); assertEquals(test.getDayCount(), ACT_365F); assertEquals(test.getDefaultFixedLegDayCount(), ACT_365F); assertEquals(test.toString(), "NZD-BKBM-3M"); }
public void test_of() { ImmutableCdsConvention test = ImmutableCdsConvention.of(NAME, GBP, ACT_365F, P3M, BUSI_ADJ, SETTLE_DAY_ADJ); assertEquals(test.getBusinessDayAdjustment(), BUSI_ADJ); assertEquals(test.getStartDateBusinessDayAdjustment(), BUSI_ADJ); assertEquals(test.getEndDateBusinessDayAdjustment(), BusinessDayAdjustment.NONE); assertEquals(test.getCurrency(), GBP); assertEquals(test.getDayCount(), ACT_365F); assertEquals(test.getName(), NAME); assertEquals(test.getPaymentFrequency(), P3M); assertEquals(test.getPaymentOnDefault(), PaymentOnDefault.ACCRUED_PREMIUM); assertEquals(test.getProtectionStart(), ProtectionStartOfDay.BEGINNING); assertEquals(test.getRollConvention(), RollConventions.DAY_20); assertEquals(test.getSettlementDateOffset(), SETTLE_DAY_ADJ); assertEquals(test.getStepinDateOffset(), DaysAdjustment.ofCalendarDays(1)); assertEquals(test.getStubConvention(), StubConvention.SMART_INITIAL); }
public void test_zar_jibar() { IborIndex test = IborIndex.of("ZAR-JIBAR-3M"); assertEquals(test.getCurrency(), ZAR); assertEquals(test.getName(), "ZAR-JIBAR-3M"); assertEquals(test.getTenor(), TENOR_3M); assertEquals(test.getFixingCalendar(), ZAJO); assertEquals(test.getFixingDateOffset(), DaysAdjustment.ofCalendarDays(0, BusinessDayAdjustment.of(PRECEDING, ZAJO))); assertEquals(test.getEffectiveDateOffset(), DaysAdjustment.ofCalendarDays(0, BusinessDayAdjustment.of(FOLLOWING, ZAJO))); assertEquals(test.getMaturityDateOffset(), TenorAdjustment.of(TENOR_3M, PeriodAdditionConventions.NONE, BusinessDayAdjustment.of(MODIFIED_FOLLOWING, ZAJO))); assertEquals(test.getDayCount(), ACT_365F); assertEquals(test.getDefaultFixedLegDayCount(), ACT_365F); assertEquals(test.toString(), "ZAR-JIBAR-3M"); }
public void test_gbpLibor3m() { IborIndex test = IborIndex.of("GBP-LIBOR-3M"); assertEquals(test.getName(), "GBP-LIBOR-3M"); assertEquals(test.getCurrency(), GBP); assertEquals(test.isActive(), true); assertEquals(test.getTenor(), TENOR_3M); assertEquals(test.getFixingCalendar(), GBLO); assertEquals(test.getFixingDateOffset(), DaysAdjustment.ofCalendarDays(0, BusinessDayAdjustment.of(PRECEDING, GBLO))); assertEquals(test.getEffectiveDateOffset(), DaysAdjustment.ofCalendarDays(0, BusinessDayAdjustment.of(FOLLOWING, GBLO))); assertEquals(test.getMaturityDateOffset(), TenorAdjustment.ofLastBusinessDay(TENOR_3M, BusinessDayAdjustment.of(MODIFIED_FOLLOWING, GBLO))); assertEquals(test.getDayCount(), ACT_365F); assertEquals(test.getDefaultFixedLegDayCount(), ACT_365F); assertEquals(test.getFloatingRateName(), FloatingRateName.of("GBP-LIBOR")); assertEquals(test.toString(), "GBP-LIBOR-3M"); }
public void test_ofCalendarDays1_adjust() { DaysAdjustment test = DaysAdjustment.ofCalendarDays(2); LocalDate base = date(2014, 8, 15); // Fri assertEquals(test.adjust(base, REF_DATA), date(2014, 8, 17)); // Sun assertEquals(test.resolve(REF_DATA).adjust(base), date(2014, 8, 17)); // Sun }
public void test_ofCalendarDays2_adjust() { DaysAdjustment test = DaysAdjustment.ofCalendarDays(2, BDA_FOLLOW_SAT_SUN); LocalDate base = date(2014, 8, 15); // Fri assertEquals(test.adjust(base, REF_DATA), date(2014, 8, 18)); // Mon assertEquals(test.resolve(REF_DATA).adjust(base), date(2014, 8, 18)); // Mon }
public void test_cibor() { assertEquals(FloatingRateName.of("DKK-CIBOR-DKNA13").getDefaultTenor(), Tenor.TENOR_3M); assertEquals(FloatingRateName.of("DKK-CIBOR-DKNA13").toFloatingRateIndex(), IborIndices.DKK_CIBOR_3M); assertEquals(FloatingRateName.of("DKK-CIBOR-DKNA13").toFloatingRateIndex(Tenor.TENOR_1M), IborIndices.DKK_CIBOR_1M); assertEquals(FloatingRateName.of("DKK-CIBOR-DKNA13").toIborIndex(Tenor.TENOR_6M), IborIndices.DKK_CIBOR_6M); assertEquals(FloatingRateName.of("DKK-CIBOR2-DKNA13").toIborIndex(Tenor.TENOR_6M), IborIndices.DKK_CIBOR_6M); assertEquals( FloatingRateName.of("DKK-CIBOR-DKNA13").toIborIndexFixingOffset(), DaysAdjustment.ofCalendarDays(0, BusinessDayAdjustment.of(PRECEDING, DKCO))); assertEquals( FloatingRateName.of("DKK-CIBOR2-DKNA13").toIborIndexFixingOffset(), DaysAdjustment.ofBusinessDays(-2, DKCO)); }
public void test_iborIndex_tenor() { assertEquals(FloatingRateName.of("GBP-LIBOR-BBA").getDefaultTenor(), Tenor.TENOR_3M); assertEquals(FloatingRateName.of("GBP-LIBOR-BBA").toFloatingRateIndex(), IborIndices.GBP_LIBOR_3M); assertEquals(FloatingRateName.of("GBP-LIBOR-BBA").toFloatingRateIndex(Tenor.TENOR_1M), IborIndices.GBP_LIBOR_1M); assertEquals(FloatingRateName.of("GBP-LIBOR-BBA").toIborIndex(Tenor.TENOR_6M), IborIndices.GBP_LIBOR_6M); assertEquals(FloatingRateName.of("GBP-LIBOR-BBA").toIborIndex(Tenor.TENOR_12M), IborIndices.GBP_LIBOR_12M); assertEquals(FloatingRateName.of("GBP-LIBOR-BBA").toIborIndex(Tenor.TENOR_1Y), IborIndices.GBP_LIBOR_12M); assertThrows(() -> FloatingRateName.of("GBP-WMBA-SONIA-COMPOUND").toIborIndex(Tenor.TENOR_6M), IllegalStateException.class); assertEquals( ImmutableList.copyOf(FloatingRateName.of("GBP-LIBOR-BBA").getTenors()), ImmutableList.of(Tenor.TENOR_1W, Tenor.TENOR_1M, Tenor.TENOR_2M, Tenor.TENOR_3M, Tenor.TENOR_6M, Tenor.TENOR_12M)); assertEquals( FloatingRateName.of("GBP-LIBOR-BBA").toIborIndexFixingOffset(), DaysAdjustment.ofCalendarDays(0, BusinessDayAdjustment.of(PRECEDING, GBLO))); }