Skip to main content
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:
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

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: