Solana AMM 设计:多币池(MTP) 和双币池(2Pools)

最近,像Curve Finance 这样的AMM 已经创建了超过2 种资产的矿池机制,通常用于稳定代币的元组。这些矿池非常成功,Curve 的3Pool (USDC-USDT-DAI) 吸引了数十亿美元的TVL 和大量交易量。为简单起见,具有n > 2 个资产的池在此将被称为多代币池(MTP)。在本文中,我们会探讨Solana稳定对AMM 中MTP 和传统“2Pools”之间的权衡。

MTP 充当有用的DeFi 流动性乐高积木,并在以太坊上提供出色的gas 优化。当专注于少数资产不重叠的矿池的深度流动性时,它们尤其有效。在Saber,我们最初计划为稳定资产实施MTP,但最终决定使用与分流器(Router)相连的2Pools。做出这一决定是因为我们作为DeFi 的跨链流动性基础的策略定位。我们想要多个矿池而不是几个矿池,我们非常重视跨链DeFi 所需要的2Pools 来增加可组合性。在Solana 上,2Pools 可以提高资本效率和可组合性,具有更快的运行时间,并且更安全地隔离系统性风险。

多币池的优势

MTP 非常适合在像以太坊等费用繁重的区块链上进行gas 优化。Curve Finance 在以太坊上的3Pool 因其设计的Gas 效率而广受欢迎。在整个合约中,像 add_liquidity这样的主要功能通过 N_COINS使用 for 循环(在这种情况下为 3),这是对通过每个 C(n,2) 时发生的二次缩放的改进(n 选择 2 对)。此外,交换功能在相对于代币数量的恒定时间内运行。Curve 的Stableswap 执行也将计算密集型AMM 曲线计算推广到多个变数,再次节省了指令开销。然而在Solana 上,由于极低费用、快速确定性和交易速度,gas 优化不是优先事项。在Rust 中写程序需要的是对最大化安全性和平稳的交易执行的不同思维方式。add_liquidityN_COINS

MTP 的另一个巨大优势是,在USDC-USDT-UST 等元组中,资产之间的交换更容易。在一次交易中,用户可以轻松地将n 种资产中的任何一种换成其他任何一种资产。但是,如果使用分流器(Router),2Pools 也可以实现类似的用户体验。Saber 的智能分流器(Router)系统通过连接的2Pools 之间的最小路径进行交易,实现没有直接配对的资产之间的传递交换,以便它们以最佳价格自动交换。例如: 存在一个包含A:B 的池和一个分离的池B:C。通过分流器(Router),可以传递地建立A:C 关系。

最有名的MTP 实际运用是在Curve 上。例如: 考虑拥有4 个资产的sUSD 池。由于LP 可以在USDC、USDT 和DAI 中添加sUSD 流动性,因此有更多的可用流动性来构建sUSD 池。假如只使用DAI,而我们只想要一个sUSD 池,那么USDT 持有者将被排除在LP 之外。因此MTP 有助于最大化少数蓝筹加密货币池的深度流动性。不过应该指出的是,资产与其他MTP 重叠的新MTP 会有递减的边际收益。此外,包含USDT-USDC-DAI等大型蓝筹货币的独特潜在MTP数量有限。

为什么Saber 选择了2Pool-Router 系统

Solana 的协议级架构与以太坊有很大不同。对于普通用户来说,包含两种资产的池不仅更直观,而且2Pools 在Solana 的环境中具有明显的优势。

一、流动性有效分配

当处理大量资产时,MTP 中的流动性变得稀薄。想像两个矿池USDC-USDT-UST 和USDC-USDT-DAI。在两个MTP 之间提供USDC-USDT 关系的流动性是“重复的”,因此被浪费了。由于这些池之间的唯一区别是第三种资产,因此在多个3Pool 中共享资产的好处变得有限。这种重叠随着O(n²) 增加,并且当我们考虑多链生态系中稳定币的数量时,例如UST、PAI 和BUSD,这种影响变得非常重要。

在2Pools 中,货币对之间建立了直接关系,流动性永远不会浪费。

二、 降低系统性风险和无常损失

所有加密货币都有不同程度的系统性风险。法币支持的中心化稳定币(如USDC 和USDT)具有审查风险、监管不确定性,并且具有不同的赎回流动性不足。像UST这样的算法稳定币可能根据市场的波动性而脱钩。如果池中的一个稳定币有风险,整个池都会处于危险之中。最重要的是将这种风险划分到孤立的2Pools 中,而不是将风险分散到3Pools 中。重要的是,Saber 的智能分流器(Router)系统通过允许传递交换(实质上在池之间共享流动性)而不分担风险,实现了两全其美。只有与受损货币有直接关联的流动性提供者才会承担系统性风险。

脱钩是一种灾难性的情况,稳定币 DEX 使用的 Stableswap 算法可能会加剧这种情况。AMM 曲线的Stableswap不变量是对恒定乘积和恒定总和曲线的修改,在曲线中间附近聚集了更多的流动性。为了在价格平价附近获得更平坦的曲线(低滑点),Stableswap 不变量通过在曲线的极端处牺牲更陡峭的滑点来进行权衡。一旦脱钩资产超过某个极端价格阈值并脱离线性曲线,正反馈循环可能会导致不利的银行挤兑,从而加剧脱钩。如果池中的一个稳定币严重崩溃并且永远不会回到1.0 挂钩,那么池中的流动性提供者实际上将几乎所有的流动性都保留在损坏的加密货币中。

Curve Finance指南

脱钩的威胁是非常真实的。几个月前,Terra 的UST 跌至0.897 美元,并在数周内未能正常恢复。在3Pool USDC-USDT-UST 模型下,UST 的失败会传染性地影响那些交易和纯粹为USDC-USDT 提供流动性的。孤立的2Pools 减轻了这种风险,并为可能对锚定USDT 或UST 或任何其他稳定资产的强度持有意见的LP 提供了更多的自由决定权。

三、 2Pools:易于平衡

不平衡的池会导致资本效率低,并对池中持有多数资产的人(池中的大多数人)进行惩罚。用户可以在大多数Stableswap 平台上单边存款,导致资产不平衡。由于流动性挖矿奖励、市场动态、系统性风险以及上述流动性蚕食的原因,MTP 本质上对失衡更加敏感。保持33–33–33 或25–25–25–25 等的平衡是一条很难走的走钢丝,尤其是当每种资产在数量、市值和可访问性方面存在显著差异时。2Pools 往往更平衡和资本效率更高,因为两种资产之间的关系涉及较少的变数。

不平衡的池有多大的破坏性?Stableswap曲线是设计来鼓励用户存入有助于平衡池的少数资产,并通过更高的滑点惩罚存入已经占据池的多数资产的用户。惩罚加剧矿池失衡的用户的原则同样适用于退出矿池的时候。

为了说明这一点,想像一个由USDC (40%)、USDT (40%) 和UST (20%) 组成的3Pool。存入USDT 或USDC 的流动性提供者都将因进一步使3Pool 失衡而收到相对较少的LP 代币作为惩罚,尽管这两种资产彼此相对平衡。不平衡的池也会降低交换体验。继续以USDC (40%)、USDT (40%) 和UST (20%) 为例,将高供应量的代币换成低供应量的代币(USDC → UST)的用户会因收到较少的代币而受到惩罚。

四、 2Pools:在Solana 上执行简单高效率的程序代码

Solana 上的Rust 程序不是针对整体gas 效率进行优化,而是专注于在有限的交易指令空间内最大限度地提高安全性和程序代码执行效率。 Solana 交易只能使用 200,000 条指令(BPF 计算预算),并且处理三个或更多不同的帐户,而不是两个,增加了大量的指令。创建和维护许多帐户都会产生计算成本,例如调用create_program_address_units



与以太坊相比,Solana 上的帐户储存有根本上的不同,因为几乎无需任何费用。在Solana 上保持帐户活跃会产生租金— 一种以Epoch为主的固定利率储存成本— 因为区块链集群必须积极维护数据以处理任何未来的交易。

五、可组合性

AMM 的一个关键优势是LP 部位的可组合性,我们在上一篇 MTP LP 代币自然比2Pool 更复杂,这种复杂性限制了可以在LP 部位之上实现的附加逻辑的数量。在Solana 上,对于跨程序调用,调用的程序继承其母程程序的预算。如果被调用的程序消耗了预算或超出了界限,则整个调用链和母程序都将停止。Saber 的目标是在母程序中保留尽可能多的免费交易存储,以便建立在Stableswap AMM 之上的项目不受上限的限制。

具体来说,处理三个帐户而不是两个帐户对于跨程序调用是低效率的,因为调用功能要求调用者传递被调用指令所需的所有帐户。 还有许多其他检查点(例如 pay()和 pay_and_launch_missiles()),其中运行时策略必须检查所有帐户的状态。 由于调用程序在程序完成指令处理之前会呈现暂停的状态,因此检查 3Pool 状态时会需要查额外帐户加上会佔用更多时间并引入额外的异步性。

结论

MTP 和2Pools 根本上专注于不同的事情。

MTP 非常适合像以太坊这样的区块链,其中Gas 优化很重要,并且在专注于少数具有深厚流动性的蓝筹池时尤其有效。但是包含USDT-USDC-DAI等大型蓝筹的独特潜在MTP数量有限。

在Solana 上,2Pools 往往更具资本效率、平衡性、隔离系统性风险的安全性、程序代码执行效率更高、数学更简单、更易于组合且更易于开发。对于Saber来说,我们决定使用2Pools 进行开发,因为我们将策略定位为DeFi 的跨链流动性基础。我们想要多个矿池而不是几个矿池,我们非常重视跨链DeFi 所必需的2Pools 来增加可组合性。

最终,3Pools 和2Pools 有自己的优势和适用例子。随着跨链资产数量的不断增长,我们期待Stableswap AMM 设计的持续创新。

关于 Saber

Saber是Solana上挂钩资产的领先跨链AMM,例如稳定币和包装资产。 作为 Solana的核心跨链流动性网络,Saber 有助于促进 Solana 与其他区块链之间的资产转移。 用户将加密货币存入 Saber 流动性池,从交易费用、代币奖励措施以及最终自动化的 DeFi 策略中获得被动收益。

本文链接地址:https://www.wwsww.cn/sol/9610.html
郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。