编辑
2026-09-05
b圈
00

目录

背景:一条上线两个月的链,摆着 200% 的年化
1、先讲清楚 LP 是什么:你不是在存钱,你是在开摊
无常损失:你永远是逆势的那一方
2、Robinhood Chain:一条只有两个月大的链
3、下场两天:4.4 万美元,净赚 607.87
4、四个把我坑到的地方
4.1 界面上的 APR,跟你没关系
4.2 协议费吃掉六分之一,全网没人提
4.3 费率档选错,日收益差 6.7 倍
4.4 K 线数据是脏的,波动率得自己扫
5、手续费 / 无常损失,这个比值才是命门
6、在算收益之前,我先去读了合约
这些代币是可以被销毁的
供应量小到我自己就能影响它
锚定是"软"的
还有一个我没法分散的风险
7、200% 的年化,到底是谁在付?
总结

界面上写着 389% 的年化,我盯着看了三天,第一反应是"这肯定有诈"。 于是我决定花点真钱,去搞清楚诈在哪。 两天后账面赚了 607.87 美元。但如果我什么都不做、只是拿着那些币,我会多赚 11.75 美元。 这篇讲的就是这中间到底发生了什么。

背景:一条上线两个月的链,摆着 200% 的年化

今年 7 月 1 号,Robinhood 上线了自己的公链。链上跑的是代币化的美股——你能在链上买到 GLD(黄金 ETF)、SGOV(短债 ETF)、NVDA 这些标的的代币版本,一共 190 多个。

这条链上的交易几乎全部跑在 Uniswap 上。我去 Uniswap 界面上翻池子,看到的年化是这样的:

  • GLD/USDG 池:389%
  • SGOV/USDG 池:1,145%

主流链上什么水平?以太坊上 1 亿美元 TVL 的 USDC-WETH 池,年化 19%。纯稳定币对普遍 2–7%。

差了几十倍。

我的第一反应不是"发财了",是"这里面一定有我没看懂的东西"。可能是数据算错了,可能是有个大坑在下面等着,也可能是这个数根本不是我以为的那个意思。

光看是看不出来的。链上的东西,你只有真金白银下去,事件日志才会记你的名字。

所以我掏了 44,090 美元,分两个标的建了仓,然后写了一套脚本,把每一笔手续费、每一分无常损失、每一次 gas 全部从链上事件里重新算了一遍。

结论比我预想的有意思得多。

1、先讲清楚 LP 是什么:你不是在存钱,你是在开摊

很多人第一次听 LP(流动性提供者),会以为是"把钱存进去吃利息"。

完全不是。你是去开摊做生意的。

传统的撮合平台有订单簿,你挂个单等对手方。Uniswap 没有订单簿,它的逻辑是:你把两种资产按比例扔进一个池子,谁想换,就直接从池子里拿走一种、放进另一种。每笔交易抽 0.05%–1% 不等的手续费,按你出资的比例分给你。

你赚的是过路费,不是利息。所以这门生意的核心变量只有一个:有多少人从你这儿路过

Uniswap v3 加了一个东西叫集中流动性,这是理解一切的关键。

你不用把钱铺满 0 到无穷大的价格区间,可以指定一段。比如我认为金价这两天在 397 到 411 美元之间震荡,就只在这一段放钱。

区间越窄,同样的钱在这一段的深度就越大,抽到的手续费也越多。我实测过:同样的资金,区间从 ±0.7% 收窄到 ±0.3%,有效收益能翻 2.3 倍。

代价是——价格一旦走出你的区间,你就彻底不干活了,手续费瞬间归零。

这不是打个折,是断电。后面第 5 节我会贴出我自己那天的数字,昨天赚 278.99 美元,今天赚 0.00 美元。

无常损失:你永远是逆势的那一方

第二件必须搞明白的事,叫无常损失(Impermanent Loss,IL)

池子的机制决定了:金价涨的时候,池子会自动把你手里的黄金卖掉、换成稳定币;金价跌的时候,反过来自动帮你买入。

也就是说,你在这个摊位上永远是逆势的那一方。涨了你被迫卖,跌了你被迫接。

跟"什么都不做,就拿着这些币"相比,你少赚的那部分,就是无常损失。

这不是 bug,这就是你能收手续费的对价。你为市场提供了可以随时成交的深度,作为回报你收过路费;作为代价你在单边行情里必然吃亏。

震荡市里手续费赚过 IL,你就赢。单边行情里必然跑输。 没有第三种可能。

2、Robinhood Chain:一条只有两个月大的链

技术上它是 Arbitrum Orbit L2,chainId 4663,ETH 当 gas,约 100ms 出块。

我实测下来的体感:gas 便宜到可以忽略。建一个仓位 0.47 美元,做一次 swap 0.52 美元。我全程折腾了十几笔交易,gas 总共花了 3.21 美元。这个数字放在以太坊主网上是不可想象的。

Uniswap 的 v2/v3/v4 加上 UniswapX,在这条链主网上线第一天就全量部署了,现在占链上股票代币流动性的约 99%(v4 约 73%,v3 约 26%)。上线六周处理了约 15 亿美元的股票代币交易。

但真正让我下决心下场的,是另一个特别关键的点:

这条链上没有任何 LP 激励补贴。

不发平台币,不搞流动性激励,不给任何形式的补贴。你的收益 100% 来自真实交易产生的手续费

这件事有两面。

好的一面是:这个年化是真的,不是发币发出来的数字游戏。主流链上很多高 APR 池子,收益里有一大半是项目方印的代币,你今天领到手,明天砸盘归零。

坏的一面是:没有代币补贴兜底,IL 就是纯成本。 你亏多少就是多少,没人给你补。

顺带一提,这些股票代币美国用户不可用。这是个挺讽刺的设计。

3、下场两天:4.4 万美元,净赚 607.87

时间线大致是这样的:

  • 09-02 19:15 建了第一个 GLD/USDG 仓位,1,560 美元,试水
  • 09-03 01:26 觉得没问题,加了个大的,39,400 美元
  • 09-03 全天 SGOV 那边建了三次仓——其中一次建错了池子(后面细讲)

今天早上把脚本跑了一遍,全部数字从链上事件重建,结果是:

GLD/USDG 投入 $40,853.09 在手 $41,453.03 价格变动 +618.58 IL -333.76 手续费 +315.12 gas -1.33 净 PnL +$598.61 SGOV/USDG 投入 $9,963.74 已撤出本金 $6,725.97 在手 $3,245.53 价格变动 +1.04 IL -0.06 手续费 +10.16 gas -1.88 净 PnL +$9.26 ──────────────────────────────────────────────────────────── 合计 手续费 +$325.28 IL -$333.82 gas -$3.21 净 PnL +$607.87

两天赚 607.87 美元,本金 4.4 万,看着挺美。

但把这个式子换一个角度看,就不美了:

LP 相对于「什么都不做,只拿着币」的超额收益 = 手续费 + 无常损失 − gas = 325.28 − 333.82 − 3.21 = −11.75 美元

我忙活两天,写了一堆脚本,盯了一堆盘,结果比躺着不动少赚了 11.75 美元。

这个数字昨天更难看,一度是跑输 183 美元。今天金价回落了一点,IL 缩小了,才追回来大半。

我没有把这个结果藏起来的意思。恰恰相反,这才是这篇文章最值钱的部分——网上讲 LP 的教程,收益永远是正的,因为他们不算 IL,或者只截取赚钱的那几天。

4、四个把我坑到的地方

这一节全是我自己撞出来的,每一条都花了真钱或真时间。

4.1 界面上的 APR,跟你没关系

前面说了,界面上 SGOV 池 1,145%,GLD 池 389%。SGOV 看着好四倍。

我实际测下来,单位资金的收益,GLD 是 SGOV 的 3.7 倍。方向完全反了。

原因很简单,但没人在界面上告诉你:

界面 APR = 整个池子的手续费 ÷ 整个池子的 TVL 你的实际收益 = 池子手续费 × 你占「活跃流动性」的份额

界面那个数是整池的平均值,它假设所有钱都均匀铺开。但集中流动性下压根不存在"均匀铺开"这回事——大家的钱堆在不同的价格段上,成交发生在哪一段,哪一段的人分钱。

你的区间设在哪、设多宽,决定了你实际能分到多少。界面那个数字跟你的仓位没有任何关系。

我现在的判断依据只有一个:把自己的仓位放进去,算实测年化,跟整池 APR 对比。低于整池的一半,说明区间铺太宽了,钱没堆到成交发生的地方。

4.2 协议费吃掉六分之一,全网没人提

这个是我最意外的发现。

我写了个脚本,从链上的 Swap 事件把手续费一笔一笔重新算出来:每笔 swap 如果成交价落在我的区间内,我该分到 交易额 × 费率 × 我占该笔活跃流动性的比例

算完跟链上实际 collect() 到手的数一对——我算出来的数,恒定比实际到手高 20.00%

不是差不多高 20%,是两个池子、四个币种,误差完全一致

误差如果是浮动的,那多半是我算法有问题。误差恒定,那就是有个地方在按固定比例抽水

顺着这条线去查,找到了 Uniswap v3 池子里一个叫 slot0.feeProtocol 的字段。这是协议层面的抽成开关。读出来是这样的:

池子抽成LP 实际拿到
GLD/USDG 0.3%、SGOV/USDG 0.3%1/683.33%
NVDA/USDG 0.05%、WETH/USDG 0.01%1/475%
SGOV/USDG 0.05%0100%

1/(1-1/6) - 1 = 20%。完全对上。

最关键的是这句话:

所有第三方数据源——包括 Uniswap 自己的界面——给你看的 APR,都是没扣协议费的毛值。

你看到 389%,实际到手 324%。你看到 1,145%,实际到手 954%。而且不同池子抽成还不一样,得逐个池子去读,不能想当然

4.3 费率档选错,日收益差 6.7 倍

SGOV 有两个池子,一个 0.3% 费率,一个 0.05%。

我建仓的时候,手一抖建到了 0.05% 那个

后果:

0.05% 池:日收益 $8.35 0.3% 池:日收益 $55.60

差 6.7 倍。

费率低 6 倍只是一半原因。另一半是 0.05% 池的流动性还比 0.3% 池密 5.9 倍——同样的钱扔进去,我占的份额被稀释得更厉害。两个因素叠一块,就是 6.7 倍的差距。

这里的教训比"看清楚再点确认"要深一层:

TVL 不等于深度。

一个池子 TVL 一个亿,但钱全铺在离现价很远的地方,那现价附近的深度可能还不如一个 TVL 一百万但区间设得准的池子。集中流动性下要看的是 liquidity()——当前价格上的活跃流动性,不是总锁仓量。

我现在建仓前必做的一步:把候选池子的活跃流动性都读一遍,再决定钱放哪。

4.4 K 线数据是脏的,波动率得自己扫

定区间宽度,得先知道这东西一天能波动多少。

我一开始用的是第三方数据源 DexPaprika 的日线,算出 SGOV 的日振幅约 0.9%,据此推荐了 ±0.7% 的区间。

后来不放心,自己扫了链上 72 小时的 Swap 事件,一笔一笔还原真实成交价格。24 小时的真实价格范围是:0.351%

差了 2.5 倍。

回头去看那份日线数据,发现 volume 字段全是 0——数据本身就是坏的,high/low 里混了脏值。

用真实成交分布重新做回测(指标是「区间集中度 × 成交量落在区间内的比例」),±0.3% 的有效收益是 ±0.7% 的 2.3 倍

这条的普适教训:链上有原始事件,就别信二手 API 的聚合数据。 前者是账本,后者是别人的转述。

5、手续费 / 无常损失,这个比值才是命门

折腾到现在,我认为判断"这个 LP 还值不值得待着",只需要看一个数:

累计手续费 ÷ |无常损失|

远大于 1,说明你收的过路费盖得住逆势的代价,这生意在赚钱。 接近 1 或者小于 1,说明你在给市场白打工。

我这两天这个数的变化,比任何理论都清楚:

前天 8.6x ← 震荡行情,躺着数钱 昨天 6.7x ← 开始有单边苗头 今天 0.97x ← 已经在给市场打工了

中间发生了什么?金价从 404 美元冲到了 415 美元。

我的区间上沿是 406.71 和 411.62 美元,价格一路向上穿过去,池子机制忠实地执行了它的逻辑:把我区间里的 63 个 GLD 全部卖掉了,均价大约 404 美元。

然后金价到了 415 美元。

IL 一天涨了 16 倍。

更直观的是手续费日报:

标的 今天 昨天 前天 GLD/USDG $0.00 $278.99 $3.82 SGOV/USDG $3.89 $3.95 $2.18

GLD 昨天一天赚 278.99 美元,今天赚 0.00 美元。

不是少赚,是归零。因为价格出界了,我的钱躺在池子里,一分不干,一分不赚。

这就是集中流动性的两面:区间设窄,赚钱效率翻倍;价格一走,收益断电。

而这次断电还叠加了最坏的情况——出界方向是"全部换成了稳定币",等于在 404 美元清仓了黄金,然后眼睁睁看着它涨到 415 美元。

这不是操作失误,这是 LP 这门生意的固有代价。 我提前知道会这样,我只是没料到它来得这么快。

6、在算收益之前,我先去读了合约

年化再高,前提是钱还在。所以我把这两个标的的合约扒了一遍。以下全部是链上实读的结果,不是猜的。

这些代币是可以被销毁的

GLD 和 SGOV 都是 beacon 代理,本体只有 283 字节的壳,逻辑指向同一个实现合约。

我把实现合约的字节码搜了一遍,里面有这几个函数:

  • mint(address,uint256) —— 增发,这个正常
  • burn(address,uint256) —— 销毁任意地址的余额
  • pause() / unpause() —— 暂停

第二个得单独说。参数是 (address, uint256),意味着持有 mint/burn 权限的人,可以直接把你链上账户里的 GLD 烧掉,不需要你签名,不需要你同意。

第三个的后果更狠。pause() 一按,代币转账全部禁止,连带的结果是:

  • Uniswap 池子里所有 swap 全部 revert
  • 你连撤出流动性都做不了

不是"暂时不能交易",是资金原地锁死,你什么操作都执行不了

那这些权限在谁手上?我去读了 beacon 的 owner()DEFAULT_ADMIN_ROLE()

都读不出来。

这个合约的权限结构,在链上是不可见的。

供应量小到我自己就能影响它

GLD 全网总供应量:8,611 个,按现价约 347 万美元。

我待的那个 0.3% 池子,占了其中的 19%

我还追踪到一段记录:8 小时之内铸了 28 次,一共 111 个 GLD,全部发给同一个合约地址。供应完全由发行方控制,随开随关。

锚定是"软"的

链上的 GLD 价格,跟真实的 GLD ETF 价格,靠什么保持一致?

靠做市商跨市场搬砖。

没有原子赎回路径——你不能拿链上的 GLD 去 Robinhood 换成真的黄金 ETF 份额。所以它俩的价格能不能对得上,全看有没有人愿意去两边搬。

实测下来偏离能有多大:

  • 链上 GLD 曾经折价 1.43%
  • 也曾经溢价 2.25%(真实 ETF 报价 406.29,链上 415.42)

而且约 60% 的股票代币成交,发生在美股休市时段——那时候套利路径是断的,价格纯粹由链上供需决定。

还有一个我没法分散的风险

我两个仓位,一个 GLD/USDG,一个 SGOV/USDG。看起来分散了,实际没有:

它们都以 USDG 计价。USDG 一出事,两个仓位一起完蛋。

USDG 是标准的 EIP-1967 可升级代理,也就是说逻辑随时可以被换掉。

我在建第二个仓位的时候完全没意识到这一点。以为"两个不同标的 = 分散",实际上分母是同一个。

7、200% 的年化,到底是谁在付?

最后这个问题,是我下场之前最想不通的。

先把对比摆出来:

GLD/USDG(Robinhood Chain)USDC-WETH(以太坊)
TVL143 万美元1.04 亿美元
费率档0.3%0.05%
日换手率3.1x0.64x
净年化284%19%

主流链上的实测水位(数据来自 DefiLlama,剔掉了成交量缺失的池子):

  • 纯稳定币对:2–7%(唯一上双位数的 Base 上 EURC-USDC 25.9%,但那个其实带欧元汇率风险)
  • LST 同源对:0.4–4%(9,700 万美元的 curve ETH-STETH 只有 1.2%)
  • 蓝筹对:Solana 上 SOL-USDC 94%,Arbitrum 上 WETH-USDC 24.5%

差距的来源,拆开看其实很清楚:

费率档高 6 倍 × 日换手率高 4.8 倍 = 差不多 29 倍。 数学上完全能对上。

那为什么这条链能有这么高的换手率和费率?

因为它只上线了两个月。池子小(TVL 才 143 万),做市商还没进来卷,费率档还停在 0.3% 这种"早期档位",成交却因为标的稀缺而异常活跃。

这三个条件,每一个都会随着时间消失

TVL 会涨,套利机器人会来,费率档会被 0.05% 池抢走成交,日换手率会回归正常水位。

所以我的结论是:

我拿的这 200% 溢价,本质是在为「这条链才上线两个月」收租,不是我发现了什么别人没看见的机会。

这个认知很重要,它直接决定了策略:这是一笔有保质期的生意,不是一个可以长期配置的仓位。 该盯着的不是"年化多少",而是"什么时候这个溢价会消失"。

总结

两天,4.4 万美元,账面 +607.87,相对于躺平 −11.75。

如果只让我留三句话:

第一,界面上的数字全都不是给你的。 APR 是整池的,跟你的区间无关;而且是没扣协议费的毛值,实际到手要打八三折甚至七五折。想知道自己赚多少,只有一个办法——自己从链上事件把账重算一遍

第二,判断 LP 值不值,只看「手续费 ÷ 无常损失」。 我这个比值两天从 8.6 掉到 0.97,中间只发生了一件事:金价单边涨了 11 块。震荡市这门生意成立,单边市它必然亏——这不是风险,这是规则。

第三,把合约读完再算收益。 我的两个标的都能被任意销毁余额、能被随时暂停(暂停后连撤资都做不了)、权限结构在链上不可见、全网供应只有 347 万美元、锚定靠人肉搬砖、两个仓位共用同一个稳定币做分母。这些事情一件都还没发生,但只要发生一件,前面那 607 美元就没有任何意义了。

我会继续跑下去,也会继续把数据记下来。但我心里很清楚——这不是一个"稳赚"的机会,这是一次付费的实地考察。

学费目前是 11.75 美元。这个价格,我觉得挺值。


加入AI技术交流群,可以先关注本公众号,然后在后台回复「交流」,获取入群方式。

感谢你看到这里,如果觉得有帮助,转发,点个赞或在看,就是对我最大的鼓励。也欢迎留言交流你的想法~

本文作者:花菜

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!