pandas-market-calendars 4.4.0__py3-none-any.whl → 4.4.2__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (47) hide show
  1. pandas_market_calendars/__init__.py +38 -38
  2. pandas_market_calendars/calendar_registry.py +57 -53
  3. pandas_market_calendars/calendar_utils.py +262 -261
  4. pandas_market_calendars/calendars/asx.py +66 -66
  5. pandas_market_calendars/calendars/bmf.py +223 -223
  6. pandas_market_calendars/calendars/bse.py +421 -421
  7. pandas_market_calendars/calendars/cboe.py +145 -145
  8. pandas_market_calendars/calendars/cme.py +405 -402
  9. pandas_market_calendars/calendars/cme_globex_agriculture.py +172 -126
  10. pandas_market_calendars/calendars/cme_globex_base.py +119 -119
  11. pandas_market_calendars/calendars/cme_globex_crypto.py +160 -160
  12. pandas_market_calendars/calendars/cme_globex_energy_and_metals.py +216 -216
  13. pandas_market_calendars/calendars/cme_globex_equities.py +123 -123
  14. pandas_market_calendars/calendars/cme_globex_fixed_income.py +136 -136
  15. pandas_market_calendars/calendars/cme_globex_fx.py +101 -101
  16. pandas_market_calendars/calendars/eurex.py +131 -139
  17. pandas_market_calendars/calendars/eurex_fixed_income.py +98 -98
  18. pandas_market_calendars/calendars/hkex.py +429 -426
  19. pandas_market_calendars/calendars/ice.py +81 -81
  20. pandas_market_calendars/calendars/iex.py +112 -112
  21. pandas_market_calendars/calendars/jpx.py +113 -109
  22. pandas_market_calendars/calendars/lse.py +114 -114
  23. pandas_market_calendars/calendars/mirror.py +149 -130
  24. pandas_market_calendars/calendars/nyse.py +1324 -1324
  25. pandas_market_calendars/calendars/ose.py +116 -116
  26. pandas_market_calendars/calendars/sifma.py +354 -354
  27. pandas_market_calendars/calendars/six.py +132 -132
  28. pandas_market_calendars/calendars/sse.py +311 -311
  29. pandas_market_calendars/calendars/tase.py +197 -197
  30. pandas_market_calendars/calendars/tsx.py +181 -181
  31. pandas_market_calendars/holidays/cme.py +385 -385
  32. pandas_market_calendars/holidays/cme_globex.py +214 -214
  33. pandas_market_calendars/holidays/cn.py +1456 -1455
  34. pandas_market_calendars/holidays/jp.py +401 -401
  35. pandas_market_calendars/holidays/jpx_equinox.py +506 -505
  36. pandas_market_calendars/holidays/nyse.py +1531 -1531
  37. pandas_market_calendars/holidays/oz.py +63 -63
  38. pandas_market_calendars/holidays/sifma.py +350 -350
  39. pandas_market_calendars/holidays/us.py +376 -376
  40. pandas_market_calendars/market_calendar.py +922 -895
  41. {pandas_market_calendars-4.4.0.dist-info → pandas_market_calendars-4.4.2.dist-info}/METADATA +8 -7
  42. pandas_market_calendars-4.4.2.dist-info/RECORD +50 -0
  43. {pandas_market_calendars-4.4.0.dist-info → pandas_market_calendars-4.4.2.dist-info}/WHEEL +1 -1
  44. pandas_market_calendars-4.4.0.dist-info/RECORD +0 -50
  45. {pandas_market_calendars-4.4.0.dist-info → pandas_market_calendars-4.4.2.dist-info}/LICENSE +0 -0
  46. {pandas_market_calendars-4.4.0.dist-info → pandas_market_calendars-4.4.2.dist-info}/NOTICE +0 -0
  47. {pandas_market_calendars-4.4.0.dist-info → pandas_market_calendars-4.4.2.dist-info}/top_level.txt +0 -0
@@ -1,116 +1,116 @@
1
- from datetime import time
2
-
3
- from pandas.tseries.holiday import (
4
- AbstractHolidayCalendar,
5
- EasterMonday,
6
- GoodFriday,
7
- Holiday,
8
- )
9
- from pandas.tseries.offsets import Day, Easter
10
- from pytz import timezone
11
-
12
- from pandas_market_calendars.market_calendar import MarketCalendar
13
-
14
- OSENewYearsDay = Holiday("New Year's Day", month=1, day=1)
15
-
16
- OSEWednesdayBeforeEaster = Holiday(
17
- "Wednesday before Easter", month=1, day=1, offset=[Easter(), Day(-4)]
18
- )
19
-
20
- OSEMaundyThursday = Holiday(
21
- "Maundy Thursday", month=1, day=1, offset=[Easter(), Day(-3)]
22
- )
23
-
24
- OSEGoodFriday = GoodFriday
25
-
26
- OSEEasterMonday = EasterMonday
27
-
28
- OSELabourDay = Holiday("Labour Day", month=5, day=1)
29
-
30
- OSEConstitutionDay = Holiday("Constitution Day", month=5, day=17)
31
-
32
- OSEWhitMonday = Holiday("Whit Monday", month=1, day=1, offset=[Easter(), Day(50)])
33
-
34
- OSEAscensionDay = Holiday("Ascension Day", month=1, day=1, offset=[Easter(), Day(39)])
35
-
36
- OSEChristmasEve = Holiday(
37
- "Christmas Eve",
38
- month=12,
39
- day=24,
40
- )
41
-
42
- OSEChristmasDay = Holiday("Christmas Day", month=12, day=25)
43
-
44
- OSEBoxingDay = Holiday("Boxing Day", month=12, day=26)
45
-
46
- OSENewYearsEve = Holiday("New Year's Eve", month=12, day=31)
47
-
48
-
49
- class OSEExchangeCalendar(MarketCalendar):
50
- """
51
- Exchange calendar for Oslo Stock Exchange
52
-
53
- Note these dates are only checked against 2017, 2018 and 2019
54
- https://www.oslobors.no/ob_eng/Oslo-Boers/About-Oslo-Boers/Opening-hours
55
-
56
- Opening times for the regular trading of equities (not including closing auction call)
57
- Open Time: 9:00 AM, CEST/EST
58
- Close Time: 4:20 PM, CEST/EST
59
-
60
- Regularly-Observed Holidays (not necessarily in order):
61
- - New Years Day
62
- - Wednesday before Easter (Half trading day)
63
- - Maundy Thursday
64
- - Good Friday
65
- - Easter Monday
66
- - Labour Day
67
- - Ascension Day
68
- - Constitution Day
69
- - Whit Monday
70
- - Christmas Eve
71
- - Christmas Day
72
- - Boxing Day
73
- - New Year's Eve
74
- """
75
-
76
- aliases = ["OSE"]
77
- regular_market_times = {
78
- "market_open": ((None, time(9)),),
79
- "market_close": ((None, time(16, 20)),),
80
- }
81
-
82
- @property
83
- def name(self):
84
- return "OSE"
85
-
86
- @property
87
- def tz(self):
88
- return timezone("Europe/Oslo")
89
-
90
- @property
91
- def regular_holidays(self):
92
- return AbstractHolidayCalendar(
93
- rules=[
94
- OSENewYearsDay,
95
- OSEMaundyThursday,
96
- OSEGoodFriday,
97
- OSEEasterMonday,
98
- OSELabourDay,
99
- OSEConstitutionDay,
100
- OSEWhitMonday,
101
- OSEAscensionDay,
102
- OSEChristmasEve,
103
- OSEChristmasDay,
104
- OSEBoxingDay,
105
- OSENewYearsEve,
106
- ]
107
- )
108
-
109
- @property
110
- def special_closes(self):
111
- return [
112
- (
113
- time(13, 0, tzinfo=self.tz),
114
- AbstractHolidayCalendar(rules=[OSEWednesdayBeforeEaster]),
115
- )
116
- ]
1
+ from datetime import time
2
+
3
+ from pandas.tseries.holiday import (
4
+ AbstractHolidayCalendar,
5
+ EasterMonday,
6
+ GoodFriday,
7
+ Holiday,
8
+ )
9
+ from pandas.tseries.offsets import Day, Easter
10
+ from pytz import timezone
11
+
12
+ from pandas_market_calendars.market_calendar import MarketCalendar
13
+
14
+ OSENewYearsDay = Holiday("New Year's Day", month=1, day=1)
15
+
16
+ OSEWednesdayBeforeEaster = Holiday(
17
+ "Wednesday before Easter", month=1, day=1, offset=[Easter(), Day(-4)]
18
+ )
19
+
20
+ OSEMaundyThursday = Holiday(
21
+ "Maundy Thursday", month=1, day=1, offset=[Easter(), Day(-3)]
22
+ )
23
+
24
+ OSEGoodFriday = GoodFriday
25
+
26
+ OSEEasterMonday = EasterMonday
27
+
28
+ OSELabourDay = Holiday("Labour Day", month=5, day=1)
29
+
30
+ OSEConstitutionDay = Holiday("Constitution Day", month=5, day=17)
31
+
32
+ OSEWhitMonday = Holiday("Whit Monday", month=1, day=1, offset=[Easter(), Day(50)])
33
+
34
+ OSEAscensionDay = Holiday("Ascension Day", month=1, day=1, offset=[Easter(), Day(39)])
35
+
36
+ OSEChristmasEve = Holiday(
37
+ "Christmas Eve",
38
+ month=12,
39
+ day=24,
40
+ )
41
+
42
+ OSEChristmasDay = Holiday("Christmas Day", month=12, day=25)
43
+
44
+ OSEBoxingDay = Holiday("Boxing Day", month=12, day=26)
45
+
46
+ OSENewYearsEve = Holiday("New Year's Eve", month=12, day=31)
47
+
48
+
49
+ class OSEExchangeCalendar(MarketCalendar):
50
+ """
51
+ Exchange calendar for Oslo Stock Exchange
52
+
53
+ Note these dates are only checked against 2017, 2018 and 2019
54
+ https://www.oslobors.no/ob_eng/Oslo-Boers/About-Oslo-Boers/Opening-hours
55
+
56
+ Opening times for the regular trading of equities (not including closing auction call)
57
+ Open Time: 9:00 AM, CEST/EST
58
+ Close Time: 4:20 PM, CEST/EST
59
+
60
+ Regularly-Observed Holidays (not necessarily in order):
61
+ - New Years Day
62
+ - Wednesday before Easter (Half trading day)
63
+ - Maundy Thursday
64
+ - Good Friday
65
+ - Easter Monday
66
+ - Labour Day
67
+ - Ascension Day
68
+ - Constitution Day
69
+ - Whit Monday
70
+ - Christmas Eve
71
+ - Christmas Day
72
+ - Boxing Day
73
+ - New Year's Eve
74
+ """
75
+
76
+ aliases = ["OSE"]
77
+ regular_market_times = {
78
+ "market_open": ((None, time(9)),),
79
+ "market_close": ((None, time(16, 20)),),
80
+ }
81
+
82
+ @property
83
+ def name(self):
84
+ return "OSE"
85
+
86
+ @property
87
+ def tz(self):
88
+ return timezone("Europe/Oslo")
89
+
90
+ @property
91
+ def regular_holidays(self):
92
+ return AbstractHolidayCalendar(
93
+ rules=[
94
+ OSENewYearsDay,
95
+ OSEMaundyThursday,
96
+ OSEGoodFriday,
97
+ OSEEasterMonday,
98
+ OSELabourDay,
99
+ OSEConstitutionDay,
100
+ OSEWhitMonday,
101
+ OSEAscensionDay,
102
+ OSEChristmasEve,
103
+ OSEChristmasDay,
104
+ OSEBoxingDay,
105
+ OSENewYearsEve,
106
+ ]
107
+ )
108
+
109
+ @property
110
+ def special_closes(self):
111
+ return [
112
+ (
113
+ time(13, 0, tzinfo=self.tz),
114
+ AbstractHolidayCalendar(rules=[OSEWednesdayBeforeEaster]),
115
+ )
116
+ ]