# Bot1 本周至今下单与 DS V4 技术复盘

审计窗口：2026-08-10 00:00:00Z ～ 2026-08-13 04:02:08Z
对象：bot1 / `VolatilityBreakoutRiskCap` / `5.4.1-d48-riskcap-observe` / 5m / dry-run

## 决策

本周策略表现为正，最早的真实分歧仍在 `order -> fill`：5 次入场提交中 4 次成交，1 次 ZEC 被动限价零成交撤单。该漏单之后 6h 走势逆向，不支持追价。新开且已平两笔实现 +29.34U；两笔开放仓截至 04:00Z 毛浮动合计约 -4.96U。若计入周初已有的 XRP、BTC 两个空仓，本周共有 4 笔平仓、4 胜 0 负、实现 +39.95U。

优化结论不是放宽风控，而是修 Auditor 归因并继续积累入场特征。周初两个盈利空仓占满同向槽位，100 条 `same_side_limit` 记录是“保留已有趋势仓”与“接受新候选”的组合决策。被挡候选中确有后续赢家，但现有 replacement shadow 选中的 5 个簇明显更差，因此既不应加第三仓，也不应启用当前置换规则。

## 运行与证据真相

| 项目 | 证据 |
|---|---|
| 策略运行态 | `VolatilityBreakoutRiskCap`，真实心跳 `5.4.1-d48-riskcap-observe` |
| 模式 | 5m、dry-run、11 个实际交易对 |
| 数据窗口 | 913 个完整 5m 时槽 × 11 对 = 10,043 根真实 Freqtrade 已分析 K 线 |
| 交易证据 | `tradesv3-v5.sqlite` 只读快照；零成交删除单由日志恢复 |
| DS V4 | `deepseek-v4-flash`；本周混合 schema/prompt 1.0/v1、1.1/v2、1.2/v3 |
| 版本错标 | 10,043 个 Auditor K 线事件全部仍标 `5.4-d48-riskcap-forward`，与真实运行版本不一致 |

本周开始时带入两个空仓：XRP #47（08-07 开）和 BTC #50（08-08 开）。两者分别在 08-11、08-12 正收益退出。它们必须与本周新信号分开，不能把全部 +39.95U 都归因于本周下单选择。

## 本周交易表现

| 指标 | 结果 |
|---|---:|
| 入场提交 / 成交 / 零成交撤单 | 5 / 4 / 1 |
| 成交率 | 80.0% |
| 成交延迟 | 中位 8.2s，最大 28.0s |
| 本周新开后已平 / 仍开放 | 2 / 2 |
| 本周新开已实现收益 | +29.34U |
| 开放仓毛浮动（约 04:00Z） | ADA +0.86U、ZEC -5.82U，合计 -4.96U |
| 带入仓本周实现收益 | XRP +7.48U、BTC +3.13U，合计 +10.61U |
| 本周全部平仓 | 4 胜 / 0 负，+39.95U |
| 方向 | 5 次提交全部为空头 |

本周新单：UNI #51 +18.22U / +11.80%，EDGE #52 +11.11U / +6.98%；两者均在下破后延续，并由上移保护止损锁盈。ADA #53 仍小幅有利。ZEC #54 已从入场 484.84 反弹至约 493.61，毛浮亏约 -5.82U；模拟保护 stop-market 仍为 open，止损 496.96。当前没有人为干预依据。

唯一零成交是 08-12 08:50Z 的 ZEC 空单，475.76 挂单约 10 分钟后撤销。其后 6h 最大有利路径 0.33%、最大不利路径 4.17%、末端方向收益 -2.47%，会先越过 2x 下的等效硬止损阈值。本周证据支持继续被动限价，不支持无条件 reprice 或主动吃单。

## DS V4 本周覆盖

| 项目 | 数量 |
|---|---:|
| 全事件 / 成功结果 | 10,399 / 10,393 |
| 覆盖率 | 99.94% |
| `agree` | 10,051 |
| `question` | 157 |
| `insufficient_evidence` | 185 |
| 无结果 / dead letter | 6 |
| schema 1.0 / prompt v1 | 446 |
| schema 1.1 / prompt v2 | 218 |
| schema 1.2 / prompt v3 | 9,735 |

5/5 入场提交均至少有一次成功 DS review，但 DS 是异步 shadow reviewer，不负责下单审批。ZEC 零成交单有创建与等待 review，最终撤单状态未被采集，所以生命周期覆盖并非 100%。

非一致项对账：

- 73 个 `signal_detection` 与 11 个 `risk_gate` question。可按冻结参考规则对齐的 82 个事件全部是 `btc_bull_1d=false` 的 long 核心突破；这是参考规则刻意排除 BTC gate、而生产 long 入口包含它造成的设计差异，不是实现漏单。
- 50 个 `execution` question 中，旧 schema 1.0/1.1 占 25 个，需按 legacy protective attribution 降级；schema 1.2 的 25 个仍主要把 stoploss 撤旧换新拆开。账本中 68 次换单 successor 间隔中位 2.1ms、最大 8.5ms，没有确认真实保护缺口。
- 7 个 `fill` question 中只有本轮 ZEC 未成交属于已确认 fill gap；其他旧事件不能直接当作 7 次漏单。
- 2 个 `order_submission` 均来自 schema 1.0，按旧保护单归属规则排除出优化证据。
- 6 个 dead letter：2 次请求失败、1 次 HTTP 503、3 次空输出文本。

## 限仓与机会成本

100 条原始 `same_side_limit` 观测按 pair/side、15 分钟连续窗口合并为 68 个候选簇。

| cohort | 完整样本 | 末端方向收益均值 / 中位 | 达移动止损激活幅度 | 达等效硬止损 |
|---|---:|---:|---:|---:|
| 被挡候选 6h | 66 | -0.10% / -0.15% | 9.1% | 10.6% |
| 被挡候选 24h | 51 | +1.00% / +0.68% | 35.3% | 29.4% |
| shadow 合格 6h | 5 | -1.15% / -1.01% | 0% | 20.0% |
| shadow 合格 24h | 5 | -1.54% / -2.37% | 20.0% | 80.0% |
| shadow 不合格 24h | 46 | +1.27% / +0.81% | 37.0% | 23.9% |

含义：短周期限仓有效；更长 24h 的确存在机会成本，但当前冻结 shadow 规则恰好没有识别出后续赢家。它选择“最弱占槽仓 R≤0 + 强候选”的 5 个案例，24h 有 4 个触及等效硬止损。问题不在于仓位数太少，而在于本周市场存在同向趋势扩散，后验上很多候选都走出来；直接加仓会同步放大相关敞口，历史 Cap3 又已否决。

BTC gate 过滤的 causal long 机会合并为 56 簇：6h 完整 n=51，均值 -0.72%、仅 27.5% 为正；24h 完整 n=37，均值 -0.36%、中位 -0.32%。本周证据支持保留 BTC 200DMA gate。

## 优化优先级

### P0：修 Auditor，不动策略参数（2026-08-13 已实现）

1. 已从运行时 `show_config.strategy_version` 获取真实版本；环境变量只作降级兜底。
2. 已将 stoploss cancel 与 500ms 内同 tradeId/purpose/近似 amount 的 successor 合并成 `replacement`。
3. 已显式记录 `gate.status=blocked, reason=btc_200dma_gate`。
4. 已从 Freqtrade 日志补采零成交交易的 `terminal_cancel`；只关联 schema 1.3 上线后持续观察并
   保存过详情的订单，并以持久化 cursor + 60 秒重叠读取新终态，避免首次部署回放 72 小时旧日志
   制造迁移噪音。
5. 已增加按事件时间查询索引。context bars 去重/压缩仍是独立存储优化，未与本次因果修复耦合。

事件契约升级为 schema `1.3` / prompt `freqtrade-causal-audit-v4`。历史 1.0～1.2 事件保持不可变，
因此本周既有统计不会被重写；新版本效果须从部署时点后的事件单独评估。
首次升级若发现早于 5 分钟回看窗的旧订单指纹差异，只更新观察基线，不回放成新 lifecycle 事件。

### P1：生产逻辑维持不变

- 不加第三个同向仓。
- 不启用当前 replacement shadow。
- 不改 `price_side=same`，不无条件追价。
- 不调整 -5% 杠杆口径硬止损、3%/5% trailing 或增加时间退出。
- 不因 UNI/EDGE 各一笔赢家调整白名单。

### P2：下一项可执行研究

已实现无交易影响的 `ENTRY-SNAPSHOT-v1`：策略允许入场时冻结 ADX、ATR、breakout_atr、
BTC gate、regime、occupied_state；Auditor 只有在随后发现真实入场订单后才关联该快照。累计至少
30 笔已平且胜负两组都有样本，再预注册一个单因素入场质量过滤器。

```text
Hypothesis ID: AUDITOR-STOP-REPLACE-COALESCE-v1
Observed repeated pattern: 50 个 execution question；确定性账本中 68 次正常保护换单中位间隔 2.1ms、最大 8.5ms。
First divergent stage: Auditor 生命周期归因。
Causal formula: stoploss cancel 后固定等待 500ms；同 tradeId/purpose/amount 出现 successor 则输出 replace，否则输出 unprotected_cancel。
Baseline: cancel 立即独立送审。
Single changed factor: 500ms coalescing window。
Pass gate: 正常换单假阳性归零，真实无 successor fixture 100% 告警，入场/退出事件数不下降。
Reject gate: 任一真实保护缺口漏报或订单关联退化。
Forward requirement: shadow 运行 7 天并人工对账全部非 agree。
```

## 分层图与目检

图表：`layered-week.png`。

`visual_review`：已打开原图目检。XRP、BTC 为周初带入仓，图中只展示本周价格与退出，不伪造本周入场信号；两者均在周内下跌后由保护止损锁盈。UNI、EDGE 新空单下破后出现连续趋势延伸；ADA 延伸后回吐；ZEC #54 入场后先下探再强反弹，当前靠近但未触及 496.96 止损。08-12 ZEC 零成交单位于局部低点，撤单后快速上冲。最佳被挡 UNI 案例随后明显下跌，证明确有机会成本，但不能替代 68 簇 cohort 统计。事件时间、订单、成交、止损与退出图层和账本一致。

## 2026-08-13 部署验收

- 04:41Z bot1 重启加载 `5.4.2-d48-riskcap-audit`，连续心跳为 RUNNING；交易公式与参数未变。
- 重启前后开放仓均为 ADA #53、ZEC #54；验收时各有且仅有一张 `ft_is_open=1` 的有效保护
  stop-market，价格分别为 0.1889、496.96。
- Bot Observatory 健康检查通过；LLM Auditor 与 Web 容器持续运行。Auditor 已写入 11 条
  `5.4.2 / schema 1.3 / prompt v4` 新事件，最近订单轮询为 `expected=0 / errors=[]`。
- 首次迁移从历史日志准确补录了本周 ZEC 零成交单的 09:00:11Z terminal cancel；同时发现旧
  observed-order 指纹会触发 454 条历史重试。已在发布过程中修正为：早于 5 分钟回看窗的旧差异
  只更新基线，terminal log 使用持久化 cursor + 60 秒重叠。修复后连续轮询不再回放旧订单。
- 回滚备份：远端 `/data/freqtrade/backups/auditor-20260813T0435Z`，包含部署前策略、Auditor
  源码、校验和与 2.2GB SQLite 快照。

## 限制

- 本周仅 5 次提交、2 笔新开已平，收益结论仍为方向性；无亏损分母，PF 不可定义。
- 全部样本为空头，无法评价多头腿。
- 24h 路径是后验标签，未计费用、仓位竞争与组合相关性。
- dry-run 不能验证真实 maker 队列和 stop-market 滑点。
- schema/prompt 在本周发生版本切换，旧结果与 v3 只能分层解读，不能无条件合并为同质模型判断。
- schema 1.3 / prompt v4 属于部署后的前向修复，本报告窗口没有新版本结果，不能用实现完成替代 7 天 shadow 对账。
