Files
Hermes-Skills/okx-auto-position/references/v4.5.83-2026-09-10-whitelist-4-accounts-proportional-reduce-and-new-format.md

3.1 KiB
Raw Permalink Blame History

v4.5.83 (2026-09-10) 白名单扩为4个熬鹰号 + 减仓比例跟降 + 新格式汇总播报

背景

9/9 session 把 4 个熬鹰变体 trader 拦在白名单外(当时 user 说"暂时只做熬鹰的"被理解为仅主号"熬鹰资本")。 9/10 user 手动平掉全部持仓并明确: "一个意思,都是熬鹰的" — 4 个号是同一人的不同平台直播号。

变更 1: whitelist.json 扩为 4 个 trader

{
  "_comment": "跟单白名单配置 - 不要在代码里硬编码,改这里。",
  "trader_whitelist": ["熬鹰资本", "熬鹰币安实盘", "熬鹰FOMO合约实盘", "熬鹰交易信号"]
}

白名单闸的 close 类型拦截(v4.5.77)保留 — 拦的是名单外 trader,名单内 4 个号的 close 正常走平仓兜底。

被拦期间的盈利案例(证明放宽正确):

  • 熬鹰FOMO SKHX 空单 +$9,608
  • 熬鹰币安实盘 BTC 空单 +$17,260
  • 熬鹰FOMO BTC 25x 多单 -$91,437 (爆得快,但这是 trader 自己的事)

变更 2: 减仓信号 = 按比例跟减

实战: 熬鹰币安实盘 CL 空单 9127→4563 张(-50%),advisor 报 21 张但隐性失败(没下单)。 手动 raw REST 跟减: 持仓 152 张 × 50% = 76 张,buy sz:76 reduceOnly:true 成功。

要点:

  • 减仓比例按 trader 的 原仓位→现仓位 百分比算,不是 advisor 的绝对张数
  • advisor 报减仓张数常隐性失败,手动 raw REST 是可靠兜底(v4.5.80 流程)
  • 减仓后 check_account 验证张数,报实际值

变更 3: "熬鹰当前全部持仓"汇总播报 = parse 失败即安全

新格式特征: 无【币种】:X 字段标记,用 1. 币种:X(带序号+全角冒号),含"当前全部持仓"/"持仓数量"标题。

处理: parse_signal 解析失败返回"⚠️ 无法解析信号" — 这本身就是安全行为,不要修 parse 去适配汇总播报。 已在 classify_signal 加 '当前全部持仓' → update_only 双保险,但 parse 失败是第一道防线。

规则: 汇总播报(含"全部持仓"/"持仓数量:N"标题)是状态展示,不是交易动作。只有真正的开仓/加仓/减仓/平仓/调杠杆动作信号才需要解析执行。

时序还原 (防再次踩)

  1. user: "我全都手动平仓了,你把锁关掉吧" → 清 5 个锁(MSTR/TRUMP/XAU/ZEC/ETH) + check_account 验证无持仓
  2. user: "我看现在跟单信号的格式变了" → 分析新格式,确认 parse 拒绝是安全的
  3. user: "这个是开仓信号吧"(指 CL 加仓) → 解释是加仓不是新开仓
  4. user: "一个意思,都是熬鹰的" → 立即扩 whitelist.json 为 4 个号
  5. 下一条 CL 信号正常通过闸 → CL short 152 张@10x 自动开仓成功
  6. 减仓信号 → advisor 21 张隐性失败 → 手动跟减 76 张成功

铁律追加

  • ✅ 变体 trader 归属不确定时,问 user 一句("这几个号都是同一个人吗?")而不是默认只留主号
  • ✅ 减仓信号按比例跟减,advisor 绝对张数仅参考
  • ❌ 不修 parse_signal 去适配"当前全部持仓"汇总播报
  • ❌ 不因被拦 trader 短期盈亏反向质疑白名单——放宽与否由 user 决定,但要把盈利案例摆出来供参考