Langsung ke konten utama
Halaman ini diterjemahkan secara otomatis oleh AI. Versi bahasa Inggris adalah acuan resmi.Lihat versi bahasa Inggris →
Yang dilakukan halaman ini. Memuat pool CPMM dari RPC, mengutip swap dengan slippage 0,5%, membangun transaksi, menandatangani dengan keypair Anda, dan mengirimkannya. End-to-end dalam ~30 baris.

Setup

Pastikan Anda telah membaca prasyarat Quick start dan memiliki RPC_URL, KEYPAIR, serta dependensi yang sudah dipasang.

Skrip

Simpan sebagai swap.mjs:

Jalankan

Pilih pool CPMM apa pun yang Anda miliki likuiditas. Contoh dengan pool CPMM SOL/USDC kanonik:
Output yang diharapkan:

Apa yang baru saja terjadi

  1. Raydium.load menginisialisasi SDK — mengambil konfigurasi global dan menyiapkan konteks dompet Anda.
  2. getPoolInfoFromRpc menarik status pool live langsung dari RPC (bukan dari cache API). Untuk swap bernilai tinggi, Anda selalu menginginkan status terbaru.
  3. CurveCalculator.swap menghitung output constant-product setelah dipotong biaya pool. Ini adalah matematika yang sama yang dijalankan program on-chain, sehingga Anda dapat membandingkan kutipan off-chain dan on-chain.
  4. raydium.cpmm.swap membangun transaksi dengan format V0 (address lookup tables diaktifkan) dan menambahkan konfigurasi compute-budget eksplisit. Tip compute-budget membantu transaksi masuk di jendela sibuk.
  5. execute({ sendAndConfirm: true }) menandatangani, mengirim, dan menunggu konfirmasi.

Kesalahan umum

  • Pool not foundPOOL_ID salah, atau Anda menunjuk cluster yang salah (ID pool mainnet melawan RPC devnet, dll.).
  • Insufficient funds for transaction — Dompet Anda tidak memiliki cukup SOL untuk input swap + biaya + sewa ATA.
  • Slippage tolerance exceeded — Harga pool bergerak antara kutipan dan eksekusi. Jalankan ulang; atau naikkan parameter slippage; atau gunakan computeAmountOut SDK yang selalu mengambil ulang reserves.
  • Token account not initialized — ATA token output tidak ada dan instruksi implicit-create masuk tetapi gagal karena beberapa alasan; periksa saldo SOL dompet Anda dan coba lagi.

Selanjutnya