Solana生态AMM技术对比:CPMM、CLMM与DLMM的实现原理

Solana生态AMM探究:流动性背后的技术实现

在Web3行业中,与DeFi相关的产品占据了主导地位。其中,自动做市商(AMM)作为关键环节,推动了Web3金融领域的变革。本文将介绍Solana生态中几个重要的AMM实现,希望能为流动性提供者(LP)选择投资策略提供参考。

Solana生态AMM调研:高流动性背后的底层代码

CPMM

恒定乘积做市商(CPMM)是最基本的AMM实现。以某交易平台推出的基于恒定乘积的AMM为例,池子中两种代币的供应量乘积保持恒定:X * Y = k。

当用户向池子添加流动性时,CPMM会自动为钱包地址创建关联账户并发放LP Token,用于证明该地址持有池子的份额。提取流动性时,相应的LP Token会被销毁。

CPMM的链上程序使用Anchor开发。在swap交易中,程序通过传入的池子地址、代币地址等来修改相应Token Account的状态,完成swap操作。

具体能换到多少目标代币,通过以下公式计算:

TokenX和TokenY在总量变化后,其乘积保持不变。变化后的乘积等于变化前的乘积。

经过数学转换,可得到能换到的y代币数量Δy的计算公式:

Δy = (Δx * y) / (x + Δx)

这里的计算不包含手续费,手续费在前置逻辑中已扣除。

Solana生态AMM调研:高流动性背后的底层代码

CLMM

集中流动性做市商(CLMM)类似于某DEX的V3版本,每个代币对有多个费用层级,可创建对应层级的池子。CLMM继承了tick、多费率层级、集中流动性等概念。

与CPMM类似,由于Solana链的特性,CLMM无需对每个池子单独部署合约,也没有工厂合约的概念。

CLMM允许LP在注入资金时选定价格范围,资金仅在所选范围内分布。也可以只注入某一种代币,提供单边流动性,类似传统金融中的限价单。

对于波动小的池子,LP倾向选择小范围;对剧烈波动的池子,则选择大范围。目的是避免价格脱离所选范围,造成过多无常损失。

集中流动性虽提高资金利用率,但也要求LP具备更高的金融意识,需更积极管理流动性。否则频繁波动可能导致严重无常损失。

Solana生态AMM调研:高流动性背后的底层代码

Solana生态AMM调研:高流动性背后的底层代码

Solana生态AMM调研:高流动性背后的底层代码

DLMM

动态流动性做市商(DLMM)是某平台推出的AMM产品,属于Uniswap V3的一种变体,与CLMM相似。DLMM也允许LP将资金集中在当前价格附近的范围内,但在实现上有所不同,并提供了一些特色功能。

DLMM引入了Bin的概念,池子从基础价格开始,每隔一小段Bin step作为一个Bin。同一Bin内的交易享有零滑点,这可大幅提升交易量和成功率,理论上LP能获得更多交易费用。

与CLMM类似,池子中的代币在当前价格两侧分布,一个代币只需提供单边流动性。当前激活的Bin拥有两种代币,其他Bin在两侧分布,各自只有单个代币。

当激活Bin中代币量变化导致某种代币减少为0时,DLMM会将激活Bin设为左侧或右侧的下一个Bin,推动池子价格变化。

DLMM提供三种LP策略:Spot、Curve和Bid Ask。Spot适用于大多数池子;Curve适合价格波动很小的池子,如稳定币对;Bid Ask则适合波动剧烈的池子,但需要频繁调整仓位。

Solana生态AMM调研:高流动性背后的底层代码

Solana生态AMM调研:高流动性背后的底层代码

Solana生态AMM调研:高流动性背后的底层代码

总结

作为Web3金融领域的重要组成,AMM通过独特机制和创新推动了去中心化金融的发展。随着技术进步和生态完善,AMM有望在未来发挥更大作用,进一步改变传统金融格局。

SOL2.37%
此页面可能包含第三方内容,仅供参考(非陈述/保证),不应被视为 Gate 认可其观点表述,也不得被视为财务或专业建议。详见声明
  • 赞赏
  • 6
  • 分享
评论
0/400
MEVNewHuntervip
· 6小时前
索拉纳又整新花样
回复0
GasWranglervip
· 6小时前
实际上,cpmm 对 sol 来说是次优的……根据 gas 指标,dlmm 明显更优.
查看原文回复0
ForkThisDAOvip
· 6小时前
solana这矿难它不香吗~
回复0
PoolJumpervip
· 6小时前
sol生态真不错
回复0
盲盒受害者vip
· 6小时前
有亏是提前跑了 不然又得套
回复0
OnChain_Detectivevip
· 6小时前
检测到可疑活动... 此 amm 结构需要进行全面的安全审计
查看原文回复0
交易,随时随地
qrCode
扫码下载 Gate APP
社群列表
简体中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)