hyperquant 1.3__tar.gz

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 (44) hide show
  1. hyperquant-1.3/.gitignore +40 -0
  2. hyperquant-1.3/PKG-INFO +33 -0
  3. hyperquant-1.3/README.md +3 -0
  4. hyperquant-1.3/pyproject.toml +58 -0
  5. hyperquant-1.3/requirements-dev.lock +112 -0
  6. hyperquant-1.3/requirements.lock +65 -0
  7. hyperquant-1.3/src/hyperquant/__init__.py +8 -0
  8. hyperquant-1.3/src/hyperquant/broker/auth.py +784 -0
  9. hyperquant-1.3/src/hyperquant/broker/bitget.py +311 -0
  10. hyperquant-1.3/src/hyperquant/broker/bitmart.py +720 -0
  11. hyperquant-1.3/src/hyperquant/broker/coinw.py +487 -0
  12. hyperquant-1.3/src/hyperquant/broker/deepcoin.py +651 -0
  13. hyperquant-1.3/src/hyperquant/broker/edgex.py +500 -0
  14. hyperquant-1.3/src/hyperquant/broker/hyperliquid.py +570 -0
  15. hyperquant-1.3/src/hyperquant/broker/lbank.py +661 -0
  16. hyperquant-1.3/src/hyperquant/broker/lib/edgex_sign.py +455 -0
  17. hyperquant-1.3/src/hyperquant/broker/lib/hpstore.py +252 -0
  18. hyperquant-1.3/src/hyperquant/broker/lib/hyper_types.py +48 -0
  19. hyperquant-1.3/src/hyperquant/broker/lib/util.py +22 -0
  20. hyperquant-1.3/src/hyperquant/broker/lighter.py +679 -0
  21. hyperquant-1.3/src/hyperquant/broker/models/apexpro.py +150 -0
  22. hyperquant-1.3/src/hyperquant/broker/models/bitget.py +359 -0
  23. hyperquant-1.3/src/hyperquant/broker/models/bitmart.py +635 -0
  24. hyperquant-1.3/src/hyperquant/broker/models/coinw.py +724 -0
  25. hyperquant-1.3/src/hyperquant/broker/models/deepcoin.py +809 -0
  26. hyperquant-1.3/src/hyperquant/broker/models/edgex.py +1053 -0
  27. hyperquant-1.3/src/hyperquant/broker/models/hyperliquid.py +284 -0
  28. hyperquant-1.3/src/hyperquant/broker/models/lbank.py +557 -0
  29. hyperquant-1.3/src/hyperquant/broker/models/lighter.py +868 -0
  30. hyperquant-1.3/src/hyperquant/broker/models/ourbit.py +1155 -0
  31. hyperquant-1.3/src/hyperquant/broker/models/polymarket.py +559 -0
  32. hyperquant-1.3/src/hyperquant/broker/ourbit.py +550 -0
  33. hyperquant-1.3/src/hyperquant/broker/polymarket.py +1126 -0
  34. hyperquant-1.3/src/hyperquant/broker/ws.py +132 -0
  35. hyperquant-1.3/src/hyperquant/core.py +513 -0
  36. hyperquant-1.3/src/hyperquant/datavison/_util.py +18 -0
  37. hyperquant-1.3/src/hyperquant/datavison/binance.py +111 -0
  38. hyperquant-1.3/src/hyperquant/datavison/coinglass.py +237 -0
  39. hyperquant-1.3/src/hyperquant/datavison/okx.py +177 -0
  40. hyperquant-1.3/src/hyperquant/db.py +191 -0
  41. hyperquant-1.3/src/hyperquant/draw.py +1200 -0
  42. hyperquant-1.3/src/hyperquant/logkit.py +205 -0
  43. hyperquant-1.3/src/hyperquant/notikit.py +124 -0
  44. hyperquant-1.3/uv.lock +2489 -0
@@ -0,0 +1,40 @@
1
+ # Python
2
+ __pycache__/
3
+ *.py[cod]
4
+ *$py.class
5
+ *.so
6
+ .Python
7
+ build/
8
+ develop-eggs/
9
+ dist/
10
+ downloads/
11
+ eggs/
12
+ .eggs/
13
+ lib64/
14
+ parts/
15
+ sdist/
16
+ var/
17
+ wheels/
18
+ *.egg-info/
19
+ .installed.cfg
20
+ *.egg
21
+
22
+ # PyPI credentials
23
+ .pypirc
24
+
25
+ # Environment
26
+ .env
27
+ .venv
28
+ env/
29
+ venv/
30
+ ENV/
31
+
32
+ # IDE
33
+ .idea/
34
+ .vscode/
35
+ *.swp
36
+ *.swo
37
+
38
+ # OS
39
+ .DS_Store
40
+ Thumbs.db
@@ -0,0 +1,33 @@
1
+ Metadata-Version: 2.4
2
+ Name: hyperquant
3
+ Version: 1.3
4
+ Summary: A minimal yet hyper-efficient backtesting framework for quantitative trading
5
+ Project-URL: Homepage, https://github.com/yourusername/hyperquant
6
+ Project-URL: Issues, https://github.com/yourusername/hyperquant/issues
7
+ Author-email: MissinA <1421329142@qq.com>
8
+ License: MIT
9
+ Keywords: backtesting,hyperquant,quant,trading
10
+ Classifier: Development Status :: 3 - Alpha
11
+ Classifier: Intended Audience :: Developers
12
+ Classifier: License :: OSI Approved :: MIT License
13
+ Classifier: Programming Language :: Python :: 3
14
+ Classifier: Topic :: Office/Business :: Financial :: Investment
15
+ Requires-Python: >=3.11
16
+ Requires-Dist: aiohttp>=3.10.4
17
+ Requires-Dist: colorama>=0.4.6
18
+ Requires-Dist: cryptography>=44.0.2
19
+ Requires-Dist: duckdb>=1.2.2
20
+ Requires-Dist: eth-account>=0.10.0
21
+ Requires-Dist: lighter-sdk
22
+ Requires-Dist: numpy>=1.21.0
23
+ Requires-Dist: pandas>=2.2.3
24
+ Requires-Dist: py-clob-client>=0.28.0
25
+ Requires-Dist: pybotters>=1.9.1
26
+ Requires-Dist: pyecharts>=2.0.8
27
+ Requires-Dist: python-dotenv>=1.2.1
28
+ Requires-Dist: web3>=7.14.0
29
+ Description-Content-Type: text/markdown
30
+
31
+ # hyperquant
32
+
33
+ hyperquant is a minimalistic framework for quantitative trading strategies. It allows users to quickly validate their strategy ideas with ease and efficiency.
@@ -0,0 +1,3 @@
1
+ # hyperquant
2
+
3
+ hyperquant is a minimalistic framework for quantitative trading strategies. It allows users to quickly validate their strategy ideas with ease and efficiency.
@@ -0,0 +1,58 @@
1
+ [project]
2
+ name = "hyperquant"
3
+ version = "1.3"
4
+ description = "A minimal yet hyper-efficient backtesting framework for quantitative trading"
5
+ authors = [
6
+ { name = "MissinA", email = "1421329142@qq.com" }
7
+ ]
8
+ dependencies = [
9
+ "pyecharts>=2.0.8",
10
+ "pandas>=2.2.3",
11
+ "colorama>=0.4.6",
12
+ "aiohttp>=3.10.4",
13
+ "cryptography>=44.0.2",
14
+ "numpy>=1.21.0", # Added numpy as a new dependency
15
+ "duckdb>=1.2.2",
16
+ "pybotters>=1.9.1",
17
+ "lighter-sdk",
18
+ "eth-account>=0.10.0",
19
+ "web3>=7.14.0",
20
+ "python-dotenv>=1.2.1",
21
+ "py-clob-client>=0.28.0",
22
+ ]
23
+ readme = "README.md"
24
+ requires-python = ">=3.11"
25
+
26
+
27
+ keywords = ["quant", "backtesting", "trading", "hyperquant"]
28
+ license = {text = "MIT"}
29
+ classifiers = [
30
+ "Development Status :: 3 - Alpha",
31
+ "Intended Audience :: Developers",
32
+ "Topic :: Office/Business :: Financial :: Investment",
33
+ "Programming Language :: Python :: 3",
34
+ "License :: OSI Approved :: MIT License",
35
+ ]
36
+
37
+ [project.urls]
38
+ Homepage = "https://github.com/yourusername/hyperquant"
39
+ Issues = "https://github.com/yourusername/hyperquant/issues"
40
+
41
+ [build-system]
42
+ requires = ["hatchling"]
43
+ build-backend = "hatchling.build"
44
+
45
+ [tool.hatch.metadata]
46
+ allow-direct-references = true
47
+ requires-python = ">=3.9"
48
+
49
+ [tool.hatch.build.targets.wheel]
50
+ packages = ["src/hyperquant"]
51
+
52
+ [tool.uv.sources]
53
+ lighter-sdk = { git = "https://github.com/elliottech/lighter-python.git" }
54
+
55
+ [dependency-groups]
56
+ dev = [
57
+ "twine>=6.1.0",
58
+ ]
@@ -0,0 +1,112 @@
1
+ # generated by rye
2
+ # use `rye lock` or `rye sync` to update this lockfile
3
+ #
4
+ # last locked with the following flags:
5
+ # pre: false
6
+ # features: []
7
+ # all-features: false
8
+ # with-sources: false
9
+ # generate-hashes: false
10
+ # universal: false
11
+
12
+ -e file:.
13
+ aiohappyeyeballs==2.6.1
14
+ # via aiohttp
15
+ aiohttp==3.11.16
16
+ # via hyperquant
17
+ aiosignal==1.3.2
18
+ # via aiohttp
19
+ attrs==25.3.0
20
+ # via aiohttp
21
+ certifi==2025.1.31
22
+ # via requests
23
+ cffi==1.17.1
24
+ # via cryptography
25
+ charset-normalizer==3.4.1
26
+ # via requests
27
+ colorama==0.4.6
28
+ # via hyperquant
29
+ cryptography==44.0.2
30
+ # via hyperquant
31
+ docutils==0.21.2
32
+ # via readme-renderer
33
+ frozenlist==1.6.0
34
+ # via aiohttp
35
+ # via aiosignal
36
+ id==1.5.0
37
+ # via twine
38
+ idna==3.10
39
+ # via requests
40
+ # via yarl
41
+ jaraco-classes==3.4.0
42
+ # via keyring
43
+ jaraco-context==6.0.1
44
+ # via keyring
45
+ jaraco-functools==4.1.0
46
+ # via keyring
47
+ jinja2==3.1.6
48
+ # via pyecharts
49
+ keyring==25.6.0
50
+ # via twine
51
+ markdown-it-py==3.0.0
52
+ # via rich
53
+ markupsafe==3.0.2
54
+ # via jinja2
55
+ mdurl==0.1.2
56
+ # via markdown-it-py
57
+ more-itertools==10.6.0
58
+ # via jaraco-classes
59
+ # via jaraco-functools
60
+ multidict==6.4.3
61
+ # via aiohttp
62
+ # via yarl
63
+ nh3==0.2.21
64
+ # via readme-renderer
65
+ numpy==2.2.4
66
+ # via pandas
67
+ packaging==24.2
68
+ # via twine
69
+ pandas==2.2.3
70
+ # via hyperquant
71
+ prettytable==3.15.1
72
+ # via pyecharts
73
+ propcache==0.3.1
74
+ # via aiohttp
75
+ # via yarl
76
+ pycparser==2.22
77
+ # via cffi
78
+ pyecharts==2.0.8
79
+ # via hyperquant
80
+ pygments==2.19.1
81
+ # via readme-renderer
82
+ # via rich
83
+ python-dateutil==2.9.0.post0
84
+ # via pandas
85
+ pytz==2025.1
86
+ # via pandas
87
+ readme-renderer==44.0
88
+ # via twine
89
+ requests==2.32.3
90
+ # via id
91
+ # via requests-toolbelt
92
+ # via twine
93
+ requests-toolbelt==1.0.0
94
+ # via twine
95
+ rfc3986==2.0.0
96
+ # via twine
97
+ rich==13.9.4
98
+ # via twine
99
+ simplejson==3.20.1
100
+ # via pyecharts
101
+ six==1.17.0
102
+ # via python-dateutil
103
+ twine==6.1.0
104
+ tzdata==2025.1
105
+ # via pandas
106
+ urllib3==2.3.0
107
+ # via requests
108
+ # via twine
109
+ wcwidth==0.2.13
110
+ # via prettytable
111
+ yarl==1.20.0
112
+ # via aiohttp
@@ -0,0 +1,65 @@
1
+ # generated by rye
2
+ # use `rye lock` or `rye sync` to update this lockfile
3
+ #
4
+ # last locked with the following flags:
5
+ # pre: false
6
+ # features: []
7
+ # all-features: false
8
+ # with-sources: false
9
+ # generate-hashes: false
10
+ # universal: false
11
+
12
+ -e file:.
13
+ aiohappyeyeballs==2.6.1
14
+ # via aiohttp
15
+ aiohttp==3.11.16
16
+ # via hyperquant
17
+ aiosignal==1.3.2
18
+ # via aiohttp
19
+ attrs==25.3.0
20
+ # via aiohttp
21
+ cffi==1.17.1
22
+ # via cryptography
23
+ colorama==0.4.6
24
+ # via hyperquant
25
+ cryptography==44.0.2
26
+ # via hyperquant
27
+ frozenlist==1.6.0
28
+ # via aiohttp
29
+ # via aiosignal
30
+ idna==3.10
31
+ # via yarl
32
+ jinja2==3.1.6
33
+ # via pyecharts
34
+ markupsafe==3.0.2
35
+ # via jinja2
36
+ multidict==6.4.3
37
+ # via aiohttp
38
+ # via yarl
39
+ numpy==2.2.4
40
+ # via pandas
41
+ pandas==2.2.3
42
+ # via hyperquant
43
+ prettytable==3.15.1
44
+ # via pyecharts
45
+ propcache==0.3.1
46
+ # via aiohttp
47
+ # via yarl
48
+ pycparser==2.22
49
+ # via cffi
50
+ pyecharts==2.0.8
51
+ # via hyperquant
52
+ python-dateutil==2.9.0.post0
53
+ # via pandas
54
+ pytz==2025.1
55
+ # via pandas
56
+ simplejson==3.20.1
57
+ # via pyecharts
58
+ six==1.17.0
59
+ # via python-dateutil
60
+ tzdata==2025.1
61
+ # via pandas
62
+ wcwidth==0.2.13
63
+ # via prettytable
64
+ yarl==1.20.0
65
+ # via aiohttp
@@ -0,0 +1,8 @@
1
+ from .core import *
2
+ from .draw import *
3
+ from .logkit import *
4
+ from .datavison import *
5
+ from .notikit import *
6
+ __version__ = "0.1.0"
7
+
8
+ from .broker import auth, ws