Esta página fue traducida automáticamente por IA. La versión en inglés es la fuente autorizada.Ver versión en inglés →
Qué hace esto. Carga un pool CPMM desde RPC, cotiza un intercambio con 0,5% de tolerancia de deslizamiento, construye la transacción, la firma con tu par de claves y la envía. De principio a fin en ~30 líneas.
Configuración
Asegúrate de haber leído los requisitos previos de inicio rápido y de tenerRPC_URL, KEYPAIR y las dependencias instaladas.
El script
Guarda comoswap.mjs:
swap.mjs
Ejecútalo
Elige cualquier pool CPMM para el que tengas liquidez. Ejemplo con el pool CPMM canónico SOL/USDC:Qué acaba de suceder
Raydium.loadinicializó el SDK — obtuvo la configuración global y configuró el contexto de tu billetera.getPoolInfoFromRpcextrajo el estado del pool en vivo directamente desde RPC (no desde la caché de la API). Para intercambios de alto valor siempre quieres estado fresco.CurveCalculator.swapcalculó la salida de producto constante neta de la tarifa del pool. Esta es la misma matemática que ejecuta el programa en cadena, por lo que puedes comparar cotizaciones fuera y en cadena.raydium.cpmm.swapconstruyó la transacción con formato V0 (tablas de búsqueda de direcciones habilitadas) y agregó una configuración explícita de presupuesto de cómputo. La propina de presupuesto de cómputo ayuda a que la transacción se incluya en ventanas ocupadas.execute({ sendAndConfirm: true })firmó, envió y esperó confirmación.
Errores comunes
Pool not found—POOL_IDincorrecto, o estás apuntando al clúster incorrecto (ID de pool mainnet contra un RPC devnet, etc.).Insufficient funds for transaction— Tu billetera no tiene suficiente SOL para la entrada del intercambio + tarifas + renta de ATA.Slippage tolerance exceeded— El precio del pool se movió entre la cotización y la ejecución. Vuelve a ejecutar; o aumenta el parámetroslippage; o usacomputeAmountOutdel SDK que siempre vuelve a obtener las reservas.Token account not initialized— El ATA del token de salida no existía y la instrucción de creación implícita se incluyó pero falló por alguna razón; verifica el saldo de SOL de tu billetera e intenta de nuevo.
Siguiente
sdk-api/typescript-sdk— referencia completa del SDK.products/cpmm/instructions— cómo se ve la instrucción de intercambio en cadena.integration-guides/priority-fee-tuning— dimensionamiento decomputeBudgetConfigpara producción.

