Saltar para o conteúdo principal
Esta página foi traduzida automaticamente por IA. A versão em inglês é a fonte oficial.Ver versão em inglês →

Resumo em um parágrafo

Stable AMM é um programa Raydium independente — sua própria implantação, não um modo do AMM v4 — que troca uma fórmula de curva por uma tabela de consulta pré-populada. Em vez de usar x·y=k, o pool armazena um array esparso de pontos (x, y, preço) e usa busca binária + interpolação linear para cotar preços. Este design se destaca em pares de stablecoins e outros ativos com relações de preço conhecidas: swaps entre tokens com paridade 1-para-1 têm slippage próximo a zero. É um AMM puro: toda a liquidez fica nos cofres do próprio pool. (Ele teve um caminho de market-making OpenBook no início de sua vida, mas esse caminho está inativo há anos; a atualização de 2026-06-22 finalmente removeu o código de mercado morto.) A liquidez está atualmente reduzida; a maioria dos integradores acessa pools Stable através do programa AMM Routing.

Por que uma tabela de consulta em vez de xy=k

AMMs de produto constante incorrem em alto slippage em pares com bandas de preço apertadas. Um swap USDC-USDT deveria custar quase nada; em um pool de produto constante, k=x·y força um movimento de preço mesmo para volume pequeno. Uma tabela de consulta permite que o administrador do pool expresse a relação de preço real:
  • Para stablecoins: densifique a tabela em torno de 1:1 para que micro-swaps custem ~0 slippage.
  • Para pares colateralizados: codifique a razão alvo e deixe a grade moldar a superfície de taxa/incentivo.
A tabela agora é fixa — foi populada historicamente via instrução UpdateModelData, que foi removida desde então, então pools existentes mantêm suas tabelas como estão. O custo on-chain é apenas busca de interpolação — muito mais barato do que recomputar uma fórmula.

Como funciona: a conta model-data

O pool mantém uma conta ModelDataInfo — um array de 50.000 elementos de structs DataElement. Cada elemento contém:
DataElement {
  x: u64,           // table X coordinate
  y: u64,           // table Y coordinate
  price: u64,       // price at (x, y)
}
Apenas os primeiros valid_data_count elementos são populados; o resto é zerado. No swap, o programa:
  1. Computa uma razão a partir das reservas atuais do pool e usa busca binária para encontrar quais dois elementos da tabela delimitam essa razão.
  2. Interpola linearmente entre os dois pontos delimitadores para obter o preço da cotação.
  3. Aplica taxas (mesmos 0,25% do AMM v4) e retorna o resultado ao usuário.
O campo multiplier na conta da tabela leva em conta a possibilidade de que x e y sejam armazenados em escala reduzida (por exemplo, com 6 decimais em vez de 18). A descoberta de preço redimensiona de acordo.

Comparação: Stable AMM vs. AMM v4 vs. CPMM

DimensãoStable AMMAMM v4CPMM
CurvaTabela de consulta + interpolaçãoProduto constante (xy=k)Produto constante
Caso de uso principalStablecoins, pares com paridadePares gerais, liquidez profunda legadaPares gerais, novas implantações
Dependência OpenBookNão (caminho de mercado inativo há muito; código morto removido 2026-06)SimNão
Token-2022NãoNãoSim
Perfil de slippageMínimo em 1:1Alto em razões apertadasModerado em toda a faixa
Curva ajustável por adminNão mais (UpdateModelData removido; tabelas agora fixas)Não (SetParams apenas)Não
Tamanho da tabela~50k elementos × 24 bytesN/AN/A
Compute por swap~5k–15k CU (busca binária + interpolação)~150k–200k CU~60k–100k CU
Contagem de contas por swap9 (novo layout; 18 compatibilidade antiga)~18 (AMM + OpenBook)~11

Modelo mental

Um pool Stable AMM é um AMM de tabela de consulta interpolada que mantém toda sua liquidez em seus próprios cofres. A diferença chave de um pool de produto constante é que a curva de descoberta de preço não é codificada — é um array esparso incorporado na conta ModelDataInfo do pool. As operações atualmente chamáveis são swap direto (usuário ↔ pool), depósito / saque (operações LP) e WithdrawPnl (varredura de taxa de admin). O crank OpenBook (MonitorStep) — inativo há muito tempo desde que o pool parou de postar ordens — e as instruções de configuração/admin do pool foram removidas.

Quando Stable AMM é a escolha certa

  • Você opera um par de stablecoin ou outro ativo correlacionado e quer preços apertados e previsíveis.
  • Você tem conhecimento profundo da relação de preço do seu par e quer codificá-la diretamente como uma curva.
  • Você já tem integrações para AMM v4 e simplesmente precisa de um sabor de curva diferente.
Para um pool novo e de propósito geral sem requisito de correlação apertada, CPMM é o padrão mais simples e mais líquido.

Próximos passos

  • Contas — referência de campos AmmInfo, ModelDataInfo, DataElement.
  • Matemática — busca binária, interpolação e aplicação de taxas.
  • Instruções — o conjunto chamável (swap, depósito, saque, WithdrawPnl) e as instruções removidas.
  • Taxas — a divisão de 0,25% (idêntica ao AMM v4).
  • Demonstrações de código — roteamento e integração direta.
Fontes: