pandas-market-calendars 4.3.1__tar.gz → 4.3.3__tar.gz
Sign up to get free protection for your applications and to get access to all the features.
- {pandas_market_calendars-4.3.1 → pandas_market_calendars-4.3.3}/PKG-INFO +9 -2
- {pandas_market_calendars-4.3.1 → pandas_market_calendars-4.3.3}/pandas_market_calendars/__init__.py +38 -37
- {pandas_market_calendars-4.3.1 → pandas_market_calendars-4.3.3}/pandas_market_calendars/calendar_registry.py +53 -48
- {pandas_market_calendars-4.3.1 → pandas_market_calendars-4.3.3}/pandas_market_calendars/calendar_utils.py +261 -225
- pandas_market_calendars-4.3.3/pandas_market_calendars/calendars/asx.py +66 -0
- {pandas_market_calendars-4.3.1 → pandas_market_calendars-4.3.3}/pandas_market_calendars/calendars/bmf.py +206 -227
- pandas_market_calendars-4.3.3/pandas_market_calendars/calendars/bse.py +407 -0
- pandas_market_calendars-4.3.3/pandas_market_calendars/calendars/cboe.py +145 -0
- pandas_market_calendars-4.3.3/pandas_market_calendars/calendars/cme.py +402 -0
- {pandas_market_calendars-4.3.1 → pandas_market_calendars-4.3.3}/pandas_market_calendars/calendars/cme_globex_agriculture.py +126 -103
- {pandas_market_calendars-4.3.1 → pandas_market_calendars-4.3.3}/pandas_market_calendars/calendars/cme_globex_base.py +119 -103
- {pandas_market_calendars-4.3.1 → pandas_market_calendars-4.3.3}/pandas_market_calendars/calendars/cme_globex_crypto.py +160 -147
- pandas_market_calendars-4.3.3/pandas_market_calendars/calendars/cme_globex_energy_and_metals.py +216 -0
- pandas_market_calendars-4.3.3/pandas_market_calendars/calendars/cme_globex_equities.py +123 -0
- pandas_market_calendars-4.3.3/pandas_market_calendars/calendars/cme_globex_fixed_income.py +136 -0
- {pandas_market_calendars-4.3.1 → pandas_market_calendars-4.3.3}/pandas_market_calendars/calendars/cme_globex_fx.py +101 -78
- {pandas_market_calendars-4.3.1 → pandas_market_calendars-4.3.3}/pandas_market_calendars/calendars/eurex.py +139 -119
- pandas_market_calendars-4.3.3/pandas_market_calendars/calendars/eurex_fixed_income.py +98 -0
- pandas_market_calendars-4.3.3/pandas_market_calendars/calendars/hkex.py +426 -0
- pandas_market_calendars-4.3.3/pandas_market_calendars/calendars/ice.py +81 -0
- {pandas_market_calendars-4.3.1 → pandas_market_calendars-4.3.3}/pandas_market_calendars/calendars/iex.py +112 -98
- pandas_market_calendars-4.3.3/pandas_market_calendars/calendars/jpx.py +109 -0
- {pandas_market_calendars-4.3.1 → pandas_market_calendars-4.3.3}/pandas_market_calendars/calendars/lse.py +114 -91
- {pandas_market_calendars-4.3.1 → pandas_market_calendars-4.3.3}/pandas_market_calendars/calendars/mirror.py +130 -114
- {pandas_market_calendars-4.3.1 → pandas_market_calendars-4.3.3}/pandas_market_calendars/calendars/nyse.py +1324 -1127
- pandas_market_calendars-4.3.3/pandas_market_calendars/calendars/ose.py +116 -0
- pandas_market_calendars-4.3.3/pandas_market_calendars/calendars/sifma.py +350 -0
- {pandas_market_calendars-4.3.1 → pandas_market_calendars-4.3.3}/pandas_market_calendars/calendars/six.py +132 -114
- pandas_market_calendars-4.3.3/pandas_market_calendars/calendars/sse.py +311 -0
- pandas_market_calendars-4.3.3/pandas_market_calendars/calendars/tase.py +197 -0
- {pandas_market_calendars-4.3.1 → pandas_market_calendars-4.3.3}/pandas_market_calendars/calendars/tsx.py +181 -159
- {pandas_market_calendars-4.3.1 → pandas_market_calendars-4.3.3}/pandas_market_calendars/class_registry.py +22 -16
- pandas_market_calendars-4.3.3/pandas_market_calendars/holidays/cme.py +385 -0
- pandas_market_calendars-4.3.3/pandas_market_calendars/holidays/cme_globex.py +214 -0
- pandas_market_calendars-4.3.3/pandas_market_calendars/holidays/cn.py +1455 -0
- {pandas_market_calendars-4.3.1 → pandas_market_calendars-4.3.3}/pandas_market_calendars/holidays/jp.py +398 -396
- pandas_market_calendars-4.3.3/pandas_market_calendars/holidays/jpx_equinox.py +505 -0
- pandas_market_calendars-4.3.3/pandas_market_calendars/holidays/nyse.py +1531 -0
- {pandas_market_calendars-4.3.1 → pandas_market_calendars-4.3.3}/pandas_market_calendars/holidays/oz.py +63 -65
- {pandas_market_calendars-4.3.1 → pandas_market_calendars-4.3.3}/pandas_market_calendars/holidays/sifma.py +338 -321
- {pandas_market_calendars-4.3.1 → pandas_market_calendars-4.3.3}/pandas_market_calendars/holidays/uk.py +32 -26
- {pandas_market_calendars-4.3.1 → pandas_market_calendars-4.3.3}/pandas_market_calendars/holidays/us.py +376 -360
- {pandas_market_calendars-4.3.1 → pandas_market_calendars-4.3.3}/pandas_market_calendars/market_calendar.py +895 -789
- {pandas_market_calendars-4.3.1 → pandas_market_calendars-4.3.3}/pandas_market_calendars.egg-info/PKG-INFO +10 -3
- {pandas_market_calendars-4.3.1 → pandas_market_calendars-4.3.3}/pandas_market_calendars.egg-info/SOURCES.txt +2 -0
- pandas_market_calendars-4.3.3/pandas_market_calendars.egg-info/requires.txt +9 -0
- {pandas_market_calendars-4.3.1 → pandas_market_calendars-4.3.3}/pyproject.toml +65 -68
- {pandas_market_calendars-4.3.1 → pandas_market_calendars-4.3.3}/tests/test_XNYS_calendar.py +264 -264
- {pandas_market_calendars-4.3.1 → pandas_market_calendars-4.3.3}/tests/test_asx_calendar.py +67 -65
- {pandas_market_calendars-4.3.1 → pandas_market_calendars-4.3.3}/tests/test_bmf_calendar.py +39 -31
- {pandas_market_calendars-4.3.1 → pandas_market_calendars-4.3.3}/tests/test_bse_calendar.py +43 -40
- {pandas_market_calendars-4.3.1 → pandas_market_calendars-4.3.3}/tests/test_cboe_calendars.py +29 -18
- {pandas_market_calendars-4.3.1 → pandas_market_calendars-4.3.3}/tests/test_class_registry.py +198 -162
- {pandas_market_calendars-4.3.1 → pandas_market_calendars-4.3.3}/tests/test_cme_agriculture_calendar.py +53 -49
- pandas_market_calendars-4.3.3/tests/test_cme_bond_calendar.py +65 -0
- pandas_market_calendars-4.3.3/tests/test_cme_equity_calendar.py +67 -0
- {pandas_market_calendars-4.3.1 → pandas_market_calendars-4.3.3}/tests/test_eurex_calendar.py +36 -36
- pandas_market_calendars-4.3.3/tests/test_eurex_fixed_income_calendar.py +143 -0
- {pandas_market_calendars-4.3.1 → pandas_market_calendars-4.3.3}/tests/test_exchange_calendar_cme_globex_crypto.py +288 -286
- pandas_market_calendars-4.3.3/tests/test_exchange_calendar_cme_globex_energy_and_metals.py +162 -0
- pandas_market_calendars-4.3.3/tests/test_exchange_calendar_cme_globex_equities.py +626 -0
- pandas_market_calendars-4.3.3/tests/test_exchange_calendar_cme_globex_fixed_income.py +584 -0
- pandas_market_calendars-4.3.3/tests/test_exchange_calendar_cme_globex_fx.py +169 -0
- pandas_market_calendars-4.3.3/tests/test_hkex_calendar.py +63 -0
- {pandas_market_calendars-4.3.1 → pandas_market_calendars-4.3.3}/tests/test_ice_calendar.py +15 -9
- {pandas_market_calendars-4.3.1 → pandas_market_calendars-4.3.3}/tests/test_iex_calendar.py +40 -35
- pandas_market_calendars-4.3.3/tests/test_jpx_calendar.py +269 -0
- {pandas_market_calendars-4.3.1 → pandas_market_calendars-4.3.3}/tests/test_lse_calendar.py +160 -120
- pandas_market_calendars-4.3.3/tests/test_market_calendar.py +1654 -0
- {pandas_market_calendars-4.3.1 → pandas_market_calendars-4.3.3}/tests/test_nyse_calendar.py +454 -394
- pandas_market_calendars-4.3.3/tests/test_nyse_calendar_early_years.py +4019 -0
- {pandas_market_calendars-4.3.1 → pandas_market_calendars-4.3.3}/tests/test_ose_calendar.py +155 -165
- pandas_market_calendars-4.3.3/tests/test_sifma_calendars.py +468 -0
- {pandas_market_calendars-4.3.1 → pandas_market_calendars-4.3.3}/tests/test_six_calendar.py +79 -67
- {pandas_market_calendars-4.3.1 → pandas_market_calendars-4.3.3}/tests/test_sse_calendar.py +54 -45
- pandas_market_calendars-4.3.3/tests/test_tsx_calendar.py +33 -0
- pandas_market_calendars-4.3.3/tests/test_utils.py +665 -0
- pandas_market_calendars-4.3.1/pandas_market_calendars/calendars/asx.py +0 -63
- pandas_market_calendars-4.3.1/pandas_market_calendars/calendars/bse.py +0 -409
- pandas_market_calendars-4.3.1/pandas_market_calendars/calendars/cboe.py +0 -115
- pandas_market_calendars-4.3.1/pandas_market_calendars/calendars/cme.py +0 -240
- pandas_market_calendars-4.3.1/pandas_market_calendars/calendars/cme_globex_energy_and_metals.py +0 -138
- pandas_market_calendars-4.3.1/pandas_market_calendars/calendars/cme_globex_equities.py +0 -104
- pandas_market_calendars-4.3.1/pandas_market_calendars/calendars/cme_globex_fixed_income.py +0 -113
- pandas_market_calendars-4.3.1/pandas_market_calendars/calendars/hkex.py +0 -408
- pandas_market_calendars-4.3.1/pandas_market_calendars/calendars/ice.py +0 -65
- pandas_market_calendars-4.3.1/pandas_market_calendars/calendars/jpx.py +0 -103
- pandas_market_calendars-4.3.1/pandas_market_calendars/calendars/ose.py +0 -150
- pandas_market_calendars-4.3.1/pandas_market_calendars/calendars/sifma.py +0 -297
- pandas_market_calendars-4.3.1/pandas_market_calendars/calendars/sse.py +0 -290
- pandas_market_calendars-4.3.1/pandas_market_calendars/calendars/tase.py +0 -195
- pandas_market_calendars-4.3.1/pandas_market_calendars/holidays/cme.py +0 -340
- pandas_market_calendars-4.3.1/pandas_market_calendars/holidays/cme_globex.py +0 -198
- pandas_market_calendars-4.3.1/pandas_market_calendars/holidays/cn.py +0 -1436
- pandas_market_calendars-4.3.1/pandas_market_calendars/holidays/jpx_equinox.py +0 -147
- pandas_market_calendars-4.3.1/pandas_market_calendars/holidays/nyse.py +0 -1472
- pandas_market_calendars-4.3.1/pandas_market_calendars.egg-info/requires.txt +0 -7
- pandas_market_calendars-4.3.1/tests/test_cme_bond_calendar.py +0 -59
- pandas_market_calendars-4.3.1/tests/test_cme_equity_calendar.py +0 -54
- pandas_market_calendars-4.3.1/tests/test_exchange_calendar_cme_globex_energy_and_metals.py +0 -146
- pandas_market_calendars-4.3.1/tests/test_exchange_calendar_cme_globex_equities.py +0 -367
- pandas_market_calendars-4.3.1/tests/test_exchange_calendar_cme_globex_fixed_income.py +0 -445
- pandas_market_calendars-4.3.1/tests/test_exchange_calendar_cme_globex_fx.py +0 -108
- pandas_market_calendars-4.3.1/tests/test_hkex_calendar.py +0 -43
- pandas_market_calendars-4.3.1/tests/test_jpx_calendar.py +0 -251
- pandas_market_calendars-4.3.1/tests/test_market_calendar.py +0 -1213
- pandas_market_calendars-4.3.1/tests/test_nyse_calendar_early_years.py +0 -3806
- pandas_market_calendars-4.3.1/tests/test_sifma_calendars.py +0 -398
- pandas_market_calendars-4.3.1/tests/test_tsx_calendar.py +0 -31
- pandas_market_calendars-4.3.1/tests/test_utils.py +0 -451
- {pandas_market_calendars-4.3.1 → pandas_market_calendars-4.3.3}/LICENSE +0 -0
- {pandas_market_calendars-4.3.1 → pandas_market_calendars-4.3.3}/NOTICE +0 -0
- {pandas_market_calendars-4.3.1 → pandas_market_calendars-4.3.3}/README.rst +0 -0
- {pandas_market_calendars-4.3.1 → pandas_market_calendars-4.3.3}/pandas_market_calendars/calendars/__init__.py +0 -0
- {pandas_market_calendars-4.3.1 → pandas_market_calendars-4.3.3}/pandas_market_calendars/holidays/__init__.py +0 -0
- {pandas_market_calendars-4.3.1 → pandas_market_calendars-4.3.3}/pandas_market_calendars.egg-info/dependency_links.txt +0 -0
- {pandas_market_calendars-4.3.1 → pandas_market_calendars-4.3.3}/pandas_market_calendars.egg-info/top_level.txt +0 -0
- {pandas_market_calendars-4.3.1 → pandas_market_calendars-4.3.3}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: pandas_market_calendars
|
3
|
-
Version: 4.3.
|
3
|
+
Version: 4.3.3
|
4
4
|
Summary: Market and exchange trading calendars for pandas
|
5
5
|
Author-email: Ryan Sheftel <rsheftel@alumni.upenn.edu>
|
6
6
|
License: MIT
|
@@ -20,9 +20,16 @@ Classifier: Programming Language :: Python :: 3.10
|
|
20
20
|
Classifier: Programming Language :: Python :: 3.11
|
21
21
|
Requires-Python: >=3.8
|
22
22
|
Description-Content-Type: text/x-rst
|
23
|
-
Provides-Extra: test
|
24
23
|
License-File: LICENSE
|
25
24
|
License-File: NOTICE
|
25
|
+
Requires-Dist: pandas<2.0,>=1.1
|
26
|
+
Requires-Dist: pytz
|
27
|
+
Requires-Dist: python-dateutil
|
28
|
+
Requires-Dist: exchange-calendars>=3.3
|
29
|
+
Provides-Extra: dev
|
30
|
+
Requires-Dist: pytest; extra == "dev"
|
31
|
+
Requires-Dist: black==23.7.0; extra == "dev"
|
32
|
+
Requires-Dist: pre-commit; extra == "dev"
|
26
33
|
|
27
34
|
pandas_market_calendars
|
28
35
|
=======================
|
{pandas_market_calendars-4.3.1 → pandas_market_calendars-4.3.3}/pandas_market_calendars/__init__.py
RENAMED
@@ -1,37 +1,38 @@
|
|
1
|
-
# Fork of Zipline by Quantopian released under MIT license. Original Zipline license below.
|
2
|
-
#
|
3
|
-
# Copyright 2016 Quantopian, Inc.
|
4
|
-
#
|
5
|
-
# Licensed under the Apache License, Version 2.0 (the "License");
|
6
|
-
# you may not use this file except in compliance with the License.
|
7
|
-
# You may obtain a copy of the License at
|
8
|
-
#
|
9
|
-
# http://www.apache.org/licenses/LICENSE-2.0
|
10
|
-
#
|
11
|
-
# Unless required by applicable law or agreed to in writing, software
|
12
|
-
# distributed under the License is distributed on an "AS IS" BASIS,
|
13
|
-
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
14
|
-
# See the License for the specific language governing permissions and
|
15
|
-
# limitations under the License.
|
16
|
-
|
17
|
-
from importlib import metadata
|
18
|
-
|
19
|
-
from .calendar_registry import get_calendar, get_calendar_names
|
20
|
-
from .calendar_utils import convert_freq, date_range, merge_schedules
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
1
|
+
# Fork of Zipline by Quantopian released under MIT license. Original Zipline license below.
|
2
|
+
#
|
3
|
+
# Copyright 2016 Quantopian, Inc.
|
4
|
+
#
|
5
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
6
|
+
# you may not use this file except in compliance with the License.
|
7
|
+
# You may obtain a copy of the License at
|
8
|
+
#
|
9
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
10
|
+
#
|
11
|
+
# Unless required by applicable law or agreed to in writing, software
|
12
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
13
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
14
|
+
# See the License for the specific language governing permissions and
|
15
|
+
# limitations under the License.
|
16
|
+
|
17
|
+
from importlib import metadata
|
18
|
+
|
19
|
+
from .calendar_registry import get_calendar, get_calendar_names
|
20
|
+
from .calendar_utils import convert_freq, date_range, merge_schedules
|
21
|
+
|
22
|
+
# TODO: is the below needed? Can I replace all the imports on the calendars with ".market_calendar"
|
23
|
+
from .market_calendar import MarketCalendar
|
24
|
+
|
25
|
+
# if running in development there may not be a package
|
26
|
+
try:
|
27
|
+
__version__ = metadata.version("pandas_market_calendars")
|
28
|
+
except metadata.PackageNotFoundError:
|
29
|
+
__version__ = "development"
|
30
|
+
|
31
|
+
__all__ = [
|
32
|
+
"MarketCalendar",
|
33
|
+
"get_calendar",
|
34
|
+
"get_calendar_names",
|
35
|
+
"merge_schedules",
|
36
|
+
"date_range",
|
37
|
+
"convert_freq",
|
38
|
+
]
|
@@ -1,48 +1,53 @@
|
|
1
|
-
from .market_calendar import MarketCalendar
|
2
|
-
from .calendars.asx import ASXExchangeCalendar
|
3
|
-
from .calendars.bmf import BMFExchangeCalendar
|
4
|
-
from .calendars.bse import BSEExchangeCalendar
|
5
|
-
from .calendars.cboe import CFEExchangeCalendar
|
6
|
-
from .calendars.cme import
|
7
|
-
|
8
|
-
|
9
|
-
from .calendars.
|
10
|
-
from .calendars.
|
11
|
-
|
12
|
-
|
13
|
-
from .calendars.cme_globex_equities import CMEGlobexEquitiesExchangeCalendar
|
14
|
-
from .calendars.cme_globex_fx import CMEGlobexFXExchangeCalendar
|
15
|
-
from .calendars.cme_globex_fixed_income import CMEGlobexFixedIncomeCalendar
|
16
|
-
from .calendars.eurex import EUREXExchangeCalendar
|
17
|
-
from .calendars.
|
18
|
-
from .calendars.
|
19
|
-
from .calendars.
|
20
|
-
from .calendars.
|
21
|
-
from .calendars.
|
22
|
-
from .calendars.
|
23
|
-
from .calendars.
|
24
|
-
from .calendars.
|
25
|
-
from .calendars.
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
"""
|
46
|
-
|
47
|
-
|
48
|
-
|
1
|
+
from .market_calendar import MarketCalendar
|
2
|
+
from .calendars.asx import ASXExchangeCalendar
|
3
|
+
from .calendars.bmf import BMFExchangeCalendar
|
4
|
+
from .calendars.bse import BSEExchangeCalendar
|
5
|
+
from .calendars.cboe import CFEExchangeCalendar
|
6
|
+
from .calendars.cme import CMEEquityExchangeCalendar, CMEBondExchangeCalendar
|
7
|
+
from .calendars.cme_globex_base import CMEGlobexBaseExchangeCalendar
|
8
|
+
from .calendars.cme_globex_agriculture import CMEGlobexAgricultureExchangeCalendar
|
9
|
+
from .calendars.cme_globex_crypto import CMEGlobexCryptoExchangeCalendar
|
10
|
+
from .calendars.cme_globex_energy_and_metals import (
|
11
|
+
CMEGlobexEnergyAndMetalsExchangeCalendar,
|
12
|
+
)
|
13
|
+
from .calendars.cme_globex_equities import CMEGlobexEquitiesExchangeCalendar
|
14
|
+
from .calendars.cme_globex_fx import CMEGlobexFXExchangeCalendar
|
15
|
+
from .calendars.cme_globex_fixed_income import CMEGlobexFixedIncomeCalendar
|
16
|
+
from .calendars.eurex import EUREXExchangeCalendar
|
17
|
+
from .calendars.eurex_fixed_income import EUREXFixedIncomeCalendar
|
18
|
+
from .calendars.hkex import HKEXExchangeCalendar
|
19
|
+
from .calendars.ice import ICEExchangeCalendar
|
20
|
+
from .calendars.iex import IEXExchangeCalendar
|
21
|
+
from .calendars.jpx import JPXExchangeCalendar
|
22
|
+
from .calendars.lse import LSEExchangeCalendar
|
23
|
+
from .calendars.nyse import NYSEExchangeCalendar
|
24
|
+
from .calendars.ose import OSEExchangeCalendar
|
25
|
+
from .calendars.sifma import (
|
26
|
+
SIFMAUSExchangeCalendar,
|
27
|
+
SIFMAUKExchangeCalendar,
|
28
|
+
SIFMAJPExchangeCalendar,
|
29
|
+
)
|
30
|
+
from .calendars.six import SIXExchangeCalendar
|
31
|
+
from .calendars.sse import SSEExchangeCalendar
|
32
|
+
from .calendars.tase import TASEExchangeCalendar
|
33
|
+
from .calendars.tsx import TSXExchangeCalendar
|
34
|
+
from .calendars.mirror import *
|
35
|
+
|
36
|
+
|
37
|
+
def get_calendar(name, open_time=None, close_time=None) -> MarketCalendar:
|
38
|
+
"""
|
39
|
+
Retrieves an instance of an MarketCalendar whose name is given.
|
40
|
+
|
41
|
+
:param name: The name of the MarketCalendar to be retrieved.
|
42
|
+
:param open_time: Market open time override as datetime.time object. If None then default is used.
|
43
|
+
:param close_time: Market close time override as datetime.time object. If None then default is used.
|
44
|
+
:return: MarketCalendar of the desired calendar.
|
45
|
+
"""
|
46
|
+
return MarketCalendar.factory(name, open_time=open_time, close_time=close_time)
|
47
|
+
|
48
|
+
|
49
|
+
def get_calendar_names():
|
50
|
+
"""All Market Calendar names and aliases that can be used in "factory"
|
51
|
+
:return: list(str)
|
52
|
+
"""
|
53
|
+
return MarketCalendar.calendar_names()
|