7bed73aa4c
深查:pre-init-rebuild 有 polars-runtime-compat 兜底层才跑得通; plain polars==1.42.1 新镜像缺 rtcompat → import 即 SIGILL exit132; vnpy_ctastrategy 的132是transitively import polars 同根因。 改 polars[rtcompat]==1.42.1 拉 polars-runtime-compat
110 lines
3.0 KiB
Plaintext
110 lines
3.0 KiB
Plaintext
# Sanguo VeighNa Docker 依赖
|
||
# 基于 VeighNa 4.4.0,添加 Web 服务所需依赖
|
||
|
||
# ============================================
|
||
# VeighNa 核心依赖
|
||
# ============================================
|
||
tzlocal>=5.3.1
|
||
PySide6==6.8.2.1
|
||
pyqtgraph>=0.13.7
|
||
qdarkstyle>=3.2.3
|
||
numpy>=2.2.3
|
||
pandas>=2.2.3
|
||
ta-lib>=0.6.4
|
||
deap>=1.4.2
|
||
pyzmq>=26.3.0
|
||
plotly>=6.0.0
|
||
tqdm>=4.67.1
|
||
loguru>=0.7.3
|
||
nbformat>=5.10.4
|
||
requests>=2.32.0
|
||
qrcode>=7.4.2
|
||
|
||
# VeighNa 策略/数据库扩展(项目必需,非可选)
|
||
# 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
|
||
|
||
# VeighNa Gateway 扩展(可选,根据需要安装)
|
||
# 注意:这些是独立的扩展包,未安装时不影响核心功能
|
||
# vnpy_ctp
|
||
# vnpy_ib
|
||
# vnpy_okx
|
||
# vnpy_binance
|
||
|
||
# ============================================
|
||
# Web 服务依赖
|
||
# ============================================
|
||
# FastAPI 核心
|
||
fastapi>=0.100.0
|
||
uvicorn[standard]>=0.23.0
|
||
python-multipart>=0.0.6
|
||
|
||
# WebSocket 支持
|
||
websockets>=12.0
|
||
|
||
# 数据验证
|
||
pydantic>=2.0.0
|
||
pydantic-settings>=2.0.0
|
||
|
||
# 认证授权
|
||
PyJWT>=2.8.0
|
||
python-jose[cryptography]>=3.3.0
|
||
passlib[bcrypt]>=1.7.4
|
||
python-multipart>=0.0.6
|
||
|
||
# 数据库
|
||
sqlalchemy>=2.0.0
|
||
alembic>=1.12.0
|
||
# SQLite 是 Python 内置的
|
||
# PostgreSQL 支持(可选)
|
||
# psycopg2-binary>=2.9.0
|
||
|
||
# Redis 客户端
|
||
redis>=5.0.0
|
||
aioredis>=2.0.0
|
||
|
||
# ============================================
|
||
# 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.2
|
||
alphalens-reloaded>=0.4.5
|
||
scikit-learn>=1.6.1
|
||
lightgbm>=4.6.0
|
||
torch>=2.6.0
|
||
pyarrow>=19.0.1
|
||
empyrical>=0.5.5
|
||
|
||
# ============================================
|
||
# 工具和监控
|
||
# ============================================
|
||
# HTTP 客户端
|
||
httpx>=0.25.0
|
||
|
||
# 任务调度
|
||
apscheduler>=3.10.0
|
||
|
||
# 监控和日志
|
||
prometheus-client>=0.19.0
|
||
structlog>=23.0.0
|
||
|
||
# ============================================
|
||
# 开发工具(生产环境可选)
|
||
# ============================================
|
||
# pytest>=7.0.0
|
||
# pytest-cov>=4.0.0
|
||
# ruff>=0.1.0
|
||
# mypy>=1.5.0
|
||
baostock
|