pandas-market-calendars 4.1.3__py3-none-any.whl → 4.2.0__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-4.1.3.dist-info → pandas_market_calendars-4.2.0.dist-info}/METADATA +200 -187
  2. pandas_market_calendars-4.2.0.dist-info/NOTICE +206 -0
  3. pandas_market_calendars-4.2.0.dist-info/RECORD +6 -0
  4. {pandas_market_calendars-4.1.3.dist-info → pandas_market_calendars-4.2.0.dist-info}/WHEEL +1 -1
  5. pandas_market_calendars/__init__.py +0 -37
  6. pandas_market_calendars/calendar_registry.py +0 -47
  7. pandas_market_calendars/calendar_utils.py +0 -225
  8. pandas_market_calendars/class_registry.py +0 -111
  9. pandas_market_calendars/exchange_calendar_asx.py +0 -63
  10. pandas_market_calendars/exchange_calendar_bmf.py +0 -227
  11. pandas_market_calendars/exchange_calendar_bse.py +0 -409
  12. pandas_market_calendars/exchange_calendar_cboe.py +0 -115
  13. pandas_market_calendars/exchange_calendar_cme.py +0 -240
  14. pandas_market_calendars/exchange_calendar_cme_globex_agriculture.py +0 -109
  15. pandas_market_calendars/exchange_calendar_cme_globex_base.py +0 -106
  16. pandas_market_calendars/exchange_calendar_cme_globex_energy_and_metals.py +0 -146
  17. pandas_market_calendars/exchange_calendar_cme_globex_equities.py +0 -104
  18. pandas_market_calendars/exchange_calendar_cme_globex_fixed_income.py +0 -114
  19. pandas_market_calendars/exchange_calendar_cme_globex_fx.py +0 -78
  20. pandas_market_calendars/exchange_calendar_eurex.py +0 -119
  21. pandas_market_calendars/exchange_calendar_hkex.py +0 -408
  22. pandas_market_calendars/exchange_calendar_ice.py +0 -65
  23. pandas_market_calendars/exchange_calendar_iex.py +0 -98
  24. pandas_market_calendars/exchange_calendar_jpx.py +0 -98
  25. pandas_market_calendars/exchange_calendar_lse.py +0 -91
  26. pandas_market_calendars/exchange_calendar_nyse.py +0 -1127
  27. pandas_market_calendars/exchange_calendar_ose.py +0 -150
  28. pandas_market_calendars/exchange_calendar_sifma.py +0 -300
  29. pandas_market_calendars/exchange_calendar_six.py +0 -114
  30. pandas_market_calendars/exchange_calendar_sse.py +0 -290
  31. pandas_market_calendars/exchange_calendar_tase.py +0 -119
  32. pandas_market_calendars/exchange_calendar_tsx.py +0 -159
  33. pandas_market_calendars/exchange_calendars_mirror.py +0 -114
  34. pandas_market_calendars/holidays_cme.py +0 -341
  35. pandas_market_calendars/holidays_cme_globex.py +0 -169
  36. pandas_market_calendars/holidays_cn.py +0 -1436
  37. pandas_market_calendars/holidays_jp.py +0 -362
  38. pandas_market_calendars/holidays_nyse.py +0 -1474
  39. pandas_market_calendars/holidays_oz.py +0 -65
  40. pandas_market_calendars/holidays_sifma.py +0 -321
  41. pandas_market_calendars/holidays_uk.py +0 -177
  42. pandas_market_calendars/holidays_us.py +0 -364
  43. pandas_market_calendars/jpx_equinox.py +0 -147
  44. pandas_market_calendars/market_calendar.py +0 -770
  45. pandas_market_calendars-4.1.3.dist-info/RECORD +0 -45
  46. {pandas_market_calendars-4.1.3.dist-info → pandas_market_calendars-4.2.0.dist-info}/LICENSE +0 -0
  47. {pandas_market_calendars-4.1.3.dist-info → pandas_market_calendars-4.2.0.dist-info}/top_level.txt +0 -0
@@ -1,227 +0,0 @@
1
- #
2
- # Copyright 2016 Quantopian, Inc.
3
- #
4
- # Licensed under the Apache License, Version 2.0 (the "License");
5
- # you may not use this file except in compliance with the License.
6
- # You may obtain a copy of the License at
7
- #
8
- # http://www.apache.org/licenses/LICENSE-2.0
9
- #
10
- # Unless required by applicable law or agreed to in writing, software
11
- # distributed under the License is distributed on an "AS IS" BASIS,
12
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
- # See the License for the specific language governing permissions and
14
- # limitations under the License.
15
-
16
- from datetime import time
17
-
18
- from pandas import Timestamp
19
- from pandas.tseries.holiday import AbstractHolidayCalendar, Day, Easter, GoodFriday, Holiday
20
- from pytz import timezone
21
-
22
- from .market_calendar import (FRIDAY, MarketCalendar)
23
-
24
- # Universal Confraternization (new years day)
25
- ConfUniversal = Holiday(
26
- 'Dia da Confraternizacao Universal',
27
- month=1,
28
- day=1,
29
- )
30
- # Sao Paulo city birthday
31
- AniversarioSaoPaulo = Holiday(
32
- 'Aniversario de Sao Paulo',
33
- month=1,
34
- day=25,
35
- end_date='2021-12-31'
36
- )
37
- # Carnival Monday
38
- CarnavalSegunda = Holiday(
39
- 'Carnaval Segunda',
40
- month=1,
41
- day=1,
42
- offset=[Easter(), Day(-48)]
43
- )
44
- # Carnival Tuesday
45
- CarnavalTerca = Holiday(
46
- 'Carnaval Terca',
47
- month=1,
48
- day=1,
49
- offset=[Easter(), Day(-47)]
50
- )
51
- # Ash Wednesday (short day)
52
- QuartaCinzas = Holiday(
53
- 'Quarta Cinzas',
54
- month=1,
55
- day=1,
56
- offset=[Easter(), Day(-46)]
57
- )
58
- # Good Friday
59
- SextaPaixao = GoodFriday
60
- # Feast of the Most Holy Body of Christ
61
- CorpusChristi = Holiday(
62
- 'Corpus Christi',
63
- month=1,
64
- day=1,
65
- offset=[Easter(), Day(60)]
66
- )
67
- # Tiradentes Memorial
68
- Tiradentes = Holiday(
69
- 'Tiradentes',
70
- month=4,
71
- day=21,
72
- )
73
- # Labor Day
74
- DiaTrabalho = Holiday(
75
- 'Dia Trabalho',
76
- month=5,
77
- day=1,
78
- )
79
- # Constitutionalist Revolution
80
- Constitucionalista = Holiday(
81
- 'Constitucionalista',
82
- month=7,
83
- day=9,
84
- start_date='1997-01-01',
85
- end_date='2019-12-31'
86
- )
87
- # Independence Day
88
- Independencia = Holiday(
89
- 'Independencia',
90
- month=9,
91
- day=7,
92
- )
93
- # Our Lady of Aparecida
94
- Aparecida = Holiday(
95
- 'Nossa Senhora de Aparecida',
96
- month=10,
97
- day=12,
98
- )
99
- # All Souls' Day
100
- Finados = Holiday(
101
- 'Dia dos Finados',
102
- month=11,
103
- day=2,
104
- )
105
- # Proclamation of the Republic
106
- ProclamacaoRepublica = Holiday(
107
- 'Proclamacao da Republica',
108
- month=11,
109
- day=15,
110
- )
111
- # Day of Black Awareness
112
- ConscienciaNegra = Holiday(
113
- 'Dia da Consciencia Negra',
114
- month=11,
115
- day=20,
116
- start_date='2004-01-01',
117
- end_date='2019-12-31'
118
- )
119
- # Christmas Eve
120
- VesperaNatal = Holiday(
121
- 'Vespera Natal',
122
- month=12,
123
- day=24,
124
- )
125
- # Christmas
126
- Natal = Holiday(
127
- 'Natal',
128
- month=12,
129
- day=25,
130
- )
131
- # New Year's Eve
132
- AnoNovo = Holiday(
133
- 'Ano Novo',
134
- month=12,
135
- day=31,
136
- )
137
- # New Year's Eve falls on Saturday
138
- AnoNovoSabado = Holiday(
139
- 'Ano Novo Sabado',
140
- month=12,
141
- day=30,
142
- days_of_week=(FRIDAY,),
143
- )
144
-
145
- ##########################
146
- # Non-recurring holidays
147
- ##########################
148
-
149
- Constitucionalista2021 = Timestamp('2021-07-09', tz='UTC')
150
- ConscienciaNegra2021 = Timestamp('2021-11-20', tz='UTC')
151
-
152
-
153
- class BMFExchangeCalendar(MarketCalendar):
154
- """
155
- Exchange calendar for BM&F BOVESPA
156
-
157
- Open Time: 10:00 AM, Brazil/Sao Paulo
158
- Close Time: 4:00 PM, Brazil/Sao Paulo
159
-
160
- Regularly-Observed Holidays:
161
- - Universal Confraternization (New year's day, Jan 1)
162
- - Sao Paulo City Anniversary (Jan 25 until 2021)
163
- - Carnaval Monday (48 days before Easter)
164
- - Carnaval Tuesday (47 days before Easter)
165
- - Passion of the Christ (Good Friday, 2 days before Easter)
166
- - Corpus Christi (60 days after Easter)
167
- - Tiradentes (April 21)
168
- - Labor day (May 1)
169
- - Constitutionalist Revolution (July 9 after 1997 until 2021, skipping 2020)
170
- - Independence Day (September 7)
171
- - Our Lady of Aparecida Feast (October 12)
172
- - All Souls' Day (November 2)
173
- - Proclamation of the Republic (November 15)
174
- - Day of Black Awareness (November 20 after 2004 until 2021, skipping 2020)
175
- - Christmas (December 24 and 25)
176
- - Day before New Year's Eve (December 30 if NYE falls on a Saturday)
177
- - New Year's Eve (December 31)
178
- """
179
- aliases = ['BMF', 'B3']
180
- regular_market_times = {
181
- "market_open": ((None, time(10,1)),),
182
- "market_close": ((None, time(16)),)
183
- }
184
-
185
- @property
186
- def name(self):
187
- return "BMF"
188
-
189
- @property
190
- def tz(self):
191
- return timezone("America/Sao_Paulo")
192
-
193
- @property
194
- def regular_holidays(self):
195
- return AbstractHolidayCalendar(rules=[
196
- ConfUniversal,
197
- AniversarioSaoPaulo,
198
- CarnavalSegunda,
199
- CarnavalTerca,
200
- SextaPaixao,
201
- CorpusChristi,
202
- Tiradentes,
203
- DiaTrabalho,
204
- Constitucionalista,
205
- Independencia,
206
- Aparecida,
207
- Finados,
208
- ProclamacaoRepublica,
209
- ConscienciaNegra,
210
- VesperaNatal,
211
- Natal,
212
- AnoNovo,
213
- AnoNovoSabado,
214
- ])
215
-
216
- @property
217
- def adhoc_holidays(self):
218
- return [
219
- Constitucionalista2021,
220
- ConscienciaNegra2021
221
- ]
222
-
223
- @property
224
- def special_opens(self):
225
- return [
226
- (time(13, 1), AbstractHolidayCalendar(rules=[QuartaCinzas]))
227
- ]
@@ -1,409 +0,0 @@
1
- """
2
- Bombay Stock Exchnage
3
- """
4
-
5
- from pandas import Timestamp
6
- from pytz import timezone
7
- from datetime import time
8
- from .market_calendar import MarketCalendar
9
-
10
-
11
- BSEClosedDay = [
12
- Timestamp('1997-01-23', tz='UTC'),
13
- Timestamp('1997-03-07', tz='UTC'),
14
- Timestamp('1997-03-24', tz='UTC'),
15
- Timestamp('1997-04-08', tz='UTC'),
16
- Timestamp('1997-04-14', tz='UTC'),
17
- Timestamp('1997-04-16', tz='UTC'),
18
- Timestamp('1997-04-18', tz='UTC'),
19
- Timestamp('1997-05-01', tz='UTC'),
20
- Timestamp('1997-05-08', tz='UTC'),
21
- Timestamp('1997-08-15', tz='UTC'),
22
- Timestamp('1997-08-18', tz='UTC'),
23
- Timestamp('1997-08-25', tz='UTC'),
24
- Timestamp('1997-10-02', tz='UTC'),
25
- Timestamp('1997-10-28', tz='UTC'),
26
- Timestamp('1997-10-29', tz='UTC'),
27
- Timestamp('1997-10-31', tz='UTC'),
28
- Timestamp('1997-12-25', tz='UTC'),
29
- Timestamp('1998-04-09', tz='UTC'),
30
- Timestamp('1998-04-14', tz='UTC'),
31
- Timestamp('1998-04-28', tz='UTC'),
32
- Timestamp('1998-12-25', tz='UTC'),
33
- Timestamp('1999-01-01', tz='UTC'),
34
- Timestamp('1999-01-20', tz='UTC'),
35
- Timestamp('1999-01-26', tz='UTC'),
36
- Timestamp('1999-03-02', tz='UTC'),
37
- Timestamp('1999-03-18', tz='UTC'),
38
- Timestamp('1999-03-25', tz='UTC'),
39
- Timestamp('1999-03-29', tz='UTC'),
40
- Timestamp('1999-04-02', tz='UTC'),
41
- Timestamp('1999-04-14', tz='UTC'),
42
- Timestamp('1999-04-27', tz='UTC'),
43
- Timestamp('1999-04-30', tz='UTC'),
44
- Timestamp('1999-09-13', tz='UTC'),
45
- Timestamp('1999-10-19', tz='UTC'),
46
- Timestamp('1999-11-08', tz='UTC'),
47
- Timestamp('1999-11-10', tz='UTC'),
48
- Timestamp('1999-11-23', tz='UTC'),
49
- Timestamp('1999-12-31', tz='UTC'),
50
- Timestamp('2000-01-26', tz='UTC'),
51
- Timestamp('2000-03-17', tz='UTC'),
52
- Timestamp('2000-03-20', tz='UTC'),
53
- Timestamp('2000-04-14', tz='UTC'),
54
- Timestamp('2000-04-21', tz='UTC'),
55
- Timestamp('2000-05-01', tz='UTC'),
56
- Timestamp('2000-08-15', tz='UTC'),
57
- Timestamp('2000-09-01', tz='UTC'),
58
- Timestamp('2000-10-02', tz='UTC'),
59
- Timestamp('2000-12-25', tz='UTC'),
60
- Timestamp('2001-01-01', tz='UTC'),
61
- Timestamp('2001-01-26', tz='UTC'),
62
- Timestamp('2001-03-06', tz='UTC'),
63
- Timestamp('2001-04-05', tz='UTC'),
64
- Timestamp('2001-04-13', tz='UTC'),
65
- Timestamp('2001-05-01', tz='UTC'),
66
- Timestamp('2001-08-15', tz='UTC'),
67
- Timestamp('2001-08-22', tz='UTC'),
68
- Timestamp('2001-10-02', tz='UTC'),
69
- Timestamp('2001-10-26', tz='UTC'),
70
- Timestamp('2001-11-16', tz='UTC'),
71
- Timestamp('2001-11-30', tz='UTC'),
72
- Timestamp('2001-12-17', tz='UTC'),
73
- Timestamp('2001-12-25', tz='UTC'),
74
- Timestamp('2002-03-25', tz='UTC'),
75
- Timestamp('2002-03-29', tz='UTC'),
76
- Timestamp('2002-05-01', tz='UTC'),
77
- Timestamp('2002-08-15', tz='UTC'),
78
- Timestamp('2002-09-10', tz='UTC'),
79
- Timestamp('2002-10-02', tz='UTC'),
80
- Timestamp('2002-10-15', tz='UTC'),
81
- Timestamp('2002-11-06', tz='UTC'),
82
- Timestamp('2002-11-19', tz='UTC'),
83
- Timestamp('2002-12-25', tz='UTC'),
84
- Timestamp('2003-02-13', tz='UTC'),
85
- Timestamp('2003-03-14', tz='UTC'),
86
- Timestamp('2003-03-18', tz='UTC'),
87
- Timestamp('2003-04-14', tz='UTC'),
88
- Timestamp('2003-04-18', tz='UTC'),
89
- Timestamp('2003-05-01', tz='UTC'),
90
- Timestamp('2003-08-15', tz='UTC'),
91
- Timestamp('2003-10-02', tz='UTC'),
92
- Timestamp('2003-11-26', tz='UTC'),
93
- Timestamp('2003-12-25', tz='UTC'),
94
- Timestamp('2004-01-01', tz='UTC'),
95
- Timestamp('2004-01-26', tz='UTC'),
96
- Timestamp('2004-02-02', tz='UTC'),
97
- Timestamp('2004-03-02', tz='UTC'),
98
- Timestamp('2004-04-09', tz='UTC'),
99
- Timestamp('2004-04-14', tz='UTC'),
100
- Timestamp('2004-04-26', tz='UTC'),
101
- Timestamp('2004-10-13', tz='UTC'),
102
- Timestamp('2004-10-22', tz='UTC'),
103
- Timestamp('2004-11-15', tz='UTC'),
104
- Timestamp('2004-11-26', tz='UTC'),
105
- Timestamp('2005-01-21', tz='UTC'),
106
- Timestamp('2005-01-26', tz='UTC'),
107
- Timestamp('2005-03-25', tz='UTC'),
108
- Timestamp('2005-04-14', tz='UTC'),
109
- Timestamp('2005-07-28', tz='UTC'),
110
- Timestamp('2005-08-15', tz='UTC'),
111
- Timestamp('2005-09-07', tz='UTC'),
112
- Timestamp('2005-10-12', tz='UTC'),
113
- Timestamp('2005-11-03', tz='UTC'),
114
- Timestamp('2005-11-04', tz='UTC'),
115
- Timestamp('2005-11-15', tz='UTC'),
116
- Timestamp('2006-01-11', tz='UTC'),
117
- Timestamp('2006-01-26', tz='UTC'),
118
- Timestamp('2006-02-09', tz='UTC'),
119
- Timestamp('2006-03-15', tz='UTC'),
120
- Timestamp('2006-04-06', tz='UTC'),
121
- Timestamp('2006-04-11', tz='UTC'),
122
- Timestamp('2006-04-14', tz='UTC'),
123
- Timestamp('2006-05-01', tz='UTC'),
124
- Timestamp('2006-08-15', tz='UTC'),
125
- Timestamp('2006-10-02', tz='UTC'),
126
- Timestamp('2006-10-24', tz='UTC'),
127
- Timestamp('2006-10-25', tz='UTC'),
128
- Timestamp('2006-12-25', tz='UTC'),
129
- Timestamp('2007-01-01', tz='UTC'),
130
- Timestamp('2007-01-26', tz='UTC'),
131
- Timestamp('2007-01-30', tz='UTC'),
132
- Timestamp('2007-02-16', tz='UTC'),
133
- Timestamp('2007-03-27', tz='UTC'),
134
- Timestamp('2007-04-06', tz='UTC'),
135
- Timestamp('2007-05-01', tz='UTC'),
136
- Timestamp('2007-05-02', tz='UTC'),
137
- Timestamp('2007-08-15', tz='UTC'),
138
- Timestamp('2007-10-02', tz='UTC'),
139
- Timestamp('2007-12-21', tz='UTC'),
140
- Timestamp('2007-12-25', tz='UTC'),
141
- Timestamp('2008-03-06', tz='UTC'),
142
- Timestamp('2008-03-20', tz='UTC'),
143
- Timestamp('2008-03-21', tz='UTC'),
144
- Timestamp('2008-04-14', tz='UTC'),
145
- Timestamp('2008-04-18', tz='UTC'),
146
- Timestamp('2008-05-01', tz='UTC'),
147
- Timestamp('2008-05-19', tz='UTC'),
148
- Timestamp('2008-08-15', tz='UTC'),
149
- Timestamp('2008-09-03', tz='UTC'),
150
- Timestamp('2008-10-02', tz='UTC'),
151
- Timestamp('2008-10-09', tz='UTC'),
152
- Timestamp('2008-10-30', tz='UTC'),
153
- Timestamp('2008-11-13', tz='UTC'),
154
- Timestamp('2008-11-27', tz='UTC'),
155
- Timestamp('2008-12-09', tz='UTC'),
156
- Timestamp('2008-12-25', tz='UTC'),
157
- Timestamp('2009-01-08', tz='UTC'),
158
- Timestamp('2009-01-26', tz='UTC'),
159
- Timestamp('2009-02-23', tz='UTC'),
160
- Timestamp('2009-03-10', tz='UTC'),
161
- Timestamp('2009-03-11', tz='UTC'),
162
- Timestamp('2009-04-03', tz='UTC'),
163
- Timestamp('2009-04-07', tz='UTC'),
164
- Timestamp('2009-04-10', tz='UTC'),
165
- Timestamp('2009-04-14', tz='UTC'),
166
- Timestamp('2009-04-30', tz='UTC'),
167
- Timestamp('2009-05-01', tz='UTC'),
168
- Timestamp('2009-09-21', tz='UTC'),
169
- Timestamp('2009-09-28', tz='UTC'),
170
- Timestamp('2009-10-02', tz='UTC'),
171
- Timestamp('2009-10-13', tz='UTC'),
172
- Timestamp('2009-10-19', tz='UTC'),
173
- Timestamp('2009-11-02', tz='UTC'),
174
- Timestamp('2009-12-25', tz='UTC'),
175
- Timestamp('2009-12-28', tz='UTC'),
176
- Timestamp('2010-01-01', tz='UTC'),
177
- Timestamp('2010-01-26', tz='UTC'),
178
- Timestamp('2010-02-12', tz='UTC'),
179
- Timestamp('2010-03-01', tz='UTC'),
180
- Timestamp('2010-03-24', tz='UTC'),
181
- Timestamp('2010-04-02', tz='UTC'),
182
- Timestamp('2010-04-14', tz='UTC'),
183
- Timestamp('2010-09-10', tz='UTC'),
184
- Timestamp('2010-11-17', tz='UTC'),
185
- Timestamp('2010-12-17', tz='UTC'),
186
- Timestamp('2011-01-26', tz='UTC'),
187
- Timestamp('2011-03-02', tz='UTC'),
188
- Timestamp('2011-04-12', tz='UTC'),
189
- Timestamp('2011-04-14', tz='UTC'),
190
- Timestamp('2011-04-22', tz='UTC'),
191
- Timestamp('2011-08-15', tz='UTC'),
192
- Timestamp('2011-08-31', tz='UTC'),
193
- Timestamp('2011-09-01', tz='UTC'),
194
- Timestamp('2011-10-06', tz='UTC'),
195
- Timestamp('2011-10-27', tz='UTC'),
196
- Timestamp('2011-11-07', tz='UTC'),
197
- Timestamp('2011-11-10', tz='UTC'),
198
- Timestamp('2011-12-06', tz='UTC'),
199
- Timestamp('2012-01-26', tz='UTC'),
200
- Timestamp('2012-02-20', tz='UTC'),
201
- Timestamp('2012-03-08', tz='UTC'),
202
- Timestamp('2012-04-05', tz='UTC'),
203
- Timestamp('2012-04-06', tz='UTC'),
204
- Timestamp('2012-05-01', tz='UTC'),
205
- Timestamp('2012-08-15', tz='UTC'),
206
- Timestamp('2012-08-20', tz='UTC'),
207
- Timestamp('2012-09-19', tz='UTC'),
208
- Timestamp('2012-10-02', tz='UTC'),
209
- Timestamp('2012-10-24', tz='UTC'),
210
- Timestamp('2012-11-14', tz='UTC'),
211
- Timestamp('2012-11-28', tz='UTC'),
212
- Timestamp('2012-12-25', tz='UTC'),
213
- Timestamp('2013-03-27', tz='UTC'),
214
- Timestamp('2013-03-29', tz='UTC'),
215
- Timestamp('2013-04-19', tz='UTC'),
216
- Timestamp('2013-04-24', tz='UTC'),
217
- Timestamp('2013-05-01', tz='UTC'),
218
- Timestamp('2013-08-09', tz='UTC'),
219
- Timestamp('2013-08-15', tz='UTC'),
220
- Timestamp('2013-09-09', tz='UTC'),
221
- Timestamp('2013-10-02', tz='UTC'),
222
- Timestamp('2013-10-16', tz='UTC'),
223
- Timestamp('2013-11-04', tz='UTC'),
224
- Timestamp('2013-11-15', tz='UTC'),
225
- Timestamp('2013-12-25', tz='UTC'),
226
- Timestamp('2014-02-27', tz='UTC'),
227
- Timestamp('2014-03-17', tz='UTC'),
228
- Timestamp('2014-04-08', tz='UTC'),
229
- Timestamp('2014-04-14', tz='UTC'),
230
- Timestamp('2014-04-18', tz='UTC'),
231
- Timestamp('2014-04-24', tz='UTC'),
232
- Timestamp('2014-05-01', tz='UTC'),
233
- Timestamp('2014-07-29', tz='UTC'),
234
- Timestamp('2014-08-15', tz='UTC'),
235
- Timestamp('2014-08-29', tz='UTC'),
236
- Timestamp('2014-10-02', tz='UTC'),
237
- Timestamp('2014-10-03', tz='UTC'),
238
- Timestamp('2014-10-06', tz='UTC'),
239
- Timestamp('2014-10-15', tz='UTC'),
240
- Timestamp('2014-10-24', tz='UTC'),
241
- Timestamp('2014-11-04', tz='UTC'),
242
- Timestamp('2014-11-06', tz='UTC'),
243
- Timestamp('2014-12-25', tz='UTC'),
244
- Timestamp('2015-01-26', tz='UTC'),
245
- Timestamp('2015-02-17', tz='UTC'),
246
- Timestamp('2015-03-06', tz='UTC'),
247
- Timestamp('2015-04-02', tz='UTC'),
248
- Timestamp('2015-04-03', tz='UTC'),
249
- Timestamp('2015-04-14', tz='UTC'),
250
- Timestamp('2015-05-01', tz='UTC'),
251
- Timestamp('2015-09-17', tz='UTC'),
252
- Timestamp('2015-09-25', tz='UTC'),
253
- Timestamp('2015-10-02', tz='UTC'),
254
- Timestamp('2015-10-22', tz='UTC'),
255
- Timestamp('2015-11-12', tz='UTC'),
256
- Timestamp('2015-11-25', tz='UTC'),
257
- Timestamp('2015-12-25', tz='UTC'),
258
- Timestamp('2016-01-26', tz='UTC'),
259
- Timestamp('2016-03-07', tz='UTC'),
260
- Timestamp('2016-03-24', tz='UTC'),
261
- Timestamp('2016-03-25', tz='UTC'),
262
- Timestamp('2016-04-14', tz='UTC'),
263
- Timestamp('2016-04-15', tz='UTC'),
264
- Timestamp('2016-04-19', tz='UTC'),
265
- Timestamp('2016-07-06', tz='UTC'),
266
- Timestamp('2016-08-15', tz='UTC'),
267
- Timestamp('2016-09-05', tz='UTC'),
268
- Timestamp('2016-09-13', tz='UTC'),
269
- Timestamp('2016-10-11', tz='UTC'),
270
- Timestamp('2016-10-12', tz='UTC'),
271
- Timestamp('2016-10-31', tz='UTC'),
272
- Timestamp('2016-11-14', tz='UTC'),
273
- Timestamp('2017-01-26', tz='UTC'),
274
- Timestamp('2017-02-24', tz='UTC'),
275
- Timestamp('2017-03-13', tz='UTC'),
276
- Timestamp('2017-04-04', tz='UTC'),
277
- Timestamp('2017-04-14', tz='UTC'),
278
- Timestamp('2017-05-01', tz='UTC'),
279
- Timestamp('2017-06-26', tz='UTC'),
280
- Timestamp('2017-08-15', tz='UTC'),
281
- Timestamp('2017-08-25', tz='UTC'),
282
- Timestamp('2017-10-02', tz='UTC'),
283
- Timestamp('2017-10-20', tz='UTC'),
284
- Timestamp('2017-12-25', tz='UTC'),
285
- Timestamp('2018-01-26', tz='UTC'),
286
- Timestamp('2018-02-13', tz='UTC'),
287
- Timestamp('2018-03-02', tz='UTC'),
288
- Timestamp('2018-03-29', tz='UTC'),
289
- Timestamp('2018-03-30', tz='UTC'),
290
- Timestamp('2018-05-01', tz='UTC'),
291
- Timestamp('2018-08-15', tz='UTC'),
292
- Timestamp('2018-08-22', tz='UTC'),
293
- Timestamp('2018-09-13', tz='UTC'),
294
- Timestamp('2018-09-20', tz='UTC'),
295
- Timestamp('2018-10-02', tz='UTC'),
296
- Timestamp('2018-10-18', tz='UTC'),
297
- Timestamp('2018-11-08', tz='UTC'),
298
- Timestamp('2018-11-23', tz='UTC'),
299
- Timestamp('2018-12-25', tz='UTC'),
300
- Timestamp('2019-01-26', tz='UTC'),
301
- Timestamp('2019-03-02', tz='UTC'),
302
- Timestamp('2019-03-04', tz='UTC'),
303
- Timestamp('2019-03-21', tz='UTC'),
304
- Timestamp('2019-04-17', tz='UTC'),
305
- Timestamp('2019-04-19', tz='UTC'),
306
- Timestamp('2019-04-29', tz='UTC'),
307
- Timestamp('2019-05-01', tz='UTC'),
308
- Timestamp('2019-06-05', tz='UTC'),
309
- Timestamp('2019-08-12', tz='UTC'),
310
- Timestamp('2019-08-15', tz='UTC'),
311
- Timestamp('2019-09-02', tz='UTC'),
312
- Timestamp('2019-09-10', tz='UTC'),
313
- Timestamp('2019-10-02', tz='UTC'),
314
- Timestamp('2019-10-08', tz='UTC'),
315
- Timestamp('2019-10-21', tz='UTC'),
316
- Timestamp('2019-10-28', tz='UTC'),
317
- Timestamp('2019-11-12', tz='UTC'),
318
- Timestamp('2019-12-25', tz='UTC'),
319
- Timestamp('2020-02-21', tz='UTC'),
320
- Timestamp('2020-03-10', tz='UTC'),
321
- Timestamp('2020-04-02', tz='UTC'),
322
- Timestamp('2020-04-06', tz='UTC'),
323
- Timestamp('2020-04-10', tz='UTC'),
324
- Timestamp('2020-04-14', tz='UTC'),
325
- Timestamp('2020-05-01', tz='UTC'),
326
- Timestamp('2020-07-31', tz='UTC'),
327
- Timestamp('2020-10-02', tz='UTC'),
328
- Timestamp('2020-11-16', tz='UTC'),
329
- Timestamp('2020-11-30', tz='UTC'),
330
- Timestamp('2020-12-25', tz='UTC'),
331
- Timestamp('2021-01-26', tz='UTC'), # Republic Day
332
- Timestamp('2021-03-11', tz='UTC'), # Maha Shivaratri
333
- Timestamp('2021-03-29', tz='UTC'), # Holi
334
- Timestamp('2021-04-02', tz='UTC'), # Good Friday
335
- Timestamp('2021-04-14', tz='UTC'), # Dr.Baba Saheb Ambedkar Jayanti
336
- Timestamp('2021-04-21', tz='UTC'), # Ram Navami
337
- Timestamp('2021-05-13', tz='UTC'), # Id-ul-Fitr
338
- Timestamp('2021-07-21', tz='UTC'), # Id-al-Adha
339
- Timestamp('2021-08-19', tz='UTC'), # Ashura
340
- Timestamp('2021-09-10', tz='UTC'), # Ganesh Chaturthi
341
- Timestamp('2021-10-15', tz='UTC'), # Vijaya Dashami
342
- Timestamp('2021-11-04', tz='UTC'), # Diwali/Laxmi Puja. muhurat trading day
343
- Timestamp('2021-11-05', tz='UTC'), # Diwali/Laxmi Puja
344
- Timestamp('2021-11-19', tz='UTC'), # Guru Nanak Jayanti
345
- Timestamp('2022-01-26', tz='UTC'), # Republic Day
346
- Timestamp('2022-03-01', tz='UTC'), # Maha Shivaratri
347
- Timestamp('2022-03-18', tz='UTC'), # Holi
348
- Timestamp('2022-04-14', tz='UTC'), # Dr.Baba Saheb Ambedkar Jayanti
349
- Timestamp('2022-04-15', tz='UTC'), # Good Friday
350
- Timestamp('2022-05-03', tz='UTC'), # Id-ul-Fitr
351
- Timestamp('2022-08-09', tz='UTC'), # Moharram
352
- Timestamp('2022-08-15', tz='UTC'), # Independence Day
353
- Timestamp('2022-08-31', tz='UTC'), # Ganesh Chaturthi
354
- Timestamp('2022-10-05', tz='UTC'), # Vijaya Dashami
355
- Timestamp('2022-10-24', tz='UTC'), # Diwali/Laxmi Puja. muhurat trading day
356
- Timestamp('2022-10-26', tz='UTC'), # Diwali-Balipratipada
357
- Timestamp('2022-11-08', tz='UTC'), # Guru Nanak Jayanti
358
- Timestamp('2023-01-26', tz='UTC'), # Thu, Republic Day
359
- Timestamp('2023-03-08', tz='UTC'), # Wed, Holi
360
- Timestamp('2023-03-18', tz='UTC'), # Sat, Maha Shivaratri
361
- Timestamp('2023-03-30', tz='UTC'), # Thu, Ramanavami
362
- Timestamp('2023-04-04', tz='UTC'), # Tue, Mahavir Jayanthi
363
- Timestamp('2023-04-07', tz='UTC'), # Fri, Good Friday
364
- Timestamp('2023-04-14', tz='UTC'), # Fri, Ambedkar Jayanti
365
- Timestamp('2023-04-22', tz='UTC'), # Sat, EID AL FITR
366
- Timestamp('2023-05-01', tz='UTC'), # Mon, Maharashtra Din
367
- Timestamp('2023-06-28', tz='UTC'), # Wed, Bakri Id / Eid ul-Adha
368
- Timestamp('2023-08-15', tz='UTC'), # Tue, Independence Day
369
- Timestamp('2023-08-29', tz='UTC'), # Tue, Muharram
370
- Timestamp('2023-09-19', tz='UTC'), # Tue, Ganesh Chaturthi
371
- Timestamp('2023-10-02', tz='UTC'), # Mon, Gandhi Jayanti
372
- Timestamp('2023-10-24', tz='UTC'), # Tue, Dussehra
373
- Timestamp('2023-11-12', tz='UTC'), # Sun, Diwali
374
- Timestamp('2023-11-14', tz='UTC'), # Tue, Diwali
375
- Timestamp('2023-11-27', tz='UTC'), # Mon, Guru Nanak's Birthday
376
- Timestamp('2023-12-25', tz='UTC'), # Mon, Christmas
377
-
378
-
379
-
380
- ]
381
-
382
-
383
- class BSEExchangeCalendar(MarketCalendar):
384
- """
385
- Exchange calendar for the Bombay Stock Exchange (BSE, XBOM).
386
- Open Time: 9:15 AM, Asia/Calcutta
387
- Close Time: 3:30 PM, Asia/Calcutta
388
-
389
- Due to the complexity around the BSE holidays, we are hardcoding a list
390
- of holidays back to 1997, and forward through 2020. There are no known
391
- early closes or late opens.
392
- """
393
- aliases = ['BSE', 'NSE']
394
- regular_market_times = {
395
- "market_open": ((None, time(9, 15)),),
396
- "market_close": ((None, time(15, 30)),)
397
- }
398
-
399
- @property
400
- def name(self):
401
- return "BSE"
402
-
403
- @property
404
- def tz(self):
405
- return timezone('Asia/Calcutta')
406
-
407
- @property
408
- def adhoc_holidays(self):
409
- return BSEClosedDay