auto-sync: 2026-04-12 10:20:48
This commit is contained in:
@@ -182,5 +182,6 @@
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -319,3 +319,73 @@ echo "Ccf7561523" | sudo -S docker run -d \
|
||||
姜维 伯约
|
||||
2026-04-12 09:29 GMT+8
|
||||
**状态:✅ 部署成功,Jupyter Lab 可访问**
|
||||
|
||||
---
|
||||
|
||||
## 实施完成记录 - 2026-04-12
|
||||
|
||||
### 已完成工作
|
||||
|
||||
#### 1. Dockerfile 更新
|
||||
- ✅ code-server 改为预装,不再跳过
|
||||
- ✅ 添加 vnpy_webtrader 到 requirements-base.txt
|
||||
- ✅ 更新 EXPOSE 暴露所有需要的端口(22 8000 8080 8888 2018 4102 8088)
|
||||
|
||||
#### 2. 自动化回测服务代码实现
|
||||
完整目录结构:
|
||||
```
|
||||
/app/scripts/backtest-service/
|
||||
├── config.py # 配置
|
||||
├── models.py # Pydantic 数据模型
|
||||
├── task_queue.py # 任务队列管理器
|
||||
├── executor.py # 回测执行器(调用 vnpy 原生 BacktestingEngine)
|
||||
├── result_storage.py # 结果存储
|
||||
├── api.py # FastAPI 路由
|
||||
├── main.py # 服务入口
|
||||
└── README.md # 使用说明
|
||||
```
|
||||
|
||||
所有代码按照设计方案实现完成:
|
||||
- ✅ 严格遵循 vnpy 原生设计,不修改核心架构
|
||||
- ✅ 只做外层封装,完全复用原生 BacktestingEngine
|
||||
- ✅ multiprocessing.Pool 做并发控制,可配置 MAX_WORKERS
|
||||
- ✅ 每个回测独立进程,隔离性好,一个失败不影响其他
|
||||
- ✅ 完整的 CRUD API,支持提交/查询/结果获取
|
||||
|
||||
#### 3. 准备好各个服务启动脚本
|
||||
```
|
||||
/app/scripts/
|
||||
├── start_rpc_server.py # VNPY 交易核心 RPC 服务启动
|
||||
├── start_web_trader.py # VNPY Web Trader 服务启动
|
||||
└── start_backtest_service.py # 自动化回测服务启动
|
||||
```
|
||||
|
||||
按照 vnpy 官方双进程架构:
|
||||
1. 第一步:启动 `start_rpc_server.py` → RPC 服务端监听 2018/4102
|
||||
2. 第二步:启动 `start_web_trader.py` → Web 服务监听 8000
|
||||
3. 需要回测时:启动 `start_backtest_service.py` → API 服务监听 8088
|
||||
|
||||
### 当前代码结构确认
|
||||
|
||||
| 文件路径 | 功能 | 状态 |
|
||||
|----------|------|------|
|
||||
| `scripts/backtest-service/config.py` | 配置 | ✅ 完成 |
|
||||
| `scripts/backtest-service/models.py` | 数据模型 | ✅ 完成 |
|
||||
| `scripts/backtest-service/task_queue.py` | 任务队列 | ✅ 完成 |
|
||||
| `scripts/backtest-service/executor.py` | 回测执行器 | ✅ 完成 |
|
||||
| `scripts/backtest-service/result_storage.py` | 结果存储 | ✅ 完成 |
|
||||
| `scripts/backtest-service/api.py` | API 路由 | ✅ 完成 |
|
||||
| `scripts/backtest-service/main.py` | 服务入口 | ✅ 完成 |
|
||||
| `scripts/backtest-service/README.md` | 使用说明 | ✅ 完成 |
|
||||
| `scripts/start_rpc_server.py` | VNPY RPC 启动 | ✅ 完成 |
|
||||
| `scripts/start_web_trader.py` | VNPY Web Trader 启动 | ✅ 完成 |
|
||||
| `scripts/start_backtest_service.py` | 自动化回测服务启动 | ✅ 完成 |
|
||||
|
||||
### 待执行
|
||||
- [ ] 重新构建 Docker 镜像
|
||||
- [ ] 测试验证各个服务启动正常
|
||||
- [ ] 运行一个示例回测验证功能
|
||||
|
||||
**记录人:** 姜维 伯约
|
||||
2026-04-12 10:17 GMT+8
|
||||
**状态:✅ 设计实施完成,等待重新构建镜像**
|
||||
|
||||
Reference in New Issue
Block a user