# Core runtime — what `web/` and `chanlun/` need to run. # # python -m venv .venv && .venv/bin/pip install -r requirements.txt # # Tests and research/ pull in more; see requirements-dev.txt. # # Requires Python >= 3.11 (imposed by pandas 3.x / numpy 2.x, not by our code). # # Lower bounds are the oldest versions believed safe. Verified set as of # 2026-08-27 on Python 3.14.4: # pandas 3.0.5 · numpy 2.5.2 · Flask 3.1.3 · requests 2.34.2 # python-dateutil 2.9.0 · pytz 2026.3 · ccxt 4.5.75 · akshare 1.18.94 # chanlun/ — kline pipeline and indicators. # pandas >= 2.2 for the "5min" offset alias used by chanlun/pipeline/resample.py. pandas>=2.2 numpy>=1.26 # web/ — Flask API and templates. Flask>=3.0 requests>=2.31 python-dateutil>=2.9 pytz>=2024.1 # Market data. ccxt drives the live websocket/REST state in # web/services/runtime/state.py; akshare only backs the A-share endpoints in # web/services/cn_stock.py. ccxt>=4.4 akshare>=1.16