策略
跨主流币长期趋势跟踪篮子(~200-天 绝对趋势,多空,Binance USD-M 期货,纯 OHLCV,周度再平衡)
结局: 已放弃
LongHorizonTrendFollowingMajorsBasketLS
回测门槛: - 指标不可靠:261 笔交易 / 2437 个数据日,证据太少(需要至少 5 笔交易,覆盖至少 10 天)——提高信号频率或扩大窗口
假设
一个 LONG-SHORT,MULTI-INSTRUMENT LONG-HORIZON TREND-FOLLOWING 篮子,跨越约 ~10 个已确认完整历史的 Binance USD-M 主要永续合约,当每个资产处于长期(约 ~200-天 / 40-周)上升趋势时 LONG 持有,在长期下降趋势时 SHORT 持有,等风险加权。它捕捉了 ONE 经验证的加密货币优势——MOMENTUM/CONTINUATION(横截面动量为正且处于优化中;每一次回调/反转都呈现出灾难性的反向预测性)——在 LONG-HORIZON 时间尺度上,而组合的中期动量策略(60-天 横截面 / 绝对 / 双 / 接近高点 篮子)未覆盖。长期趋势(Faber 2007 / 管理期货)经验上是中期动量的一个 DISTINCT 因子:它具有不同的收益自相关结构,LOWER 得多的换手率(持仓更少、更长),以及更强的结构性熊市规避——不是已发布篮子的重新参数化。它还填补了最具代表性的组合周期桶(macro_1w_plus,约 ~0.3%)。EVERY 设计选择遵循本次会话的硬性教训:(1) MOMENTUM 方向——唯一有效的优势。(2) FUTURES 场所——SPOT 策略反复遭遇反复出现的规模/核算 bug;USD-M 期货规模清晰并允许做空腿。(3) PURE OHLCV,NO 补充/资金费率——funding_rates 在约 ~2024-12 结束(空保留样本)且所有补充流尝试因数据覆盖而失败;此处仅使用价格。(4) MAJORS-ONLY CONFIRMED-DATA 标的池——单资产/模式迁移(ADA 3-bar 0-for-8)以及 thin-alt/HL 篮子都因数据/迁移失败而失败;此处仅使用 2020 上市的完整历史主流币,并附带 drop-and-continue 保护。(5) DIVERSIFIED BASKET——稳健形式;在约 ~10 个品种上,慢速趋势仍然产生分布式的多年交易流(篮子密度补偿了长周期,避免了事件稀疏/交易饥饿的杀手)。(6) NET-DIRECTIONAL 崩盘保护——在广泛上升趋势中净多头,在广泛下降趋势中净空头。(7) LET-TRENDS-RUN 退出(在长期趋势反转时翻转),而不是 small-TP/big-SL。刻意保持最小:3 个可调参数(trend_lookback,rebalance_days,vol_lookback)。
在可靠的 273-笔交易 / 6.7-年 样本上呈负期望:profit_factor 0.962(<1),avg_trade_pnl_usd -39.30,期望 -$39.30/笔交易,CAGR -2.19%。+48.2% total_return 是按市值计价的人为产物——end_unrealized_pct 58.9 意味着 ENTIRE 标题数字是按最后一根 bar 标记的未平仓头寸;已实现记录为负。较高的等权重 avg_trade_return_pct(3.03%)与负的规模加权 USD 期望相矛盾:亏损腿的名义金额更大。Sharpe 0.35,CI [-0.43, 1.08] 横跨零,在最近 5 个完整年度中有 3 个亏损年度(2025 -38.3%),且优势局限于正常波动率三分位——这确认没有稳健的毛优势。佣金仅占毛收益的 1.18%,因此这不是费用脆弱性——长期净方向性趋势信号在主流币上为毛负,优化 3 可调参数无法反转 PF<1 信号。这是多品种多空篮子的签名(L45/L63,multi_instrument ~0/84),其标题收益是 beta/杠杆 MTM,而非单品种优势。不值得 2 小时的优化。abandon_class=negative_expectancy。
实现
多空长期(Faber / 管理期货)绝对趋势篮子,跨越 10 个完整历史的 Binance USD-M 主流币(BTC,ETH,BNB,XRP,ADA,SOL,DOGE,LTC,LINK,BCH),在 1-DAY bar 上。每个腿在其自身的 ~200-天 滚动收益为正时 LONG 持有,为负时 SHORT 持有,按已实现波动率的倒数进行 equal-RISK 规模配置(vol_target / std(20d 收益),夹紧至 [0.3, 1.5]),并设上限,使总毛头寸永不超过 1x 净值。因为信号是 ABSOLUTE(自身趋势)而非横截面,该账本是净方向性的:在广泛上升趋势中净多头,在广泛下降趋势中净空头,这是结构性崩盘保护。仓位通过每个日历再平衡日期每个腿一笔净差额订单调整到目标;默认无贸易带为 1.0,一个腿仅在其趋势符号 FLIPS、新触发或其目标归零时才交易,因此趋势得以运行,换手率保持在每个品种每年几次翻转。纯 OHLCV,无补充数据,杠杆 1.0。
验证结果
sandbox_timeout:验证失败(Layer 3 — 沙箱回测):烟雾测试超过了 300s 的墙钟时间限制,在约 ~20000-bar 窗口(2400 天的 BTCUSDT.BINANCE-1-DAY-LAST-EXTERNAL)。这几乎总是意味着随历史扩展的逐 bar 工作——例如,重新扫描完整的资金费率/补充序列,或重建列表并在每根 bar 上的 calculate_signal()/on_bar() 内调用 min()/sorted()。在 __init__ 中预计算排序后的时间戳数组 ONCE 并使用 bisect,或缓存按时间戳键控的查找,使逐 bar 成本为 O(log n) 而非 O(n)。
可选地将假设文本修改为“'200 天趋势回看期、每周再平衡、使用日线 bar'”,以避免启发式检查再次标记。无需更改代码。
Layer 1.5 一致性检查标记了假设标题('~200-Day / 40-week / Weekly Rebalance')与 config.bar_type=1-DAY 相比,作为可能的时间框架矛盾。经检查,这是一个 FALSE POSITIVE:假设指定了一个 ~200-DAY 趋势 LOOKBACK 和一个 WEEKLY REBALANCE 节奏,而非周 bar。代码正确地使用 1-DAY bar,trend_lookback=200(天)且 rebalance_days=7(周网格)。周 bar 实现将使 200 回溯跨度变为 200 周,那才是实际的不匹配。无需更改;记录下来,以免该警告被再次作为阻塞性警告重新提出。
无需采取行动;该覆盖是有意为之,且基础框架会遵循它。
min_bars_required(self) 重写了基础框架方法(静态分析器 base_shadow 警告)。已通过 base_template.py 第 412 行验证:基础 DOES 调用 self.min_bars_required() 来控制主要处理流程,因此,重写(返回 max(trend_lookback,vol_lookback)+2 = 202)被正确接受,并且实际上是有益的(保证 200-天 预热)。calculate_signal 也通过内部长度检查独立防护,因此即使预热接线错误,也不会导致前瞻偏差。良性。
沙箱为正且一致(total_return +58.8%,PF 1.21,avg_trade_return_pct +4.06%,跨 266 笔交易,平均持仓 74d),但风险调整后的优势较弱且依赖制度:Sharpe 0.43,CI [-0.34, 1.18] 横跨零,而 regime_performance 显示优势几乎完全存在于'正常'波动率三分位中(+82.2%,Sharpe 1.43),而'平静'(-8.3%)和'压力'(-5.5%)三分位均为负。最大回撤 39%(CI 至 65%),以及 699-天 跌水期。这是在截断窗口上的单一未优化回测,因此不会阻止——但分析师应确认长期趋势因子在正常波动率制度之外依然成立,并清除其所声称与之不同的中期动量篮子,再投入优化时间。
回测评审
- 夏普
- 0.35
- 总收益率
- 48.20%
- 最大回撤
- 44.24%
- 总交易数
- 273
- 胜率
- 41.8%
- 盈利因子
- 0.96
基于具备完整历史数据的主流品种构建的规范化多元化篮子;样本量充足:273 笔交易 / 6.7 年(metrics_reliable=true)
交易实现了该假设(139 条净方向腿做多 / 134 条做空,持有约 72 天——低换手、让趋势延续的设计得到了忠实编码)
avg_trade_return_pct 3.03% 在等权重基础上清除了费用底线;佣金仅占毛收益的 1.18%,因此这不是 NOT 因费用拖累而失败
总收益优势为负:profit_factor 0.962(<1),avg_trade_pnl_usd -39.30,每笔交易期望收益 -$39.30——按仓位加权的 USD 期望收益为负,因为亏损头寸的名义金额大于等权的正值 avg_trade_return_pct 所显示的水平
+48.2% 的标题数字是一种按市值计价的幻觉:end_unrealized_pct 58.9 意味着整个标题数字都是回测结束时未平仓的持仓;已实现业绩记录为负,CAGR 为 -2.19%
夏普比率 0.35,其 CI [-0.43, 1.08] 跨越零;多数日历年份亏损(2021 -26.7%、2024 -3.6%、2025 -38.3%),且优势仅存在于正常波动率三分位(平静期 -14.5%、压力期 +9.8%,但正常期 +56.8%)——QA 对市场状态的担忧已得到证实
长期趋势作为独立因子尚未得到证明:benchmark_meaningful=false,且按已实现收益计算,该策略未能跑赢单纯持有该篮子
分析
回测门槛: - 指标不可靠:261 笔交易 / 2437 个数据日,证据太少(需要至少 5 笔交易,覆盖至少 10 天)——提高信号频率或扩大窗口
Stratmill 是研究与模拟交易工具,不提供财务建议,也不是经纪商。回测与模拟结果均为假设性结果。交易存在亏损风险。