Skip to content

US/NY calendars incorrectly identify Friday, June 18th as a holiday despite bumpBack:false #2726

@jerod-lass

Description

@jerod-lass

The current common US calendar configuration includes Juneteenth as a holiday since 2022, but in the case where Juneteenth falls on a Saturday, Friday 6/18 should not be considered a federal holiday. Banks are closed the Monday after a Sunday holiday, but not the Friday before a Saturday holiday, source: https://www.frbservices.org/about/holiday-schedules

I believe the issue is with this line: https://github.com/OpenGamma/Strata/blob/main/modules/basics/src/main/java/com/opengamma/strata/basics/date/GlobalHolidayCalendars.java#L340
The holiday adjustment logic is implemented correctly for other holidays by honoring the bumpBack flag, which is false for the NY USD and federal holiday calendars. For Juneteenth, however, it's bumping to Friday or Monday irrespective of the bumpBack flag.

To reproduce:
Evaluating HolidayCalendarId.defaultByCurrency(Currency.USD).resolve(ReferenceData.standard()).isBusinessDay(LocalDate.of(2027,6,18));
returns false, expected true

Version: current / 2.12.56
openjdk 17.0.8

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions