# Freqtrade 最近两周挂单与策略技术审计

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

## 决策

策略当前没有出现需要立即改生产参数的证据。最近两周新开并已平的 20 笔交易净赚
24.13 USDT，胜率 60%，按绝对盈亏计算 PF 1.394。最早的已确认订单链路分歧是
`order -> fill`：26 次入场挂单中 4 次零成交超时撤单，成交率 84.6%。但这 4 次漏单的
24h 后验路径中，3 次没有支持追价成交，只有 1 次 POWER 曾达到移动止损激活幅度，因此
不支持把 `price_side=same` 改为主动吃单。

在更上游的全部候选中，有 170 个去循环重试后的 `same_side_limit` 拦截簇。它们属于
`strategy signal -> risk gate` 分歧，但后验结果支持维持风控：按 pair/side 每 24h 去重后
n=69，24h 末端方向收益均值 -0.60%，37.7% 先触及等效硬止损，仅 31.9% 达到移动止损
激活幅度。当前 replacement shadow 的 12 个合格簇表现还劣于 40 个不合格簇，不能晋升。

## 运行与证据真相

- 容器实际命令加载 `VolatilityBreakoutRiskCap`，心跳版本为
  `5.4.1-d48-riskcap-observe`，数据库 `tradesv3-v5.sqlite`，dry-run。
- 配置仍有 12 对，但 Binance 已将 VANRY 标为 inactive；运行时实际只有 11 对。
- 当前两个开放订单均为 XRP #47、BTC #50 的保护性 stop-market，不是滞留入场挂单。
- 订单、成交、止损、退出来自生产 SQLite 和日志。5m 后续路径来自 Binance USDT-M
  公共 K 线，只用于 hindsight outcome，不冒充 Freqtrade 策略指标。
- 冻结参考规则 `d48-core-breakout-v1@1.0` 到 2026-08-10 01:56:28Z 才生效；此前两周
  不允许追溯统计 `SIGNAL_DETECTION_GAP`。

## 两周 cohort

| 指标 | 结果 |
|---|---:|
| 入场挂单 | 26 |
| 成交 / 零成交撤单 | 22 / 4 |
| 成交率 | 84.6% |
| 入场成交延迟 | 中位 7.7s，p90 71.0s，最大 532.8s |
| 新开后已平 / 仍开放 | 20 / 2 |
| 已平胜负 | 12 / 8 |
| 净收益 | +24.13 USDT |
| PF（绝对盈亏） | 1.394 |
| 胜率 | 60% |
| 盈利单 | 平均 +4.65%，平均 gross MFE 7.60% |
| 亏损单 | 平均 -5.07%，平均 gross MFE 2.23% |
| 持仓时间 | 中位 10.44h，平均 25.09h |
| dry-run 止损滑点 | 均值 -0.0011%，最差不利 +0.027% |

12 个赢家全部由已激活的移动止损退出，8 个输家全部打硬止损。这是趋势策略预期的双峰
结果，不是退出实现错误。退出后 24h 同方向路径均值 -1.12%，57.1% 会触及等效硬止损，
没有证据重开已封盘的止损/移动止损/时间退出参数。

单币结果样本只有 1～3 笔。POWER +17.79U、ADA +11.02U、VANRY +9.44U；UNI
-8.53U、EDGE -8.29U、BNB -7.76U。不能据此删币或保币，尤其已有 EDGE 消融和流动性
过滤的历史否决证据。

## 四次零成交撤单

| 提交时间 | Pair | 6h 后验 | 24h 后验 | 判断 |
|---|---|---:|---:|---|
| 08-05 22:55Z | BNB | -0.41% | +0.23% | 近似无影响 |
| 08-06 22:55Z | POWER | +4.98% | -5.47% | 唯一明显漏掉的趋势段，随后反转 |
| 08-08 00:35Z | BNB | -0.53% | -1.91% | 撤单避免追入弱信号 |
| 08-08 22:15Z | BNB | -0.25% | -1.78% | 撤单避免追入弱信号 |

这里的收益是未杠杆价格方向收益，且不知道真实排队位置。n=4 只支持继续观测，不支持改
主动成交。15.4% 漏单率高于 07-28 核定的 8.5%，应列为执行 SLO 告警，但需更多严格匹配
机会或小资金实盘验证。

## DS V4 复核

成功使用 `deepseek-v4-flash` 对精简后的完整 cohort 做结构化复核：914 input tokens、
8,988 output tokens，其中 7,967 reasoning tokens。DS 的主要判断与确定性审计一致：维持
dry-run、不要改止损/移动止损、不要晋升 replacement shadow、优先修复审核器归属和延长
前向因果覆盖。

需要人工纠正 DS 的一点：它把“参考规则尚未生效”称作最早分歧。严格按层契约，这不是策略
分歧，而是 `not_assessable` 证据边界；不能据此否定此前订单，只能禁止做漏信号归因。

现有事件级 DS worker 只覆盖 08-09 03:55Z ～ 08-10 02:20Z。快照时 432 条成功结果中
429 条 agree、2 条 insufficient、1 条 question。唯一 question 把 BTC #50 的保护止损更新
误关联到当前无动作 K 线；账本证明止损属于已成交空仓，所以这是 auditor collector 的订单
角色/生命周期归属缺陷，不是策略提交订单缺陷。

## 当前问题与优化优先级

### P0：修复 LLM auditor 的订单归属

保护性止损首次被 worker 看见时不能一律标成新的 `order_created` 并绑定当前 K 线。应先按
`ft_trade_id + purpose=stoploss + original createdAt` 关联已有成交仓位；历史基线发现应记为
baseline/order_updated。验收条件：保护止损不再触发 `order_submission` 假阳性，同时真实入场
订单 created/updated/fill 不丢失。

### P1：对实际 11 对 universe 重新建立离线基线

VANRY inactive 使生产运行域与已验证的 12 对不一致。先运行完全相同的 11 对基线，不把近期
单币盈亏当 alpha。训练 2026-01-01～05-01，验证 2026-05-01～07-10，5m、fee 0.00035、
protections、`--cache none`、相同起始敞口。按现有协议：两段正收益、PF 高于各自基线、DD
不恶化、交易数不低于基线 70%，且改善不能只来自槽位重排；否则只接受“运行域变更”事实，
不包装成策略优化。

#### 11 对单因素验证结果（2026-08-10 追加）

已按同一 RiskCap 类、5m、1000 USDT、2x isolated、最多 4 仓、fee 0.00035、
protections、`--cache none` 顺序完成训练与验证。唯一变化是移除交易所已 inactive 的 VANRY：

| 窗口 | 12 对基线收益 / PF / DD / 笔数 | 11 对收益 / PF / DD / 笔数 | 裁决 |
|---|---:|---:|---|
| 训练 2026-01-01～05-01 | 16.69% / 1.141 / 11.37% / 335 | 14.26% / 1.136 / 11.58% / 304 | 未优于基线 |
| 验证 2026-05-01～07-10 | 11.68% / 1.223 / 7.44% / 175 | 5.01% / 1.102 / 7.88% / 166 | 明显失败 |

因此该单因素变更 **NO-GO**：不把移除 VANRY 宣称为策略收益优化，也不借此调整其他参数。
交易所过滤后生产事实上只能运行 11 对，这是运行域限制；配置清理应与 alpha 裁决分开处理。
两份本地归档均已删除内嵌 config 后保存。

图表：`active-11pairs-comparison.png`。目检确认两条权益曲线在训练段已经持续分离，验证段
6 月以后差距进一步扩大；11 对曲线并非以更低回撤换取收益下降，DD 同样略差。图层、窗口与
表格指标一致，图表未发现错位。

### P2：先补齐真实入场特征，再研究亏损单抑制

当前只从 08-03 起保存被挡候选的 ADX/ATR/breakout snapshot，历史已成交入场没有同口径特征。
因此不能从 8 个止损单反推一个“更好 ADX/突破距离”阈值。应给已提交订单也保存同样的因果
snapshot，累计后再做赢家/输家/未成交三组比较。当前数据甚至显示更高 ADX、极端突破距离在
shadow 样本里没有单调改善，禁止直接调阈值。

### P3：执行层只做低优先级、单因素 shadow

若后续零成交累计达到预注册样本，可测试：基线为 10 分钟被动限价；变体只增加一次 60 秒后的
同侧 post-only reprice，总超时仍为 10 分钟。必须记录盘口与队列代理。通过条件是严格匹配机会
中成交率提高、扣费后路径不劣化、硬止损率不升；否则拒绝。不能重新测试已否决的无条件
`price_side=other`。

## 明确不支持的改动

- 不把同向仓位上限从 2 放宽到 3。
- 不启用当前 replacement shadow 真换仓。
- 不切换为主动吃单或无条件追价。
- 不调整 -5% 硬止损、3%/5% trailing 或加时间止损。
- 不按本轮 1～3 笔单币结果删除 EDGE/UNI/BNB，或保留已 inactive 的 VANRY。
- 不据本轮全空头样本评价多头腿。

## 图表目检

`layered-cases.png` 同时展示 5m 入场上下文和 15m 完整结构。目检确认：BTC #42 在短暂顺向
移动后持续反转至硬止损；XRP #44 捕获连续下跌并由移动止损锁盈；最后一笔 BNB 零成交撤单后
24h 上冲，撤单避免追空；BTC #50 的开放订单为价格上方的保护止损。图层与账本事件一致，
未发现事件错位；Binance K 线仅作为价格 provenance。

## 限制

- 20 个已平样本足以做机制方向判断，仍不足以晋升新策略规则。
- 全部 22 个成交都是空头，长腿未被本窗口检验。
- dry-run 无法验证真实 maker 排队、stop-market 滑点和 API 极端行情稳定性。
- 因果参考规则只覆盖窗口末端约 34 分钟，策略检测层的两周漏信号率不可评估。
