Saltar para o conteúdo principal

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.

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

O Stable AMM é uma variante do AMM da Raydium que troca a 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, price) e usa busca binária + interpolação linear para citar 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. Como o AMM v4, ele está vinculado a um mercado OpenBook e publica ordens limitadas lá. A liquidez é atualmente limitada; 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 admin do pool expresse a relação de preço real:
  • Para stablecoins: densifique a tabela ao redor de 1:1 para que micro-swaps custem ~0 slippage.
  • Para pares colateralizados: codifique a proporção alvo e deixe a grade moldar a superfície de taxa/incentivo.
A tabela é estática entre chamadas UpdateModelData (que o admin publica quando a relação muda), entã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 contém uma conta ModelDataInfo — um array de 50.000 elementos de structs DataElement. Cada elemento contém:
DataElement {
  x: u64,           // coordenada X da tabela
  y: u64,           // coordenada Y da tabela
  price: u64,       // preço em (x, y)
}
Apenas os primeiros valid_data_count elementos são populados; o resto é zerado. No swap, o programa:
  1. Calcula uma proporção a partir das reservas atuais do pool e usa busca binária para encontrar quais dois elementos da tabela envolvem essa proporção.
  2. Interpola linearmente entre os dois pontos de envolvimento 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 primárioStablecoins, pares atreladosPares gerais, liquidez profunda legadaPares gerais, novos deployments
Dependência OpenBookSimSimNão
Token-2022NãoNãoSim
Perfil de slippageMínimo em 1:1Alto em proporções apertadasModerado ao longo do intervalo
Curva ajustável por adminSim (UpdateModelData)Não (SetParams apenas)Não
Tamanho da tabela~50k elementos × 24 bytesN/AN/A
Computação por swap~5k–15k CU (busca binária + interpolação)~150k–200k CU~60k–100k CU
Contagem de contas por swap~17 (AMM + OpenBook)~18 (AMM + OpenBook)~11

Modelo mental

Um pool Stable AMM é um AMM com tabela de consulta interpolada cujos vaults também escrowam ordens limitadas OpenBook, assim como o AMM v4. A diferença chave é que a curva de descoberta de preço não é hardcoded — é um array esparso que o admin pode popular e atualizar. As operações são similares ao AMM v4: swap direto (usuário ↔ pool), depósito / saque (operações LP), crank (MonitorStep), e manutenção de admin (UpdateModelData, SetParams).

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 o 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, o 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çõesInitModelData, UpdateModelData, instruções de swap e LP.
  • Taxas — a divisão de 0,25% (idêntica ao AMM v4).
  • Demos de código — roteamento e integração direta.
Fontes: