Solana生態AMM機制全解析:CPMM、CLMM與DLMM對比

Solana生態中的自動做市商機制探究

在Web3行業中,去中心化金融(DeFi)產品佔據了市場的主導地位。其中,自動做市商(AMM)作爲關鍵環節,極大推動了Web3金融領域的創新。本文將介紹Solana生態中幾個重要的AMM實現,希望能爲流動性提供者選擇投資策略提供參考。

Solana生態AMM調研:高流動性背後的底層代碼

恆定乘積做市商(CPMM)

CPMM是最基本的AMM實現,在許多產品中得到應用。以某平台推出的基於恆定乘積的AMM爲例,其核心原理是池子中兩種代幣的供應量具有固定乘積:X * Y = k。

當用戶爲池子添加流動性時,系統會自動爲用戶創建關聯帳戶並發放LP Token,用於證明該用戶持有池子的份額。提取流動性時,相應的LP Token會被銷毀。

CPMM的鏈上程序使用Anchor開發。當用戶交換代幣時,會觸發swap相關指令。以USDC和TRUMP代幣交換爲例,可通過TRUMP-USDC池子進行。

Solana生態AMM調研:高流動性背後的底層代碼

在swap操作中,具體能換到多少目標代幣,是通過恆定乘積公式計算得出:

TokenX和TokenY在總量各自變化後,其乘積應保持不變。通過數學轉換,可得到目標代幣數量的計算公式。需注意,這裏的計算不包含手續費,手續費在前置邏輯中已扣除。

Solana生態AMM調研:高流動性背後的底層代碼

集中流動性做市商(CLMM)

CLMM類似於某知名DEX的V3版本,每個代幣對有多個費用層級,可創建對應層級的池子。它繼承了tick、多費率層級、集中流動性等概念。

與CPMM類似,由於Solana鏈的特性,CLMM不需要爲每個池子單獨部署合約,也沒有工廠合約概念。

Solana生態AMM調研:高流動性背後的底層代碼

CLMM允許流動性提供者在注入資金時選定價格範圍,資金僅在所選範圍內分布。也可以只注入某一種代幣,提供單邊流動性,類似傳統金融中的限價單。

一般來說,價格波動小的池子傾向於選擇小範圍;波動劇烈的池子則選擇大範圍。這樣可以盡量避免當前價格脫離所選範圍,減少無常損失。

集中流動性雖然提高了資金利用率,但也對流動性提供者的金融意識提出了更高要求。如應對不力,鏈上頻繁波動可能導致嚴重的無常損失。

Solana生態AMM調研:高流動性背後的底層代碼

動態流動性做市商(DLMM)

DLMM是某平台推出的AMM產品,屬於Uniswap V3的一種變體,與CLMM相似。DLMM也允許將資金集中在當前價格附近的一定範圍內,但在具體實現上有所不同,並提供了一些特色功能。

DLMM引入了Bin的概念,池子從基礎價格開始,每隔一小段Bin step作爲一個Bin存在。同一Bin內的交易享受零滑點,這可以極大增加交易量和成功率,理論上流動性提供者能收獲更多交易費用。

Solana生態AMM調研:高流動性背後的底層代碼

與CLMM類似,池子中的代幣在當前價格兩側分布,一個代幣僅需提供單邊流動性。當前激活的Bin存在兩種代幣,其他Bin則在兩側分布,各自僅存在單個代幣。

Solana生態AMM調研:高流動性背後的底層代碼

DLMM提供了三種流動性策略:Spot、Curve和Bid Ask。Spot策略最普適;Curve適合價格變化小的池子,如穩定幣對;Bid Ask則適合價格波動大的池子,但需要頻繁調整倉位。

Solana生態AMM調研:高流動性背後的底層代碼

總結

作爲Web3金融領域的重要組成部分,AMM通過其獨特機制和創新,推動了去中心化金融的普及和發展。隨着技術進步和生態完善,AMM有望在未來發揮更大作用,進一步改變傳統金融格局。

查看原文
此页面可能包含第三方内容,仅供参考(非陈述/保证),不应被视为 Gate 认可其观点表述,也不得被视为财务或专业建议。详见声明
  • 讚賞
  • 7
  • 分享
留言
0/400
破产艺术家vip
· 12小時前
牛啊很硬核
回復0
币圈鸡汤哥vip
· 12小時前
代码确实狠力害
回復0
GateUser-9ad11037vip
· 12小時前
sol是未来之星
回復0
汤米老师1vip
· 12小時前
实用性很强
回復0
BearMarketBardvip
· 12小時前
图表写得很清晰
回復0
割肉艺术家vip
· 12小時前
效率很高的机制
回復0
gas费烧烤摊vip
· 12小時前
实用干货给我冲
回復0
交易,隨時隨地
qrCode
掃碼下載 Gate APP
社群列表
繁體中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)