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 →
Layout de contas: ATAs do usuário em todo o caminho
Toda variante de swap habilitada roteia tokens intermediários através de ATAs controladas pelo usuário. O usuário é proprietário da ATA de entrada, de todas as ATAs intermediárias e da ATA de saída final. Não há nenhuma conta de token intermediário compartilhada ou de propriedade do roteador na superfície ativa. Propriedades:- O usuário é proprietário de uma ATA por token intermediário.
- O usuário fornece todas as ATAs na lista de contas.
- Cada ATA intermediária deve já existir (inicialize-a com
CreateSyncNativepara wSOL ou por meio do programa SPL Associated Token Account para qualquer outro mint antes do roteamento). - O roteador transfere de uma ATA e para o vault do próximo pool a cada salto.
- Cada ATA intermediária termina cada rota com o mesmo saldo com o qual começou — a rota consome o que o salto anterior produziu.
USDC → SOL → STEP:
Layout de contas por salto
As contas de cada salto são passadas consecutivamente. O roteador identifica o programa filho lendo a primeira conta no bloco de cada salto (o ID do programa) e depois despacha para o manipulador correto. Para cada salto, o roteador espera contas agrupadas como:Salto AMM v4
Aproximadamente 18 contas: pool, autoridade, vaults, mints, contas do mercado OpenBook (mantidas na lista de contas para compatibilidade retroativa, embora a integração OpenBook do AMM v4 não esteja mais ativa), programas de token. Vejaproducts/amm-v4/accounts para a lista completa.
Salto CPMM
Aproximadamente 11–13 contas: estado do pool, autoridade, vaults (2), mints (2), programas de token, programa de sistema, programa de token associado. Vejaproducts/cpmm/accounts.
Salto CLMM
Aproximadamente 15+ contas: pool, arrays de tick, vaults, mints, estado de observação, assinador, programas de token. Vejaproducts/clmm/accounts.
Salto Stable
Semelhante ao AMM v4. Vejaproducts/stable/accounts.
Fluxo de token e propriedade de ATA
- O chamador assina com
user_input_ata. - O chamador deve ser proprietário de todas as ATAs de entrada, intermediárias e de saída. O roteador rejeitará a transação se o proprietário de qualquer ATA intermediária não for o assinador.
- O saldo de
user_input_atado chamador deve ser suficiente para a entrada do primeiro salto (amount_inpara tag 0 / 8, oumaximum_amount_inpara tag 1 / 9). - Cada ATA intermediária deve já existir na cadeia. Se não existir, crie-a antecipadamente — tipicamente por meio do programa SPL Associated Token Account ou com
CreateSyncNative(tag 5) para uma ATA wSOL.
A instrução CreateSyncNative
Se você precisa rotear através de SOL encapsulado e não deseja criar e sincronizar manualmente uma ATA wSOL, useCreateSyncNative (tag 5):
amount de SOL para ela por meio do programa de Sistema e a sincroniza em uma instrução. Útil para inicializar uma ATA wSOL nova antes do roteamento.
A instrução CloseTokenAccount
Depois que uma rota é concluída, você pode querer fechar qualquer ATA intermediária — mais comumente uma ATA wSOL — para recuperar o rent. UseCloseTokenAccount (tag 6):
Próximos passos
products/routing/instructions— formas de argumento e ordem da lista de contas por instrução.products/routing/code-demos— construindo uma rota em TypeScript.reference/program-addresses— IDs dos programas filho.


