Skip to main content
Halaman ini diterjemahkan secara otomatis oleh AI. Versi bahasa Inggris adalah acuan resmi.Lihat versi bahasa Inggris →

Mainnet-beta

Aturan praktis: jika ID program yang Anda temukan tidak cocok dengan tabel di bawah, jangan tandatangani transaksi tersebut. 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 dan SDK Raydium 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 single-asset $RAY. Perilakunya identik dengan Farm v3 untuk staking LP.
  • Stable AMM adalah program terpisah yang dapat ditargetkan oleh program AMM Routing bersama AMM v4, CPMM, dan CLMM. Likuiditasnya tipis dibandingkan dengan tiga program lainnya dan SDK tidak mengekspos API kelas satu untuknya; integrator yang merutekannya 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 diterbitkan di raydium-io/raydium-idl sebagai gantinya.

Otoritas admin bersama

Semua program berbasis Anchor (CLMM, CPMM, LaunchLab, Lock) berbagi satu Pubkey admin yang dikodekan keras untuk kontrol akses tingkat instruksi ke jalur admin (seperti CreateAmmConfig atau UpdatePoolStatus): Otoritas operasional tingkat akun (misalnya protocol_owner, fund_owner di CPMM/CLMM AmmConfig, atau dompet migrasi di LaunchLab GlobalConfig) disimpan on-chain dan mungkin berbeda dari admin program. Bacalah langsung dari akun konfigurasi yang relevan sebelum mengirim transaksi berisiko tinggi.

Konvensi config/PDA bersama

Beberapa program Raydium mengekspos akun config yang kunci publiknya stabil dan terdaftar di API publik. Lebih suka pencarian API daripada hardcoding:
Parameter biaya AmmConfig indeks 0 CPMM default (pool standar 0.25%), untuk referensi: Lihat products/cpmm/fees untuk cara pembagian komposisi, dan reference/fee-comparison untuk matriks lintas produk.

Benih PDA

Benih di bawah ini 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

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

Cara memverifikasi alamat on-chain

  1. Solana Explorer. Tempel alamat ke dalam explorer.solana.com dan konfirmasi ditandai sebagai Program dengan otoritas upgrade saat ini. Mainnet-beta harus menampilkan 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. Query IDL on-chain dengan anchor idl fetch <PROGRAM_ID> --provider.cluster mainnet. Field address IDL harus cocok. IDL yang sama dicerminkan di github.com/raydium-io/raydium-idl — diff IDL on-chain terhadap repo sebelum mempercayainya.
  4. Otoritas config/admin. Untuk akun config CPMM/CLMM, baca field owner/protocol_owner dan konfirmasi cocok dengan multisig Raydium saat ini yang diterbitkan 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 issue sebelum menulis kode baru terhadap alamat.

Memperbarui halaman ini

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