-
Notifications
You must be signed in to change notification settings - Fork 48
/
Copy pathpyproject.toml
99 lines (86 loc) · 3.23 KB
/
pyproject.toml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
[tool.poetry]
name = "trading-strategy"
version = "0.24.5"
description = "Algorithmic trading data for cryptocurrencies and DEXes like Uniswap, Aave and PancakeSwap"
authors = ["Mikko Ohtamaa <[email protected]>"]
homepage = "https://tradingstrategy.ai"
repository = "https://github.com/tradingstrategy-ai/trading-strategy"
license = "AGPL"
readme = "README.md"
keywords = ["algorithmic trading", "ethereum", "polygon", "avalanche", "aave", "arbitrum", "cryptocurrency", "uniswap", "quantitative finance", "binance", "blockchain", "pancakeswap", "polygon", "web3"]
packages = [
{ include = "tradingstrategy" },
]
exclude = [
# Don't include various blockchain icons in the release
"tradingstrategy/chains/_data/icons",
"./tradingstrategy/chains/_data/iconsDownload",
"extras"
]
# See PyPi for supported links https://github.com/pypi/warehouse/blob/main/warehouse/templates/packaging/detail.html
# https://stackoverflow.com/a/74394591/315168
# https://pypi.org/project/links-demo/
[tool.poetry.urls]
Changelog = "https://github.com/tradingstrategy-ai/web3-ethereum-defi/blob/master/CHANGELOG.md"
Documentation = "https://tradingstrategy.ai/docs/"
Twitter = "https://twitter.com/tradingprotocol"
Youtube = "https://www.youtube.com/@tradingstrategyprotocol"
Discord = "https://discord.gg/5M88m9nM8H"
Sponsor = "https://tradingstrategy.ai"
[tool.poetry.dependencies]
# Web3.py dependency compatibility
# E.g. ethpm
python = ">=3.10,<3.13"
dataclasses-json = "^0.5.4"
pandas = "<3"
# numpy.dtype size changed, may indicate binary incompatibility. Expected 96 from C header, got 88 from PyObject
# https://stackoverflow.com/questions/78634235/numpy-dtype-size-changed-may-indicate-binary-incompatibility-expected-96-from
numpy = "<2"
pyarrow = "^17.0.0"
tqdm = "^4.61.2"
plotly = "^5.1.0"
jsonlines = "^3.1.0"
requests = "^2.28.1"
tqdm-loggable = ">=0.2"
web3-ethereum-defi = {version=">=0.24.1", extras=["data", "test"]}
#web3-ethereum-defi = {path = "../web3-ethereum-defi", develop = true, extras=["data", "test"]}
# Legacy strategy and trading engines
trading-strategy-qstrader = {version="^0.5.0", optional = true}
scipy = {version="^1.6.1", optional = true}
trading-strategy-backtrader = {version="^0.1", optional = true}
coloredlogs = {version = "^15.0.1", optional = true}
filelock = "^3.12.4"
# Needed for direct data feeds
typer = {version = "^0.7.0", optional = true}
dash = {version = "^2.7.1", optional = true}
zstandard = "^0.23.0"
orjson = "^3.10.11"
[tool.poetry.dev-dependencies]
pytest = "7.1.3"
ipdb = "^0.13.9"
coloredlogs = "^15.0.1"
pytest-xdist = "^3.3.1"
memory-profiler = "^0.60.0"
poetry-core = "^1.1.0"
pytest-asyncio = "^0.19.0"
[tool.poetry.extras]
# Real-time OHLCV feeds over JSON-RPC
direct-feed = ["web3-ethereum-defi", "typer", "dash"]
# Legacy qstrader framework support
qstrader = ["scipy", "trading-strategy-qstrader"]
# Legacy backtrader framework support
backtrader = ["trading-strategy-backtrader"]
[tool.poetry.group.dev.dependencies]
importchecker = "^3.0"
[build-system]
requires = ["poetry-core>=1.0.0"]
build-backend = "poetry.core.masonry.api"
# https://docs.pytest.org/en/6.2.x/customize.html
[tool.pytest.ini_options]
addopts = "-s --tb=native"
testpaths = [
"tests",
]
filterwarnings = [
"ignore::FutureWarning"
]