本頁內容由 AI 自動翻譯,所有內容以英文版本為準。查看英文版 →
Stable AMM 是獨立的程式;其池端帳戶結構類似於 AMM v4(AmmInfo、金庫、授權者),並額外包含一個儲存查詢表的
ModelDataInfo 帳戶。本頁涵蓋兩者。清單
純 AMM。 Stable AMM 在自己的金庫中持有所有流動性,不依賴 OpenBook。它在早期曾有 OpenBook 做市路徑,但該路徑已多年未使用,2026-06-22 升級移除了遺留程式碼。因此下方的
serum_* 市場帳戶和 amm_open_orders 是遺留項目:它們可能仍出現在舊版配置交易中以保持向後相容性,但程式不驗證或讀取它們,新版指令完全省略它們。| 類別 | 帳戶 | 擁有者 | 角色 |
|---|---|---|---|
| 池 | AmmInfo | Stable 程式 | 池狀態、金庫和模型資料帳戶的參考。 |
| 池 | amm_authority | Stable 程式 | 程式擁有的 PDA,簽署金庫操作。在所有 Stable AMM 池中共享。 |
| 池 | amm_target_orders | Stable 程式 | 池端網格帳戶(保留在配置中;不再驅動 OpenBook 訂單)。 |
| 池 | pool_coin_token_account | SPL Token | 池的幣端金庫。 |
| 池 | pool_pc_token_account | SPL Token | 池的 pc 端金庫。 |
| 池 | lp_mint | SPL Token | 可互換的 LP 鑄幣。 |
| 模型 | model_data_account | Stable 程式 | 查詢表:50,000 × DataElement。 |
| 遺留 | amm_open_orders | OpenBook | 池的舊 OpenBook OpenOrders 帳戶。未使用。 |
| 遺留 | serum_market | OpenBook | OpenBook 市場。未使用。 |
| 遺留 | serum_bids、serum_asks | OpenBook | 買價/賣價隊列。未使用。 |
| 遺留 | serum_event_queue | OpenBook | 事件隊列。未使用。 |
| 遺留 | serum_coin_vault、serum_pc_vault | SPL Token | OpenBook 市場級金庫。未使用。 |
| 遺留 | serum_vault_signer | OpenBook | 市場級金庫簽署者。未使用。 |
AmmInfo
根狀態帳戶。配置幾乎與 AMM v4 相同——池參數、小數位、費用、金庫/鑄幣參考——加上一個新增項:指向查詢表的 model_data_key 欄位。
model_data_key— 查詢表的地址。必須傳遞給每個指令。fees— 與 AMM v4 相同的結構。預設為 0.25% 交易費、0.22% LP / 0.03% 協議分割。coin_vault、pc_vault— 池的金庫。status— 位元遮罩,控制 swap/deposit/withdraw/crank 是否啟用。out_put.need_take_pnl_*— 由WithdrawPnl掃除。
ModelDataInfo
查詢表。價格/數量點的大型稀疏陣列。
InitModelData(建立帳戶)和 UpdateModelData(填充元素,設定 valid_data_count)——在 2026-06-22 升級中被移除。現有池上的表現在是固定的。在執行時,其餘可呼叫的指令仍然使用它們:
- Swap / deposit / withdraw 呼叫查詢函數,在
elements[0..valid_data_count]內進行二分搜尋和插值。
DataElement
表中的原子項目。必須排序(x 遞增、y 遞減、price 遞增)以便二分搜尋正常工作。
授權者和金庫
與 AMM v4 相同:amm_authority是使用種子["amm authority"]衍生的單一程式級 PDA。它擁有所有池金庫並簽署它們的操作。- 金庫是 SPL Token 帳戶,其擁有者是
amm_authority,不是 ATA。
狀態位元遮罩
與 AMM v4 相同。控制 swap/deposit/withdraw/crank 是否啟用。費用和 PnL 追蹤
out_put 結構追蹤:
need_take_pnl_coin、need_take_pnl_pc— 已累積但尚未掃除的協議費用。WithdrawPnl將這些移出。swap_coin_in_amount、swap_pc_in_amount等 — 分析計數器。
帳戶大小
ModelDataInfo 很大(約 1.2 MB,因為 50,000 個元素 × 每個元素 24 位元組)。這就是為什麼建立 Stable 池需要明確的租金和帳戶預先分配。Raydium SDK 和工具透明地處理這個問題;整合者很少需要手動分配。
從頭衍生帳戶
與 AMM v4 一樣,Stable AMM 使用有種子的金鑰(不是純 PDA)。規範池身份通過以下方式衍生:在哪裡閱讀什麼
- 指令帳戶列表:
products/stable/instructions。 - 插值如何使用表:
products/stable/math。 - 費用結構和 WithdrawPnl:
products/stable/fees。 - 2026-06-22 OpenBook 解耦:
reference/changelog。

