Skip to main content
Halaman ini diterjemahkan secara otomatis oleh AI. Versi bahasa Inggris adalah acuan resmi.Lihat versi bahasa Inggris →
Sumber kebenaran. Halaman ini adalah satu-satunya tempat dalam dokumentasi yang mencantumkan alamat program secara harfiah. Halaman lain menautkan ke sini. Jika ID berubah, perbarui hanya di sini dan setiap referensi di situs tetap konsisten.Selalu silang-periksa nilai terhadap API langsung (https://api-v3.raydium.io/main/info) sebelum menandatangani transaksi nyata.

Mainnet-beta

Aturan praktis: jika ID program di lapangan tidak cocok dengan tabel di bawah, jangan tandatangani transaksi. ID program yang tidak cocok adalah cara paling mudah untuk kehilangan dana di Solana.

Program on-chain

Catatan:
  • AMM v4 dan Farm v3/v5 dipertahankan untuk pool dan posisi yang ada. UI Raydium dan SDK mengarahkan pembuatan pool baru dan farm ekosistem baru ke CPMM, CLMM, dan Farm v6 masing-masing — lihat protocol-overview/versions-and-migration.
  • ID Farm v3 di atas juga berfungsi sebagai program staking aset tunggal $RAY. Perilakunya identik dengan Farm v3 untuk staking LP.
  • Stable AMM adalah program terpisah yang dapat ditargetkan oleh program AMM Routing bersama dengan AMM v4, CPMM, dan CLMM. Likuiditas tipis dibandingkan dengan tiga program lainnya dan SDK tidak mengekspos API kelas satu untuk itu; integrator yang merutekan melaluinya umumnya melakukannya melalui router.
  • Ketersediaan kode sumber. Dari program on-chain di atas, hanya raydium-amm (AMM v4), raydium-cp-swap (CPMM), dan raydium-clmm (CLMM) yang dilengkapi dengan repositori sumber publik di bawah github.com/raydium-io. Stable AMM, LaunchLab, AMM Routing, Burn & Earn / LP Lock, dan program Farm tidak tersedia untuk publik — verifikasi terhadap API langsung, bytecode on-chain, dan IDL yang dipublikasikan di raydium-io/raydium-idl sebagai gantinya.

Otoritas admin bersama

Setiap program Raydium — termasuk AMM v4 — berbagi satu Pubkey admin yang dikodekan keras untuk kontrol akses tingkat instruksi ke jalur admin. Ini adalah config_feature::amm_owner::ID di AMM v4 (gating SetParams, CreateConfigAccount dan UpdateConfigAccount, dan digunakan sebagai pnl_owner default) dan admin::ID di program Anchor — CLMM, CPMM, LaunchLab, Lock — gating jalur seperti CreateAmmConfig atau UpdatePoolStatus: Otoritas operasional tingkat akun (misalnya protocol_owner, fund_owner pada CPMM/CLMM AmmConfig, atau dompet migrasi pada LaunchLab GlobalConfig) disimpan on-chain dan mungkin berbeda dari admin program. Bacalah langsung dari akun konfigurasi yang relevan sebelum mengirim transaksi berisiko tinggi.

Otoritas pembuat permission-PDA CPMM

CreatePermissionPda menerima baik admin program bersama di atas atau pemilik khusus. Sejak upgrade CPMM 2026-09, ClosePermissionPda menerima dua penandatangan yang sama; sebelumnya hanya admin.

Otoritas registri support-mint

CreateSupportMintAssociated dan CloseSupportMintAssociated menerima baik admin program bersama atau pemilik khusus program di bawah. Mendaftarkan mint mengakuinya melewati daftar allow-list ekstensi Token-2022 program itu — lihat reference/token-2022-support. CPMM dan CLMM masing-masing menyimpan registri PDA mereka sendiri dan otoritas mereka sendiri; tidak ada kunci yang bekerja di program lain.

Dompet pemilik biaya CPMM

Sejak upgrade CPMM 2026-09, CreateAmmConfig menulis kunci tetap ini ke dalam protocol_owner dan fund_owner konfigurasi baru daripada menyalin kunci penandatangan admin. CollectProtocolFee dan CollectFundFee menerima kunci yang disimpan pada konfigurasi atau admin program bersama (|| crate::admin::ID), jadi admin tetap menjadi penandatangan yang diterima — apa yang berubah hanya di mana hasil masuk secara default.
Ini adalah nilai yang ditulis program ke dalam konfigurasi baru, bukan deskripsi yang sudah ada. Akun AmmConfig yang dibuat sebelum upgrade menyimpan apa pun yang disimpan di dalamnya. Selalu baca protocol_owner / fund_owner dari akun sebelum membangun transaksi koleksi.

Dompet koleksi biaya protokol

Di mana bagian sisi protokol dari biaya perdagangan setiap program terakumulasi. Ini adalah dompet pemegang token biasa, jadi satu alamat membawa set campuran mint SPL (wSOL dan USDC dari pool SOL/USDC, wSOL dan RAY dari pool SOL/RAY, dan seterusnya). Bagian protokol Stable AMM terakumulasi dalam vault sebagai out_put.need_take_pnl_* dan disapu oleh WithdrawPnl daripada duduk di dompet berdiri. Untuk CPMM, baca protocol_owner dari AmmConfig spesifik sebelum membangun transaksi koleksi — konfigurasi yang dibuat sebelum upgrade 2026-09 mungkin menyimpan kunci yang berbeda.

Dompet koleksi lamport berlebih

Masing-masing dari tiga program yang diupgrade pada 2026-09-09 mendapatkan instruksi admin yang mengembalikan lamport yang dipegang di atas minimum bebas sewa pada akun yang dikendalikan program, mengikuti pengurangan sewa SIMD-0437. Setiap program mengkodekan dompet tujuan sendiri, dan masing-masing adalah kunci khusus — bukan admin program bersama. CPMM dan LaunchLab juga menerima admin program bersama sebagai penandatangan. AMM v4 menerima hanya dompet di atas — tidak ada fallback admin. AMM v4 juga mengompilasi kunci testnet terpisah (75KWb5XcqPTgacQyNw9P5QU2HL3xpezEVcgsFCiJgTT) di bawah fitur testnet nya. Instruksi ini hanya memindahkan lamport; mereka tidak pernah menyentuh saldo token, menutup akun, atau mengubah status pool. Lihat products/amm-v4/instructions, products/cpmm/instructions, dan products/launchlab/instructions.

Pembuat konfigurasi delegasi LaunchLab

CreateConfig menerima baik admin program bersama atau otoritas delegasi di bawah. Peran delegasi dapat membuat GlobalConfig baru; itu tidak dapat memanggil jalur UpdateConfig hanya admin untuk akun yang ada.

Otoritas pembekuan issuer terbatas CLMM

Ketika salah satu mint vault dalam pool CLMM memiliki salah satu otoritas pembekuan di bawah, posisi baru yang dibuka melalui jalur V2 memiliki akun token NFT posisi mereka dibekukan. Daftarnya adalah frozen_position_nft_authorities::IDS dalam program CLMM, dan entri tunggalnya adalah otoritas issuer yang deteksi Superstate yang dihapus CLMM juga cocok. Ini adalah otoritas issuer aset dasar yang digunakan hanya sebagai kunci kecocokan. PDA pool CLMM, bukan kunci issuer, menjadi otoritas pembekuan untuk mint NFT posisi. Daftarnya dikodekan keras dalam program CLMM. Menambah atau menghapus otoritas memerlukan upgrade program.

Konvensi konfigurasi bersama / PDA

Beberapa program Raydium mengekspos akun konfigurasi yang kunci publiknya stabil dan tercantum di API publik. Lebih suka pencarian API daripada hardcoding:

Penerima biaya pembuatan pool

Baik CPMM maupun AMM v4 memvalidasi tujuan biaya pembuatan pool mereka dengan alamat yang tepat, jadi harus sudah ada di cluster apa pun yang Anda uji. CLMM tidak memiliki biaya pembuatan pool terpisah. AMM v4 juga mengompilasi 3TRTX4dXUpp2eqxi3tvQDFYUV7SdDJjcPE3Y4mbtftaX di bawah fitur testnet nya. CPMM menolak ketidakcocokan dengan ConstraintAddress Anchor (2012); AMM v4 dengan InvalidFee.

Penjaga limit-order CLMM

SettleLimitOrder dan CloseLimitOrder menerima baik owner pesanan sendiri atau kunci penjaga program-lebar di bawah. Penjaga tidak dapat membuka, menambah atau mengurangi pesanan, dan output selalu mendarat di akun pemilik pesanan — lihat security/admin-and-multisig. Parameter biaya AmmConfig default CPMM indeks 0 (pool 0,25% standar), untuk referensi: Lihat products/cpmm/fees untuk cara komposisi split, dan reference/fee-comparison untuk matriks lintas produk.

Benih PDA

Benih di bawah adalah kanonik dan digunakan oleh SDK dan CPI on-chain. Selalu hitung PDA; jangan hardcode alamat turunan.
token0Mint / token1Mint diurutkan berdasarkan urutan byte kunci publik (token0 < token1) sebelum hashing. Melakukan ini dengan salah menghasilkan PDA yang valid untuk pool yang tidak ada. Benih CLMM yang setara mengikuti gaya yang sama; lihat products/clmm/accounts.

Devnet

Basis REST API devnet: https://api-v3-devnet.raydium.io/ (bentuk rute yang sama seperti mainnet).

Otoritas upgrade

Setiap program Raydium di mainnet-beta dikerahkan di bawah BPF Upgradeable Loader dengan sama otoritas upgrade — vault multisig upgrade-program Squads: Diverifikasi on-chain 2026-09-09 untuk AMM v4, CPMM, CLMM, Stable AMM, Farm v6, LaunchLab, AMM Routing dan Lock — semua delapan melaporkan otoritas itu, dan tidak ada yang tidak dapat diubah. Periksa ulang dengan solana program show <PROGRAM_ID> -u mainnet-beta sebelum penerapan berisiko tinggi; lihat security/admin-and-multisig untuk ambang multisig dan praktik penandatanganan.

Akun konfigurasi tingkat program

Semua nilai dibaca dari mainnet-beta pada 2026-09-09. Tingkat biaya pada akun ini dapat diubah admin — bacalah secara langsung daripada caching.

Cara memverifikasi alamat on-chain

  1. Solana Explorer. Tempel alamat ke dalam explorer.solana.com dan konfirmasi itu ditandai Program dengan otoritas upgrade saat ini. Mainnet-beta harus menunjukkan deploy yang ditandatangani oleh otoritas upgrade Raydium.
  2. CLI. Gunakan solana program show <PROGRAM_ID> -u mainnet-beta untuk memeriksa slot deploy, BPF loader, otoritas upgrade, dan panjang data. Catat ini dalam runbook Anda.
  3. Lampiran IDL. anchor idl fetch <PROGRAM_ID> --provider.cluster mainnet bekerja untuk CLMM, LaunchLab dan Lock, yang masih menyimpan akun anchor:idl warisan yang dimiliki oleh program itu sendiri. Itu tidak bekerja untuk CPMM: IDL on-chain CPMM pindah ke program Program Metadata (ProgM6JCCvbYkfKqJYHePx4xxSUSqJp7rh8Lyv7nk7S) dalam upgrade 2026-09, jadi ambil dari sana sebagai gantinya. AMM v4, Stable AMM dan Farm tidak memiliki IDL on-chain. IDL dicerminkan di github.com/raydium-io/raydium-idl — diff IDL on-chain terhadap repo sebelum mempercayainya.
  4. Otoritas konfigurasi/admin. Untuk akun konfigurasi CPMM/CLMM, baca bidang owner/protocol_owner dan konfirmasi itu cocok dengan multisig Raydium saat ini yang dipublikasikan di security/admin-and-multisig.
Jika salah satu dari empat pemeriksaan di atas tidak setuju dengan halaman ini, perlakukan halaman ini sebagai salah dan buka masalah sebelum menulis kode baru terhadap alamat.

Memperbarui halaman ini

  • Perubahan ID program sangat penting untuk keselamatan. Jangan kirim perubahan ID program tanpa (a) menautkan ke pengumuman Raydium, (b) menambahkan entri di reference/changelog, dan (c) menjalankan pemeriksaan tautan atas dokumentasi untuk mengonfirmasi tidak ada halaman yang masih mereferensikan nilai lama.
  • Penghentian tetap dalam tabel dengan catatan status daripada dihapus — pool yang ada masih diselesaikan melalui program lama.
Sumber: