← 返回 Quant Digests · 站点首页

别把这份 2026 funding-arb repo 直接当成“APR>5 就开”的 carry 脚本:对 short-cycle desk,更该先测的是「extreme-funding-only × boundary-time entry / fee-churn veto」这条 raw alpha

更新时间:2026-04-04 22:01 UTC 研究时间:2026-04-04 22:03 UTC 类型:2026 GitHub 新 repo source audit(`CLAUDE.md` + `config/settings.py` + `src/strategy/funding_arb.py` + `scripts/backtest.py`)+ Binance USDⓈ-M 公共 funding history 最小复现 主题标签:raw-alpha/carry/funding/basis/spot-perp/same-underlier/delta-neutral/extreme-apr-only/funding-boundary/fee-churn-veto/binance/btc/eth/1m/3m/5m/15m/repo/public-data/cost/risk 证据类型:开源 repo 规则审计 + 公共 funding API 快速复现

源文件:research/quant_digests/2026-04-04_2203_extreme-funding-tail-carry-alpha.md

1. 这次看了什么

这轮主看的是一个很新的仓库:

我之所以把它捞进来,不是因为“funding carry”这个词有多新,而是因为它把一条完整可执行策略写得非常明白:

这符合我们本轮优先级里最值钱的那一档:

> 不是解释 carry 为什么存在,而是直接给出一个能写成策略回测/实盘壳子的 raw alpha。

但 desk 真正该 intake 的,不是 repo 表面那句“APR > 5% 就开”。

真正值钱的结论反而是:

> 正 funding carry 这条 raw alpha 只有在极端正 funding 尾部、并且你能把周转压得足够低时,才更像一条能留下净收益的 alpha;默认 5%/3% 阈值状态机会被手续费来回磨死。

2. 先回答:这篇东西的 base alpha 是什么?

先把最关键的问题说透。

2.1 base alpha 不是 filter,也不是 overlay

这条东西的 base alpha 很明确:

> base alpha = 同标的、delta-neutral 的正 funding carry。

也就是:

所以它不是“拿 funding 当行情过滤器”; 它本身就是一条独立可交易的 carry / funding raw alpha

2.2 但它不是逐根 1m/5m 方向预测

这里必须老实一点:

对 short-cycle desk 来说,正确读法是:

也就是说:

> 这是“慢 alpha,快执行”的 raw alpha,不是伪装成逐 bar 主信号的低频变量。

3. repo 里到底写了什么硬规则

repo 的策略骨架非常直接。

3.1 entry / exit 规则

src/strategy/funding_arb.py 写的是:

默认阈值来自 config/settings.py

翻成人话:

> repo 认为:只要正 funding 年化够到 5%,就值得开 delta-neutral carry;跌破 3% 或转负,就离场。

3.2 sizing / risk / polling

同一个配置文件里还给了:

这意味着它不是单纯“看 funding 的 notebook”,而是已经把:

都写成了一个完整壳子。

3.3 backtest 成本假设

scripts/backtest.py 里把每次进场/离场的双腿费用都写死成:

也就是:

而 funding 收益则按:

这套假设简单,但足够做最小 sanity check。

4. 这份 repo 真正值钱的,不是“carry 存不存在”,而是它暴露了 fee-churn 问题

repo 的 aspirational checkpoint 写得挺乐观:

但我更关心的是:

> 如果我们按它源码里最朴素的 5%/3% 阈值和成本口径直接复现,结果到底活不活?

于是我直接抓了 Binance 公共 funding history,按 repo 的规则快跑了一遍。

数据源:

口径:

5. 最关键的 4 个数据点

5.1 默认 5% / 3% 阈值,在 BTC/ETH 上都被手续费磨成负收益

730d 的最小复现结果:

#### BTCUSDT

#### ETHUSDT

一句话总结:

> 不是 funding 不够高,而是默认阈值导致周转太多,费用远大于 funding。

5.2 把 entry 提高到 10%、exit 提到 5%,仍然没救活

730d

#### BTCUSDT

#### ETHUSDT

这说明“把阈值随便往上抬一点”还不够。

5.3 只有进入极端正 funding 尾部,carry 才开始勉强翻正

当阈值进一步抬到 entry=15% / exit=8%

#### BTCUSDT

#### ETHUSDT

但这个“翻正”有两个现实含义:

  1. 它只是在极端 funding 尾部才像个 alpha;
  2. 它很慢、很稀疏,不该被误读成高频主引擎。

5.4 极端 funding 尾部本来就很少

730d,满足条件的窗口占比:

#### BTCUSDT

#### ETHUSDT

这组数字很重要,因为它告诉我们:

> 真正有净边际的 funding carry,不是“大多数正 funding”,而是“极少数极端正 funding”。

6. 对我们 desk 最有价值的重构读法

6.1 不要把它继续当成“全天开着”的 carry bot

如果按 repo 默认读法:

那更像是在制造:

这不适合 short-cycle desk。

6.2 更适合我们的读法:extreme-funding-only

对 desk 更值钱的 branch idea 是:

> 只做极端正 funding 尾部,把 carry 从“常开仓”改成“事件驱动的稀疏收息”。

也就是:

6.3 短周期真正该干的事是 execution,不是假装逐 bar 预测

1m / 3m / 5m / 15m,最合理的工作不是:

而是:

翻成人话:

> 这条 alpha 的 edge 在 funding,本地化收益在 execution。

7. desk 化后的最小实验:直连 1m / 3m / 5m / 15m

7.1 第一轮不要再跑“全天候 5/3 carry”

直接比较 4 本书:

  1. Repo baseline
  1. Higher threshold
  1. Extreme-only
  1. Boundary-timed extreme-only

7.2 执行层直接落到 5m / 15m

建议第一版:

7.3 加一个我们 desk 更需要的 veto

第一轮最值得加的不是复杂 ML,而是一个很土但很有用的 veto:

> 如果 funding 很高,但 spot-perp basis 在最近 3 × 5m 里还在持续扩大,就先不追;等 basis 停止继续拉大,再进 carry。

原因很简单:

7.4 第一轮要看的不是 Sharpe,而是 funding/fee 比

核心报表先看:

因为这条线最容易死在:

> 方向没错,但净收益被费用和入场时机吃干净。

8. 这轮最关键的“下一步怎么测”

  1. 先把 repo baseline 和 extreme-only 拉开跑。
  2. 不要把 5/315/8 混在一起讲“carry 行不行”;先确认问题到底出在 funding 本身,还是出在周转。

  1. 把“全天持有”改成“围绕 funding boundary 的事件持有”。
  2. 第一轮最值得测的是:结算前 30/60/90 min 建仓,结算后持有 1 个 funding 窗口,看看 net funding/fee 比是否明显改善。

  1. 先只做 BTC / ETH。
  2. 这条线的关键不在 universe 扩张,而在确认:高流动主币上极端 funding 尾部是否真的能留下稳定净收益。

  1. 明确把 borrow / maker-taker / rebalance 算干净。
  2. 这类策略最怕“paper 上收 funding,实盘里全吐给手续费和腿间偏差”。

  1. 若 extreme-only 仍然太稀疏,再考虑跨 venue。
  2. 单 venue 尾部 carry 若信号太少,第二阶段才值得去做 cross-venue funding ranking / fee-coverage routing;别一上来就把问题复杂化。

9. 为什么这轮仍值得进研究池

尽管 carry 家族最近已经有积累,但这篇仍值得收,因为它补的是一个很具体、也很实用的 desk lesson:

> raw alpha 没错,但默认策略壳会把 raw alpha 跑死。

这和“carry 不存在”完全是两回事。

对我们的素材池来说,它提供的不是又一个“正 funding 就收息”的老故事,而是一个更有用的命题:

> 在公开 funding 数据、完整策略壳和明确成本假设下,positive funding carry 只有在极端尾部 + 低周转执行里才更像可留下净值的 raw alpha。

这正适合后面继续拆:

10. 资料与来源

  1. tomvdrslt (2026), _funding-rate-arbitrage-bot_. GitHub repository.
  1. Repo metadata (GitHub API).
  1. Repo strategy spec (CLAUDE.md).
  1. Repo config (config/settings.py).
  1. Repo signal logic (src/strategy/funding_arb.py).
  1. Repo backtest (scripts/backtest.py).
  1. Binance Open Platform, _Get Funding Rate History_.

11. 一句话结论

> 这条 raw alpha 不是“APR>5 就无脑开”的常开 carry,而更像“只做极端正 funding 尾部、围绕 funding boundary 低周转收息”的稀疏事件型 carry。默认状态机的真正敌人不是 funding 不够高,而是 fee churn。