XDUB: Add May bank holiday post-2021 #382
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Closes: #383
Whilst it looks correct that there is no Early May Bank Holiday for Euronext Dublin in 2019 and 2020, it does seem to have been reacted from 2021 onwards. See screenshots below of excerpts from the Euronext website:
Euronext 2019 - no May Bank (https://web.archive.org/web/20190708142940/https://www.euronext.com/en/trade/trading-hours-holidays):
Euronext 2020 - no May Bank (https://web.archive.org/web/20200904035212/https://www.euronext.com/en/trade/trading-hours-holidays):
Euronext 2021 - May Bank (https://www.euronext.com/en/trade/trading-hours-holidays):
and on that same page you can see calendars for 2021 onwards, all of which have the early May Bank Holiday.
Workflow to add a new Exchange Calendar
It's recommended that whilst working through the process reference be made to existing calendar and test classes.
exchange_calendars/exchange_calendar_{Exchange MIC}.py
. Module should contain a subclass of the abstract base classExchangeCalendar
(inexchange_calendars/exchange_calendar.py
).{Exchange MIC}ExchangeCalendar
.exchange_calendars/calendar_utils.py
and add class to_default_calendar_factories
.tests/test_{Exchange MIC}_calendar.py
Module should contain a subclass of the test base classExchangeCalendarTestBase
(intests/test_exchange_calendars.py
).Test{Exchange MIC}Calendar
.calendar_cls
andmax_session_hours
fixtures must be overriden.tests/resources/{Exchange MIC}.csv
. This file be generated by executingpython etc/make_exchange_calendar_test_csv.py {Exchange MIC}
. See script's documentation.Workflow to modify an existing Exchange Calendar
tests/resources/{Exchange MIC}.csv
), either manually or by executingpython etc/make_exchange_calendar_test_csv.py {Exchange MIC}
.tests/test_{Exchange MIC}_calendar.py
need updating to reflect your changes.exchange_calendars/exchange_calendar_{Exchange MIC}.py
.