本文经授权转载自Amber Group。
概要:
自动化做市商(AMM)是去中心化金融的支柱。自动化做市商允许用户全天候交易资产、创建新市场并赚取收益,并且无需中心化实体的参与。 自推出以来,自动化做市商的交易量已超过 1800 亿美元。
近年 DeFi 发展迅猛。在本报告中,我们将回顾重要的 AMM 架构设计及市场趋势,并将重点介绍一些我们认为值得关注的项目。 我们还将讨论由 AMM 诱发的突发行为,例如无常损失、集中流动性管理和即时流动性。
自动化做市商(AMM):版本升级
自动化做市商(AMM)是去中心化金融的支柱。它允许用户交易资产、创建新市场并赚取收益,所有这些都可以全天候使用,并且无需中心化实体的参与。Bancor 于 2017 年首次推出恒定乘积 AMM,但由于每种代币都与 Bancor 的原生代币相配对,其平台的使用率并不乐观。当 Uniswap 推出默认将代币与 ETH 配对的 v2 时,AMM 才真正起飞。2020 年 5 月 Uniswap 推出 v2 时,DEX 总交易量为每月 10 亿美元,2021 年 12 月已飙升至每月 1860 亿美元。如今,DEX 交易量约占中心化交易所总交易量的 12%。
来源:The Block、CoinGecko,截至 2022年3月23日
近年,DeFi发展迅猛。自 Uniswap 首次发布白皮书以来,为了改进 Uniswap 的初始架构设计,开发者们已经推出了一系列全新的 AMM 架构。在本报告中,我们将回顾重要的 AMM 架构设计及市场趋势,并将重点介绍一些我们认为值得关注的项目。我们还将讨论由 AMM 诱发的突发行为,例如无常损失、集中流动性管理和即时流动性。
Uniswap v2 - 从零到无限大的价格区间
我们先简单介绍一下 Uniswap v2 的恒定乘积公式。Uniswap v2 由流动性池组成,根据公式 x*y=k,包含 A 和 B 两种代币的智能合约允许任何人提取和存入资金,其中 x 和 y 是两种代币 A 和 B 的储备量。k 是一个恒定值,所以如果要从池中提取代币 A,用户必须存入适当数量的代币 B,以维持扣除费用前的常数 k。若想要深入了解该协议,可以在 Uniswap 文档中找到具体协议。
Uniswap v2 推出即获得了市场关注。它将去中心化的信任机制应用到流动性池的创建中,无需许可即可创建任何流动性池,这使得任何人都可以交易通常在中心化交易所不可交易的长尾资产。与试图在链上复刻限价订单簿模式的 DEX 相比,Uniswap 通过直观的用户界面和极低的gas费为用户带来了卓越的使用体验。
或许最重要的是,它实现了与其他 DeFi 协议间的可组合性。例如,用户可以质押持有的 LP 代币,开发人员可以将流动性池作为价格预言机,协议可以创建流动性挖矿程序来促进其原生代币的流动性。
Uniswap v2 的代码库可能是加密领域中分叉最多的智能合约,由此证明了它的重要性。当创建一个新的 Layer 1 或 Layer 2 平台时,通常都会代入 Uniswap v2。
Uniswap v2 - 分叉最多的合约之一
来源:Github
Curve - 一比一资产的解决方案
尽管 Uniswap 的恒定乘积公式很优雅,但也存在一些缺点。Uniswap v2 的低效之处在于,不同类型的锚定资产之间的互换不适用该模型,比如稳定币,理论上这些资产应该以 1:1 的汇率兑换。例如,大多数的 DAI 和 USDC 都以 0.99-1.01 之间的汇率完成兑换交易,所以 Uniswap v2 中的 DAI-USDC 池仅使用了可用总资本的约 0.5%。此外,交易者会遭遇很高的价格滑点。在撰写本文时,交易员试图通过 Uniswap v2 将 100 万 USDC 兑换成 DAI,这会导致 2.4% 的价格滑点,因此仅能兑换到约 97.6 万 DAI。
针对稳定币互换更合适的定价公式应为恒定加和公式 (x + y = k),其中一种资产与另一种资产的价格相关系数始终为 1。例如,在恒定总和 k=10,000 的 USDC-DAI 池中,存入 500 USDC 的用户将获得 500 DAI 作为回报(不包括费用),因此 k 维持 10,000 不变。
然而,上述模型的问题是流动性池存在被完全提空的可能性。最初由 50% USDC 和 50% DAI 组成的池最终可能仅剩一个代币。相比之下,将恒定乘积公式也适用于稳定币互换的一个好处在于,流动性池中的储备不可能被完全耗尽。
Curve 的稳定币互换(StableSwap 机制)公式在以上两种方法之间的找到了平衡。其 StableSwap 机制公式包含一个动态变量,该变量随流动性池的余额变化调节价格。当流动性池余额大致平衡时,池中价格会在恒定加和公式(x+y=k)基础上上下浮动,提供接近 1 美元的稳定价格。当流动性池余额不平衡时,计价更像是遵循恒定乘积公式,使得加剧池余额失衡的交易行为会更贵,以此鼓励流动性提供者帮助该池恢复平衡。在下图中可以更加直观地看到,Curve 的 StableSwap 机制恒定值位于 Uniswap 恒定值和恒定加和公式恒定值之间。
Curve StableSwap 机制的恒定值
来源:Curve
因此,对于完全相关或高度相关资产之间的互换,Curve 的 StableSwap 机制公式更实用,例如稳定币互换、标的资产(例如 stETH - ETH)的流动性质押、以及资产打包(例如 wBTC - renBTC)。 同样在 Curve 兑换 100 万 USDC,可获得 99.97 万 DAI,价格滑点仅为 0.03%。
以太坊上 USDC-DAI 的兑换汇率
来源:1inch,截至 2022年3月27日
Uniswap v3 - 通用的自动化做市商(AMM)
Uniswap v2 架构设计的另一个缺陷是资本效率低。流动性池提供从零到无穷大价格范围的流动性,但实际上大多数资产的交易价格范围并没有这么大,因此 v2 池中的大部分流动性并未被使用。
为解决这一效率问题,Uniswap 于 2021 年 5 月推出 v3。它的标志性特征是引入了集中流动性。用户可以指定他们希望的价格范围,而不是在整个价格范围内提供流动性。例如,LP 可以为 DAI-USDC 池提供 0.999-1.001 价格区间的资金,这促使资本效率提高约 2000 倍。
Uniswap v3 还为每个池引入了 1%、0.3% 和 0.05% 的自定义交换费用,这使得流动性提供者能够更好地通过预测交易对价格波动来调整其保证金。针对完全相关资产(如稳定币)之间的互换,交易对匹配最低档费率。相比之下,长尾资产由于具有更大的不确定性,通常费率在 1%。
最近 Yuga Lab 的猿猴币(Apecoin)空投能够反映以上机制,在猿猴币空投后的前几个交易日中,因其处在价格发现初期,因此主要在 Uniswap 的1%费率上执行 DEX 流动性。当价格稳定在 8 到 15 美元之间且价格不确定性下降后,Uniswap 上的交易逐渐将执行费率降到了 0.3%。
Uniswap 上 LP 在价格发现初期之后逐渐改变费率档至 0.3%
来源:Dune
Uniswap后来又增加了 0.01% 的费率档,该费率现在是稳定币的标准费率。在考虑集中流动性的前提下,现在 Uniswap 上的美元稳定币交换量与 Curve 相当。
美元兑美元稳定币集中在 0.01% 的费率档上
来源:Dune (@pandajackson)
美元稳定币交易量 -引入 v3 和 0.01% 费率档后,Uniswap 的交易量与 Curve 持平
最后,v3 还允许用户提供限范围订单。类似于传统交易所的限价订单簿模式,只不过在价格改变方向时,订单可能会被部分执行或重新交叉。
除了提高资本效率,Uniswap v3 还通过可定制价格范围极大地拓展了流动性供应的设计空间。例如,Paradigm 的 Dan Robinson 展示了如何利用一系列的 Uniswap v3 流动性头寸来复刻任何静态的 AMM。此外,还可以利用 Uniswap v3 的限范围订单进行期权策略模拟,这是一个值得进一步探索的有趣领域,但本报告暂不讨论。
然而,不断增加的复杂性让 LP 们头疼不堪。广泛使用同质化的流动性代币本是惯例,但由于Uniswap v3 的头寸不是映射成 ERC-20 代币而是 NFT,所以这一惯例被打破。MakerDAO 和 Aave 等主要货币市场仍不直接接受 Uniswap v3 代币作为抵押品。流动性提供者们也不享受复合回报,取而代之的是,如果想重新部署流动性,他们必须手动收取费用收益。此外,在Uniswap v2 中 LP 以通过分享相同而拙劣的策略而获得奖励,所以 LP 在 Uniswap v2 中无法互相竞争,Uniswap v3 则与此不同,Uniswap v3 促使竞争环境更有利于做市商、专业交易员和能够不断平衡头寸的场上巨头,但要以牺牲那些希望可以“一劳永逸”的散户 LP 们为代价。
也许 LP 们仍试图解决的最大问题是放大的无常损失。
无常损失
无常损失(“IL”,有时称为发散损失)是指有时即便流动性提供者有费用收入,但其质押资产价值会缩水。更具体地说,通常我们可以定义无常损失为AMM中存入代币与仅在钱包中持有代币之间的价值差异。IL 背后的道理很简单:恒定乘积 AMM 始终在购买表现不佳的代币,同时出售表现出色的代币。因此,在 AMM 之外本可以升值 1000 倍的投资在 AMM 内仅能升值 14 倍。
无常损失可能是永久的
IL 在代币恢复到其初始价值时能够抵消,因此我们也称其为暂时性损失。交易费用旨在补偿流动性提供者的 IL 风险,但多项研究表明,产生的费用不足以弥补 IL,流动性提供者通常只有在交易对恢复到其原始汇率时才能获利。
集中流动性也集中了无常损失,这类似于给流动性加杠杆,即与杠杆交易类似,收益(来自费用)和损失(来自无常损失)都被放大了。更直观的讲,当代币升值时,设定窄价格范围的流动性提供者比设定宽价格范围的流动性提供者以更快的速度耗尽该代币储备,因此产生更大的 IL。但如果操作正确,这些 LP 们也会获得更大份额的交易费用。
更窄的价格范围带来更大的 IL 风险
来源:Guillaume Lambert。较高的 r 值表示更宽的价值范围
集中流动性管理器
考虑集中流动性管理的复杂性,市面已经推出大量集中流动性管理器(CLM)。CLM 提供了多种便利,例如:
● 通过尝试在费用产生和无常损失之间找到平衡点来确定提供流动性的最佳范围;
● 当流动性超出范围时调整范围;
● 自动复合费用收益回到流动性头寸中;以及
● 通过再平衡节省gas费。
CLM 通常为用户提供金库用以存放代币,金库中的头寸通常映射为 ERC-20 代币,这将同质化 LP 头寸重新引入 DeFi 生态系统中。例如,虽然 Aave 不直接接受 Uniswap v3 头寸,但它接受 G-UNI 金库代币做质押,这是一种在 Sorbet Finance 的流动性管理器中映射金库头寸的 ERC-20 代币。此外,协议和 DAO 也可以将流动性策略和挖矿程序外包给这些金库。因为 CLM 金库代币的可组合性,Instadapp、Liquity、OlympusDAO 和其他几个项目都在其流动性管理策略中对此加以应用。
如 Charm Finance 和 Sorbet Finance 的一些 CLM 采用被动再平衡策略,该策略中最初会设置再平衡规则并在链上发布。Keeper 机器人被用于监控池的状况并在必要时采取再平衡策略。例如 Gamma Strategies 的其他 CLM 则采取积极再平衡策略,该策略在链下确定执行与否,并且通常具有专有性。一些团队也在尝试让市场来决定最佳策略。例如,Steer Finance 和Sommelier Finance 计划推行允许任何人创建并执行策略的功能。
集中流动性管理器介绍
如果仅基于产生的收益来评估 CLM 的话,CLM 的有效性仍然值得怀疑。例如从 ETH-USDC 的金库来看,Gamma 的 Hypervisor 表现逊于 Uniswap v2 的同等策略,Charm 的 Alpha Vault 也仅略胜一筹。此外,在链上发布其再平衡规则的金库很容易遭受抢先交易,这就相当于在执行交易之前即向市场广播其策略的专业做市商。鉴于 CLM 相对适中的 TVL,目前这只是一个较低风险,但如果 CLM 继续增长,这可能会带来顾虑。
USDC-ETH 金库表现
来源:Dune (@vividot)
Bancor 团队的研究还发现,几乎没有证据表明主动流动性管理策略比被动 LP 表现更佳。事实上,被发现唯一持续盈利的 LP 策略是提供即时流动性,产生的费用收益能够持续超过无常损失,我们将在下一节中讨论即时流动性。
我们仍需要做更多研究,但期待 CLM 上佳表现的前景并不乐观。Sommelier Finance 是基于 Cosmos SDK 打造的区块链协议,专注于以太坊 DeFi 策略,初期专注于 Uniswap v3 头寸的自动化。据该团队称,即使团队在提前知道代币未来价格的前提下进行回测,自动化策略仍然无利可图,因为存在再平衡成本(已产生的无常损失和交易成本)。
尽管如此,CLM 还是提供了一些好处,例如使 DAO 能够更有效地运行流动性挖矿程序并在 DEX 上提供流动性。因此,随着集中流动性的广泛采用,CLM 可能会继续增长。
AMM中的快闪夹单
即时 (JIT) 流动性是 Uniswap v3 带来的有害突发行为之一,但它的危害性仍然存在争议。当交易者(或者更准确地说,交易机器人)在内存池中看到尚未打包上链的交换交易时,机器人会在交换完成之前小心地在一个窄的惊人的范围内增加集中流动性,在交换交易完成之后再消除流动性,这通常都包含在一个区块中。通过这种三明治套利,机器人能够在“三明治”交换交易中获得高比例费用收益,同时几乎没有无常损失风险。
在以下的最新例子中,我们来看一下 JIT 流动性的工作原理。当一个用户希望交换价值约 8 万美元的猿猴币(Apecoin)时,交易机器人铸造了一个仅由 $ETH(限范围订单)组成的 Uniswap v3 头寸,允许该用户在接下来的交易中将 $APE 换成 $ETH,然后移除该流动性。请注意,在此示例中,机器人不仅获取了不寻常的高比例费用收益(94%),还从 Uniswap(每 APE 约 12.80 美元)和 FTX 等中心化交易所(每 APE 约 13.19 美元)的差价中获利。
快闪机器人示例
来源:Etherscan、Trading View、Uniswap
针对 JIT 流动性也有一些不同角度的观点,对于交易者来讲,由于流动性的突然飙升使其预期受到的价格影响有所遏制,因此 JIT 流动性改善了交易者的交易体验。比如在上面的示例中,本来池中只有约 1800 万美元 TVL,交易机器人为其注入约 4000 万美元的流动性,增加了池深度。
然而在这种情况下,被动的流动性提供者们成了输家。因为他们的费用收益受到了机器人的稀释,却仍需面对无常损失敞口和市场风险敞口。
幸运的是,因为目前仅有两台 MEV 机器人在运作大部分活动,因此暂时 JIT 流动性的影响相对较小。但诱人的利益引起了两台机器人的竞争,自去年 6 月以来这两台机器人累计获得了约 130 万美元的收益。JIT 流动性的不断增长可能会逐渐抑制被动流动性提供者的市场参与,这种趋势的极端将会体现为询价市场的形成,即用户挂出限价订单,主动 LP 们竞价抢单,这同样形成 JIT 流动性。在这种情况下,价格发现机制将受限,用户承担由预期执行价格的不确定性带来的风险。从理念上来讲,去中心化金融旨在提供一个不论用户还是做市商都能(相对)平等进行交易的平台,而上述情况已与这种去中心化精神背道而驰。
Curve v2 - 为风险资产提供集中流动性
如上所述,Curve v1 以 1:1 的汇率为完全相关的资产提供集中流动性,例如稳定币和流动性质押代币。 Curve v2 旨在通过动态价格锚定处理价格波动的资产对。Curve v2 基于流动性池中的交易为每个池计算内部价格锚定,并在该锚定值上下集中流动性。
比较 Curve v2 与其他 AMM 的恒定值
来源:Curve、Nagaking
内部价格基于不断变化的指数平均数来计算,类似于移动的平均线,只不过对最新价格赋予更高的权重,也就是动态权重,由此可以实现更平稳的价格过渡。
对比 CRV-ETH 在 Curve v2 内部价格预言机中的价格与现货价格
来源:Curve
有时,突然的资产价格变动可能需要流动性集中在另一个价格附近。但是,就像调整超出范围的 Uniswap v3 头寸一样,这会产生永久性的无常损失。因此,Curve 的内部价格锚定能够进行价格重锚,但前提是这样做是有利可图的(即自最近一次价格重锚以来的交易费用产生的应计收益能够弥补已产生的无常损失)。
此外,Curve v2 池中的交易费用是动态的。在价格波动较小的时候,交易费用也较低(低至 0.04%)。在价格波动期,提高交易费用来对冲波动性,并补偿流动性提供者们在方向性运动中产生的无常损失。
其他的Curve War
Curve v2 能够使用户在不需要主动管理头寸的基础上实现与 Uniswap v3 相同的资本效率,因此对于流动性提供者们来讲可能非常具有吸引力。此外,由于所有 LP 在同一池中都以相同价格范围存币,因此不存在 JIT 流动性问题。
目前,Curve v2 仍然仅提供少数几个流动性池。 它的 Tricrypto 池(USDT + wBTC + wETH)是最受欢迎的,每月交易量约为 30 亿美元。自去年以来,Tricrypto 的交易量显着增长,对比 Uniswap 上的相同交易对,其交易量已达到 Uniswap 的近 40%。
Tricrypto 交易量稳定在 Uniswap 上相同交易对的交易量的40%左右
来源:Dune (@momir)
自成立以来,Tricrypto 上每天只有 20-30 名活跃交易者和 477 名特殊用户,驱动其交易量的主要是运行套利策略的 MEV(矿工可提取价值)机器人、DEX 聚合器、做市商和交易巨头。
交易活动主要来自 MEV 机器人和聚合器
来源:Dune (@momir)、 Etherscan、Nansen
Curve 还提供少数其他资产的 v2 池,例如 CVX-ETH、CRV-ETH 和 EURT-USDT。 在实践中,Curve v2 池提供的汇率价格通常与 Uniswap 和其他 DEX 具有同等竞争力。
Curve v2 池具有竞争力的汇率价格
来源:1inch,截至 2022年3月25日
Uniswap v3 和 Curve v2 有许多相似之处,不同之处在于两者如何管理集中流动性带来的复杂性。Uniswap v3 的理念是构建一个超级灵活的通用 AMM 平台,并让用户来负责管理头寸。而Curve v2 具有高度的复杂性,有九个可调参数左右联合曲线、内部价格和费用特性。 但是,如果将这些参数视为黑匣子,不去深入挖掘它们的运作原理,那么使用 Curve v2 池会变得非常容易。
Crocswap - 在 DeFi 中启用高频交易(HFT)
由于每个流动性池都是一个单独的智能合约,并且在 Uniswap 上每个集中流动性头寸都是一个独有的 NFT,所以在大多数 DEX 上创建新池和重新平衡集中流动性头寸都需要花费高昂的gas费。
Crocswap 是即将推出的全新去中心化交易所(DEX),它遵循第一性原理来设计其区块链架构。它将交易所上所有的流动性池整合到一个智能合约中,每个单一池以轻量级数据结构呈现。这种架构允许交易员在单个智能合约中执行多步骤、多池交易,从而实现跨池轧差。因此,交易员的交易费用更低,且税务问题更少,这对频繁跨多个交易对进行交易的交易员来讲意义尤其重要。单一智能合约的设计还为大量其他功能的实现铺平了道路,例如由于所有资金都集中在一个位置,因此保证金交易变得更容易。
与 Uniswap 类似,Crocswap 允许流动性提供者提供环境流动性(Uniswap v2 风格)或集中流动性(Uniswap v3 风格)。不同的是,Crocswap 的环境流动性和集中流动性可以存在于同一池中,这有几个好处。首先,它支持同质化 LP 代币,这些代币具有前面章节中提到的可组合性。其次,其他用户和协议可以在单个调用函数中查询环境流动性的汇总和活跃集中流动性的占比。相比之下,虽然 Uniswap v3 中有相当于环境流动性的宽范围流动性,但在链上环境中汇总该流动性是不可能的。
此外,集中流动性提供者的费用收益会自动复合进环境流动性池中,从而为流动性提供者节省时间和 gas 费。从概念上讲,如同在 Uniswap v3 头寸中以 Uniswap v2 流动性代币的形式累积费用。这对于价格波动的交易对(例如 ETH-USDC)来说可能具有积极效应,但对于锚定资产(例如 DAI-USDC)来说则效率较低。该团队正在考虑针对不同类型的流动性池对架构进行调整。
Crocswap 的双流动性示例
来源:Crocswap
Crocswap 还允许为池设置0到255秒的时间阈,用于在池中存入和提取流动性时,以此能够缓解 JIT 流动性问题。这为不太活跃的流动性提供者创造了更公平的交易环境,为交易者提供了更稳定的报价,同时改善了价格发现。尽管如此,由于 JIT 流动性确实能够提高交易执行质量,该协议允许白名单参与者充当 JIT 交易员的角色。
最后,与中心化交易所类似,Crocswap 允许流动性提供者直接在 DEX 存入抵押品。活跃的交易员可以在交易所存入多余的抵押品,如 USDC,并可在一天内执行数百笔交易,并且每笔交易都会反映在多余抵押品余额中。因为交易员只需要进行一次多余抵押品的提取,所以这也节省了gas费。另外 Crocswap 还提供抵押品池,供其他交易员利用进行闪电贷。
我们预测 Crocswap 的架构设计将在链上释放进行高频交易的能力。为了实现基本在链上进行价格发现,这是方向正确的关键一步。从长远角度来看,未来大部分交易都会发生在去中心化交易所(DEX)中,而非中心化交易所(CEX)。
Platypus – 一篮子货币的开放式流动性池
尽管 Curve 针对稳定币和锚定资产间的交换效率很高,但它的架构设计仍然存在一些痛点。值得注意的是,必须为每组代币(包含两种/三种/四种等)创建单独的流动性池,且可以在多个池间复制类似资产。一个池中的 USDC 不能支持另一个池中的 USDC 的流动性。
相同资产分布在多个不同池中的流动性
来源:Curve Finance
为了给用户提供足够的流动性并防止套利行为,新的稳定币项目可能需要创建和支持多个池。另外,最不受欢迎的代币往往是稳定币池的增长瓶颈。
Platypus是今年年初在Avalanche 上线的一种稳定币交换协议,旨在解决上述痛点。它允许创建开放性的流动性池,池中混合了所有类似锚定资产。流动性提供者可以存入和提取同类代币。
上面我们提到 Curve v1 混合了恒定加和公式(x + y = k)和恒定乘积公式(x * y = k)。 而 Platypus 只修改了恒定加和公式,使用覆盖率来鼓励储户维持开放式流动性池的平衡。这使得曲线末端区域更长更平坦,并加速滑点。因此,在正常情况下,与其他用于大量稳定币互换的 AMM 相比,Platypus 可以实现降低交易滑点高达 40%。
Platypus 架构设计介绍
来源:Platypus. 绿色曲线是 Platypus AMM 的恒定值。
在 USDC-DAI 上 Platypus 提供比 Curve 更佳的价格滑点
来源:1inch,截至 2022年3月27日
到目前为止,Platypus 仅支持三种主要的美元稳定币:USDT、USDC 和 DAI。其流动性利用率(24 小时交易量除以 TVL)为12%,相比 Curve 的同等池(“3pool”)流动性利用率为1.84%,Platypus 表现的很出色。我们期待看到随着小盘稳定币(例如 FRAX、FEI、MIM)和其他类型锚定资产的入驻,平台的利用率和 TVL 会如何增长。
Bancor - 绝不会退出历史舞台的创世者
Bancor v2.1
Bancor 自 2017 年 v1 以来,已经迭代了多个 AMM 架构。Bancor v2 试图利用预言机动态平衡流动性池并避免套利行为,但由于表现不佳而决定转向(我们将在下一节讨论依赖预言机的 AMM 面临的问题)。
当前版本的 Bancor (v2.1) 于 2020 年 10 月推出,其拥有两个关键特征:单边流动性和无常损失保险。
Bancor 是首批启用单边敞口的 AMM 之一。 【注:仅存一个代币即可收到 LP 代币的能力不一定是单边敞口;一些平台要么在后端将存入的代币转换为正确的比率,要么在按比例计算 LP 权益时考虑滑点。】
Bancor 上的每个池都包含两种代币:相关代币和 Bancor 的原生代币 $BNT。例如,如果 Alice 想要提供 wBTC 代币,Bancor 的协议将铸造等值美元的 BNT,来匹配 wBTC 的头寸。因此,Alice 和 Bancor 协议各自拥有池的 50%。如果 Bancor 平台上的另一个交易者想要以 ETH 换取 wBTC,则交易将通过 ETH-BNT 和 wBTC-BNT 两个池进行,Alice 将从 wBTC-BNT 交易中获得费用收益。
Bancor v2.1 还为长期流动性提供者提供无常损失保险。锁仓30天以上的 LP 保证会收到至少 30% 的本金返还。该返还率以每天 1% 线性增加,因此在锁仓第 100 天,LP 将得到 100% 本金返还的保障。 LP 产生的任何 IL 首先由交易费用支付,该交易费用产生于 Bancor 匹配每个 LP 的头寸,而后尚未支付的 IL 则通过铸造 $BNT 来弥补。
Bancor的无常损失保险架构
来源:Bancor
然而,Bancor’ s v2.1 的架构设计存在一些问题:
● 高额的gas费。由于协议和智能合约的架构设计,Bancor 的 gas 费明显高于其他 DEX,每次交易都涉及两个交易对(从代币 A 换到 BNT,再从 BNT 换到代币 B),并且计算每个 LP 产生的 IL 也存在潜在的复杂性。
● 有限的单边流动性。由于无常损失保险,Bancor DAO 的共同投资会决定每个代币池都有一个上限。如果池已满,潜在的 LP 必须等待池中现有 LP 撤出其流动性才能加入。受欢迎的代币池长期以来都保持流动性爆满的状态,如 ETH、wBTC 和稳定币。
● 长达100天的锁仓才能换来无常损失保险。如上所述,Bancor 的无偿损失保险需要经过 100 天锁仓才能完全实现。
● 需要手动提取奖励。为了防止费用的复合计算,以及由此让小规模 LP 更不划算的问题,LP 必须手动索取他们应得的奖励。
Bancor v3
Bancor v3 于 2021 年 11 月首次披露,但尚未推出,它试图通过保持 v2.1 关键特性的同时重新有效地设计协议,以此来解决上述问题。
v3 重新设计了单边流动性架构。当 LP 存入代币 (TKN) 时,他们会收到等值的 Bancor 池代币 (bnTKN)。这些池代币会自动复合费用收益,因此1个 bnTKN 始终大于或等于1个 TKN。 Bancor v2.1 中没有池代币概念,因为这些池代币映射的是不包含 IL 的单一标的资产,这种池代币概念很可能成为其他 DeFi 平台的底层架构(例如,作为抵押品)。
存入的代币将被放入包含平台所有代币的智能合约中,因此尽管从前端看起来似乎有多个单独的流动性池,但实际上所有资金都在一个金库中,其中有一个交易逻辑 Layer 来协调存款、取款和交换。
Bancor v3 的 Omnipool 架构设计
来源: Bancor
这种架构有很多好处。首先,因为作为中介的 BNT 是虚拟化的,所以交易只需要发生在一个交易对中而非两个,从而降低了gas费。其次,使用池代币大大降低了计算每个 LP 的 IL 的复杂性,从而进一步节省了gas费。 BNT 质押者也不需要选择他们的代币应该放在哪个特定池,取而代之的是所有 BNT 流动性提供者都获得相同的收益。
最值得关注的是,这种架构允许存款不封顶。与 Bancor v2.1 类似,Bancor DAO 会决定每种代币可提供交易的流动性,但即便达到上限,用户仍可继续存入代币。这些多余的代币有助于 1) 抵消由价格的突然变化带来的 IL,以及 2) 可用于该协议之外的其他费用收入策略。例如,可以质押多余的 ETH 来获得 stETH,可以质押多余的 LINK,可以在 Aave 中借出多余的 USDC 等。
v3 也重新设计了无偿损失保护。在 v2.1 中 LP 需要等待 100 天才能获得完全的无常损失保护,而在 v3 中 LP 可立即获得。作为交换条件,Bancor v3 收取 0.25% 的提款手续费以及 7 天延迟到账,以此缓解任何潜在的攻击风险。此外,其他协议和 DAO 可以选择在自己的代币中提供 IL 保护,从而提高他们被列入白名单的几率并促进 Bancor 平台上的流动性。
新的黎明(Dawn)曙光
每个 AMM 都必须平衡用户(希望最宽泛的选择、最低的滑点和最低的费用)、流动性提供者(希望以有限的 IL 获得最高收益)、外部协议(希望以低成本为其代币持有者提供足够的流动性)和原生代币持有者(希望看到代币升值)的利益。 Bancor v2.1 引入了一些保护 LP 和协议的创新解决方案,但由于高昂的gas费让用户背负了代价。再加上存币上限,最终导致了其 TVL、交易量以及 BNT 代币价格的增长停滞不前。
自去年夏天以来 Bancor 的 AMM 增长已停滞
来源:DefiLlama、CoinGecko
Bancor v3 拥有史上最佳功能。凭借不封顶存款和即时 IL 保护,Bancor 将可能迎来 TVL 的大幅增长。 Bancor DAO 可以利用此助攻来增加交易可用的流动性,增加池深度的同时为交易者减少价格滑点。该新架构不仅能够降低gas费,还可以通过如 1inch 的聚合器为 Bancor 提高交易量。通过更充实的 IL 保险基金,更高的交易费用既可以直接提高 IL 保护,也可以间接促使 BNT 升值。协议和 DAO 还可通过推出定制化奖励计划来促进平台发展。已有 30 多个 DAO 开始启用 Bancor 进行资金管理,其中包括 Nexus Mutual、Yearn Finance 和 Woo Network。
但是我们还没有看到这场变革的最终结果。Bancor v3 将会分Dawn(黎明)、Sunrise(日出)和 Daylight(白昼)三个阶段来启动,第一阶段包含如即时 IL 保护的 Bancor v3 关键功能,第一阶段可能将于 2022 年第二季度推出,并提供公共漏洞赏金。第二阶段包括附加功能,例如利用闲置资产产生超流收益。
基于 Bancor DAO 的白名单流程,它可能永远不会成为 Uniswap 和 Crocswap 等 AMM 所向往的“通用 AMM”。尽管如此,它的平台架构设计依然在 DeFi 领域中脱颖而出,我们预计未来 Bancor 将在 DeFi 生态系统中发挥不可或缺的作用。
预言机辅助做市商
简单的 AMM 算法(例如恒定乘积公式)的常见问题是价格总是“过时的”。由于 AMM 中的交易对价格是由基于储备余额的函数计算而来的,所以交易对价格之后会因套利交易被更新为市场价格。事实上,在 AMM 上执行完成的大多数交易都由套利驱动。
无常损失也可以被认为是流动性提供者因接收“毒流(Toxic Flow)”而遭受的损失,这是一个高频交易的常用术语,用来描述知情交易。AMM 中的 LP 总是提供“错误”的价格,并依赖通过其他参与者与之交易来调整价格至正确报价。 为了限制毒流,一些协议引入提供外部市场报价的预言机,以此避免流动性提供者被挤兑。这些 AMM 通常被称为主动做市商。
Dodo - 主动做市商
Dodo 是最早在市场上推出的主动做市商之一,利用外部的市场价格将流动性集中在市场价格上下。Dodo 可以调节外部价格的影响,一方面,Dodo 的 AMM 将流动性集中在外部市场价格上,并以该价格执行买卖订单;另一方面,当市场价格没有影响时,Dodo 的联合曲线实际上变成了 Uniswap v2 曲线。
看起来 Dodo 应该可以设置仅以外部市场价格执行交易,但这同样会增加套利风险。例如,假设一个交易员知道某资产的预言机报价将在下一个区块中上涨,那么她会试图在价格更新之前购买该资产,当预言机在链上发布更新的价格后,立即在 Dodo 上出售该资产以获取无风险利润。减少集中流动性可以缓解这种风险。因此,考虑到这种套利风险的 Dodo 将参数设置为不单靠预言机来平衡集中流动性。
Dodo 还将波动性资产交易对的交易费用设置在 0.3 - 0.5% 之间,因此只有价格偏差大于 0.6 - 1.0% 时(买卖都会产生交易费用),抢先交易才有利可图。并且由于 Chainlink 的偏差阈值为 0.5%,即新一轮的价格跟上一次更新的价格偏差超过 0.5% 时会更新这些资产的链上价格,例如 BTC-USD 和 ETH-USD,因此抢先交易只能发生在极端市场条件下。 Dodo 团队的回测表明,损失主要发生在市场剧烈波动时。
来源:Dodo
Dodo 还允许流动性提供者在交易对池中存入任意组合的两种代币,同时包括单币质押。 例如,LP 可以将 ETH 单独存入 ETH-USDC 池中。 因此,Dodo 声称在他们的平台上提供流动性不会产生无常损失。
但是天下没有免费的午餐。 因为 Dodo 从流动性提供者那里获取代币库存并扮演做市商的角色,所以 IL 风险的消解换来了库存风险,即当这对货币的市场走势不利时,超配该对货币带来的风险。这实际上是另一种形式的毒流,Dodo 也一直在努力消解这种毒流。 因此,Dodo 的大部分 TVL 都锁在锚定资产中,而非价格波动资产。
Dodo 和 Uniswap 的 TVL 中美元稳定币的占比
来源:Dodo、Uniswap, 截至 2022年3月29日
Lifinity - Solana 上的主动做市商
Lifinity 是一个类似 Dodo 的模型,只不过在 Solana 上使用 Pyth Network 作为预言机。由于 Pyth 让每个数据提供者直接将他们的数据放在链上,而且 Solana 上没有费用收入市场,因此对其来说抢先交易不是问题。 Lifinity 目前处于测试阶段,可以通过封闭式访问权限存入流动性,但测试结果看起来很不错:Lifinity 甚至能够在加密市场剧烈波动的1月份实现 SOL-USDC 池有收益。
来源:Lifinity
Lifinity 在期初通过 SOL 价格下跌时增持更多的 USDC 来实现上述成效(以上 A 期)。因此,它通过精明的库存管理获得不菲的利益。尽管如此,在市场价格波动更剧烈的条件下(C 期),Lifinity 也经历了一段时期的亏损,因为就在 SOL 价格大跳水之前 Lifinity 重新平衡了其流动性池。
当 Lifinity 向广泛公众开放存款时,真正的试炼才会到来。跟操盘 1 亿美元比起来,操盘 100 万美元更容易取得优秀业绩。此外,Solana 即将引入的费用收入市场可能会为抢先交易创造载体,这也取决于费用收入市场的实施方式。
主动做市商(PMM)面临的挑战
使用预言机的 AMM 将面临权衡。预言机是 DeFi 投机者通过价格操纵和抢先交易来实施攻击的关键载体。 此外,它们仅限于大盘加密货币。 预言机市场领导者 Chainlink 仅覆盖以太坊主网上 104 个加密货币对; 相比之下,Uniswap v2 在其平台上拥有超过 1,500 种代币。
这些也许是在短期内能够得以解决的临时性问题。但除此之外,它们还面临着传统恒定乘积 AMM 所没有的路径依赖问题。如果 ETH 相对于 USDC 意外上涨 50%,然后又恢复到原来的价格,则恒定乘积 AMM 中的 LP 可以保证没有无常损失,并可从交易活动中获取费用收益。相比之下,PMM 可能会因库存管理不善而蒙受损失,并且因价差扩大而导致交易活动减少。
总结
AMM 的主要趋势总结如下:
更加强调保护 LP 和管理 IL 风险而不是确保资本效率。去年初,人们还更加关注如何提高 LP 的资本效率。Uniswap v3 的引入不仅解决了这个问题,而且还展现了 IL 对流动性提供者的杀伤力。因此,市场注意力已经转移到广泛建立机制保护 LP 和管理无常损失,从 IL 保护 (Bancor)和价格预言机到动态调整点差等。
效率提升现在更集中体现在协议架构设计上。主要通过整合来改善价格滑点并降低gas费。例如,Bancor v3 和 Platypus 都使用“omnipool”概念来减少流动性碎片,从而改善深度。同样,Crocswap 将所有内容整合到一个智能合约中,大幅降低了gas费。好处是显而易见的,但这种趋势也可能增加智能合约的风险,黑客将能够从成功攻击中获得更多收益。
可组合性仍然是首要考虑因素。虽然 Uniswap v3 不一定会破坏可组合性,但对于其他项目来说,整合独特的 NFT 头寸而非同质化代币将是一项艰巨的任务。其他 AMM 正在考虑创新性的方法来创建有用且可组合的代币乐高供其他用户和协议使用。
我们试图在本报告中介绍大多数现有的主要 AMM 和即将推出的 AMM,但由于 DeFi 生态系统的快速发展,我们只能主要关注基于 EVM 的 AMM。除了我们提到的 AMM 以外还有大量创新性项目,特别是随着关键性赋能基础设施的出现。高吞吐量的区块链平台促使交易所重新开始使用中央限价订单簿,例如 Solana 上的 Serum 和 StarkNet/zkSync 上的 ZigZag 交易所。如 Opyn 的 Squeeth 等 DeFi 新兴底层架构项目允许 LP 完全对冲无常损失。无数跨链桥的引入使 AMM 系统能够跨越多个区块链,例如 Osmosis 和 Catalog Finance。
现有主要 AMM 概览
来源:项目网站和白皮书、 DefiLlama、CoinGecko。截至 2022年 3 月 27 日。
媒体经常评论说,加密货币只是复刻了传统金融。L1 和 L2 区块链上的高吞吐量使得订单簿模式交易重现,这引出了一个问题:要 AMM 有什么用?
然而,DeFi 的魅力不仅仅在于重建传统金融,也不是解决 TradFi 的一些缺陷。相反,我们相信 DeFi 的意义在于重新思考在数字环境中金融系统应该如何运行。因为 AMM 是前所未有的底层架构,所以 AMM 令我们振奋。而我们才只是看到了冰山的一角。