aiohttp>=3.9.0
rich>=13.7.0
prompt_toolkit>=3.0.43
PyYAML>=6.0.2
requests>=2.32.0
httpx[http2]>=0.27.0
PyJWT>=2.8.0
aiofiles>=23.2.0
websockets>=12.0
apscheduler>=3.10.0
numpy>=1.26.0
pandas>=2.2.0
scipy>=1.13.0
pandas_ta>=0.3.14b
yfinance>=0.2.55

[all]
akshare>=1.14.68
ccxt>=4.4.0
mplfinance>=0.12.9
duckdb>=0.10.3
pdfplumber>=0.11.0
pypdf>=4.3.0
python-docx>=1.1.2
openpyxl>=3.1.5
beautifulsoup4>=4.12.3
Pillow>=10.4.0
ddgs>=9.0
playwright>=1.44.0
mss>=9.0.1
pyautogui>=0.9.54
understat>=0.1.0
ib_insync>=0.9.86
futu-api>=9.1.5108
tigeropen>=3.2.0
longbridge>=1.0.22
alpaca-py>=0.35.0
vectorbt>=0.26.2
pytest>=8.2.0
pytest-asyncio>=0.23.7

[alpaca]
alpaca-py>=0.35.0

[backtest]
vectorbt>=0.26.2

[brokers]
ib_insync>=0.9.86
futu-api>=9.1.5108
tigeropen>=3.2.0
longbridge>=1.0.22
alpaca-py>=0.35.0

[browser]
playwright>=1.44.0

[charts]
mplfinance>=0.12.9

[cn]
akshare>=1.14.68

[crypto]
ccxt>=4.4.0

[data]
duckdb>=0.10.3

[desktop]
mss>=9.0.1
pyautogui>=0.9.54

[dev]
pytest>=8.2.0
pytest-asyncio>=0.23.7
ruff>=0.4.0
mypy>=1.10.0

[files]
pdfplumber>=0.11.0
pypdf>=4.3.0
python-docx>=1.1.2
openpyxl>=3.1.5
beautifulsoup4>=4.12.3
Pillow>=10.4.0

[full]
akshare>=1.14.68
ccxt>=4.4.0
mplfinance>=0.12.9
duckdb>=0.10.3
pdfplumber>=0.11.0
pypdf>=4.3.0
python-docx>=1.1.2
openpyxl>=3.1.5
beautifulsoup4>=4.12.3
Pillow>=10.4.0
ddgs>=9.0

[futu]
futu-api>=9.1.5108

[ibkr]
ib_insync>=0.9.86

[longbridge]
longbridge>=1.0.22

[lsp]
python-lsp-server[all]>=1.10.0

[sports]
understat>=0.1.0

[tiger]
tigeropen>=3.2.0

[web]
ddgs>=9.0

[webull]
webull>=0.3.14
