本頁內容由 AI 自動翻譯,所有內容以英文版本為準。查看英文版 →
一句話總結
CPMM — Constant Product Market Maker,在 Raydium UI 中正式稱為「標準 AMM」— 是經典x · y = k AMM 的原生 Solana 實現。沒有 OpenBook 訂單簿、沒有 Serum 遺留代碼、除了 SPL Token 和 Token-2022 外沒有外部依賴。每個流動性池由三個部分組成(兩個代幣金庫、一個 LP 代幣),由程式擁有的授權 PDA 管理,根據金庫餘額的乘積定價。這是 Raydium 為所有新的常數乘積池推薦的 AMM,也是 /pools/create 端點和網頁 UI 的「建立池」流程預設使用的方案。
CPMM 提供的功能
建立者費用收集更新。 任何支付者都可以觸發
CollectCreatorFeePermissionless。資金仍然只流向池建立者的規範代幣帳戶,現有的建立者簽名 CollectCreatorFee 仍然可用。詳見 Instructions。- Token-2022 搭配經過審核的擴展允許清單。 CPMM 不接受任意的 Token-2022 代幣。程式在池建立時強制執行安全擴展的白名單:
TransferFeeConfig、MetadataPointer、TokenMetadata、InterestBearingConfig和ScaledUiAmount。代幣上的任何其他擴展都會導致Initialize以NotSupportMint拒絕 — 除非代幣本身在程式維護的小型硬編碼代幣允許清單上(用於逐案例地上線特定代幣)。轉帳費用特別會影響交換數學,並應用在交易的正確一側 — 詳見algorithms/token-2022-transfer-fees。 - 可預測的費用。 每個池在建立時引用一個選定的
AmmConfig。配置包含交易費率(在 LP、協議和基金之間分配)和一個獨立的建立者費率。建立者費用是獨立的桶 — 永遠不是交易費的一部分。池在建立時選擇是否收取費用。預設值和完整的分配數學詳見products/cpmm/fees。 - 透過觀察環形緩衝區的鏈上 TWAP。 每次交換都會更新一個
observation帳戶。外部合約可以讀取累積價格觀察來計算 TWAP,無需自訂預言機。 - 扁平帳戶佈局。 一個池完全由六個 PDA 描述(授權、池狀態、LP 代幣、兩個金庫、觀察)。沒有每個市場的 OpenBook 帳戶、沒有事件隊列、沒有請求隊列。交易在計算和帳戶數量上都比 AMM v4 便宜。
- 燒毀並賺取相容。 LP 代幣可以在 LP Lock 程式下鎖定,以便池建立者可以繼續領取費用而無需保留提取流動性的權利。用於「永久」流動性啟動。
CPMM 不是什麼
- 不是集中式。 流動性均勻分佈在整個價格範圍內,就像 Uniswap v2。如果你需要資本高效的做市 — 即在當前價格附近集中流動性 — 使用 CLMM。
- 不是混合式。 與 AMM v4 不同,CPMM 池不在 OpenBook 市場上放置掛單。跨 CPMM 池的路由通過 AMM Routing 程式進行,而不是通過 CLOB。
- 不能用於任意曲線啟動。 曲線硬編碼為常數乘積。如果你想要代幣啟動的綁定曲線,使用 LaunchLab,它在填滿時升級為 CPMM 池。
CPMM 與 AMM v4 的區別
關於遷移故事的更深入討論詳見
protocol-overview/versions-and-migration。
心智模型
CPMM 池是一個程式擁有的物件,持有三個餘額:vault0(token0)、vault1(token1)和 LP 代幣的供應量。LP 代幣的供應量追蹤存款者對池的索賠;代幣金庫持有實際資產。其他一切 — 授權 PDA、觀察帳戶、費用配置指標 — 都是簿記,用於使該三變數關係可交易、可收費和可觀察。
每個面向用戶的操作都歸結為一個明確定義的狀態轉換:
- 存款: 轉入 token0 和 token1,向用戶鑄造 LP,價格不變。
- 提取: 從用戶燒毀 LP,按池的當前比率轉出 token0 和 token1,價格不變。
- 交換: 轉入一個代幣,轉出另一個;比率沿著
x · y = k曲線移動(扣除費用);觀察帳戶對新價格進行採樣。
products/cpmm/math,指令集詳見 products/cpmm/instructions。
何時選擇 CPMM
在以下情況下選擇 CPMM:- 你正在啟動新代幣或新交易對,對哪個範圍會看到交易沒有強烈意見。
- 一個或兩個代幣都使用 Token-2022 擴展。
- 你想要簡單的每筆交易費用模型,而不是動態的、基於 tick 的模型。
- 你正在整合,想要通過 Raydium 路由,而不承擔 CLMM 頭寸的複雜性。
- 交易對是穩定的或高度相關的(穩定幣對穩定幣、LST-SOL),你想在平價附近集中流動性。
- 你是願意主動管理範圍以獲得更高費用 APR(每美元 TVL)的做市團隊。
- 你正在遷移現有的 AMM v4 工具,並且不是在建立新池。
後續步驟
- Accounts — CPMM 池的六個 PDA 及其推導方式。
- Math —
SwapBaseInput與SwapBaseOutput、Token-2022 轉帳費用處理、觀察更新。 - Instructions — 完整的指令介面及帳戶清單。
- Fees — 四向費用分配及其收集方式。
- Code demos — 建立、交換、存款、提取的可運行 TypeScript 程式碼片段。

