Halaman ini diterjemahkan secara otomatis oleh AI. Versi bahasa Inggris adalah acuan resmi.Lihat versi bahasa Inggris →
Versi banner. Semua demo menargetkan
@raydium-io/raydium-sdk-v2@0.2.64-alpha terhadap Solana mainnet-beta, diverifikasi 2026-09-09 — setiap nama builder, nama parameter dan tipe parameter di bawah telah diperiksa terhadap sumber rilis tersebut dan terhadap raydium-sdk-V2-demo/src/amm. Program ID: 675kPX9MHTjS2zt1qfr1NYHuzeLXfQM9H24wFSUt1Mp8 (lihat reference/program-addresses).Dua jebakan yang menjerat sebagian besar integrasi pertama: slippage pada computeAmountOut adalah number biasa (0.005 = 0.5%), bukan Percent; dan liquidity.swap mewajibkan inputMint sebagai string base58.Pembuatan pool baru tidak ditampilkan di sini. UI Raydium tidak lagi menawarkan pembuatan pool AMM v4 — pasangan baru default ke CPMM. Program AMM v4 itu sendiri masih menerima
Initialize2 on-chain; hanya saja bukan jalur yang direkomendasikan. Demo di bawah mencakup operasi pool aktif yang setiap integrator masih butuhkan: swap, deposit, withdraw.Setup
Ambil pool berdasarkan ID
poolKeys adalah struct yang dikonsumsi oleh instruction builder. Ia membawa setiap akun AMM v4 dalam urutan yang diharapkan program, ditambah bidang pasar warisan yang masih diterima program saat ini secara posisional tetapi tidak lagi dibaca.
Swap (base-in)
Swap (base-out)
Tambah likuiditas
fixedSide: "a" memberitahu SDK bahwa Anda menyediakan amountInA yang tepat dan bahwa amountInB harus paling banyak maxAnotherAmount. Matematika pro-rata berjalan dari saldo vault dikurangi PnL yang terkumpul — tidak ada lagi komponen on-book yang harus diselesaikan lebih dulu.
Hapus likuiditas
Tuning compute-unit / priority fee
Sejak OpenBook dihapus, swap AMM v4 tidak lagi memvalidasi state pasar apa pun, sehinggaSwapBaseIn V1 jauh lebih murah daripada sebelumnya — dan SwapBaseInV2 (8 akun, tanpa placeholder pasar) lebih murah lagi. Ukur jalur Anda sendiri daripada menganggarkan berdasarkan angka historis, dan selalu berikan batas compute-unit eksplisit:
computeBudgetConfig, SDK mungkin masih menggunakan defaultnya sendiri; periksa transaction yang dikembalikan untuk mengonfirmasi. Lihat integration-guides/priority-fee-tuning.
Direct Rust CPI
Jika Anda harus CPI ke AMM v4 dari program Anchor Anda sendiri, Anda perlu memodelkan daftar akunSwapBaseIn secara verbatim. Sketsa minimal:
Instruction yang dibangun secara manual.
Sketsa CPI di atas menggunakan layout
SwapBaseIn v1 legacy (tag 9, 17 akun) untuk membaca/mereproduksi transaksi yang ada. Sejak upgrade 2026-07 akun market diterima tetapi diabaikan. Untuk kode baru, lebih suka SwapBaseInV2 / SwapBaseOutV2 (tag 16 / 17), yang menghilangkan akun market (dan amm_open_orders) sepenuhnya — berikan hanya 8 akun: token_program, amm, amm_authority, dua vault pool, dua akun token pengguna, dan user_owner.Jebakan
- Jumlah akun salah pada swap v1.
SwapBaseIn/SwapBaseOutlegacy masih memerlukan daftar 17-akun (atau 18-akun) penuh — jumlah yang tidak cocok akan dikembalikan denganWrongAccountsNumber. Isi akun market tidak lagi divalidasi, tetapi Anda masih harus mengisi slot mereka. Lebih suka entrypoint V2 untuk menghindari ini. - Membaca saldo vault mentah. Cadangan sekarang hanya vault; kurangi PnL yang terkumpul (
need_take_pnl_*). Quote SDK atauapi-v3.raydium.io/pools/info/idsmenangani ini untuk Anda. - Memanggil instruction yang dihapus.
MonitorStep,MigrateToOpenBook,WithdrawSrm,SimulateInfo,AdminCancelOrders, danInitialize/PreInitializelegacy sekarang dikembalikan. GunakanInitialize2untuk pembuatan pool; tidak ada crank untuk dipanggil. - Mint Token-2022. Tidak didukung. Pool AMM v4 tidak dapat dibuat terhadap mint Token-2022; pasangan Token-2022 apa pun harus berada di CPMM atau CLMM.
Ke mana selanjutnya
products/amm-v4/instructions— permukaan tingkat instruction di balik demo ini.user-flows/migrate-amm-v4-to-cpmm— jika Anda adalah LP yang mempertimbangkan migrasi.integration-guides/priority-fee-tuning— ukuran priority-fee untuk swap AMM v4 yang berat.

