因为永续合约的成交价低于指数
当永续合约的成交价低于它的现货预言机价格时,资金费是负的,于是空头仓位的持有者付给多头的持有者,而不是从他们那里收钱。符号来自溢价指数,它量的是订单簿真正会成交的价格和预言机价格之间的差距。
这个符号带的就只有这些。一个负费率是持有一方一小时的价格,不是一个关于价格要往哪里去的看法。
要比指数低到什么程度
有文档的那个 8 小时费率是 F = P + clamp(interest rate - P, -0.0005, 0.0005),其中利息部分固定在每 8 小时 0.01 %。把这些数字放进去,这个夹取就做了一件值得知道的事:只要溢价指数落在 -0.04 % 和 +0.06 % 之间,它就吸掉整个差距,而费率恰好等于利息部分,是正的。
所以资金费不会在刚出现折价的时候就翻过去。按同样的算术,只有当平均溢价指数跌到 -0.05 % 以下,8 小时费率才转负,而那时它等于溢价加上 0.05 %。每小时交换它的八分之一。所以一个屏幕上的负费率,已经是一个真实的折价,不是零附近的噪声。
溢价本身是对着订单簿的深度量的,不是对着它的最优价格:预言机价格和那些冲击价格之间的差距,而冲击价格是在每一侧成交 impact_notional_usd 的平均成交价,BTC 和 ETH 是 20000 USDC,其他地方是 6000 USDC。它每 5 秒采样一次,并在这一小时内取平均。
一个例子
假设一小时内的平均溢价指数是 -0.2 %。夹取被钉在它 +0.05 % 的上界,所以 8 小时费率是 -0.15 %,每小时费率是它的八分之一,-0.01875 %。支付是 position_size * oracle_price * funding_rate,所以一个 $10,000 的空头每小时付给多头 $1.88,假如费率一直这样,一天大约 $45。它很少一直这样。
一个负费率说了什么,又没说什么
它说的就是它量到的那些,再没别的:在那一小时里,把 20000 或者 6000 USDC 打进订单簿,平均落在预言机价格之下。
- 它没说有多少空头。未平仓合约数的是还开着的合约,而每一份合约都是一个多头加一个空头。没有哪个公开数字点得出拥挤的那一边。
- 它没说这个折价会持续。溢价每 5 秒重新采样,费率每小时重算一次,只用那一小时的数据。
- 它不是免费的钱。一个在收钱的多头仍然背着这个仓位的全部价格风险,而那在一次波动里就可能是好几小时资金费的许多倍。
- 它不是一个信号。它是一笔对双方都换了符号的成本,而且是在它描述的那一小时之后才发布的。
收到资金费不会降低一个仓位的风险。Hyperliquid 上的资金费封顶在每小时 4 %,而一次强平可以在一次波动里拿走一个仓位的全部保证金:在逐仓保证金里,是那笔逐仓保证金和这个仓位一起没了;在全仓保证金里,一次兜底强平把那些全仓仓位和全仓保证金一起转走。费率改变的是一个仓位持有起来要花多少,从不改变它能亏掉多少。
在哪里看到它
本站的资金费率页面把快照时资金费为负的那些市场,放在最高的正值旁边列出来,取的是 Hyperliquid 公开 API 给出的数字。当那一刻没有任何市场为负时,页面会这么说,而不是显示一张空表,而这比这个问题让人以为的要常见。
每个市场页面是更朴素的那个视角:七天内的平均每小时资金费率,以及其中多头付给空头的那些小时所占的比例。一个快照可能抓到一个古怪的小时;七天才看得出一个市场是不是真的在付它的空头。在持仓成本计算器里,收到的资金费会显示出来,但不计为一笔收益。