跳至正文
全部策略

策略

COIN-M 持仓量去杠杆-闪崩反转,多空(单工具 ETHUSD_PERP.BINANCE_CM — 反转由持仓量 CONTRACTION 急剧下降所驱动的价格变动,即头寸平仓而非新的信心入场;OI-变化率门控,2-参数)

结局: 已放弃

EthPerpOpenInterestDeleveragingFlushReversalLS

回测门槛: - 指标不可靠:不一致:夏普比率 0.39 与 total_return -100.00% 的符号不一致 — 夏普比率根据 mtm_equity_curve 序列计算,而收益来自权益曲线。应以权益曲线为准。

假设

ETHUSD_PERP.BINANCE_CM 反向永续合约上的 LONG-SHORT、SINGLE-INSTRUMENT、SINGLE-VENUE 均值回归策略。信号相对于价格而言是 ORTHOGONAL:即 OPEN INTEREST 的变化率(目录中已有的持仓数量数据源),而非基于价格序列计算的指标。核心洞察 — 价格变动的信息含量取决于 OPEN INTEREST 是 EXPANDING 还是 CONTRACTING。当价格急剧 WHILE 时持仓量急剧 CONTRACTING,则该变动是由现有仓位被 CLOSED(去杠杆 / 止损冲击 / 保证金缩减)所驱动,而非由新的知情资金建仓所驱动。因资产负债表原因必须退出的资金流对价格不敏感且过度延伸,一旦去杠杆完成便会回归。因此:OI 收缩 + 价格急剧 DOWN = 多头被清洗出场 → 做空 LONG;OI 收缩 + 价格急剧 UP = 空头回补 → 做多 SHORT。这在机制上 DISTINCT 不同于清算级联式做空(后者以剧烈时刻的离散清算信号为触发):此处的触发是持仓数量本身在小时尺度上的更缓慢下降,能够捕捉那些从未表现为单一大规模清算的去杠杆式抛售。单一交易场所 + 单一工具 → 1h K线与 OI 数据源在 Layer-3 沙盒中均可同时获取(不存在跨场所/多腿的 verification_loop 风险)。刻意保持 2 参数,以抵御在失败日志中占主导地位的过拟合陷阱。

第 6 次迭代修复了报告中的 ONLY 失败:回测门槛判定指标不一致(夏普比率 +0.39 对比 total_return -100.00%)。这种符号不一致只会在运行结果被标记为 LIQUIDATED 时出现 — 权益曲线从爆仓 K 线开始被封底至零,而未封底的盯市序列仍继续计价并显示正夏普比率。因此修复方法是“停止让账户爆仓”,改动仅限于仓位规模。第 5 次迭代中的币本位结算权益路径已启用(夏普比率从 0.30 变为 0.39,所以名义敞口现在基于真实权益复利变化),但问题本身在于 SIZE:名义敞口 = 权益*risk_frac/stop_pct = 0.67x 倍权益,而 max_notional_frac 上限为 1.00,从未触及。在 0.67x 下,单次往返交易的成本约占整个账户的 0.11%(吃单费加模型化市场冲击);该策略的换手率(持仓时间短、36 根 K 线时间止损、沙盒窗口内有数千次进场)将成本累积至资本的几个百分点,此时权益跟踪器的维持保证金检查便会触发。第 6 次迭代将上限设为 BIND:max_notional_frac 1.00 -> 0.25,并将硬性限制收紧至 [0.01, 0.40](现已在 _param_bounds 中声明,使优化器无法再次打开导致破产的路径)。现在单次往返交易成本约占账户的 0.04%,最差单笔交易(3% 止损)为 0.75%,因此权益路径始终严格大于零,没有清算标记,权益曲线与盯市序列的符号一致,可以据此评判。其他内容均未改变:信号、进场门槛、退出条件、OI 数据路径以及反向合约换算,均与已通过第 1-3 层的逻辑逐字节一致。按要求表达一句不同意见:我不认为该策略存在优势 — 我在第 -3 次迭代中的事件研究测得,OI 门槛指向 WRONG WAY(当 OI 为 EXPANDING 时反转效果最好,+0.469% 在 24h 时;当其为 CONTRACTING 时效果最差,-0.198%,也就是说比完全不设条件更差);扣除约 0.10% 往返成本后,实际交易门槛每笔进场的净收益为 -0.087%。限制仓位规模只能让亏损有界且可衡量,不能使其转为盈利。

在可靠且具有决定性的 2151 笔交易 / 2125 天样本上,期望收益为负:avg_trade_return_pct -0.093%(低于 ZERO,且低于约 0.10% COIN-M 的费用底线),profit_factor 0.831,total_return -26.55%,夏普比率 -0.038,期望收益 -$19.13/笔交易。这些交易正确实现了假设(对 OI 收缩走势进行多空均衡的反转交易),因此这是一次公平检验 — 而其前提已被证伪:该策略在每个日历年度和每种波动率状态下都亏损,且开发者的 OWN 事件研究发现,OI 门槛具有 INVERTED 且减损价值(当 OI EXPANDS 时,反转效果最好;当其 CONTRACTS 时最差,而这正是该策略交易的状态)。佣金仅占毛收益的 15.4%,因此这是毛收益为负,而非费用脆弱性 — 约 2.2:1 的亏损与盈利幅度几何关系将结果锁定在盈亏平衡线以下。QA 对边际优势的担忧得到了印证。2 个可调参数无法改变一个会选中最差状态的条件变量的符号,因此优化无济于事。这是开发者早已建议放弃的机制的第 6 次迭代。不值得花 2 小时优化。abandon_class=negative_expectancy。

实现

在 ETHUSD_PERP.BINANCE_CM 反向永续合约上的多空均值回归,以 ETH 永续合约 OPEN INTEREST 的变化率而非价格本身作为门控。每根 K 线计算一个连续的消退分数:-price_z * 收缩,其中 price_z 是收盘价从其自身 trailing 均值的延伸(以 trailing σ 为单位),收缩 = 0.5*(1 - tanh(z 评分的 OI 变化率)),在持仓量异常剧烈收缩时(头寸正在 CLOSED:去杠杆、止损冲销、保证金减少)上升至 1,在持仓量扩张时(新的信心)上升至 0。其在 |signal| >= entry_z AND 回归目标(至 trailing 均值的距离)清除约 0.10% 往返成本时入场,在均值回归、3% 止损或 36 根 K 线时间止损时离场。ETHUSD_PERP 没有自己的 OI 历史,因此信号读取 USD-M ETHUSDT.BINANCE 每条腿的持仓量序列(仅信号腿,从不交易)。仓位以整 INVERSE CONTRACTS 通过 contracts_for_notional() 进行,基于含币的权益路径,每次入场权益上限为 25%。

验证结果

可以原样接受。如果继续运行,分析师应注意,去杠杆信号是在 USD-M OI 上测量的,而非在实际交易的 COIN-M 合约上测量。

假设特意选择 COIN-M 单一交易品种,以便在沙盒中可同时获得 OI 数据源和交易 K 线。实际上,ETHUSD_PERP.BINANCE_CM 没有 OI 历史数据,因此代码通过 open_interest_by_instrument 从 USD-M ETHUSDT.BINANCE 逐腿序列中读取 OI(仅用于信号,绝不交易该腿)。实际交易品种和 OI-ROC 机制仍符合假设,而且 USD-M 是占主导地位的 ETH 永续合约市场,因此这是在经济层面上站得住脚的代理指标 — 但这重新引入了假设声称要避免的跨交易场所依赖。此情况已有记录且范围有界(ts<=bar_ts),因此不属于正确性缺陷。

开发者对这一确切信号进行的自有迭代 -3/4 事件研究(ETH 1 小时,2021-12..2026-07)将 OI 过滤条件衡量为 INVERTED,并显示其会减损价值:当 OI 收缩(即本策略触发条件)时,24 小时的反向交易收益为 -0.198%;当其持平时为 +0.091%;当 OI 扩张时为 +0.469%;未作条件筛选时为 +0.082%——也就是说,以收缩作为条件筛选的表现比完全不加条件更差。实际交易过滤条件在扣除约 0.10% 的往返成本后,每笔净收益约为 -0.087%。沙盒结果印证了这一点:avg_trade_return_pct -0.014%、profit_factor 0.967、total_return -10.06%,在所有三个波动率区间和两个压力窗口中均为负值;退出条件按几何关系设定盈亏平衡(win_rate 0.668 对比约 2.1:1 的亏盈比)。没有任何参数调整能改变一个筛选出最差市场状态的条件变量的符号。分析师应将 OI-收缩这一前提视为很可能已被证伪,并在花费时间优化之前,检查该机制是否存在任何正期望区域。

回测评审

夏普
-0.04
总收益率
-26.55%
最大回撤
66.47%
总交易数
2151
胜率
65.1%
盈利因子
0.83

设计规范完善,且仅涉及单一交易场所/单一交易品种;通过了第 1-3 层,并产生了可供评判、未被清算的运行结果(第 6 次迭代限制了名义敞口)。

交易忠实地实现了该假设:由 OI 收缩触发的均衡多空反向交易(1158 做多 / 993 做空),因此这是对该前提的公平检验,而非代码伪影。

可靠且具有决定性的样本:2151 笔交易,历时 2125 天,metrics_reliable=true。

单笔交易期望收益为负:avg_trade_return_pct -0.093% — 低于 ZERO,且远低于约 0.10% COIN-M 的费用底线 — 同时 profit_factor 0.831,期望收益为 -$19.13/笔交易。

Total_return -26.55%,夏普比率 -0.038(CI [-0.87, 0.80] 跨越零/为负),索提诺比率 -0.038,recovery_factor -0.885,在 EVERY 个日历年度中均为负(2022 -13.0%,2023 -5.5%,2024 -1.0%,2025 -4.4%),并且在全部三种波动率状态下均为负(平静 -23.0%,正常 -12.2%,压力 -2.1%)。

按几何关系计算的盈亏平衡退出:win_rate 0.651 对比 avg_win 144,而非 avg_loss 324(约 2.2:1),结果为负——该退出方式制造的小额盈利会被费用抹去;佣金仅占毛收益的 15.4%,因此这是毛收益为负,且存在 NOT 费用脆弱性。

OI 收缩前提可测得为 FALSIFIED:开发者自己的事件研究(在此 COIN-M 配置上复现)发现该门槛 INVERTED — 当 OI 为 EXPANDING(+0.469%)时,反转效果最好;收缩时最差(-0.198%),且以收缩作为条件比完全不设条件更差。QA 对优势的担忧得到了印证。

2 个可调参数(回看期、entry_z)无法改变一个会选中最差状态的条件变量的符号;没有可供优化追求的正期望收益区域。

分析

回测门槛: - 指标不可靠:不一致:夏普比率 0.39 与 total_return -100.00% 的符号不一致 — 夏普比率根据 mtm_equity_curve 序列计算,而收益来自权益曲线。应以权益曲线为准。

迭代历史

验证失败(第 2 层 — 合成场景): 使用的参数:['entry_z', 'lookback', 'stop_pct', 'risk_frac', 'min_notional', 'baseline_bars', 'max_hold_bars', 'min_target_pct', 'min_baseline_obs', 'oi_max_lag_hours', 'max_notional_frac'] 请检查 __init__ 是否通过 self.parameters.get() 设置了所有属性。 - steady_uptrend: TypeError: EthPerpOpenInterestDeleveragingFlushReversalLS._row_oi() 接受 1 个位置参数,但实际给出了 2 个(K线时间戳:1735690740000) - steady_downtrend: TypeError: EthPerpOpenInterestDeleveragingFlushReversalLS._row_oi() 接受 1 个位置参数,但实际给出了 2 个(K线时间戳:1735690740000) - flat_ranging: TypeError: EthPerpOpenInterestDeleveragingFlushReversalLS._row_oi() 接受 1 个位置参数,但实际给出了 2 个(K线时间戳:1735690740000) - volatility_spike: TypeError: EthPerpOpenInterestDeleveragingFlushReversalLS._row_oi() 接受 1 个位置参数,但实际给出了 2 个(K线时间戳:1735690740000) - zero_volume: TypeError: EthPerpOpenInterestDeleveragingFlushReversalLS._row_oi() 接受 1 个位置参数,但实际给出了 2 个(K线时间戳:1735690740000) - price_gap: TypeError: EthPerpOpenInterestDeleveragingFlushReversalLS._row_oi() 接受 1 个位置参数,但实际给出了 2 个(K线时间戳:1735690740000)

验证失败(第 4 层 — QA 审查): - 高换手率且容量极小 — 在任何实际规模下,边缘都会被市场冲击所摧毁。沙盒显示 impact_cost_pct 127.4% 与 capacity_usd 仅 $61,584,而 466 笔交易,换手率 477x,total_impact_usd $12,806。容量 BELOW $100k 回测资本,意味着本次运行本身已超过冲击会吞噬边缘的规模。这就是高换手率下的手续费/冲击-边缘消亡:一个 1h 均值回归反转策略,每天约 1.3 笔交易,无法支撑有意义的资本,毛利润边缘也无法承受自身的交易成本。 - 净利润边缘为边际负值,且低于手续费下限。total_return -2.76%,PF 0.987(<1),夏普比率 -0.44(CI [-2.15, 1.07] 横跨零),avg_trade_pnl_usd -$5.91,avg_trade_return_pct +0.141% — BELOW 0.15% 期货下限。较高的 win_rate 0.687 被 avg_loss $1,477 所抵消,其值为 2.2x avg_win $665(负偏度均值回归:多次小幅回归,偶尔出现至 3% 止损的闪崩),净值为负。极性/逻辑正确(仅在 OI 合约时反转拉伸的价格),因此这是边际/缺失的边缘,并非错误 — 在冲击应用之前它就已经低于下限。 - 交易场所不匹配,且指定的交易场所不可行。假设指定 ETHUSD_PERP.BINANCE_CM(COIN-M,~0.06% RT,填充 CM 桶),但配置交易 ETHUSDT.BINANCE(USD-M,~0.10% RT)。开发者已验证 COIN-M 有 NO 个可访问的 OI 系列(仅一个 2 行快照,未连接任何支持密钥),因此在 COIN-M 上,策略加载空的 OI 并下单为零。假设所述的交易场所无法承载该边缘,而 USD-M 版本既不填充 CM 桶,也不填充其手续费缓冲。同样的替换,我在同源的 BTC OI 假设上已标记为关键问题 — 需要研究主管重新界定范围,而不是静默替换。 - OI 覆盖缺口威胁流程。ETHUSDT OI 仅覆盖约 2022、2023 和 2026-02+;2024-2025 缺失(开发者已确认)。落入 2024-2025 的前推窗口没有 OI,交易为零,因此有效的 OOS 夏普无法在那里形成,15 天保留测试仅依赖 2026 尾部 — 同样的覆盖问题使同源的 BTC OI 前推/保留测试无法填充。

验证失败(Layer 1.5 — 假设 / 配置一致性)[类别=hypothesis_mismatch]: - config.instrument_id 为 ETHUSDT.BINANCE,但假设声明的是 ETHUSD_PERP.BINANCE_CM —— 资产相同,但 DIFFERENT 交易场所 / 合约类型不同(手续费、结算方式及机制前提均不同)。请交易假设中声明的交易品种。

验证失败(第 1.5 层 — 假设/配置一致性)[class=hypothesis_mismatch]: - config.instrument_id 为 BTCUSDT.BINANCE,但假设声明的是 ETHUSD_PERP.BINANCE_CM — 属于不同资产。请按原文实现假设(或由研究负责人修订假设)。 另请注意: - 假设指定 1h K 线,但 config.bar_type 为 BTCUSDT.BINANCE-4-HOUR-LAST-EXTERNAL(4-HOUR)— QA 会拒绝与假设时间周期矛盾的配置;请对齐 bar_type 或修订文本。

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