arbitrage-engine/docs/AUTO_EVOLVE_RUNBOOK.md

145 lines
3.6 KiB
Markdown
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.

# Auto-Evolve 运行手册
## 1. 目标
本手册用于把策略工厂升级为“自动进化”流程:
1. 自动分析(每天)
2. 自动调整(每天每币最多新增 1 条 `codex优化-*`
3. 自动复盘(输出报告)
4. 自动清理(超配时下线表现最差的 codex 策略)
> 注意:自动化默认仅在模拟盘执行。任何实盘动作必须人工确认。
---
## 2. 代码入口
- 自动进化脚本:`automation/auto_evolve/run_daily.py`
- 示例配置:`automation/auto_evolve/config.example.json`
- 报告输出目录:`reports/auto-evolve/YYYY-MM-DD/`
---
## 3. 连接信息(快速)
完整信息见:`docs/OPS_CONNECTIONS.md`
### 3.1 服务器
```bash
gcloud compute ssh instance-20260221-064508 \
--zone asia-northeast1-b \
--project gen-lang-client-0835616737 \
--tunnel-through-iap
```
### 3.2 数据库(服务器本地)
```bash
sudo -u fzq1228 bash -lc "export PGPASSWORD=arb_engine_2026; psql -h 127.0.0.1 -U arb -d arb_engine -c 'SELECT now();'"
```
---
## 4. 手工运行(建议先 dry-run
### 4.0 前置修复symbol 不一致脏数据清理(一次性)
```bash
# 先看统计(不删除)
python3 scripts/fix_signal_symbol_mismatch.py
# 确认后执行删除
python3 scripts/fix_signal_symbol_mismatch.py --apply
```
### 4.1 本地或服务器 dry-run
```bash
cd /home/fzq1228/Projects/arbitrage-engine
python3 automation/auto_evolve/run_daily.py
```
### 4.2 实际执行(写入策略变更)
```bash
cd /home/fzq1228/Projects/arbitrage-engine
python3 automation/auto_evolve/run_daily.py --apply
```
### 4.3 指定配置
```bash
python3 automation/auto_evolve/run_daily.py --config automation/auto_evolve/config.example.json --apply
```
---
## 5. 自动策略逻辑(当前版本)
### 5.1 分析输入
- `strategies`running 策略)
- `paper_trades`(仅统计 `paper_trades.symbol = strategies.symbol`
- `signal_indicators`(仅统计 `signal_indicators.symbol = strategies.symbol`
### 5.2 评分
- `fitness = 净R + 速度因子 + 稳定性因子 + PF因子 - 样本惩罚`
- 样本不足会被惩罚(避免小样本幻觉)
### 5.3 自动调整
- 按币种识别简化 regime`trend/high_vol/crash/range`
- 每币种最多产出 1 条新策略(可配置)
- 复制父策略门控参数,重点微调:
- CVD 窗口
- 四层权重
- entry score
- TP/SL/timeout
### 5.4 自动下线
- 若某币种 `codex优化-*` 运行数超过阈值(默认 3
- 自动下线最差且达到最小存活时间的策略(默认 24h
---
## 6. 每日报告内容
脚本每次执行都会输出:
- Top3 / Bottom3fitness
- 每币种 regime
- 本次新建策略列表
- 本次下线策略列表
- 计划日志(候选生成来源)
文件:
- Markdown`reports/auto-evolve/YYYY-MM-DD/HHMMSS_auto_evolve.md`
- JSON`reports/auto-evolve/YYYY-MM-DD/HHMMSS_auto_evolve.json`
---
## 7. Codex 每日二次复盘(深度搜索)
建议每日在脚本执行后,由 Codex 自动执行第二轮复盘:
1. 读取当天 auto-evolve 报告
2. 联网做深度搜索(最新策略研究、订单流门控、风险控制)
3. 对照本项目现状判断可落地改进项
4. 若有明确提升收益的改动,触发 `work-to-down` 模式落地到代码
5. 生成复盘结论(改了什么、预期收益、风险)
> 这一步建议通过 Codex Automation 调度,不建议手工每天执行。
---
## 8. 安全边界
- 默认不修改历史交易,不回填旧数据。
- 自动化只操作策略参数与策略状态,不触碰用户认证/账密。
- 自动化失败时会回滚事务,不会留下半写入状态。