Uniswap协议上的即时流动性

本文深入研究了Uniswap V3上的即时流动性(JIT)现象,通过对2021年5月至2022年7月的数据进行分析,发现JIT流动性交易非常罕见,仅占Uniswap V3总流动性的一小部分(约0.3%)。JIT流动性通常只用于大额交易,以提高交易质量,并受到MEV拍卖市场的竞争。文章还提出了JIT交易中价格改善的理论上限,并通过实证数据验证了该结论。

Austin Adams

Xin Wan

围绕 Uniswap 上的即时 ("JIT") 流动性概念存在一些混淆。Paradigm 的 Dan Robinson,Uniswap v3 白皮书的合著者之一,最近在 Twitter 上发起了一项调查,调查人们对 JIT 提供的 v3 流动性百分比的估计。最常见的答案是“超过 40%”,只有 16.5% 的受访者正确回答“不到 1%”。

在这篇博文中,我们调查了 Uniswap 上的历史 JIT,并发现上述观点是错误的。我们记录了 JIT 的经验分布,并将其与经济直觉联系起来。最后,我们深入研究 JIT 交易的结构和 JIT LP 的微观经济考量,得出一些有趣的理论结果。这些数据与公众的认知形成了鲜明对比。

总结

  1. JIT 流动性是一种特殊的流动性提供形式,其中 LP 在交换之前和之后立即创建和销毁一个集中的头寸。
  2. JIT 交易非常罕见;在 2021 年 5 月至 2022 年 7 月期间,只有 8,000 多笔 JIT 交易,JIT 流动性仅占 Uniswap v3 提供的总流动性的一小部分。
  3. 由于 JIT 流动性提供具有显著的固定成本,因此它通常只用于非常大的交换,改善 了原本会遭受高度价格影响的交易的执行质量。
  4. JIT LP 在 MEV 拍卖市场面临竞争;在合理的效率假设下,JIT 流动性提供的价格改进应受到 JIT 发生池的费率两倍的限制。

流动性提供

流动性提供有多种形式。在中央限价订单簿中,流动性提供者提交限价订单,由流动性接受者进行成交。在场外交易 (“OTC”) 市场中,流动性通常由交易商直接和专门地提供给询价客户作为报价,或者通过机构发送给一组选定的交易商的拍卖(竞争性投标征集)生成。

像 Uniswap 协议 (“Uniswap”) 这样的自动做市商 (“AMMs”) 创造了一种独特的市场结构,并由此产生了一种新的流动性提供形式。流动性提供者 (“LPs”) 将代币存入由智能合约控制的流动性池中,然后智能合约直接报价并将池中的代币与交易者进行交易。交易者发送一种代币并获得另一种代币。

在 Uniswap v3 中,LP 可以随时存入和提取流动性,他们获得的费用将与他们在流动性存入期间为交易者的订单流提供的流动性数量成正比。

有关 v3 如何允许集中头寸的回顾,请参见。

什么是 JIT?

即时 ("JIT") 流动性是指一种特定的 LP 策略,其中 LP:

  1. 观察公共内存池中一个(通常是相当大的)待处理的交换交易
  2. 在交换发生之前立即向交换将通过的 Uniswap 池中添加流动性,通常集中在交换将在范围内的那个 tick 中
  3. 让交换执行,并获得费用以换取为交换提供流动性
  4. 在交换后立即移除流动性和累积的费用

同时,LP 将在不同的流动性场所完成对冲交易,以抵消其库存风险,从而赚取与对冲相关的交易费用和来自 Uniswap 池的 LP 费用之间的差额。我们将在本文后面详细讨论这种对冲过程。

这是一个 JIT 的例子:

图 1. JIT 示例

placeholders

注 1 | 注 2 | 注 3

在上面的例子中,所有三个交易都发生在同一个区块中,并且它们都是顺序的。JIT 流动性提供者将这三个交易捆绑在一起并通过 Flashbots 发送。

由于交换的大小和时间点的流动性分布在 JIT LP 的交易之前就已知,因此他们可以(并且很可能已经)计算出交易的确切费用收入和头寸变化。

Uniswap v3 上的历史 JIT 交易量和分布

在本节中,我们量化了 Uniswap v3 上提供的 JIT 流动性数量。

方法论

只有在满足以下条件时,我们才认为一组交易是 JIT 流动性提供:

  1. LP 头寸在同一区块中被创建和销毁
  2. 创建交易和销毁交易在区块中相隔正好 2 个位置
  3. 创建和销毁之间的交易是在同一池中的交换交易

一旦我们确认一对创建 | 销毁交易是 JIT,我们就会计算存入的资产与提取的资产之间的差额。我们取交易的一方,并将其标记为区块时间点的美元。

结果

总计

从 2021 年 5 月 5 日 Uniswap v3 的部署到 2022 年 7 月 18 日,我们总共识别出 8,287 次 JIT 流动性提供尝试。其中 57 次未能提供任何流动性(有些错误地夹在非交换交易之间;有些以错误的 tick 添加了流动性)。超过 95% 的 JIT 流动性由一个单一账户提供,只有不到 20 个地址曾经尝试提供 JIT 流动性。

总的来说,成功的 JIT 流动性为交易者提供了略高于 20 亿美元的流动性。作为参考,Uniswap v3 在同一时期支持了超过 6000 亿美元的交易量,这意味着 JIT 流动性满足了约 0.3% 的流动性需求。

这直接驳斥了公众对 v3 的流动性有多少是由 JIT 提供的困惑。最常见的答案是“超过 40%”,只有 16.5% 的受访者正确回答“不到 1%”。

随时间分布

成功的 JIT 活动的历史分布如下所示。

图 2. 历史上的 JIT

placeholders

来源:Uniswap Labs 数据,Dune Analytics

自 2021 年 6 月以来,JIT 流动性的绝对美元交易量没有显著增长。在大多数月份,JIT 流动性的总交易量低于 2 亿美元,最近几个月大多低于 1 亿美元。

作为 Uniswap 上美元总交易量的百分比,JIT 也没有显著或增长。在过去的 6 个月中,Uniswap 平均每月在以太坊主网上支持 500 亿美元的交易量。除了 2021 年 7 月和 9 月之外,针对 JIT 流动性执行的交易量从未在月度基础上超过 0.5%。

跨池分布

JIT 流动性历来集中在 Uniswap 上按交易量排名的顶级池中。

图 3. JIT 在流动性池中的分布

placeholders

来源:Uniswap Labs 数据,Dune Analytics

比较蓝色条(每个池中提供的历史 JIT 流动性总量的百分比)与粉色条(每个池中总交易量/流动性需求的百分比),我们可以清楚地看到 JIT 流动性提供更加集中在顶级池中。最活跃的池(USDC-WETH 5bps 池)本身就占了有史以来提供的所有 JIT 流动性的一半以上。前十个池占 ~95%。在需求方面,前 10 个池仅占总交易量的 55%。

直观地说,这种模式是有道理的:只有当中间的交换足够大时,JIT 交易才有利可图,而大型交易更集中在顶级池中。另一个相关因素是,大型池中的交易对在中心化交易所场所拥有更大的流动性,使得对冲交易更容易且更便宜地完成。

跨费用等级分布

按计数和交易量计算,JIT 交易都高度集中在中间两个费用等级中。与 Uniswap 协议中交易计数和交易量的分布相比,5bp 池的 JIT 计数相对较多,而 30bp 池的交易量较多。

图 4. JIT 在费用等级中的分布

placeholders

来源:Uniswap Labs 数据,Dune Analytics

这里有几个不同的因素在起作用。

首先,鉴于固定成本,JIT 仅在交易规模达到某些阈值时才有意义。由于较大规模的交易更有可能通过较低费用的池进行路由,因此此因素会将 JIT 的集中度转移到这些池中。

另一方面,JIT 交易存在对冲成本。我们将在下一节中更详细地讨论这一点,但可以合理地假设 JIT 交易至少有 1-2bps 的对冲成本。这使得 1bp 池中的 JIT 在大多数情况下都亏损,并且通常会将 JIT 的集中度转移到更高的费用等级。

每次交易提供的 JIT 流动性的分布

每次 LP 提供 JIT 流动性时,他们都会向矿工支付大约等于两个 gas 成本的金额,再加上一部分最大可提取价值 (“MEV”),如果对于同一交易或特定区块中的空间存在竞争。因此,JIT 交易通常比 Uniswap 上的典型交换规模大得多,以便 LP 产生的利润可以证明创建和销毁 JIT LP 头寸的 gas 成本是合理的。

图 5. JIT 流动性美元价值的分布

placeholders

来源:Uniswap Labs 数据,Dune Analytics

超过一半的 JIT 交易单独提供了超过 100,000 美元的流动性。在超过 8,000 笔交易中,只有 245 笔交易提供的流动性低于 10,000 美元。

另一方面,如果我们用对数缩放的 x 轴绘制相同的数据,值得注意的是,超过一百万美元的 JIT 规模分布总体上是平滑的。

JIT 的经济考量

到目前为止,我们给出了一些 JIT 流动性的经验分布的汇总统计数据。但是,我们能否为每笔 JIT 交易建模 JIT LP 的决策过程?

LP 提供 JIT 流动性需要满足两个必要条件:

  1. 预期利润为正。
  2. LP 可以在 Flashbots 拍卖中胜过其他 MEV 机会。

这两个约束条件加在一起,导致只有在有限的场景下,提供 JIT 流动性才是最佳的。

预期利润

JIT LP 的利润来自 LP 赚取的费用与对冲成本之间的差额。以最简单的形式,JIT LP 在 Uniswap 上提供流动性,同时在另一个费用率较低的场所(例如 Coinbase)上执行对销交易进行对冲。

交易的收入是:

交易的成本是:

可以合理地假设交易开始时满足无套利条件,因此 Uniswap 上的定价与在其他流动性场所上的定价相同。此外,由于 JIT LP 想要最大化费用收入,因此他们几乎总是提供足够大的流动性量供整个交换进行交易,并将所有流动性集中在一个 tick 空间中。因此,我们可以假设 Uniswap 池中的价格影响在创建 JIT 流动性的 tick 空间中约为 0。收入公式中的第二项 (PriceimpactonUniswappoolPrice \space impact \space on \space Uniswap \space poolPriceimpactonUniswappool) 那么,如果 JIT LP 决定在当前 tick 中创建,则为 0,如果他们决定在下一个 tick 中创建,则为一个小的量 d。为简单起见,我们假设=0d=0d=0。

虽然其他交易所的费用率各不相同,但可以合理地假设它们是非负的。因此,第一个成本项目

的下限为 0。也可以合理地假设 JIT LP 在对冲时需要获取流动性,从而导致非负的价格影响/滑点。因此,第二个成本项目

Priceimpact/slippageonotherliquidityvenues Price \space impact / slippage \space on \space other \space liquidity \space venues Priceimpact/slippageonotherliquidityvenues

也可以合理地假设下限为 0。

将上述成本项目的下限代入,并将 JIT 利润表示为收入和成本之间的差额,我们可以获得 JIT 交易预期利润的上限:

由于 JIT LP 要求预期利润为正,因此上面的不等式意味着 JIT LP 愿意支付的最大矿工份额为:

正如我们将在下面展示的那样,这个约束将在确定 JIT 交易发生的频率方面发挥重要作用。

机会成本 / 其他 MEV 机会

拥有正的预期利润不足以使 JIT 交易发生。由于 JIT 流动性几乎总是通过 Flashbots 捆绑包提供,因此 LP 需要胜过其他也想在其捆绑包中使用交换的搜索者。在拥有完美信息和理性参与者的情况下,这应该只发生在 JIT 交易比使用相同交换的所有其他可能的 MEV 捆绑包(例如三明治攻击、抢先交易套利等)更有利可图时。我们将看到这在很大程度上是正确的,但并非总是如此。

考虑 JIT 策略的一个简单的替代方案:一个 MEV 搜索者在内存池中看到一个大的交换,并且不提供 JIT 流动性,而是提交一个捆绑包,该捆绑包从通过池进行的交换开始,并产生很大的价格影响,并以他们自己以相反方向进行的交换结束,本质上是以更便宜的价格承担交换的相反一侧。

与上面的计算类似,我们可以计算 MEV 搜索者的预期利润:

为确保正的预期利润,我们有:

为了使 JIT 发生,我们需要来自 JIT 的预期利润大于或等于来自简单的抢先交易交换的预期利润:

由于在 JIT 交易中提供的流动性最多是交换的 100%,并且 Uniswap 费用率为正,因此我们有:

由于 JIT 涉及创建和销毁,而抢先交易只有一次交换,因此在其他所有条件相同的情况下,JIT 的 gas 费用应该总是更高。因此:

最后,我们可以抵消 JIT 流动性提供的项,并剩下:

由于具有 JIT 的交换的价格影响接近 0,因此右侧基本上是交易者从 JIT 流动性中获得的价格改进。通过一些简化假设,我们得出了价格改进的上限:交换通过的 Uniswap 池中费用率的两倍。

值得一提的是,上面导出的结果仅是一个上限 - 它不能保证是,并且很可能不是,实际的严格上限。例如,MEV 搜索者可以从三明治攻击中获得更多利润,而不是简单地抢先交易大型交换。但是,我们导出的界限仍然应该成立。

实证测试

我们可以使用实证数据测试上一节中的结果。

对于每笔针对 JIT 流动性进行的交换,我们模拟没有 JIT 的相同交换。然后,我们计算与假设情况相比,此交换获得的价格改进。如果价格改进大于池费用的两倍,我们将 JIT 称为“次优”,因为 JIT LP 可以通过简单地提交抢先交易来获得更多利润。下表总结了我们的发现。

图 6. JIT 执行中的经验最优性

placeholders

来源:Uniswap Labs 数据,Dune Analytics

绝大多数 JIT 交易都满足我们导出的界限。但是,在某些情况下,我们确实看到违规行为。

这些违规行为并不一定表明我们的推导或 JIT LP 的实施中存在缺陷。相反,它可能来自我们在计算交换的反事实输出时所做的假设。

例如,我们所做的一个假设是交换者总是交换确切数量的代币。实际上,输入/输出量可能是动态的,具体取决于池的状态,池的状态会随着 JIT 流动性的注入和移除而变化。

无论如何,交换者都从 JIT LP 的参与中受益。JIT 流动性带来的价格改进的分布如下所示。与我们的结果一致,大多数交换都落在 0.3 的左侧,这是 100-bp 池中价格改进的上限。

图 7. JIT 提供的价格改进的分布

placeholders

来源:Uniswap Labs 数据,Dune Analytics

结论

在这项分析中,我们从真实世界的例子到经济考量,对 JIT 流动性进行了全面的概述。我们表明,JIT 流动性历来在 Uniswap 协议中发挥着最小的作用:它通常高度集中在顶级池中,并且主要由单个 LP 地址提供。

我们还表明,JIT 流动性为交易者提供了改进的执行。我们明确地建模了 JIT 流动性提供者的微观经济考量,并表明最佳实施的 JIT 提供的价格改进不应超过提供 JIT 流动性的池的费用率的两倍。

在这项分析中,还有一些领域尚未探索。

首先,价格改进的导出上限可能不严格,因为我们只考虑了搜索者市场中最天真的竞争形式。更复杂的搜索者可能会通过更复杂的捆绑包(例如三明治攻击)生成更多的 MEV,从而使 JIT LP 的工作空间更少。

其次,值得探索新的机制设计,使 LP 可以更轻松地与交易者的价格改进竞争。目前,LP 的 JIT 交易是否包含在区块中与他们向交易者提供的价格改进程度无关。在理想情况下,提供最大价格改进(报价最佳价格)的 LP 应该胜过其他 LP 以及所有三明治攻击者。这样的设计不仅会激励更多的 LP 参与,而且会带来更高的交易者福利,从而全面改善市场动态。


附录

  1. 将交易标记为美元的逻辑

大多数交易的一侧都有 ETH 或 USD。我们按以下顺序将交易量转换为美元:

  1. 如果 ETH 在一侧,则使用该分钟的 ETH 价格。

  2. 如果 USD 稳定币在一侧,则使用该金额(假设稳定币与 USD 的比例为 1:1)。

  3. 仅剩下 3 笔交易;我们手动标记了它们。

  4. JIT LP 在当前或下一个 tick 空间之间进行选择时的考虑

考虑 JIT LP 观察到即将到来的交换的情况。他们有两个选择:1) 在当前 tick 空间中提供 JIT 流动性;2) 在下一个 tick 空间中提供 JIT 流动性。

权衡如下:通过选择选项 2) 而不是选项 1),LP 放弃了部分费用(在跨越 tick 所需的交易量上),以换取他们所获得头寸的较低成本基础。仅当降低成本基础的收益大于放弃的费用收入时,LP 才会选择在下一个 tick 中创建单方面流动性。

表示:

  1. 即将到来的交换的大小为 SSS
  2. 池中起始边际价格与下一个 tick 之间的距离为 ddd
  3. 池的费用率为 rrr
  4. 跨越 tick 所需的交易量(或起始边际价格和下一个 tick 之间存入的 LP 资本量)为 LLL

当 LP 选择在下一个 tick 空间中创建单方面流动性时,放弃的费用为:

L×rL \times rL×r

以较低的成本基础获得剩余头寸的收益为:

(S−L)×d(S - L) \times d(S−L)×d

如果收益大于放弃的费用,LP 将选择执行下一个 tick:

(S−L)×d≥L×r(S - L) \times d \geq L \times r(S−L)×d≥L×r

重新排列,我们有:

d≥L×rS−Ld \geq \frac{L \times r}{S - L}d≥S−LL×r​

请注意,此结果与我们的直觉一致:

  • 当前 tick 中的流动性越深 (L)(L)(L),LP 就越不可能选择下一个 tick 空间,因为他们将损失更大比例的费用收入;
  • 交换大小越大 (S)(S)(S),他们就越有可能选择下一个 tick 空间,因为降低成本基础的收益将乘以更大的金额;
  • 在跨越下一个 tick 所需的交易量相同的情况下,价格影响越大,LP 从价格影响中获得的收益就越高,他们就越有可能选择下一个 tick。

脚注

  1. 我们感谢 Dan Robinson 在推特上提出的启发这项分析的想法。我们感谢来自 Matteo Leibowitz 和 Aseem Sood 的评论。

  2. 有关将交易量转换为美元的逻辑,请参见附录。

  3. 在表中,第一个和第二个数据列显示了 JIT 的交易计数和交易量在不同费用等级中的分布。第三个和最后一个数据列显示了 Uniswap 协议上交换交易的交易计数和交易量的分布,作为 JIT 分布的参考。

  4. LP 的库存再平衡需求在技术上可能是 JIT 的另一个原因。但是,由于它们是不可观察的并且引入了更多的复杂性,因此我们将它们排除在此分析之外。

  5. 虽然 JIT 通常会将价格影响推到接近于零,但从技术上讲,交换仍然会产生很小的价格影响;因此,假设“真实市场价格”不会移动,JIT LP 仍然以比全球市场价格略低的价格获得了该头寸。

  6. 请注意,最后三个项目都包含在矿工支付中,但从经济角度来看,将它们分开并分别处理它们是有帮助的,因为它们是由不同市场的动态驱动的。

  7. 根据经验,在 ⅔ 的情况下,d=0。有关 d≠0 时发生的情况的深入讨论,请参见附录。

  8. 在我们确定的所有 JIT 交易中,超过 90% 的交易发生在排名前 14 位的池中,每个池包含超过 100 个 JIT 交易。我们的实证测试基于此子集。

  9. 我们的上限是费用率的 2 倍,对于 100bp 池的费用率是 2%。由于直方图具有对数缩放的 x 轴,并且以 10 为底数时 log(2) ~= 0.3,因此我们的上限意味着交换应落在 x 轴上 0.3 的左侧。

分享

注册以获取 Uniswap Labs 团队的研究和更新

相关文章

  • 原文链接: blog.uniswap.org/jit-liq...
  • 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
点赞 0
收藏 0
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
Uniswap Labs
Uniswap Labs
江湖只有他的大名,没有他的介绍。