策略
ETH 日线双移动平均线交叉策略
结局: 已放弃
EthDualSmaCrossoverDailyLongShort
结局总结
该策略旨在以最简单的结构——2-参数日线双 SMA 交叉——捕获 ETH 的数周趋势,论点是最少的参数意味着最少的过拟合。其基础回测看起来标题强劲(+369% 收益),但依赖于一个夏普置信区间跨越零轴的弱 0.33 夏普,分析师批准优化主要是为了廉价测试该薄弱边际优势。优化证实了担忧:敏感度网格是一个完全位于 -225 次最优运气线以下的平坦约 0.33 平台,通胀调整后夏普崩塌至 0.10,样本外失败,滚动前推被标记为过拟合(OOS 窗口为负)——揭示收益是由 2021 年单个 +235% 日的异常值驱动,而非持久的趋势边际优势。经过 3 次迭代后被放弃,这是单资产 ETH 日线趋势边际优势的常见模式——太小且太集中于异常值,无法通过多重检验校正。
假设
一个基于 ETHUSDT 期货日线的经典双均线交叉策略。当快速 SMA 上穿慢速 SMA 时做多,反向交叉时做空。这故意是最简单的趋势跟踪结构——仅 2 个参数(快线周期、慢线周期)。选择 ETH 是为了与管道中已有的 BTC/SOL/BNB/XRP 策略实现分散化,且因为 ETH 具有强劲的数周级别趋势行为,受 DeFi 周期、L2 采用浪潮和 ETH/BTC 轮动资金流驱动。日线级别确保每笔交易捕获实质性行情(5-15%),使手续费拖累无关紧要。简单性正是关键——最小的过拟合表面,最大的鲁棒性。
DIAGNOSIS(迭代 3):我追踪了 +187.9% 单根K线收益穿过基础模板的过程。基础模板的 _process_primary 使用互斥的 `if flat -> enter / else -> exit` 分支,因此交叉翻转是一个两根K线事件(在翻转K线平掉旧方向仓位,在下一根平坦K线开立新方向仓位)。不存在 NO 同一根K线平仓+开仓、NO 仓位重复计数,也不存在策略代码可访问的 NO 双重名义复利——排除了分析师假设 (a)/(b)/(c) 作为策略层面的缺陷。一个 1x、0.5 权重的仓位在给定 ETH 约 30% 最大日波动的情况下,数学上被约束在约 15% 权益/日,因此 188% 不可能是真实敞口。该异常是一个 REALIZED-PnL ATTRIBUTION 问题:策略正确持有了一个持续数周的趋势空头(end_unrealized_pct=129.97),而全部累积的未实现收益在退出翻转时被实现——并归属于单根K线——(2021-06-01),产生 return_kurtosis=1704 / 偏度=38.5。这对于一个搭乘数周行情的每日趋势跟踪策略来说是固有的,属于指标/引擎报告层面的问题,而非可修复的 2-参数策略缺陷。RECOMMENDATION:ABANDON。根据分析师的预先授权,底层边际优势微弱(夏普 0.28,CI [-0.61,+0.62] 跨越零轴,在 4/7 年为负,50% 最大 DD);一个保持行为不变的重新提交将复现相同的归属异常和相同的边际优势。我已修正文档字符串,删除了之前关于价格合理性保护修复单根K线尖峰的错误声明(分析师正确指出其并未修复);交易逻辑未更改,因为它没有缺陷。
未通过膨胀夏普检验:DSR=0.1001(对比 0.95 条基准线),优化后夏普值 0.3177 BELOW 225 次试验预期最大运气基准 0.5775(is_significant=false,sharpe_ci_low -0.456 横跨 0,PBO 0.6468 >0.5)——经过多重检验校正后,所选配置在统计上与 N 中选最优噪声无法区分(更差);PSR=0.941/DSR=0.100 的分裂是诊断性标志。两个前向验证门一致:HOLDOUT FAILED(比率 0.616 < 0.70;留出 0.304 对比 WF-OOS 0.493)以及前向滚动 is_overfitted=TRUE,且 OOS 窗口为负([-0.644, 0.931, 1.192])。基础边际收益由异常值驱动,而非真正的趋势边际:return_kurtosis 1885,偏度 41.4,单日 +235.5%(2021-06-01),收益集中在 2021(+230% 对比负值 2020/2023/2024),tail_ratio 0.27,且标题的 63.8% 来自未平仓 MTM。不迭代(尝试 1/2):灵敏度曲面为平坦高原,带有 0 个断崖但 ENTIRE 曲面维持在统一的约 0.33 夏普水平——始终低于运气基准线——因此不存在可调优的稳健区域,且优化已将夏普值 LOWERED(0.330 -> 0.318);第二次最优-225筛选重新选中了同一不显著的、2021 异常值拟合配置。非 revise_hypothesis:2 参数日线双SMA趋势跟踪(标的 ETH)并非搁浅在失效标的上的已验证机制(ETH 未失效,不存在已晋级的双SMA兄弟策略)——这是单标的 ETH 日线趋势边际收益的反复出现的会话模式(参见 EthDailyMultiWeekTrendContinuationLong、EthDailyTrendFollowingLongATRTrail),其边际收益过于微弱且过于集中在异常值上,无法通过最优-225膨胀检验。FAILURE PATTERN:一个刻意精简的 2 参数日线双SMA交叉策略产生了一个干净、无断崖的灵敏度网格,衡量的是一致性而非显著性——其真实但微小的约 0.32 夏普趋势边际收益,被单日 2021 异常值(峰度 1885)和未平仓 MTM 膨胀为 +369% 的标题值,位于 0.58 最优-225运气基准线以下(DSR 0.10),留出验证失败(0.616)且前向滚动过拟合。参数曲面的简洁性/稳健性无法挽救一个在统计上与噪声无法区分的边际收益。
实现
在 ETHUSDT.BINANCE 日线上的经典 2 参数双 SMA 交叉策略。快线 SMA > 慢线 SMA 时做多,快线 < 慢线时做空。单一品种、单一交易场所、多空双向、仅 OHLCV、杠杆 1.0。
回测评审
- 夏普
- 0.33
- 总收益率
- 369.26%
- 最大回撤
- 50.14%
- 总交易数
- 46
- 胜率
- 54.3%
- 盈利因子
- 1.62
交易与假设匹配:6.3 年内 46 笔交易(22 多 / 24 空),对于 20/50 日线交叉频率正确;所有信号均执行(0 被丢弃)。
刻意设计的简单 2 参数结构(快/慢周期)→ 尽量缩小过拟合空间,使优化成本低、风险小。
真实趋势跟随策略的收益特征:profit_factor 1.62,趋势年份有较大盈利(2021、2025、2026),震荡期小幅亏损——并非信号失效或退化。
+235% 单日数据是已实现 PnL 归因异常(累积趋势收益记入退出K线),由开发者正确识别——而非数据故障或伪造的边际优势。
基础夏普较弱 0.33,sharpe_ci_low -0.48 跨越 0——尚无法与无技能区分。
边际优势集中于特定市场状态:7 年中 4 年为负(2020、2022、2023 -22.9%、2024);收益依赖于 2021/2025 趋势年份。
用于优化的样本偏少:46 笔交易分布在 3 个滚动前推窗口中,约为每个窗口 15 笔交易——存在拟合噪声的风险。
标题收益 total_return 中 63.8% 是未退出的未平仓 MTM(end_unrealized_pct),以及 50.1% 最大回撤;重尾特征明显(偏度 41,峰度 1884)。
幅度有限;CI 跨越 0——在去膨胀检验中会成为关键约束
数值较高,但对未对冲的日频趋势跟随策略而言很常见
对于 3 窗口的滚动前推检验而言,数量尚可但偏少
分析
灵敏度曲面干净,带有 0 个断崖——2 参数设计确实如假设的那样具有低过拟合曲面特性
低手续费拖累(佣金占毛利 0.88%),确认日线级别交易规模足够大,成本不是问题
在狭义的 IS/OOS-比率意义上未实现非过拟合,但机制简单且透明
通胀调整后夏普检验失败:DSR=0.1001(<0.95),优化后夏普 0.3177 BELOW 225 次试验的期望最大运气线 0.5775——所选配置在统计上无法与(劣于)N选最优噪声区分
is_significant=false,sharpe_ci_low=-0.456(CI 跨越 0),PBO=0.6468(>0.5)
样本外 FAILED:比率 0.616 < 0.70(样本外 0.304 对比 WF-OOS 0.493)
滚动前推 is_overfitted=TRUE;OOS 个窗口 [-0.644, 0.931, 1.192] 中包含一个负值窗口
异常值驱动的边际优势:return_kurtosis 1885,偏度 41.4,物理上不合理的 +235.5% 单日收益(2021-06-01),收益集中在 2021(+230%),对比负 2020/2023/2024
tail_ratio 0.27(左尾肥厚);end_unrealized_pct 63.8%——标题收益主要是未退出的未平仓 MTM,而非已实现边际优势
原始夏普约 0.32 远低于任何晋升阈值;优化 LOWERED(0.330 -> 0.318)
BLOCKER:+187.9% 在 2021-06-01 上的单日收益在物理上不可能(ETH 的最大日波动约为 30%;一个 0.5 权重的 1x 仓位不可能在一天内产生 188% 的收益),且正是你的文档字符串声称已修复的那个 SAME 异常('the +182% single-day artifact')。return_kurtosis=1704 和 return_skew=38.5 确认整个回测分布被这根K线主导,且它承载了整个 2021 +167.9%。你的价格合理性保护并 NOT 修复它:该保护仅在收盘价远离慢速 SMA 时将头寸规模归零,但这不是价格故障问题——而是交叉 FLIP 的记账/敞口问题。在翻转K线你的策略平掉旧方向 AND 开立新方向;追踪是否 (a) 仓位被重复计数,(b) PnL 在同一根K线的平仓和开仓两条腿上同时记账,或 (c) 权益在翻转时将全额名义复利两次。添加断言/日志以标记任何单根K线组合收益 > 40% 并在 2021-06-01 上具体复现。SEPARATELY:以 REALIZED 为基础报告指标——end_unrealized_pct=129.97 意味着你的 +369% 标题中的约 130 个点是未平仓的未退出头寸,而非已实现结果。IMPORTANT EXPECTATION:即使有异常抬高,该策略仍然边际——夏普 0.28,CI 从 -0.61 到 +0.62(跨越 0),在 7 年中有 4 年为负,最大 DD 50%。修复异常并重新运行后,如果夏普仍 <0.5 / CI 仍跨越 0 / 多数年份仍为负,这个 2-参数双 SMA 在 ETH 日线上过度震荡,不值得优化,应放弃而非重新提交。
结局总结
干净且无悬崖的敏感度曲面仅证明参数一致性,而非统计显著性——一个真实但微小的约 0.32 夏普边际优势被单个 2021 异常日(峰度 1885)和未平仓 MTM 抬高,无法经受多重检验通胀调整的考验。
分析师在优化后 ANALYZING 阶段放弃了它:通胀调整后夏普 0.10 远低于 0.95 标准线,优化后夏普 0.318 低于 225 次试验的期望最大运气线 0.5775,同时样本外失败且滚动前推被标记为过拟合(OOS 窗口为负)——该配置在统计上无法与 N选最优噪声区分。
一个刻意最小化的 2-参数双 SMA 交叉策略,基于 ETHUSDT 日线期货,当快速 SMA 高于慢速 SMA 时做多,低于时做空,押注 ETH 的数周趋势会使简单的、低过拟合的趋势跟踪策略保持稳健。
基础回测覆盖约 6.3 年(2019-2026),产生 +369.3% 总收益,夏普仅为 0.33(CI 低 -0.48),46 笔交易(22 多 / 24 空),54.3% 胜率,1.62 盈亏比,50.1% 最大回撤。经过 3 阶段优化后,所选配置的夏普实际降至 0.318,通胀调整后夏普 0.10,PBO 0.65,样本外失败(比率 0.616 对比要求的 0.70)。
Stratmill 是研究与模拟交易工具,不提供财务建议,也不是经纪商。回测与模拟结果均为假设性结果。交易存在亏损风险。