Halaman ini diterjemahkan secara otomatis oleh AI. Versi bahasa Inggris adalah acuan resmi.Lihat versi bahasa Inggris →
Sejak pembaruan program 2026-07, ketergantungan OpenBook / Serum AMM v4 telah dihapus. Instruksi v1 warisan
SwapBaseIn / SwapBaseOut, Deposit, dan Withdraw mempertahankan tata letak akun lama untuk kompatibilitas mundur: akun pasar masih diterima di posisi lama mereka, tetapi mereka tidak lagi divalidasi atau digunakan (tidak ada CPI yang dikeluarkan). Integrasi baru harus menggunakan titik masuk swap V2, yang menghilangkan akun pasar sepenuhnya. Beberapa instruksi telah dihapus dan sekarang kembali — lihat entri changelog. Daftar akun di bawah menggunakan nama bidang dari Raydium SDK; IDL yang mendasar kadang-kadang menggunakan awalan serum_*.Inventaris instruksi
SDK mengekspos builder hanya untuk instruksi yang menghadap pengguna. Instruksi pemeliharaan biasanya dipanggil oleh keeper Raydium.
Dihapus / tidak lagi dapat dipanggil (mereka sekarang kembali dengan
unimplemented!, dan builder klien mereka dihapus): Initialize (tag 0, gunakan Initialize2), MonitorStep (2), MigrateToOpenBook (5), WithdrawSrm (8), PreInitialize (10, gunakan Initialize2), SimulateInfo (12), AdminCancelOrders (13).
Initialize2
Bootstrap pool AMM v4 baru yang terikat ke pasar OpenBook yang ada.
Argumen
W, penandatangan S)
Kondisi pasca
lp_supply = sqrt(init_coin_amount × init_pc_amount) − INIT_BURN, di manaINIT_BURN≈ 100 unit LP disimpan di luar peredaran.- Tidak ada pesanan OpenBook yang diposting (kisi order-book telah dihapus).
market_program/marketmasih dilewatkan tetapi hanya disimpan sebagai bidang referensi;coin_lot_size/pc_lot_size/min_sizediinisialisasi ke0.
InvalidInput (desimal tidak cocok, tidak diurutkan), NotAllowed.
Deposit
Tambah likuiditas.
Argumen
Matematika — pro-rata standar. Menggunakan cadangan efektif pool (vault + on-book), SDK menghitung pasangan coin/pc yang menghasilkan jumlah LP yang diberikan dan memeriksanya terhadap
max_*. Kembali dengan ExceededSlippage jika salah satu sisi melebihi batas.
Withdraw
Bakar LP, terima kedua sisi.
Argumen
Deposit dengan arah terbalik; lp_mint dapat ditulis untuk pembakaran, ATA pengguna adalah penerima. Tata letak akun tidak berubah (akun pasar masih dilewatkan secara posisional, diabaikan). Tidak ada lagi langkah settle-from-OpenBook — matematika pro-rata menggunakan saldo vault secara langsung.
SwapBaseIn
Swap input-tepat. Selalu swap jalur AMM (tidak merutekan melalui pencocokan OpenBook).
Gunakan varian V2 untuk kode baru. Karena ketergantungan OpenBook AMM v4 telah dihapus, titik masuk V1 (
SwapBaseIn, SwapBaseOut) masih mengharapkan daftar akun lengkap 17 (atau 18 dengan akun target-orders opsional), tetapi akun OpenBook/pasar sekarang diterima secara posisional dan diabaikan — mereka tidak divalidasi dan tidak ada CPI yang dikeluarkan. Melewatkan jumlah akun yang salah masih kembali dengan WrongAccountsNumber, tetapi isi akun pasar tidak lagi diperiksa. Integrasi baru harus menggunakan SwapBaseInV2 / SwapBaseOutV2, yang mengambil daftar akun yang jauh lebih kecil dan mewakili jalur eksekusi kanonik hari ini. Bentuk V1 didokumentasikan di sini untuk kelengkapan dan untuk membaca transaksi on-chain yang ada.
Matematika — lihat
products/amm-v4/math.
Kondisi awal
amm.statusmemungkinkan swap (bit 0 dari bitmask status tidak diatur).amm.state_data.pool_open_time <= now.amount_in > 0.user_source_token_accountmemegang setidaknyaamount_in.
- Pengguna kehilangan
amount_indari token sumber, mendapatkanamount_out ≥ minimum_amount_outdari token tujuan. need_take_pnl_*ditambah dengan bagian biaya protokol.- Catatan: penghitung analitik
state_data.swap_*_in_amount/swap_*_out_amounttidak lagi diperbarui — nilainya dibekukan. Gunakan log perdagangan untuk analitik volume.
ExceededSlippage, InvalidInput, InvalidStatus, NotAllowed (mint coin/pc identik).
SwapBaseOut
Output-tepat, kebalikan dari SwapBaseIn. Akun yang sama.
Argumen
SwapBaseInV2 / SwapBaseOutV2
Varian titik masuk swap (tag 16 / 17) yang melewatkan akun OpenBook sepenuhnya. Matematika identik dengan jalur V1, tetapi daftar akun menyusut menjadi hanya sisi AMM dan pengguna — 8 akun, dan amm_open_orders tidak dilewatkan:
Cadangan pool sekarang adalah saldo vault (minus PnL tertunda), jadi matematika kutipan langsung dan identik dengan jalur v1. Gunakan V2 untuk menghemat komputasi dan menghindari melewatkan akun pasar (sekarang diabaikan). Router Raydium selalu menggunakan bentuk V2 saat merutekan melalui AMM v4.
Argumen sama dengan bentuk V1 (
amount_in / minimum_amount_out untuk SwapBaseInV2; max_amount_in / amount_out untuk SwapBaseOutV2).
MonitorStep dan instruksi dihapus lainnya
Secara historis, MonitorStep menggerakkan interaksi OpenBook pool: ia menyelesaikan pesanan yang diisi (memindahkan hasil dari vault pasar ke vault pool melalui CPI OpenBook), membatalkan pesanan basi, dan memposting pesanan baru untuk menutup celah antara target_orders dan amm_open_orders. Dengan ketergantungan OpenBook dihapus, tidak ada yang perlu dikgerakkan dan instruksi hilang. Setiap keeper atau integrasi yang masih memanggilnya harus menghapus panggilan.
WithdrawPnl / TakePnl
Penyapuan admin biaya protokol yang terkumpul.
Argumen
WithdrawPnltidak mengambil argumen; ia membacaneed_take_pnl_*dan memindahkan jumlah yang tepat.
Efek
- Mentransfer
need_take_pnl_coindaripool_coin_token_accountkepnl_coin_token_account. - Sama untuk pc.
- Mengosongkan
need_take_pnl_coindanneed_take_pnl_pc. - Perubahan logika: jika saldo vault tidak cukup untuk menutupi PnL yang terkumpul, instruksi mengembalikan
TakePnlErrorsecara langsung (tidak lagi memanipulasi status order-book).
SetParams
Perubahan parameter admin, dipanggil oleh multisig Raydium. Argumen adalah tag param: u8 + payload.
Matriks perubahan status
Kolom OpenBook hilang — tidak ada instruksi yang menyentuh order book lagi.Ke mana selanjutnya
products/amm-v4/code-demos— Contoh TypeScript untuk alur swap dan LP.products/amm-v4/fees— DetailWithdrawPnldan pembagian biaya.reference/error-codes— Tabel referensi maju (kesalahan AMM v4 tercantum di halaman itu).
- Program Raydium AMM —
raydium-io/raydium-amm - Modul
LiquidityRaydium SDK v2 - Program OpenBook — validasi akun di sisi pasar

