freqtrade_origin/setup.py
2023-08-02 19:52:15 +02:00

126 lines
2.3 KiB
Python

from setuptools import setup
# Requirements used for submodules
plot = ['plotly>=4.0']
hyperopt = [
'scipy',
'scikit-learn<=1.1.3',
'scikit-optimize>=0.7.0',
'filelock',
]
freqai = [
'scikit-learn',
'joblib',
'catboost; platform_machine != "aarch64"',
'lightgbm',
'xgboost',
'tensorboard',
'datasieve>=0.1.5'
]
freqai_rl = [
'torch',
'gymnasium',
'stable-baselines3',
'sb3-contrib',
'tqdm'
]
hdf5 = [
'tables',
'blosc',
]
develop = [
'coveralls',
'mypy',
'ruff',
'pre-commit',
'pytest',
'pytest-asyncio',
'pytest-cov',
'pytest-mock',
'pytest-random-order',
'isort',
'time-machine',
'types-cachetools',
'types-filelock',
'types-requests',
'types-tabulate',
'types-python-dateutil'
]
jupyter = [
'jupyter',
'nbstripout',
'ipykernel',
'nbconvert',
]
all_extra = plot + develop + jupyter + hyperopt + hdf5 + freqai + freqai_rl
setup(
tests_require=[
'pytest',
'pytest-asyncio',
'pytest-cov',
'pytest-mock',
],
install_requires=[
# from requirements.txt
'ccxt>=4.0.0',
'SQLAlchemy>=2.0.6',
'python-telegram-bot>=20.1',
'arrow>=1.0.0',
'cachetools',
'requests',
'urllib3',
'jsonschema',
'TA-Lib',
'pandas-ta',
'technical',
'tabulate',
'pycoingecko',
'py_find_1st',
'python-rapidjson',
'orjson',
'sdnotify',
'colorama',
'jinja2',
'questionary',
'prompt-toolkit',
'numpy',
'pandas',
'joblib>=1.2.0',
'rich',
'pyarrow; platform_machine != "armv7l"',
'fastapi',
'pydantic>=2.1.1',
'uvicorn',
'psutil',
'pyjwt',
'aiofiles',
'schedule',
'websockets',
'janus',
'ast-comments',
'aiohttp',
'cryptography',
'httpx>=0.24.1',
'python-dateutil',
'packaging',
],
extras_require={
'dev': all_extra,
'plot': plot,
'jupyter': jupyter,
'hyperopt': hyperopt,
'hdf5': hdf5,
'freqai': freqai,
'freqai_rl': freqai_rl,
'all': all_extra,
},
)