Documentation Index
Fetch the complete documentation index at: https://docs.raydium.io/llms.txt
Use this file to discover all available pages before exploring further.
本页内容由 AI 自动翻译,所有内容以英文版本为准。查看英文版 →
一句话总结
稳定 AMM 是 Raydium AMM 的一种变体,用预加载的查找表替代曲线公式。与其他 AMM 不同,该池不使用 x·y=k,而是存储一个稀疏的 (x, y, price) 数据点数组,通过二分查找加线性插值报价。这种设计对稳定币对和其他价格关系已知的资产特别有效:1:1 挂钩代币之间的交易滑点接近零。与 AMM v4 类似,稳定 AMM 也连接 OpenBook 市场并在其上挂单。当前流动性较少;大多数集成商通过 AMM 路由程序 访问稳定池。为什么用查找表而不是 xy=k
恒定乘积 AMM 在价格浮动范围紧凑的交易对上产生较高滑点。USDC-USDT 交换本应几乎不收费,但在恒定乘积池上,k=x·y 的约束即使对微小交易量也会产生价格变动。查找表让池管理员可以直接编码实际的价格关系:- 稳定币:在 1:1 附近密集分布表数据,使微型交易的滑点接近零。
- 抵押资产对:编码目标比率,让网格决定费用/激励曲面。
UpdateModelData 调用间保持静态(管理员在关系变化时发起调用),因此链上成本仅为插值查找——远低于重新计算公式。
工作原理:模型数据账户
池持有一个ModelDataInfo 账户——包含 50,000 个元素的数组,每个元素是 DataElement 结构体:
valid_data_count 个元素被填充;其余为零。交换时,程序执行:
- 计算比率:从当前池储备量计算比率,使用二分查找确定两个表元素的位置,使该比率位于它们之间。
- 线性插值:在两个相邻点间插值得出报价。
- 应用费用:采用与 AMM v4 相同的 0.25% 费率,返回结果给用户。
multiplier 字段处理 x 和 y 存储时可能的缩放(例如,使用 6 位小数而非 18 位)。价格发现会相应重新缩放。
比较:稳定 AMM vs. AMM v4 vs. CPMM
| 维度 | 稳定 AMM | AMM v4 | CPMM |
|---|---|---|---|
| 曲线 | 查找表加插值 | 恒定乘积 (xy=k) | 恒定乘积 |
| 主要用例 | 稳定币、挂钩交易对 | 通用交易对、既有深流动性 | 通用交易对、新部署 |
| OpenBook 依赖 | 是 | 是 | 否 |
| Token-2022 | 否 | 否 | 是 |
| 滑点特征 | 1:1 处极小 | 价格紧密时较高 | 全范围中等 |
| 管理员可调曲线 | 是(UpdateModelData) | 否(仅 SetParams) | 否 |
| 表大小 | ~50k 元素 × 24 字节 | 不适用 | 不适用 |
| 每次交换计算量 | ~5k–15k CU(二分查找加插值) | ~150k–200k CU | ~60k–100k CU |
| 每次交换账户数 | ~17(AMM + OpenBook) | ~18(AMM + OpenBook) | ~11 |
心智模型
稳定 AMM 池是一个插值查找表 AMM,其金库同时托管 OpenBook 限价单,与 AMM v4 相同。关键差异在于价格发现曲线不是硬编码的——而是一个稀疏数组,管理员可以填充和更新。操作方式与 AMM v4 相似:直接交换(用户 ↔ 池)、存取流动性(LP 操作)、操作步进(MonitorStep)和管理员维护(UpdateModelData、SetParams)。
何时选择稳定 AMM
- 你运营稳定币或其他关联资产交易对,需要紧密且可预测的定价。
- 你深度理解交易对的价格关系,想直接将其编码为曲线。
- 你已有 AMM v4 集成,只需不同的曲线方案。
后续步骤
- 账户 —
AmmInfo、ModelDataInfo、DataElement字段参考。 - 数学 — 二分查找、插值和费用应用。
- 指令 —
InitModelData、UpdateModelData、交换及 LP 指令。 - 费用 — 0.25% 分配(与 AMM v4 相同)。
- 代码示例 — 路由和直接集成。
reference/program-addresses获取正式程序 IDproducts/amm-v4/overview了解 OpenBook 集成细节


