Files
sanguo_vnpy/research/nas/sanguo_vnpy_NAS全自动部署方案.md
2026-04-11 21:18:55 +08:00

204 lines
5.4 KiB
Markdown

# sanguo_vnpy NAS 全自动部署方案
## 📋 方案概述
本方案将 **完整的 sanguo_quant_live 三国量化生态** 全自动部署到 NAS 环境,并提供完整的测试和执行环境。
### 包含的完整项目
1. **sanguo_quant_live** ⭐ - 三国量化完整生态(核心项目!)
- strategies/ - 所有策略代码
- jiangwei-platform/ - 三国量化实战项目
- pangtong-value/ - 价值投资研究
- zhaoyun-data/ - 数据处理
- guanyu-risk/ - 风险管理
- zhangfei-technical/ - 技术分析
- management/ - 管理工具
- archive/ - 归档资料
2. **sanguo_vnpy** - 量化框架项目 (vnpy_project)
3. **jq_essence_articles** - 聚宽精华文章调研
4. **其他研究文档** - 所有相关调研报告
### 核心特性
-**一键部署** - 单条命令完成所有准备工作
-**完整 Docker 环境** - Jupyter + VS Code + vn.py 全栈
-**完整生态** - sanguo_quant_live 全项目整合
-**数据持久化** - 所有数据保存在 NAS 上
-**示例策略** - 包含完整的回测测试环境
-**零手动干预** - 自动化程度最高的方案
---
## 🚀 三步完整部署流程
### 第一步:在 Mac mini 上运行准备脚本
```bash
cd /Users/chufeng/.openclaw/workspace-jiangwei
chmod +x sanguo_nas_deploy.sh
sudo ./sanguo_nas_deploy.sh
```
这个脚本会自动完成:
1. ✅ 挂载 NAS(如未挂载)
2. ✅ 创建完整目录结构
3. ✅ 复制本地策略文件
4. ✅ 生成 Docker 配置
5. ✅ 创建示例策略和测试脚本
6. ✅ 生成部署文档
---
### 第二步:SSH 登录 NAS 并启动 Docker
```bash
# SSH 登录 NAS
ssh admin@192.168.2.154
# 进入 Docker 目录
cd /volume1/stock/sanguo_vnpy/docker
# 构建并启动(第一次需要 5-10 分钟)
docker-compose up -d
# 查看日志,等待服务启动
docker-compose logs -f
```
---
### 第三步:访问服务并运行测试
在 Mac mini 浏览器中打开:
| 服务 | 地址 | 凭证 |
|------|------|------|
| Jupyter Lab | http://192.168.2.154:8888 | token: `sanguo123` |
| VS Code Server | http://192.168.2.154:8080 | password: `sanguo123` |
在 Jupyter Lab 中运行测试:
```python
%cd /app/tests
python test_backtest.py
```
---
## 📁 NAS 上的目录结构
```
/volume1/stock/sanguo_vnpy/
├── README.md # 部署说明文档
├── config/ # 配置文件
├── data/ # 数据目录(持久化)
│ └── A股数据/
│ ├── 日线数据/
│ ├── 分钟线数据/
│ └── 财务数据/
├── notebooks/ # Jupyter 笔记本(持久化)
├── strategies/ # 策略代码(来自 sanguo_quant_live)⭐
├── jiangwei-platform/ # 三国量化实战项目
├── pangtong-value/ # 价值投资研究
├── zhaoyun-data/ # 数据处理
├── guanyu-risk/ # 风险管理
├── zhangfei-technical/ # 技术分析
├── management/ # 管理工具
├── archive/ # 归档资料
├── projects/ # 其他项目
│ └── sanguo_vnpy_framework/ # sanguo_vnpy 量化框架
├── research/ # 研究资料
│ ├── jq_essence_articles/ # 聚宽精华文章
│ └── other/ # 其他调研报告
├── tests/ # 测试脚本
├── scripts/ # 工具脚本
│ └── deploy_on_nas.sh # NAS 上的部署脚本
├── docker/ # Docker 配置
│ ├── Dockerfile
│ ├── docker-compose.yml
│ ├── entrypoint.sh
│ ├── requirements.txt
│ └── .env
└── logs/ # 日志文件
```
---
## 🛠️ Docker 环境包含
| 组件 | 说明 |
|------|------|
| Python 3.10 | 运行环境 |
| vn.py 4.0+ | 量化框架 |
| Jupyter Lab | 策略开发环境 |
| VS Code Server | 代码编辑环境 |
| SSH 服务 | 远程访问 |
| 完整依赖 | pandas/numpy/matplotlib/TA-Lib |
---
## 🧪 测试验证清单
部署完成后,按以下步骤验证:
- [ ] 运行 `./sanguo_nas_deploy.sh` 无错误
- [ ] SSH 登录 NAS 成功
- [ ] `docker-compose up -d` 成功
- [ ] `docker-compose ps` 显示容器状态 healthy
- [ ] 浏览器访问 Jupyter Lab 成功
- [ ] 浏览器访问 VS Code 成功
- [ ] 运行 `/app/tests/test_backtest.py` 成功
- [ ] 策略文件在 `/app/strategies` 可见
- [ ] 数据目录 `/app/data` 可读写
---
## 📊 常用管理命令
```bash
# 在 NAS SSH 中执行
cd /volume1/stock/sanguo_vnpy/docker
# 查看状态
docker-compose ps
# 查看日志
docker-compose logs -f
# 重启服务
docker-compose restart
# 停止服务
docker-compose down
# 重新构建(修改配置后)
docker-compose up -d --build
```
---
## 🔐 安全说明
默认密码仅供测试:
- Jupyter token: `sanguo123`
- VS Code 密码: `sanguo123`
- SSH 密码: `sanguo123`
生产环境请修改 `docker/.env``docker/entrypoint.sh` 中的密码,然后重新构建。
---
## 🎯 总结
这个方案实现了:
1.**完全自动化** - 几乎零手动干预
2.**数据安全** - 所有数据持久化在 NAS
3.**开箱即用** - 包含完整测试环境
4.**易于维护** - Docker 容器化部署
5.**灵活扩展** - 可随时添加新策略
**只需三条命令,完成全部部署!** 🚀