跳至正文
全部策略

策略

BINANCE Top-3 主要币种横截面动量多空策略(BTC/ETH/SOL 周度轮动,安全合约多资产,市场中性,OHLCV 专用)

结局: 已放弃

BinanceTop3MajorCrossSectionalMomentumLongShort

结局总结

第三次迭代试图以精简且基础设施干净的方式验证横截面动量:在 BINANCE 最干净的 1D 数据上,每周在 BTC、ETH 和 SOL 之间进行多空轮动;此前一个基于 Hyperliquid、包含 5 种资产的版本因数据覆盖不足而被放弃。回测产生了 124.3% 的头条回报,但几乎没有真正的优势——夏普比率为 0.281,CI 跨越零点,盈利因子为 1.028,相较于直接持有该组合,信息比率为负。更糟的是,该策略自己的迭代-3 净 Delta 再平衡本来就是为消除不合情理的单日收益而编写,但这些收益仍然存在,表明修复失败,指标由异常值驱动且不可靠。因此,分析师在优化前就于 BACKTEST_REVIEW 门槛处放弃了该策略,结论是三种标的构成的横截面过于单薄,无法形成动量因子,任何参数扫描都无法修复缺失的优势或已污染的目标函数。

假设

极简 3 资产横截面动量轮动,跨系统明确确认为安全的三个 BINANCE 永续合约:BTCUSDT、ETHUSDT、SOLUSDT。每周按过去 30 日回报对三者排序;LONG 动量最高的资产,SHORT 动量最低的资产。中间排名的资产跳过(不持仓)。这是对横截面动量因子机制的精简验证(Jegadeesh & Titman 1993;Liu, Tsyvinski, Wu 2021 针对加密货币),使用数据基础设施层已明确验证为"始终安全"的 ONLY 资产(系统原话指导:'BTCUSDT/ETHUSDT/SOLUSDT.BINANCE 在 1H/4H/1D 时间框架上始终安全')。我先前的 5 资产 HL 横截面动量在 iter-4 时被 KILLED,因为 HL 1H K 线仅有 97.5% 覆盖率;3 资产 BINANCE 版本采用了工厂内尽可能最干净的数据路径。本假设填补了 FOUR 欠缺的组合配置:(a) MULTI 范围(6.8% — 最少触及的范围维度),(b) 市场中性方向(9.5% → 减少 90.5% 仅做多),(c) 横截面动量机制类别(工厂记录中未测试;唯一尝试因数据问题被终止),(d) 仅安全合约的执行路径。CRITICAL 与在途策略DIFFERENTIATORS:(1) 不同于 PAIRS 比率 MR(ETH/BTC、SOL/BTC、SOL/ETH 均在途中),因为本策略为 3 资产 CROSS-SECTIONAL 排名,而不是 2 资产比率 MR,(2) 不同于 BTC 跨交易所基差(单一资产跨两个交易所),因为本策略为同一交易所内的三个资产,(3) 不同于 MultiTimeframeBreakoutETHSOLLong(仅做多 2 资产),因为本策略为多空 3 资产轮动。分析师最近的指导引导我 AWAY 远离期权,并 TOWARD 已验证的机制类别 — 横截面动量是有据可查的学术因子,由于数据问题在工厂内从未得到妥善测试。3 资产 BINANCE 专用是该因子的最小可行基础设施测试。

迭代-3 修复,针对分析师指出的两个症状。(1) exposure_pct ~204% 属于 TIME-IN-MARKET(持仓日数 / 跨越日数,见 src/backtesting/metrics.py:714);对于一个始终在市场中的 2 腿中性组合,这个比例本来就必然约为 200%,且相当于 NOT 总名义敞口——现在每次再平衡都会记录总名义敞口,数值保持在 leg_notional*2 = 0.90 的干净初始权益,远低于 0.95 上限。(2) 不可能的单日收益来自此前的两步式“先退出再重新进入”操作:它让持续盈利/亏损的腿跨越许多次再平衡继续持有,因此 compute_daily_returns(将已实现 PnL 归到平仓日,metrics.py:201)把数月累积的 PnL 一股脑记在同一天。修复采用了分析师自己的建议:对目标 Delta 取净值——每次再平衡时,每种工具只提交一笔 ONE 订单,目标为 (target_signed_qty - current_signed_qty)。这样 (a) 无论 OMS 模式如何,都能从机制上避免持仓叠加;(b) 每周都将每条腿调整为固定名义敞口,使 PnL 逐步实现,而不是到很久之后的平仓日才实现,从而消除虚假的 +176%/+65% 日。仓位规模基于在任何持仓出现之前仅捕获一次的干净初始权益(绝不使用被抬高的 MARGIN MTM 值),并记录总名义敞口 = sum(|leg notional|)/base_equity 以供审计。信号逻辑(连续动量价差)、导入、类结构,以及已通过第 1-3 层的多工具配置均未更改。

不值得优化:存在两个彼此独立的否决理由。(1) 没有可放大的优势——profit_factor 1.028,夏普比率为 0.281,其中 sharpe_ci_low -0.62(CI 至 0),且相较等权组合 information_ratio -0.55;由 3 种资产构成的横截面在结构上过于单薄,无法排序形成真正的动量因子,任何参数扫描都无法创造原本不存在的优势。(2) 指标不可靠——对于一个声称市场中性的 3 腿组合,不合情理的单日收益仍然存在(+132.5% 2021-03-24,+112.9% 2024-01-24,-47.4% 2023-01-11;峰度 537,偏度 19.4),因此整个 124% 的头条结果都由异常值驱动,优化器要拟合的目标已被污染。疑似 PnL 归因/腿部伪影(表面上不合情理;其机制未经独立验证)。决定性证据是,该策略自己的 ITERATION 3 专门通过净 Delta 再平衡来消除这些不可能的单日收益,但它们仍然存在——针对性修复在第三次迭代中失败了。优化无法修复单薄或缺失的因子优势,也无法修复已污染的目标函数。

实现

在三个已确认安全的 BINANCE USD-M 永续合约(BTCUSDT/ETHUSDT/SOLUSDT)上进行市场中性横截面动量轮动,使用 1-DAY bars。大约每周根据过去 30 天收益率对三者排序,LONG 赢家并 SHORT 输家,跳过中间项。再平衡通过单笔净额变化订单完成(每个品种一笔市价单,使仓位趋向其固定名义金额的带符号目标),因此退出和重新进入不可能在同一根 bar 上同时发生,并且每条腿每周都会重新调整规模。总名义敞口硬性限制在干净基础权益的 95%,该基础权益在任何仓位建立前只记录一次。

回测评审

夏普
0.28
总收益率
124.31%
最大回撤
39.46%
总交易数
192
胜率
47.4%
盈利因子
1.03

交易结构上与假设一致:平衡的 104 多头 / 88 空头,跨 BTC/ETH/SOL 的周度轮动,最干净的 BINANCE 1D 数据路径

对于每周进行 3 种资产轮动的策略,交易笔数(192)和换手率合理,信号并未失效或冻结

基于学术的机制(横截面动量)并填补欠缺的 MULTI / 市场中性组合

profit_factor 1.028 — 扣除费用后基本没有优势;不存在的优势无法通过优化放大

夏普比率为 0.281,sharpe_ci_low -0.62(CI 跨越 0)——在进行任何多重检验修正之前,就与毫无技巧的表现无法区分

相较等权组合,information_ratio -0.55——主动优势为负,还不如直接持有这三个标的

对于市场中性组合,不可信的日收益仍然存在(+132.5% 2021-03-24、+112.9% 2024-01-24、-47.4% 2023-01-11) — 峰度 537 / 偏度 19.4 表明整个 124% 头条指标由异常值驱动;怀疑是 PnL 归因/腿伪影,NOT 已独立验证

文档字符串中的 ITERATION 3 修复专门通过净 Delta 再平衡来消除这些不可能的单日收益,但这些收益仍然存在——修复没有奏效,因此优化器要针对的目标已被污染

年度回报严重依赖市场状态(2023 -57%,2024 +52%)——没有可作为调优目标的稳定优势;由 3 个标的构成的横截面在结构上过于单薄,无法形成动量因子

分析

市场中性总敞口修复未生效 — exposure_pct 仍为 204%(与 iter-2 注释声称消除的数值相同),并且日收益中包含对于 long-1/short-1 组合而言不可能出现的单日波动(+176% 在 2021-03-24,+65% 在 2024-01-24)。诊断为何总名义金额在 max_gross_pct=0.95 钳制下仍约为权益的 ~2x 倍。需检查的可能原因:(1) 两阶段再平衡 NOT 真正在建立新单腿之前平掉上一单腿 — 已提交的市场退出和同 K 线的新开仓可以同时处于活动状态,因此当赢家/输家身份翻转时,头寸会跨周叠加。在 Pass 2 调整仓位前,请验证头寸是否已平仓(已退出单腿的 cache.positions_open 为空),或对目标 delta 进行净额处理,而不是先平后开。(2) _sizing_equity()/_base_equity 可能仍在读取含有未实现 MTM 的虚增 MARGIN 权益 — 记录每次再平衡所使用的权益值,并确认其等于干净的约 ~100k 基础值,而不是复利/虚增后的数字。(3) leg_notional/price 方式下的期货 MARGIN 账户仓位调整:请确认每条腿的最终名义金额在成交时约为干净权益的 ~45% 倍,而非更大。增加一个断言/日志,确保每次再平衡时 gross = sum(|leg notional|) / base_equity <= 0.95,然后重新运行。在 exposure_pct 回到约 ~100% 或以下、且不可能出现的单日收益消失之前,NOT 进行优化 — 当前指标由仓位调整 bug 主导,无法进行优化。

结局总结

由三种资产构成的横截面在结构上过于单薄,无法形成可靠的动量因子;而且,在相信结果之前,必须验证针对性代码修复确实消除了它所处理的问题。

分析师在优化前的 BACKTEST_REVIEW 门槛处因两个彼此独立的否决理由放弃了该策略:没有值得优化的优势(夏普比率、盈利因子和信息比率均低于门槛,CI 跨越零点);指标不可靠,迭代-3 的净 Delta 再平衡修复本应消除由异常值驱动的单日收益,但这些收益仍然存在,污染了任何优化目标。

在三个已确认为安全的 BINANCE 永续合约(BTC/ETH/SOL)之间进行的市场中性周度横截面动量轮动,做多 30 日回报赢家、做空输家,跳过中间资产,采用最干净的 OHLCV 专用 1D 数据路径。

在 2019-2026 期间,它进行了 192 笔交易(多头 104 笔 / 空头 88 笔),总回报为 124.3%,3.43% CAGR;但夏普比率仅为 0.281(CI 低 -0.62),盈利因子为 1.028,相较等权组合的信息比率为 -0.55。收益分布极端(峰度 537,偏度 19.4),尽管组合名义上为市场中性,仍出现了不合情理的单日波动(+132.5%,+112.9%,-47.4%)。

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