@Override public OvernightIndex toOvernightIndex() { if (!type.isOvernight()) { throw new IllegalStateException("Incorrect index type, expected Overnight: " + externalName); } if (indexName.endsWith(AVERAGE_SUFFIX)) { return OvernightIndex.of(indexName.substring(0, indexName.length() - 4)); } return OvernightIndex.of(indexName); }
public void test_alternateNames() { assertEquals(OvernightIndex.of("JPY-TONA"), OvernightIndices.JPY_TONAR); assertEquals(OvernightIndex.of("USD-FED-FUNDS"), OvernightIndices.USD_FED_FUND); assertEquals(OvernightIndex.of("USD-FEDFUNDS"), OvernightIndices.USD_FED_FUND); assertEquals(OvernightIndex.of("USD-FEDFUND"), OvernightIndices.USD_FED_FUND); }
@Test(dataProvider = "name") public void test_of_lookup(OvernightIndex convention, String name) { assertEquals(OvernightIndex.of(name), convention); }
public void test_of_lookup_notFound() { assertThrowsIllegalArg(() -> OvernightIndex.of("Rubbish")); }
public void test_of_lookup_null() { assertThrowsIllegalArg(() -> OvernightIndex.of(null)); }
public void test_sekOis() { OvernightIndex test = OvernightIndex.of("SEK-SIOR"); assertEquals(test.getName(), "SEK-SIOR"); assertEquals(test.getCurrency(), SEK); assertEquals(test.isActive(), true); assertEquals(test.getFixingCalendar(), SEST); assertEquals(test.getPublicationDateOffset(), 0); assertEquals(test.getEffectiveDateOffset(), 1); assertEquals(test.getDayCount(), ACT_360); assertEquals(test.getDefaultFixedLegDayCount(), ACT_360); assertEquals(test.toString(), "SEK-SIOR"); }
public void test_zarSabor() { OvernightIndex test = OvernightIndex.of("ZAR-SABOR"); assertEquals(test.getName(), "ZAR-SABOR"); assertEquals(test.getCurrency(), ZAR); assertEquals(test.isActive(), true); assertEquals(test.getFixingCalendar(), ZAJO); assertEquals(test.getPublicationDateOffset(), 0); assertEquals(test.getEffectiveDateOffset(), 0); assertEquals(test.getDayCount(), ACT_365F); assertEquals(test.getDefaultFixedLegDayCount(), ACT_365F); assertEquals(test.toString(), "ZAR-SABOR"); }
public void test_usdFedFund3m() { OvernightIndex test = OvernightIndex.of("USD-FED-FUND"); assertEquals(test.getCurrency(), USD); assertEquals(test.getName(), "USD-FED-FUND"); assertEquals(test.getFixingCalendar(), USNY); assertEquals(test.getPublicationDateOffset(), 1); assertEquals(test.getEffectiveDateOffset(), 0); assertEquals(test.getDayCount(), ACT_360); assertEquals(test.getDefaultFixedLegDayCount(), ACT_360); assertEquals(test.toString(), "USD-FED-FUND"); }
public void test_usdSofr() { OvernightIndex test = OvernightIndex.of("USD-SOFR"); assertEquals(test.getName(), "USD-SOFR"); assertEquals(test.getCurrency(), USD); assertEquals(test.isActive(), true); assertEquals(test.getFixingCalendar(), USGS); assertEquals(test.getPublicationDateOffset(), 1); assertEquals(test.getEffectiveDateOffset(), 0); assertEquals(test.getDayCount(), ACT_360); assertEquals(test.toString(), "USD-SOFR"); }
public void test_dkkOis() { OvernightIndex test = OvernightIndex.of("DKK-TNR"); assertEquals(test.getName(), "DKK-TNR"); assertEquals(test.getCurrency(), DKK); assertEquals(test.isActive(), true); assertEquals(test.getFixingCalendar(), DKCO); assertEquals(test.getPublicationDateOffset(), 1); assertEquals(test.getEffectiveDateOffset(), 1); assertEquals(test.getDayCount(), ACT_360); assertEquals(test.getDefaultFixedLegDayCount(), ACT_360); assertEquals(test.toString(), "DKK-TNR"); }
public void test_inrOis() { OvernightIndex test = OvernightIndex.of("INR-OMIBOR"); assertEquals(test.getName(), "INR-OMIBOR"); assertEquals(test.getCurrency(), INR); assertEquals(test.isActive(), true); assertEquals(test.getFixingCalendar(), HolidayCalendarId.of("INMU")); assertEquals(test.getPublicationDateOffset(), 0); assertEquals(test.getEffectiveDateOffset(), 0); assertEquals(test.getDayCount(), ACT_365F); assertEquals(test.getDefaultFixedLegDayCount(), ACT_365F); assertEquals(test.toString(), "INR-OMIBOR"); }
public void test_audAonia() { OvernightIndex test = OvernightIndex.of("AUD-AONIA"); assertEquals(test.getName(), "AUD-AONIA"); assertEquals(test.getCurrency(), AUD); assertEquals(test.isActive(), true); assertEquals(test.getFixingCalendar(), AUSY); assertEquals(test.getPublicationDateOffset(), 0); assertEquals(test.getEffectiveDateOffset(), 0); assertEquals(test.getDayCount(), ACT_365F); assertEquals(test.getDefaultFixedLegDayCount(), ACT_365F); assertEquals(test.toString(), "AUD-AONIA"); }
public void test_plnOis() { OvernightIndex test = OvernightIndex.of("PLN-POLONIA"); assertEquals(test.getName(), "PLN-POLONIA"); assertEquals(test.getCurrency(), PLN); assertEquals(test.isActive(), true); assertEquals(test.getFixingCalendar(), PLWA); assertEquals(test.getPublicationDateOffset(), 0); assertEquals(test.getEffectiveDateOffset(), 0); assertEquals(test.getDayCount(), ACT_365F); assertEquals(test.getDefaultFixedLegDayCount(), ACT_365F); assertEquals(test.toString(), "PLN-POLONIA"); }
public void test_brlCdi() { OvernightIndex test = OvernightIndex.of("BRL-CDI"); assertEquals(test.getName(), "BRL-CDI"); assertEquals(test.getCurrency(), BRL); assertEquals(test.isActive(), true); assertEquals(test.getFixingCalendar(), BRBD); assertEquals(test.getPublicationDateOffset(), 1); assertEquals(test.getEffectiveDateOffset(), 0); assertEquals(test.getDayCount(), DayCount.ofBus252(BRBD)); assertEquals(test.toString(), "BRL-CDI"); }
public void test_nzdOis() { OvernightIndex test = OvernightIndex.of("NZD-NZIONA"); assertEquals(test.getName(), "NZD-NZIONA"); assertEquals(test.getCurrency(), NZD); assertEquals(test.isActive(), true); assertEquals(test.getFixingCalendar(), HolidayCalendarId.of("NZBD")); assertEquals(test.getPublicationDateOffset(), 0); assertEquals(test.getEffectiveDateOffset(), 0); assertEquals(test.getDayCount(), ACT_365F); assertEquals(test.getDefaultFixedLegDayCount(), ACT_365F); assertEquals(test.toString(), "NZD-NZIONA"); }
public void test_gbpSonia() { OvernightIndex test = OvernightIndex.of("GBP-SONIA"); assertEquals(test.getName(), "GBP-SONIA"); assertEquals(test.getCurrency(), GBP); assertEquals(test.isActive(), true); assertEquals(test.getFixingCalendar(), GBLO); assertEquals(test.getPublicationDateOffset(), 0); assertEquals(test.getEffectiveDateOffset(), 0); assertEquals(test.getDayCount(), ACT_365F); assertEquals(test.getDefaultFixedLegDayCount(), ACT_365F); assertEquals(test.getFloatingRateName(), FloatingRateName.of("GBP-SONIA")); assertEquals(test.toString(), "GBP-SONIA"); }
public void test_sgdSonar() { HolidayCalendarId SGSI = HolidayCalendarId.of("SGSI"); OvernightIndex test = OvernightIndex.of("SGD-SONAR"); assertEquals(test.getName(), "SGD-SONAR"); assertEquals(test.getCurrency(), SGD); assertEquals(test.isActive(), true); assertEquals(test.getFixingCalendar(), SGSI); assertEquals(test.getPublicationDateOffset(), 0); assertEquals(test.getEffectiveDateOffset(), 0); assertEquals(test.getDayCount(), ACT_365F); assertEquals(test.getDefaultFixedLegDayCount(), ACT_365F); assertEquals(test.toString(), "SGD-SONAR"); }
public void test_chfSaron() { OvernightIndex test = OvernightIndex.of("CHF-SARON"); assertEquals(test.getName(), "CHF-SARON"); assertEquals(test.getCurrency(), CHF); assertEquals(test.isActive(), true); assertEquals(test.getFixingCalendar(), CHZU); assertEquals(test.getPublicationDateOffset(), 0); assertEquals(test.getEffectiveDateOffset(), 0); assertEquals(test.getDayCount(), ACT_360); assertEquals(test.getDefaultFixedLegDayCount(), ACT_360); assertEquals(test.getFloatingRateName(), FloatingRateName.of("CHF-SARON")); assertEquals(test.toString(), "CHF-SARON"); }
public void test_overnightIndexRates_inactive() { OvernightIndex inactiveIndex = OvernightIndex.of("CHF-TOIS"); LocalDateDoubleTimeSeries ts = LocalDateDoubleTimeSeries.of(VAL_DATE, 0.62d); ImmutableRatesProvider test = ImmutableRatesProvider.builder(VAL_DATE) .timeSeries(inactiveIndex, ts) .build(); assertEquals(test.overnightIndexRates(inactiveIndex).getIndex(), inactiveIndex); assertEquals(test.overnightIndexRates(inactiveIndex).getFixings(), ts); assertEquals(test.getIborIndices(), ImmutableSet.of()); assertEquals(test.getTimeSeriesIndices(), ImmutableSet.of(inactiveIndex)); assertEquals(test.overnightIndexRates(inactiveIndex).getClass(), HistoricOvernightIndexRates.class); }
public void test_overnightIndexRates_inactiveNoTimeSeriesNotFound() { OvernightIndex inactiveIndex = OvernightIndex.of("CHF-TOIS"); ImmutableRatesProvider test = ImmutableRatesProvider.builder(VAL_DATE) .build(); assertThrows(IllegalArgumentException.class, () -> test.overnightIndexRates(inactiveIndex)); }