跳至正文
全部策略

策略

中市值 Binance USD-M 永续合约 BASKET 时间序列动量,多空,日线数据——跨 8 个从未交易过的山寨币永续合约共用一组参数(采用广度而非单一标的 N 选优;依据 56 日收益率的符号,按逆波动率配置仓位,ATR 吊灯止损,3 参数)ONE

结局: 已放弃

MidCapPerpBasketTsMomChandelierLS

结局总结

MidCapPerpBasketTsMomChandelierLS 试图通过在八个从未交易过的中盘股山寨币永续合约上运行同一套动量规则,解决策略工厂反复出现的 best-of-N 过拟合问题,并确实获得了预期的样本量:六年内有 605 笔交易,单笔收益是费用底线的十倍。但汇总夏普比率 0.356 的置信区间跨过零;利润因子为 1.06,而冲击成本占毛收益的 12%;回撤达到 63.9%,并有 746 天处于水下。拆解显示,该组合由单一腿支撑——剔除 INJ 后已实现盈亏转为负值——且所有利润都集中在压力波动率三分位区间,因此它是净方向性的山寨币危机趋势 beta,而非共享的 TSMOM 溢价。分析师在回测审查阶段、优化之前便放弃了该策略;它从未进入优化器、风险审核或模拟交易阶段。

假设

一个LONG-SHORT、MULTI-INSTRUMENT、日线级别时间序列动量(TSMOM)BASKET,交易八个该策略工厂从未交易过的 Binance USD-M 永续合约:RUNE、NEAR、FIL、AAVE、AVAX、GALA、DYDX、INJ(目录中均已核实存在,标记为 *.BINANCE-1-DAY-LAST-EXTERNAL,且有 4-6 年历史数据)。它保留了在此处经受住考验的 ONE 机制(方向性日度动量、多空、Binance USD-M、ATR 跟踪退出),并改变了反复导致该策略工厂失败的因素:SINGLE-NAME SELECTION。393 中被称为“过拟合”的失败原因几乎如出一辙——DSR 0.0、PBO > 0.5、3-9 交易留出集、“best-of-N 假象”——这是样本量/选择偏差问题,而非机制问题。每条腿都采用 IDENTICAL 规则和 IDENTICAL 个参数值,因此同一组(回看期、止损、风险)参数必须同时适用于八条独立序列;交易数量约增加 8x 倍(约 320 笔已平仓交易,留出集中约 60-70 笔)。这不是排序、配对、美元中性或对冲构造(L95/L96)——每条腿均按单边方向直接交易。

完全按假设实现:八个从未交易过的中盘股 USD-M 永续合约同时采用 ONE 组共享的 3 参数(mom_lookback=56、atr_mult=4.0、gross_exposure=1.0),因此策略优势必须在八条独立序列上都成立,而不能从单一序列中挑选——这正是该策略工厂过拟合失败背后的选择偏差/样本量问题。增加广度也会使交易数量约增至 8x 倍(目标是达到假设所要求的 250+ 笔已平仓交易,并形成足够充实的留出集)。每条腿的信号是 56 日收益的符号(calculate_signal 返回这些收益的连续横截面 MEAN,每根 K 线都会变化);仓位按反波动率风险平价设置;退出条件为 ATR chandelier 跟踪止损,或动量符号翻转。八条腿均通过 calculate_signal 内的同一代码路径管理(单一标的的 should_enter/should_exit/position_size 钩子无法表达 8 条腿的组合,因此不起作用),各腿 K 线读取自基础模板自身的同步缓冲区,从而用同一时点的 K 线计算所有腿的指标(基础模板的跨腿对齐屏障会延后整组 K 线,直到八条同周期腿都提供相同时间戳)。由于策略会做空,必须使用期货交易场所;杠杆维持在 1.0,总敞口硬性限制为权益的 100%(每腿权重上限为 30%),因此篮子无法通过复利扩大成杠杆爆仓。没有任何参数被静默限制在比优化器搜索范围更窄的区间内,因此无需声明 _param_bounds。

在充足样本上,premise_falsified。该假设的核心主张是,同一组(回看期、止损、风险)参数可同时适用于八个独立的中盘股山寨币永续合约,因此广度能够取代单一标的选择。605 笔交易、1485 天的回测直接衡量这一主张,结果并不成立:逐腿已实现盈亏拆分为 5 个赢家 / 3 个输家,INJ +40.9k 对 DYDX -39.2k,另有 AAVE -18.6k;移除最新的单一腿(INJ)会使整个组合的已实现盈亏从 +32.3k 变为 -8.7k。因此,该汇总结果依赖于单腿——正是广度构造原本要消除的集中度问题。就整个组合而言,在其自身样本上,策略优势无法与零区分(夏普比率 0.356,自助法区间为 CI -0.42 至 +1.16,PSR 0.76,利润因子 1.0597,而建模冲击成本已占毛收益的 12%);现有的策略优势仅限于压力波动率三分位区间(+125.3%),平静期(-7.7%)和正常期(-28.6%)均亏损,也就是说,它是净方向性的山寨币危机趋势 beta,而非横截面共享的 TSMOM 溢价。风险为总敞口 1.0x 时最大回撤 63.9%、水下 746 天、连续亏损 27 次;降低总敞口会同比缩小收益和回撤,使夏普比率保持不变,因此没有通过仓位规模调整继续迭代的路径;开发者只能改参数,却无法让四条无效腿共享策略优势。这是对现有样本的衡量,并非对策略经折减后表现的预测。

实现

多空每日时序动量 BASKET,应用于八个中市值 Binance USD-M 永续合约(RUNE、NEAR、FIL、AAVE、AVAX、GALA、DYDX、INJ),每条腿均运行 IDENTICAL 规则,参数取 IDENTICAL。当每条腿自身的 56 日收益为正时,持仓方向为 LONG;为负时则为 SHORT——直接交易,不做排序、配对或对冲,因此组合为净方向性敞口。各腿按反波动率方式配置权重(权重与 1/日收益标准差成正比,以总仓位的 30% 为上限并重新归一化),因此组合的名义总敞口在杠杆 1.0 下始终约为权益的 ~100%。当仓位的 ATR(20)吊灯移动止损(自入场以来的极值 ± 4 x ATR)在日线收盘时被触发,或当该腿的动量方向反转时,仓位将被平仓。在吊灯止损出场后,同方向重新入场将被阻止,直至动量方向反转或经过 10 个日历日(以出场 K 线的时间戳为锚点)。仅使用 OHLCV,无辅助数据。

验证结果

删除 INJ(共同起始时间移至 2021-09),或将回测/优化的起始时间固定为 2022-08-18,确保所有三个 WF 窗口均包含实盘交易。不要移除对齐屏障。

INJUSDT 1-DAY 数据从 2022-08-18 开始,而 RUNE(主要标的)从 2020-09-05 开始。基础模板的跨腿对齐屏障会延后主要标的 K 线,直到每条同周期额外腿都在该时间戳提供 K 线,因此 NO K 线会在 INJ 的首根 K 线之前进行评估。沙盒结果恰好证实了这一点:data_days 2196、effective_daily_obs 1484(712 个无交易日)。这不是前视或交易错误,但全窗口夏普比率/CAGR/DD 被跨度中三分之一的平盘期稀释;在完整历史上进行的步进式窗口 1 将包含零笔或接近零笔交易,从而扭曲该假设旨在改善的 IS/OOS 判定。

迭代设上限(重新归一化、再次设上限、重新分配超额部分并重复),或在归一化后断言 max(weights) <= max_leg_weight。

max_leg_weight 实际上并未被强制执行:权重先被封顶(第 149 行),随后按封顶后的总和重新归一化(第 153 行),因此被封顶的腿最终 ABOVE 上限值(例如,原始 {0.55,0.15,0.10,0.20} 配上限 0.30 → 被封顶的腿最终为 0.40)。在使用 8 条反波动率腿的情况下很少触发约束,但所述的 30% 集中度保护在其所针对的尾部情形中并不成立。

声明 `_param_bounds`,仅涵盖 mom_lookback / atr_mult / gross_exposure;修复其余部分。

假设中防止过拟合的前提是参数组仅含 3 个参数,但配置暴露了 EIGHT 个数值参数,且没有 `_param_bounds`。优化器根据 `parameters` 中的数值键推导搜索空间,因此八个参数都会在 75 次试验 × 3 个窗口上被搜索——这比预先注册的范围大得多,重新打开了该假设原本要封堵的 DSR/PBO 膨胀渠道。

用 `_in_warmup` 提前返回保护 _close_leg 以及 _extreme/_blocked 的修改。

仅限实盘/模拟盘:_close_leg → _submit_exit_position → close_position 未受 `_in_warmup` 控制(与 _submit_entry_instrument 不同),而 calculate_signal IS 会在预热回放 bar 上调用。携带持仓、正在回放历史数据的模拟盘节点可能会在预热期间发出真实平仓订单。回测不受影响(平仓在事件内成交)。

沙盒结果(未优化、单次抽样)较弱且集中于特定市场状态:夏普比率 0.354,PF 1.096,胜率 35.4%,最大回撤 63.9%,有一段 746 天的水下期,并连续亏损 27 次。平静期 -7.6%(夏普比率 0.14)和正常期 -28.7%(夏普比率 -0.06)对比压力期 +125.2%(夏普比率 1.36)——几乎所有盈亏都来自高波动率三分位区间;组合按构造就是净方向性,因此大部分收益可能是杠杆化的山寨币 beta / 危机趋势,而非稳健的 TSMOM 溢价。此外,rate_shock_2022 -18.7%,svb_march_2023 -15.0%。这不是费用问题(avg_trade_return_pct 1.55%,而底线为 0.15%;605 笔交易;冲击成本占毛收益的 7.9%,容量为 $16.2M)——问题在于,在约 64% 的回撤和单一市场状态集中下,夏普比率经折减后是否还能维持。

回测评审

夏普
0.36
总收益率
52.83%
最大回撤
63.90%
总交易数
605
胜率
34.9%
盈利因子
1.06

方法论思路正确:ONE 个共享参数组合应用于 8 条腿,不做排序或配对,这是解决 best-of-N 选择偏差的正确方法,也实现了预期样本量(605 笔已平仓交易、1485 个有效日度观测、平均持仓约 16d)。

这不是费用问题:avg_trade_return_pct 1.55% 约为 0.15% BINANCE USD-M 底线的 10x,手续费仅占毛收益的 1.71%,建模冲击为 12%,容量为 $6.9M。

交易符合所述机制:300 笔多头 / 305 笔空头,每条腿均为单边方向交易,按反波动率设置仓位(在 8 条腿上,avg_position_pct 14.2%,总敞口约为 1.0x),以 ATR chandelier 止损退出。

广度前提被其自身证据所证伪,而非被预测:这八个腿 NOT 共享一个优势。单腿实现损益分别为 INJ +40.9k、GALA +27.1k、RUNE +23.7k、AVAX +2.8k、NEAR +0.9k 对比 FIL -5.3k、AAVE -18.6k、DYDX -39.2k。实现总额为 +32.3k,但剔除单条最新腿(INJ,上市于 2022-08)后为 -8.7k。总和近乎相互抵消,仅由单一品种推动,这恰好是该假设所要消除的单一名称依赖性。

在这个充足样本上,测得的策略优势无法与零区分:夏普比率 0.356,自助法区间为 CI [-0.42, +1.16](跨越 0),且 probabilistic_sharpe 0.76。利润因子 1.0597 意味着毛盈利约为毛亏损的 6% 倍——仅冲击成本就已占毛收益的 12%。

市场状态归因显示,这是杠杆化的山寨币危机趋势 beta,而非 TSMOM 溢价:平静期 -7.7%(夏普比率 0.14)、正常期 -28.6%(夏普比率 -0.06)、压力期 +125.3%(夏普比率 1.36)。该组合按构造就是净方向性,因此几乎全部盈亏都来自一个波动率三分位区间。QA 对策略优势的担忧得到了逐腿拆解结果的印证,而不只是重复陈述。

风险远超任何可部署范围,而且不是仓位规模错误:总敞口为 1.0x 时最大回撤为 63.9%,水下 746 天,连续亏损 27 次,日历年 2022 -31.2% 和 2025 -30.8%。削减总敞口会同比缩小收益和回撤,并使夏普比率 0.36 保持不变,因此无法通过仓位规模修复。

标题指标中有 39%(总收益 +52.8%,end_unrealized_pct 20.6)是最后一根 K 线时的未平仓头寸按市值计价,因此即使有限的已实现业绩记录也夸大了实际落袋的收益。

CI 跨越零;PSR 0.76

仅在压力三分位区间盈利

5 的 8;剔除 INJ 后结果转为负值

结局总结

只有各腿确实共享策略优势时,增加腿数才能消除选择偏差——在将汇总结果视为广度带来的表现而非某条序列走运之前,应先核实逐腿盈亏离散程度和剔除单腿的敏感性。

分析师在回测审查时(优化前)将其判定为 premise_falsified 并放弃:逐腿已实现盈亏拆分为 5 个赢家 / 3 个输家(INJ +40.9k 对 DYDX -39.2k,AAVE -18.6k),仅移除 INJ 就令组合从 +32.3k 转为 -8.7k,因此“八条腿共享策略优势”的主张在其自身足够的样本上未能成立。市场状态归因显示,利润仅来自压力波动率三分位区间(+125.3%),而平静期(-7.7%)和正常期(-28.6%)均亏损;削减总敞口又会同比缩小收益和回撤,因而不存在通过调整仓位规模继续迭代的路径。

一个多空日度时间序列动量篮子,在八个 Binance 中盘股 USD-M 永续合约(RUNE、NEAR、FIL、AAVE、AVAX、GALA、DYDX、INJ)上直接运行 ONE 共享参数组(56 日收益符号、反波动率仓位规模、ATR chandelier 止损),押注各腿的广度能够取代此前令候选策略夭折的单一标的 best-of-N 选择。

在 2,196 天内,它产生了 605 笔已平仓交易(300 笔做多 / 305 笔做空),总收益 +52.8%,CAGR 7.13%,夏普比率 0.356,自助法 CI 为 [-0.42, +1.16],盈利因子 1.06,胜率 34.9%,以及 63.9% 最大回撤,其中 746 天处于水下。成本并非问题所在 — avg_trade_return_pct 1.55% 对比 0.15% 的下限,佣金占毛额的 1.71% — 但模型化的冲击占毛额的 12%,而 20.6% 的权益在最后一根 K 线时仍按逐笔盯市方式开放。

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