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.42-alpha terhadap Solana mainnet-beta, diverifikasi 2026-04. Program ID: 675kPX9MHTjS2zt1qfr1NYHuzeLXfQM9H24wFSUt1Mp8 (lihat reference/program-addresses).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 dan OpenBook dalam urutan yang diharapkan program.
Swap (base-in)
Swap (base-out)
Tambah likuiditas
fixedSide: "a" memberitahu SDK bahwa Anda menyediakan amountInA yang tepat dan amountInB harus paling banyak maxAnotherAmount. Likuiditas on-book pool diselesaikan sebelum matematika pro-rata sehingga rasio deposit cocok dengan cadangan terbaru.
Hapus likuiditas
Tuning compute-unit / priority fee
Swap AMM v4 berat pada compute karena setiap instruction memvalidasi state OpenBook penuh. Swap tipikal menggunakan 180k–250k CU tergantung berapa banyak open order yang perlu diselesaikan dalam prosesnya. Selalu berikan batas compute-unit:computeBudgetConfig, SDK mungkin masih menggunakan defaultnya sendiri; periksa innerTransactions 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.

