Files
sanguo_vnpy_v2/requirements-docker.txt
T

103 lines
3.3 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Sanguo VeighNa Docker 依赖(NAS 容器)
# 基于 VeighNa 4.4.0,添加 Web 服务所需依赖
#
# ⚠️ 版本源 = requirements-lock.txt(三机统一锁文件,VPS 生产快照=权威基线)。
# 本文件 = lock 的容器子集,全部 == 钉版;lock bump 时必须同步本文件。
# 容器专属差异(相对 lock 按设计省略):
# - akshare:日线采集在 VPS,不在容器
# - pytest/pytest-asyncioCI 在 Mac runner 跑,不在容器
# 2026-08-15 钉版根治:原 >= 浮动致容器系统性偏新
# TA-Lib0.7.1/empyrical双装/pyarrow25 vs lock 0.6.8/0.5.12/24.0.0),
# 产生「NAS 绿 ≠ VPS 版本」的等价性窗口。
# ============================================
# VeighNa 核心依赖
# ============================================
tzlocal==5.4.4
PySide6==6.8.2.1
pyqtgraph==0.14.0
qdarkstyle==3.2.3
numpy==2.2.6
pandas==2.3.3
TA-Lib==0.6.8
deap==1.4.4
pyzmq==27.1.0
plotly==6.8.0
tqdm==4.68.3
loguru==0.7.3
nbformat==5.10.4
requests==2.34.2
qrcode==8.2
PyYAML==6.0.3
# vnpy 策略/数据库扩展(项目必需,非可选)
# vnpy_ctastrategy: CTA 策略引擎(sanguo_backtest/cta_engine·cta_optimizer·ashare_engine, sanguo_live 等广用)
# vnpy_sqlite: vnpy sqlite 数据库驱动(vnpy trader/database.py 运行时动态加载,缺则 vnpy 无法持久化)
vnpy_ctastrategy==1.4.1
vnpy_sqlite==1.1.3
# ============================================
# 组合策略框架(BulletTrade)—— 2026-08-01 补:此前只在容器层手动装,重建会丢
# ============================================
# bullet-trade: 多股票选股组合框架(sanguo_portfolio, 03/01/02 三策略; import 名 bullet_trade
# jqdatasdk: bullet_trade import 时默认 provider=jqdata 触发 import jqdatasdk,需可解析
# (实跑用 LocalUnifiedProvider 不调 jqdata online,但 import 链需要包存在,否则 import 崩)
bullet-trade==0.9.2
jqdatasdk==1.9.8
# ============================================
# Web 服务依赖
# ============================================
fastapi==0.139.0
starlette==1.3.1
uvicorn[standard]==0.49.0
python-multipart==0.0.32
python-dotenv==1.2.2
websockets==16.0
pydantic==2.13.4
pydantic-settings==2.14.2
PyJWT==2.13.0
python-jose[cryptography]==3.5.0
passlib==1.7.4
bcrypt==5.0.0
SQLAlchemy==2.0.51
alembic==1.18.5
redis==8.0.1
aioredis==2.0.1
# ============================================
# Alpha 量化依赖
# ============================================
polars[rtcompat]==1.42.1 # 钉版+[rtcompat]:NAS CPU(Synology Celeron)无 AVX2,plain polars 即便 1.42.1 也 SIGILL(exit132);需 [rtcompat] 拉 polars-runtime-compat 兜底。pre-init-rebuild 实证(有 polars-runtime-compat 才跑得通)。勿改回 >=
scipy==1.15.3
alphalens-reloaded==0.4.6
scikit-learn==1.7.2
lightgbm==4.6.0
torch==2.12.1
pyarrow==24.0.0
# empyrical-reloaded 替代老 empyrical(根治 0.5.5+0.5.9 双装、import 顺序决定谁生效的脏状态)
empyrical-reloaded==0.5.12
statsmodels==0.14.6
matplotlib==3.10.9
seaborn==0.13.2
# ============================================
# 工具和监控
# ============================================
httpx==0.28.1
APScheduler==3.11.3
prometheus-client==0.25.0
structlog==26.1.0
# ============================================
# 数据层(容器内需要的部分)
# ============================================
baostock==0.9.3