yfinance>=0.2.50
pytz>=2022.5
rich>=10.0.0

[:implementation_name != "pypy" or python_version >= "3.10"]
pandas>=1.3.0
numpy>=1.20

[:implementation_name == "pypy" and python_version < "3.10"]
pandas<2.3.0,>=1.3.0
numpy<2,>=1.20

[:python_version < "3.11"]
typing-extensions>=4.0

[:python_version < "3.9"]
multitasking<0.0.12

[all]

[all:implementation_name == "cpython"]
scikit-learn>=1.0.0

[all:implementation_name == "cpython" and python_version < "3.14"]
ta-lib>=0.4.19

[all:implementation_name == "cpython" and python_version >= "3.14"]
ta-lib==0.7.1

[all:implementation_name == "pypy"]
ta-lib<=0.7.1,>=0.4.19

[dev]
pytest>=8.0
pytest-cov>=4.0
ruff>=0.8.0
mypy>=1.11.0
pandas-stubs>=2.0.0
types-pytz>=2022.5

[repair]

[repair:implementation_name == "cpython"]
scikit-learn>=1.0.0

[talib]

[talib:implementation_name == "cpython" and python_version < "3.14"]
ta-lib>=0.4.19

[talib:implementation_name == "cpython" and python_version >= "3.14"]
ta-lib==0.7.1

[talib:implementation_name == "pypy"]
ta-lib<=0.7.1,>=0.4.19
