Solana生态AMM模式解析:CPMM、CLMM与DLMM的优劣对比

robot
摘要生成中

Solana生态中的自动做市商模式探析

在Web3行业中,去中心化金融(DeFi)产品占据了主导地位。其中,自动做市商(AMM)作为关键环节,成为推动Web3金融创新的重要力量。本文将介绍Solana生态中几个主要的AMM实现,以期为流动性提供者选择投资策略提供参考。

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

恒定乘积做市商(CPMM)

CPMM是最基本的AMM实现之一。以某DEX推出的基于恒定乘积的AMM为例,其核心原理是保持池子中两种代币供应量的固定乘积:X * Y = k。

当用户向池子添加流动性时,系统会自动为用户创建关联账户并发放LP代币,用于证明用户持有该池子的份额。提取流动性时,相应的LP代币将被销毁。

CPMM的链上程序使用Anchor开发。在交换代币时,用户会触发swap相关指令。以USDC兑换TRUMP为例,可通过TRUMP-USDC池子进行交换。在交易中,输入代币为USDC,输出代币为TRUMP。

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

Solana生态的AMM可直接通过Token Account表示LP对,无需部署新合约。交易时直接与CPMM程序交互,通过传入的池子地址、代币地址等修改相应Token Account状态完成swap操作。

具体能换到多少目标代币,是通过恒定乘积公式计算得出的。计算时会考虑手续费的扣除。

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

集中流动性做市商(CLMM)

CLMM类似于某知名DEX的V3版本,每个代币对可创建多个不同费率层级的池子。CLMM继承了tick、多费率层级、集中流动性等概念。

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

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

CLMM允许流动性提供者在注入资金时选定价格范围,资金仅在所选范围内分布。可以提供双边或单边流动性。

一般而言,价格波动小的池子适合选择较小范围;波动剧烈的池子则适合选择较大范围。这有助于避免价格脱离所选范围造成过多无常损失。

集中流动性虽可提高资金利用率,但也对LP的金融意识提出更高要求。LP需更积极管理自身流动性,否则容易遭受严重无常损失。

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

动态流动性做市商(DLMM)

DLMM是某平台推出的AMM产品,也属于V3的一种变体,与CLMM相似。DLMM允许LP将资金集中在当前价格附近一定范围内,但在具体实现和功能上有所不同。

DLMM引入了Bin概念,从基础价格开始每隔一小段Bin step作为一个Bin存在。同一Bin内交易享受零滑点,有利于增加交易量和成功率,理论上LP可获得更多交易费用。

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

池子中代币在当前价格两侧分布,当前激活的Bin存在两种代币,其他Bin仅存在单个代币。当前Bin代币量变化时,系统会根据实际情况调整激活的Bin,从而推动池子价格变化。

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

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

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

结语

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

SOL1.52%
此页面可能包含第三方内容,仅供参考(非陈述/保证),不应被视为 Gate 认可其观点表述,也不得被视为财务或专业建议。详见声明
  • 赞赏
  • 3
  • 转发
  • 分享
评论
0/400
GasFee_Crybabyvip
· 8小时前
为啥都往sol跑啊 多卷
回复0
稳定币套利者vip
· 8小时前
*调整计算器* 计算sol amm效率的数字... 42.3% 不理想 vs 我自己的套利算法说实话
查看原文回复0
MEV猎手阿福vip
· 8小时前
这这 也太复杂了 下次算了
回复0
交易,随时随地
qrCode
扫码下载 Gate APP
社群列表
简体中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)