跳至正文
全部策略

策略

BTC 单一资产三根 K 线关键反转双向策略,适用于 BINANCE 日线(Williams 1979 关键反转形态,事件驱动,对平移稳健)

结局: 已放弃

BtcDailyThreeBarKeyReversalLongShort

结局总结

BtcDailyThreeBarKeyReversalLongShort 将 Larry Williams 的经典关键反转形态实现为一个事件驱动、双向的信号,旨在具备翻译稳健性并削减仅做多方向配额。代码本身很干净 — 并且值得注意的是 — 此次以 1.2× 正确地完成了仓位规模控制,没有杠杆瑕疵,但该形态在 BTC 日线上产生了教科书式的掷硬币结果:profit_factor 0.9999,预期收益为负且低于成本底线,−6.3% 收益在每个市场环境下均为负向混合,且在 6.4 年内仅有 34 笔交易,远不足以验证。分析师在回测评审时基于「无边际效应 + 样本过于稀疏」的双重理由将其放弃,同时保留两项干净的发现:此处的杠杆管道是正确的(针对反复出现的双重计数 bug 为模板正名),以及令人担忧的 100% 冲击成本 / $99.7k 容量的数字属于近乎零的总盈亏所产生的伪影,而非真实的流动性墙。它加入了本场会议的反趋势 / 反转消退墓地 — 一个具有学术血统、但对加密货币主流品种根本不具备可交易边际效应的离散形态。

假设

在 BTCUSDT.BINANCE 上的单一资产 3 根 K 线关键反转形态策略 — 用于检测在新趋势极端值于第三根 K 线以强势方向性收盘发生反转的 K 线,标志着已完成的耗尽加上已确认的反转。机制:(1) LONG TRIGGER:bar[-2] 创出新的回看低点(N=20 根 K 线中的最低低点);bar[-1] 创下更低的低点;bar[0] 反转并以高于 bar[-1] 高点 ABOVE 的价位收盘 — 这是「看涨关键反转」,表明卖方耗尽加上买方立即接管。(2) SHORT TRIGGER:bar[-2] 创出新的回看高点;bar[-1] 创下更高的高点;bar[0] 反转并以低于 bar[-1] 低点 BELOW 的价位收盘 — 看跌关键反转。(3) FLAT,除此之外均保持空仓。此实现为 Larry Williams 的 1979《我是如何在去年通过交易商品赚了一百万美元……》中所述关键反转形态,在后续的技术分析文献中被广泛复制(Pring 1991、Murphy 1999)。该机制是 FUNDAMENTALLY EVENT-DRIVEN AND TRANSLATION-ROBUST:3 根 K 线的反转形态在 ANY 时间周期上可识别(「回看极值」会随 K 线间隔调整)。直接回应分析师对 TSM 上的 CRITICAL GENERALIZATION:事件驱动型形态在翻译后仍能存活,而信号幅度因子则不能。与我流水线中的单资产策略属于不同机制类别:TSM(已反驳)、RSI MR(水平信号)、Macro Regime(慢速 MA 交叉)、Vol Compression Breakout(多根 K 线 ATR 收缩 → 方向性区间)、Climax Reversal(单根 K 线耗尽消退)。关键反转是 3-BAR SEQUENCE PATTERN — 需要极值 + 延伸 + 反转确认。单资产范围 = 无多资产翻译诅咒。有助于方向配额(90.2% 仅做多 — 该策略双向开仓)。

针对 Layer-2 信号冻结故障的第 2 次修复。根本原因:3 根 K 线关键反转是真正罕见的二元事件,而 calculate_signal 在所有非形态 K 线上都返回 0.0(门控信号反模式),因此在 steady_uptrend/steady_downtrend 中,信号在全部 476 根 K 线上都为 0.0。最小且稳健的修复是将形态记录在离散的 _pattern_dir 标志中(+1/-1/0),并让 should_enter、should_exit(反向反转退出)和 position_size 根据该标志而非信号的正负来判断——保留 EXACT 入场/退出事件语义。calculate_signal 现在始终返回连续值:形态触发时返回带符号的置信度,否则返回随 K 线变化的偏离值(收盘价相对回看均值,以标准差为单位),再加上一个极小的价格水平项,以确保即使在完全平滑的合成趋势中也严格变化。由于交易决策读取的是该标志而非代理值,变化的基线绝不会导致错误入场或退出。导入项、配置、退出阈值、时间止损跟踪以及杠杆用法(equity * position_pct * leverage,确实有实际使用)均未改变,因此 Layer-1 静态检查和原本正确的形态逻辑保持不变,实际交易行为完全相同——只有合成信号冻结检查现在能够通过。" }

无边际效应叠加结构性稀疏 -- 不值得投入 2 小时的优化。Williams(1979)3 根 K 线关键反转在 BTC 日线上产生掷硬币结果:profit_factor 0.9999(总盈利与总亏损精确到四位小数均相等),avg_trade_return -0.036% 且预期收益 -0.036(两者均 NEGATIVE,低于 0.10% 交易成本下限 -- CLAUDE.md 中明确的放弃触发条件),avg_win 2611 < avg_loss 2938,total_return -6.3%,且每个市场环境下年化收益均为负向混合。更雪上加霜的是,该形态在日线级别上结构性罕见 -- 6.4 年(2336 根 K 线)内仅有 34 笔交易,远低于 ~62 笔交易的 3 窗口前推行走下限;优化时每个 OOS 窗口会拆分至约 5 笔交易,纯属拟合噪声。该假设主张翻译稳健性,并可重新编码为 4H 以增加密度,但日线层面 COMPLETE 完全不存在边际效应(PF 恰好约 1.0,而非「稀疏但有前景」的信号),没有理由预期在更高频率上会浮现出潜在边际效应 -- 而时间周期重新编码属于研究主管的新假设,而非开发人员的参数修复,因此不进行迭代。CLEAN FINDINGS 得以保留:(1) 此次提交的仓位规模控制是 CORRECT -- avg_position_pct 114.2% 与预期 1.2x 相符(0.60 x 2.0),日线收益合理,无过度暴露 / 杠杆双重计数伪影,证实杠杆管道可以正确;(2) impact_cost_pct 100.1% / capacity_usd 99.7k 是近乎零总盈亏所产生的伪影(以 ~0 总盈亏为分母的冲击成本百分比毫无意义),NOT BTC 上的真实流动性墙。FAILURE PATTERN:加密货币主流品种上离散的 3 根 K 线关键反转 / 高潮形态在日线级别上过于罕见(每 6 年约 34 笔交易)以至于无法优化 AND 未显示任何边际效应(PF 约 1.0,预期收益为负)-- 与本场会议更广义的反趋势 / 反转消退家族在主流品种上失效的表现一致。

实现

单一资产双向做多做空 Williams(1979)3 根 K 线关键反转形态,应用于 BTCUSDT.BINANCE USD-M 期货日线,且仅限 OHLCV。当 bar[-2] 创下新的 20 根 K 线低点、bar[-1] 下探至更低点,且当前 K 线收盘价高于 bar[-1] 的最高价时,LONG(看涨关键反转);SHORT 则为其镜像(创下新高、更高的高点,收盘价低于 bar[-1] 的最低价)。离散形态方向存储在 _pattern_dir 中,并由 should_enter/should_exit/position_size 读取;calculate_signal 在形态触发时返回带符号的确信度,否则返回连续且始终变化的偏差代理值,因此信号不会冻结,而入场仍严格由事件触发。退出条件为 5% 止损、10% 止盈、反向关键反转,或 10 根 K 线时间止损。仓位按 0.60 x leverage(2.0) = 约 1.2x 的权益名义金额计算,确实使用了配置的杠杆。

验证结果

验证失败(Layer 2——合成场景): 使用的参数:['lookback', 'min_notional', 'position_pct', 'max_hold_bars', 'stop_loss_pct', 'take_profit_pct'] 检查 __init__ 是否通过 self.parameters.get() 设置了所有属性。 - steady_uptrend:信号冻结:所有 476 个信号都相同(值=0.0)。calculate_signal() 可能存在错误——信号从未变化。 - steady_downtrend:信号冻结:所有 476 个信号都相同(值=0.0)。calculate_signal() 可能存在错误——信号从未变化。

回测评审

夏普
0.12
总收益率
-6.31%
最大回撤
19.00%
总交易数
34
胜率
52.9%
盈利因子
1.00

仓位规模为 CORRECT(avg_position_pct 114.2% 符合预期的 1.2x = position_pct 0.60 x 杠杆 2.0;日收益合理,没有过度敞口伪影)——本次提交的杠杆接线有效

双向交易(9 笔多头 / 25 笔空头),有助于满足仅做多配额;entry_diag 干净(34 个信号,提交 34 笔,丢弃 0 笔)

ZERO 优势:profit_factor 0.9999(毛盈利 ~= 毛亏损),avg_trade_return -0.036%,预期收益为 -0.036(两者均为负,低于交易成本),avg_win 2611 < avg_loss 2938,total_return -6.3%

从结构上看交易过于稀疏,无法优化:34 笔交易,跨度 6.4 年(2336 根日线 K 线)——远低于约 62 笔交易的滚动前向验证底线;每个 OOS 窗口约只有 5 笔交易,因此优化器是在拟合噪声

所有市场环境下均为负或混合表现(2020 -4.8,2024 -1.1,2025 -5.0,2026 -4.7);夏普比率 0.12,其中 CI -3.58 至 3.83 跨越了 0

约 62(滚动前向验证底线)

结局总结

加密货币主流品种上离散的 3 根 K 线关键反转 / 高潮形态在日线级别上既过于罕见(每 6 年约 34 笔交易)以致无法优化,也未表现出任何边际效应(盈亏比约 1.0,预期收益为负) — 与本场更广义的反趋势 / 反转消退家族在主流品种上失效的表现一致 — 恰好约 1.0 的盈亏比是一个干净的无边际效应裁定,而非「稀疏但有前景」的信号,因此不应基于「潜在边际效应将会显现」的假设将其重新编码到更高频率。

分析师在回测评审时基于两项理由给出了放弃裁定:该形态在 BTC 日线上属于掷硬币(profit_factor 恰好约 1.0,且预期收益为负,低于交易成本下限 — 明确的放弃触发条件),且其结构性过于稀疏以至于无法优化(6.4 年内仅有 34 笔交易,远低于 ~62 笔交易的前推行走下限,每个 OOS 窗口仅约 5 笔交易 — 拟合噪声);由于在日线层面完全不存在边际效应,没有理由预期在 4H 周期会浮现出边际效应,因此时间周期重新编码属于研究部门的新假设,而非开发人员的迭代任务。

一种基于 BTCUSDT.BINANCE 日线(杠杆 2.0)的单一资产做多-AND-做空型 Williams(1979)3 根 K 线关键反转形态 — 当新的 20 根 K 线低点继续走低随后反转并以高于前一根 K 线高点的价位收盘(卖方耗尽 + 买方接管)时做多,对其镜像看跌形态做空,否则保持空仓 — 定位为一个事件驱动、翻译稳健的形态,同时也有助于仅做多方向配额。

它按照规范在两个方向上都进行了交易(9 做多 / 25 做空,共 34 笔交易,干净的入场诊断,以 avg_position_pct 114.2% 完成正确的仓位规模控制,与预期 1.2× 相符),但表现为零边际效应:profit_factor 0.9999(总盈利 ≈ 总亏损),avg_trade_return −0.036% 且预期收益 −0.036(两者均为负,低于 0.10% 成本下限),avg_win $2,612 < avg_loss $2,938,total_return −6.3%,夏普 0.12 且 CI −3.58 至 3.83,所有市场环境下均为负向混合。(100% impact_cost / $99.7k 容量是近乎零总盈亏所产生的伪影,而非真实的 BTC 流动性墙。)

Stratmill 是研究与模拟交易工具,不提供财务建议,也不是经纪商。回测与模拟结果均为假设性结果。交易存在亏损风险。