跳至正文
全部策略

策略

SOL 跨交易场所资金费套利:当 HL 资金费高企时做空 Hyperliquid 永续合约 / 做多 Binance 现货(Delta 中性,4H K 线,收取 Hyperliquid 的散户杠杆资金费溢价,低参数)

结局: 已放弃

SolCrossVenueFundingCarryShortHlLongBinanceSpotNeutral4H

资金费率已加载并计入(22,291 个事件,52 笔交易)——这是对真实经济效果的评估,而非数据障碍;delta 中性,无强平

假设

一个DELTA-NEUTRAL、CROSS-VENUE的资金费率套利组合,应用于SOL:LONG SOLUSDT.BINANCE_SPOT(现金腿)+ SHORT SOLUSD.HYPERLIQUID(永续合约腿,即收取资金费率的一腿);仅当 Hyperliquid 在SOL上的已实现资金费率持续呈结构性RICH时才开仓。这一项假设同时填补FOUR个权重最低的类别:HYPERLIQUID场所(7.3%,而目标为 >=20%——最大的场所缺口)、BINANCE_SPOT(10.5%,而目标为 >=15%)、cross_venue(6.6%,而目标为 >=15%),以及非仅做多方向(long_only为84.1%,而上限为 <=55%)。策略刻意使用4小时K线:Hyperliquid 的 K线API每个区间仅提供约5000根K线,而4小时是具有约2.3年可用历史数据的最短区间——采用15分钟/1小时的HL设计会通过回测,随后却因历史数据不足而被弃用。CRITICAL DISTINCTION源自失败的CM对USD-M资金费率利差交易:该交易追逐两个几乎相同的 Binance 永续合约之间约1e-6/每-8小时的DIFFERENTIAL,从算术上就不可能覆盖手续费。本策略瞄准 Hyperliquid 的ABSOLUTE资金费率水平,交易散户杠杆偏好的标的;在行情炽热阶段,该费率达到0.005-0.03% PER HOUR(HL按小时支付,而非每8小时支付)——即每DAY为0.12-0.72%,比约0.29%的全程往返成本高一个到两个数量级(Binance 现货约0.20% RT + HL永续合约约0.09% RT)。持仓期间,空头永续合约腿每小时都会收到这笔机械性的现金流,交易引擎也会计入资金费率。策略刻意保持精简(4个参数,不扫描链上数据、不计算希腊值、不接入持仓人数比数据),以抵御过拟合/夏普比率虚高导致的否决,以及近期已导致五项假设夭折的 Layer-3超时问题。

第 4 次迭代,在零交易赦免下复活,而测量结果改变了局面:假设的核心数字是错的。第 2 次迭代以 1.0e-5 门槛交易,QA 正确判定其低于盈亏平衡,要求使用假设自身的高收益区间(0.005-0.03%/小时 = 5.0e-5..3.0e-4);第 3 次迭代完全实现了这一点,在 5,408 根 bar 中产生了零交易。我测量了真实数据流而非盲目调整 — hl_funding_rates,SOL,8,550 个逐时数据点,2025-06-08..2026-08-07:均值 -3.9e-7/小时,标准差 3.3e-5,MAX 6.18e-5,第 99 百分位 1.91e-5,75th--95th 百分位均固定在 1.25e-5(HL 的基准利率成分)。仅有 0.023% 的小时数触及 5.0e-5,从未有任何值达到 3.0e-4,因此声称区间的上限约为历史最高值之上 5x。由于策略基于移动 MEAN 进行门槛过滤,上限更低:3.13e-5 小时窗口最大 24,2.42e-5 小时窗口 48,1.98e-5 小时窗口 120 — 5.0e-5 门槛在任何回望窗口下都不可触及,这是零交易的原因,无法通过调整阈值修复。因此,修复方案将费用利润从门槛转移到 HOLD,使用 QA 自身的算术:盈亏平衡持仓 = round_trip/(门槛 x 24) = 0.29%/0.024%/天 = 在 1.0e-5 门槛下 12.1 天,因此我保留一个可触及的门槛(1.0e-5,等于/高于 HL 的基准),增加 21 天最低持仓(约 1.7x 覆盖),仅在此之后允许收益衰减平仓;裸腿保护是最低持仓前唯一的平仓机制。在真实资金费率序列上模拟,收取 0.29% 往返成本:9 次往返交易,跨越 14 个月,每笔净 +0.151%,平均持仓 28.8 天,即 +0.342%/笔,跨越 7 笔交易,30 天地板 — 为正且高于 0.15%/笔地板。我还将基于进程的 bar 计数持仓时钟替换为基于 bar 时间戳的日历时间(重启和回放结果一致),并声明了 _param_bounds。提前说明诚实上限:这是约 2%/年,基于每年 5-9 笔交易和多周持仓,无法填充滚动 OOS 窗口或 15 天保留期,且 30 天 SOL 现货-vs-HL-永续基差波动轻松大于其保护的收益。我的预期是大约盈亏平衡、不可测量的运行,以及在回测审查时放弃 — 不是因为代码有误,而是因为假设声称的每天 0.12-0.72% 收益高估了真实数据流一到两个数量级。

低于地板、负期望的 delta 中性资金费率套利,其前提被真实数据证伪 — 不值得 2 小时的优化。资金费率 IS 被引擎计入(22,291 个事件,52 笔交易),因此这是真实的经济结果,仍然失败:avg_trade_return_pct 0.074% 低于 0.15% 生存底线,profit_factor 1.096,total_return -1.48%,跨越约 2.6 年,夏普比 -0.29,CI [-1.32, 1.01] 横跨零线,PSR 0.32,且 avg_loss($5020)超过 avg_win($4714)。假设的核心数字在量化上为伪:它假设 Hyperliquid 每天 0.12-0.72% 的收益,但开发者测量的实际 SOL HL 资金费率约为每小时 1.25e-5 基准水平(历史最高约每小时 6.18e-5 ≈ 每天 0.03%),比声称值低一到两个数量级,且"丰富"门槛在任何回望窗口下都不可触及 — 没有可收割的高收益状态。微小的真实收益随后被跨交易所基差淹没:return_kurtosis 84.5 和偏度 -5.4 显示 30 天 SOL 现货(Binance)-vs-永续(Hyperliquid) 基差波动大于其拟净赚取的收益,与本次会话中放弃的 BTC/SOL 现货-永续套利具有相同的计费但负 delta 中性资金费率套利特征(收益 < 往返成本 + 基差跟踪误差)。开发者自身的文档字符串已预先登记此判定:"在回测审查时的正确决定是 ABANDON... 因为假设的前提高估了真实数据流一到两个数量级。" entry_gate/min_hold_days 的任何调整都无法变出数据流中不存在的溢价,延长持仓只会增加基差风险。失败模式:fee_edge/no_edge delta 中性资金费率套利,前提被证伪。

实现

Delta 中性跨交易所资金费率套利,SOL,4H K线:LONG SOLUSDT.BINANCE_SPOT(现金端)和 SHORT SOLUSD.HYPERLIQUID(收取资金费率的永续端),规模匹配为等值 USD 名义金额,使方向性 SOL 敞口抵消,盈亏为资金费率现金流减去手续费。每根 bar 返回的连续决策变量是 Hyperliquid 在 SOL 上 funding_lookback 个数据点的已实现逐时资金费率移动均值;当该均值达到或超过 entry_gate 时开仓,当衰减至 exit_gate 时平仓 — 但仅在 min_hold_days 之后,因为收益覆盖约 0.29% 的全部往返成本(Binance 现货 0.20% + HL 永续 0.09%)的方式是 ACCRUING 而非金额较大:在发布的门槛下盈亏平衡为 12.1 天,因此 21 天地板提供约 1.7x 覆盖。硬性 max_hold_days 超时和裸腿保护(任何单一未平仓腿立即平仓)限定风险,持仓时钟为日历时间,取自 bar 自身时间戳,因此在重启、回测和模拟回放中完全一致。资金费率序列解析为排序数组一次;每根 bar 的成本为一次 searchsorted。如果资金费率序列不可用,策略保持空仓,从不替代价格或基差信号。

验证结果

CLEAN RESTART 2026-09-04 — 本次运行的判定历史和学习记录已移除,并从验证阶段重新开始。此前放弃该策略源于流水线,而非市场:Layer-2 测试框架错误绑定了 @staticmethod 辅助函数(已修复),QA 在未经优化的冒烟测试中给出了终局绩效判定(已移除——QA 现在仅评估正确性),沙箱超时则由回测槽位资源耗尽导致(已修复)。假设和策略代码均未改变。请依据代码本身进行验证;绩效将由之后的完整回测和优化器判定。

回测评审

夏普
-0.29
总收益率
-1.48%
最大回撤
1.49%
总交易数
52
胜率
53.8%
盈利因子
1.10

资金费率已加载并计入(22,291 个事件,52 笔交易)——这是对真实经济效果的评估,而非数据障碍;delta 中性,无强平

计算上简洁(资金费率查询为 O(log n)),填补权重不足的 HL/跨交易场所类别

avg_trade_return_pct 0.074% — 低于 0.15% 可行性下限;PF 1.096,total_return -1.48%,夏普 -0.29(CI [-1.32,1.01]),PSR 0.32;avg_loss > avg_win

前提不成立:真实的 SOL HL 资金费率基准约为 1.25e-5/小时(最高约 0.03%/天),而声称为 0.12-0.72%/天——高估了 1-2 个数量级;不存在高收益区间

基差噪声主导:return_kurtosis 84.5,偏度 -5.4 — 30天现货-永续基差波动超过其净赚取的收益

开发者已在文档字符串中根据恰好这些证据预先登记了 ABANDON

迭代历史

验证失败(第 2 层——合成情景): 使用的参数:['min_bars', 'exit_gate', 'entry_gate', 'capital_frac', 'min_notional', 'max_hold_bars', 'qty_precision', 'min_funding_pts', 'funding_lookback', 'spot_instrument_id', 'supplementary_data'] 检查 __init__ 是否通过 self.parameters.get() 设置了所有属性。 - steady_uptrend: TypeError: SolCrossVenueFundingCarryShortHlLongBinanceSpotNeutral4H._bar_ts() 需要 1 个位置参数,但实际传入了 2 个(K 线时间戳:1735690740000) - steady_downtrend: TypeError: SolCrossVenueFundingCarryShortHlLongBinanceSpotNeutral4H._bar_ts() 需要 1 个位置参数,但实际传入了 2 个(K 线时间戳:1735690740000) - flat_ranging: TypeError: SolCrossVenueFundingCarryShortHlLongBinanceSpotNeutral4H._bar_ts() 需要 1 个位置参数,但实际传入了 2 个(K 线时间戳:1735690740000) - volatility_spike: TypeError: SolCrossVenueFundingCarryShortHlLongBinanceSpotNeutral4H._bar_ts() 需要 1 个位置参数,但实际传入了 2 个(K 线时间戳:1735690740000) - zero_volume: TypeError: SolCrossVenueFundingCarryShortHlLongBinanceSpotNeutral4H._bar_ts() 需要 1 个位置参数,但实际传入了 2 个(K 线时间戳:1735690740000) - price_gap: TypeError: SolCrossVenueFundingCarryShortHlLongBinanceSpotNeutral4H._bar_ts() 需要 1 个位置参数,但实际传入了 2 个(K 线时间戳:1735690740000)

验证失败(第 4 层 — QA 审查): - entry_gate 默认/配置 = 每小时 1.0e-5,但假设明确定义了可交易的"结构性 RICH"状态为 0.005-0.03% PER HOUR(即 5.0e-5 到 3.0e-4)。编码的门槛 5x 到 30x BELOW 假设自身声明的丰富区间,且实际上 BELOW Hyperliquid 的中性/休息资金费率水平(HL 的利率成分本身为 0.01%/8小时 = 每小时 1.25e-5)。因此该门槛容纳的是普通基准资金费率,而非高收益状态 — 它是"始终开启"的过滤器,而非选择性过滤器。回测确认:exposure_pct=105.27%,50 次往返交易,跨越 169 天,平均持仓 8天 9小时 — 账户基本永久处于市场中。编码门槛处的手续费计算:每小时 1e-5 x 24 = 每天 0.024% 的收益,而全部往返成本约为 0.29%(BINANCE_SPOT 0.20% RT + HYPERLIQUID 永续 0.09% RT)= 12.1 天才能回本,而观察到的平均持仓为 8.4……展开收起

验证失败(第 4 层 — QA 审查): - entry_gate 默认/配置 = 每小时 1.0e-5,但假设明确定义了可交易的"结构性 RICH"状态为 0.005-0.03% PER HOUR(即 5.0e-5 到 3.0e-4)。编码的门槛 5x 到 30x BELOW 假设自身声明的丰富区间,且实际上 BELOW Hyperliquid 的中性/休息资金费率水平(HL 的利率成分本身为 0.01%/8小时 = 每小时 1.25e-5)。因此该门槛容纳的是普通基准资金费率,而非高收益状态 — 它是"始终开启"的过滤器,而非选择性过滤器。回测确认:exposure_pct=105.27%,50 次往返交易,跨越 169 天,平均持仓 8天 9小时 — 账户基本永久处于市场中。编码门槛处的手续费计算:每小时 1e-5 x 24 = 每天 0.024% 的收益,而全部往返成本约为 0.29%(BINANCE_SPOT 0.20% RT + HYPERLIQUID 永续 0.09% RT)= 12.1 天才能回本,而观察到的平均持仓为 8.4 天。该策略在此门槛下结构性地低于盈亏平衡点,沙盒结果完全印证了这一点(total_return -2.06%,profit_factor 0.96,手续费 4.22% 占总收益)。在假设自身声明的门槛处(每小时 5e-5 = 每天 0.12%),盈亏平衡约为 2.4 天,收益可覆盖手续费并有真实利润。代码实现的是一个不同的、不可行的边际优势版本。 - exit_gate = 0.0 意味着持仓将持续持有,直到移动 HL 资金费率均值变为 NEGATIVE。假设要求在"收益枯竭时"平仓。零并非"枯竭" — 任何在 (0, 5e-5) 范围内的资金费率为正但低于盈亏平衡,而当 exit_gate=0.0 时,账户会在接近基准资金费率的任意长时间段内承受约 0.29% 的往返成本,同时收益低于手续费。结合 max_hold_bars=180(30 天),一个头寸可以在超时触发前持续出血一个月。这是观察到的 profit_factor(0.96)的直接机制。 - 裸腿保护在提交平仓指令后将 self._entry_bar 设为 None,但平仓在下一根 bar 才成交。如果双腿在下一根 bar 仍然开着,pair 分支计算 held = 0(因为 _entry_bar 为 None),max_hold_bars 永远不会触发 — 超时保护被静默禁用,直到下一次干净入场。carry_gone 检查仍然适用,所以并非致命,但声明的时间止损并不保证执行。 - calculate_signal 将整个 _manage() 调用包裹在裸 `except Exception: pass` 中,_positions() 以同样方式吞掉所有缓存异常。任何下单、头寸规模或持仓查询的系统性故障都会表现为"策略根本没有交易",而非报错,这使得第 -3 层和实盘调试都变成盲操作。

验证失败(第 3 层——沙盒回测):未产生交易 使用的 K 线类型:SOLUSD.HYPERLIQUID-4-HOUR-LAST-EXTERNAL,已处理 K 线数:5435 诊断:should_enter() 在已评估的 5408 根 K 线上返回了 0 次方向信号 -> 你的 ENTRY CONDITION 从未触发。请放宽入场逻辑/阈值。 确保你的策略能在给定数据和参数下产生交易。

验证失败(第 4 层 — QA 审查): - 假设的核心前提经实证检验为伪,由开发者在真实数据流上测量(hl_funding_rates,SOL,8,550 个逐时数据点,2025-06..2026-08):均值 -3.9e-7/小时,MAX 6.18e-5,第 99 百分位 1.91e-5,75-95th-百分位均固定在 HL 的 1.25e-5 基准水平。假设声明的"丰富"区间为 0.005-0.03%/小时(5.0e-5..3.0e-4)— 该区间不可触及 — 其上限约为历史最高值之上 5x,从未有任何值达到 3.0e-4。声称的每天 0.12-0.72% 收益高估了真实数据流一到两个数量级;SOL HL 资金费率没有高收益状态,仅有约 1.25e-5/小时的基准水平。该策略拟收割的边际优势在声称的量级上并不存在。 - 费用/边际失效,主导因素为不可控的跨交易所基差风险(检查清单 #7)。由于高收益门槛不可触及,设计将费用利润完全转移到 21+ 天的最低持仓上,仅积累 BASELINE 资金费率以覆盖约 0.29% 的全部往返成本。但在多周持仓期间,Binance 现货-vs-HL-永续 BASIS 波动主导:沙盒显示 avg_win $6,247 vs avg_loss $6,389 — 波动幅度比零点几个百分点的收益高出数个数量级 — 净结果 total_return -0.998%,PF 0.978,avg_trade_return_pct -0.021%,跨越 20 笔交易(平均持仓 25.7 天)。账户对 SOL DIRECTION 为 delta 中性,但对跨交易所基差 NOT,后者是主导盈亏。开发者的无引擎 +0.151%/笔交易模拟之所以乐观,正是因为它仅对手续费与资金费率进行收费,而忽略了真实回测捕获的基差盈亏 — 而真实回测显示净亏损。 - 不可测量(L16/L26)。以每年 5-9 笔交易和 21-30 天持仓,该策略无法填充 3 滚动 OOS 窗口或 15 天保留期 — 开发者已明确说明。即使沙盒的 20 笔交易跨越 364 天也是多周持仓,因此下游 DSR/OOS/保留期门槛没有可用样本。

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