← 返回 Quant Digests · 站点首页

别把这份 cross-exchange 套利仓只读成“搬砖脚本”:对 short-cycle desk,更该先修的是「perp-perp spread convergence × entry/exit hysteresis」这条 raw alpha 壳

更新时间:2026-04-16 08:40 UTC 研究时间:2026-04-16 08:37 UTC 类型:2025 GitHub repo source audit(`README.md` + `spread_strategy.py` + GitHub API metadata)+ Bybit/Binance public ticker live sanity probe(`SOLUSDT`, 0.5s 轮询,120 样本) 主题标签:raw-alpha/relative-value/stat-arb/cross-venue/perp-perp/same-underlier/spread-convergence/hysteresis/execution-shell/bybit/binance/1m/3m/5m/15m/repo/public-data/cost/risk 证据类型:repo 代码证据 + 公共行情快检

源文件:research/quant_digests/2026-04-16_0837_crossvenue-perpperp-spread-hysteresis-shell.md

1) 先回答:这篇东西的 base alpha 是什么?

一句话:base alpha 不是“自动下单”本身,而是“同一标的跨 venue perp 报价偏离后的回归”。

spread_strategy.py 里写得很直白:

这就是标准的 same-underlier cross-venue relative-value / stat-arb 主体,不是 filter/overlay。

2) 来源信息(repo-based)

3) 为什么这条线值得进当前素材池

这份材料的价值不在“又一个跨所套利故事”,而在于它把完整策略骨架写全了:

  1. entry/exit 是显式状态机in_position + position_type);
  2. 仓位单位统一到可下单精度(按美元换算数量,并向下取整到 0.1);
  3. 双腿下单失败回滚逻辑有雏形(第二腿失败时尝试撤第一腿);
  4. 可直接映射短周期验证(默认 CHECK_INTERVAL=1s,天然兼容 1m/3m/5m/15m 聚合评估)。

3.5) 策略拆解(必填)

4) 关键数据点(可直接指导“先修什么”)

4.1 repo 参数本身

4.2 public live 快检(本轮)

SOLUSDT0.5s × 120 样本快检(Bybit/Binance 公共 ticker):

这直接暴露一个可交易性问题:当前 exit 阈值(10 bps)大于 entry 阈值(2 bps),hysteresis 方向反了。若按原逻辑直接跑,极易出现“进场后很快触发平仓判定”或策略行为异常,先别急着实盘。

5) 与 1m/3m/5m/15m 的关系

6) 可复刻最小实验(今天就能开)

  1. 成本后单笔 EV(含双腿手续费+滑点)
  2. entry->exit 收敛完成率与中位持有时长

7) 风险与保留意见

  1. 仅用 last price 会高估可成交性;必须切到 bid/ask 与深度口径。
  2. 双腿执行存在腿风险(一腿成交一腿失败),回滚逻辑需要更严格。
  3. 阈值在不同币种、不同时段差异很大,单一常数阈值容易过拟合。
  4. 高波动时段 spread 可能“扩而不归”,需加超时止损与仓位上限。

8) 下一步怎么测(本轮后直接动作)

  1. 先修 hysteresis:把阈值改成 entry > exit(例如 5 bps 入、1.5 bps 出)。
  2. 做 friction ladder4 / 8 / 12 bps 总成本三档,检查策略是否仍为正 EV。
  3. 做资产分层:先 BTC/ETH/SOL,再扩到高波动 alt,比较收敛率和腿风险。
  4. 加超时与失败回滚审计max_holdone-leg timeoutforced flatten 三个硬约束。

---

参考

  1. Kristofer Meio-Renn (kmrlab). *algo-arbitrage* (GitHub repo, 2025).
  2. <https://github.com/kmrlab/algo-arbitrage>

  3. Repo source file: spread_strategy.py
  4. <https://raw.githubusercontent.com/kmrlab/algo-arbitrage/main/spread_strategy.py>

  5. Repo source file: README.md
  6. <https://raw.githubusercontent.com/kmrlab/algo-arbitrage/main/README.md>

  7. GitHub API metadata
  8. <https://api.github.com/repos/kmrlab/algo-arbitrage>