跳轉到主要內容
本頁內容由 AI 自動翻譯,所有內容以英文版本為準。查看英文版 →

一句話總結

Stable AMM 是一個獨立的 Raydium 程式 — 自己的部署,不是 AMM v4 的模式 — 用預先填充的查詢表取代曲線公式。它不使用 x·y=k,而是在池中儲存稀疏的 (x, y, price) 點陣列,並使用二分搜尋 + 線性插值來報價。這個設計特別適合穩定幣對和其他具有已知價格關係的資產:1 對 1 掛鉤代幣之間的交換幾乎沒有滑點。它是一個純 AMM:所有流動性都在池自己的金庫中。(早期它曾有 OpenBook 做市路徑,但該路徑已閒置多年;2026-06-22 升級最終移除了已廢棄的市場代碼。)目前流動性較少;大多數整合者通過 AMM 路由程式訪問 Stable 池。

為什麼用查詢表而不是 xy=k

常數乘積 AMM 在價格區間緊密的交易對上會產生高滑點。USDC-USDT 交換應該幾乎沒有成本;在常數乘積池上,k=x·y 即使對於微小交易量也會強制產生價格移動。查詢表讓池管理員能表達實際的價格關係:
  • 對於穩定幣:在 1:1 附近密集表格,使微交換成本約為 0 滑點。
  • 對於抵押對:編碼目標比率,讓網格塑造費用/激勵表面。
該表現在是固定的 — 歷史上曾通過 UpdateModelData 指令填充,但該指令已被移除,所以現有池保持其表不變。鏈上成本只是插值搜尋 — 遠便宜於重新計算公式。

工作原理:model-data 帳戶

池持有一個 ModelDataInfo 帳戶 — 一個 50,000 元素陣列DataElement 結構體。每個元素包含:
DataElement {
  x: u64,           // table X coordinate
  y: u64,           // table Y coordinate
  price: u64,       // price at (x, y)
}
只有前 valid_data_count 個元素被填充;其餘的為零。交換時,程式:
  1. 計算比率,從當前池儲備量出發,使用二分搜尋找到括住該比率的兩個表元素。
  2. 線性插值兩個括住的點,得到報價。
  3. 應用費用(與 AMM v4 相同的 0.25%)並將結果返回給用戶。
表帳戶上的 multiplier 欄位考慮了 x 和 y 可能以縮減規模儲存的可能性(例如,6 位小數而不是 18 位)。價格發現會相應重新縮放。

比較:Stable AMM vs. AMM v4 vs. CPMM

維度Stable AMMAMM v4CPMM
曲線查詢表 + 插值常數乘積 (xy=k)常數乘積
主要用例穩定幣、掛鉤對通用對、舊版深流動性通用對、新部署
OpenBook 依賴(市場路徑長期閒置;死代碼已於 2026-06 移除)
Token-2022
滑點特性1:1 時最小緊密比率時高整個範圍內中等
管理員可調曲線不再(UpdateModelData 已移除;表現固定)否(僅 SetParams
表大小~50k 元素 × 24 位元組N/AN/A
每次交換計算~5k–15k CU(二分搜尋 + 插值)~150k–200k CU~60k–100k CU
每次交換帳戶數9(新佈局;18 舊相容)~18(AMM + OpenBook)~11

心智模型

Stable AMM 池是一個插值查詢表 AMM,在自己的金庫中持有所有流動性。與常數乘積池的關鍵區別在於,價格發現曲線不是硬編碼的 — 它是一個稀疏陣列,烘焙在池的 ModelDataInfo 帳戶中。目前可調用的操作是直接交換(用戶 ↔ 池)、存入 / 提取(LP 操作)和 WithdrawPnl(管理員費用掃除)。OpenBook 轉軸(MonitorStep) — 自池停止發佈訂單以來長期閒置 — 以及池設置/管理指令已被移除。

何時選擇 Stable AMM

  • 你運營穩定幣或其他相關資產對,希望獲得緊密、可預測的定價。
  • 你對交易對的價格關係有深入了解,希望直接將其編碼為曲線。
  • 你已有 AMM v4 的整合,只需要不同的曲線風格。
對於沒有緊密相關性要求的全新通用池,CPMM 是更簡單、流動性更深的預設選擇。

後續步驟

  • 帳戶AmmInfoModelDataInfoDataElement 欄位參考。
  • 數學 — 二分搜尋、插值和費用應用。
  • 指令 — 可調用集合(交換、存入、提取、WithdrawPnl)和已移除的指令。
  • 費用 — 0.25% 分配(與 AMM v4 相同)。
  • 代碼示例 — 路由和直接整合。
來源: