diff --git a/modules/basics/src/main/java/com/opengamma/strata/basics/date/GlobalHolidayCalendars.java b/modules/basics/src/main/java/com/opengamma/strata/basics/date/GlobalHolidayCalendars.java index 2ddc39b5a5..e3394ab0f9 100644 --- a/modules/basics/src/main/java/com/opengamma/strata/basics/date/GlobalHolidayCalendars.java +++ b/modules/basics/src/main/java/com/opengamma/strata/basics/date/GlobalHolidayCalendars.java @@ -1169,6 +1169,7 @@ private static void addHungarianSaturdays(List holidays, Set holidays = new ArrayList<>(2000); for (int year = 1950; year <= 2099; year++) { @@ -1186,6 +1187,10 @@ static ImmutableHolidayCalendar generateMexicoCity() { holidays.add(date(year, 5, 1)); // independence holidays.add(date(year, 9, 16)); + // inaguration day - occurring once in every 6 years (2024, 2030, etc). + if (year >= 2024 && (year + 4) % 6 == 0) { + holidays.add(date(year, 10, 1)); + } // dead holidays.add(date(year, 11, 2)); // revolution @@ -1196,7 +1201,7 @@ static ImmutableHolidayCalendar generateMexicoCity() { holidays.add(date(year, 12, 25)); } removeSatSun(holidays); - return ImmutableHolidayCalendar.of(HolidayCalendarId.of("MXMC"), holidays, SATURDAY, SUNDAY); + return ImmutableHolidayCalendar.of(HolidayCalendarIds.MXMC, holidays, SATURDAY, SUNDAY); } // generate BRBD diff --git a/modules/basics/src/test/java/com/opengamma/strata/basics/date/GlobalHolidayCalendarsTest.java b/modules/basics/src/test/java/com/opengamma/strata/basics/date/GlobalHolidayCalendarsTest.java index 29d36327ec..53c854a798 100644 --- a/modules/basics/src/test/java/com/opengamma/strata/basics/date/GlobalHolidayCalendarsTest.java +++ b/modules/basics/src/test/java/com/opengamma/strata/basics/date/GlobalHolidayCalendarsTest.java @@ -944,6 +944,8 @@ public static Object[][] data_mxmc() { md(5, 1), md(9, 16), md(11, 2), md(11, 16), md(12, 12), md(12, 25))}, {2016, mds(2016, md(1, 1), md(2, 1), md(3, 21), md(3, 24), md(3, 25), md(5, 1), md(9, 16), md(11, 2), md(11, 21), md(12, 12), md(12, 25))}, + {2024, mds(2024, md(1, 1), md(2, 5), md(3, 18), md(3, 28), md(3, 29), + md(5, 1), md(9, 16), md(10, 1), md(11, 2), md(11, 18), md(12, 12), md(12, 25))}, }; } diff --git a/src/main/resources/com/opengamma/strata/basics/date/GlobalHolidayCalendars.bin b/src/main/resources/com/opengamma/strata/basics/date/GlobalHolidayCalendars.bin new file mode 100644 index 0000000000..5599a791a5 Binary files /dev/null and b/src/main/resources/com/opengamma/strata/basics/date/GlobalHolidayCalendars.bin differ