Langsung ke konten utama

Documentation Index

Fetch the complete documentation index at: https://docs.raydium.io/llms.txt

Use this file to discover all available pages before exploring further.

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

Ringkasan satu paragraf

CPMM — Constant Product Market Maker, secara resmi disebut “Standard AMM” di UI Raydium — adalah implementasi native Solana dari AMM klasik x · y = k. Tanpa order book OpenBook, tanpa warisan Serum, tanpa dependensi eksternal selain SPL Token dan Token-2022. Setiap pool adalah triple dari (dua vault token, satu LP mint) yang dikelola oleh authority PDA milik program, dengan harga ditentukan oleh produk saldo vault. Ini adalah AMM yang Raydium rekomendasikan untuk semua pool constant-product baru, dan ini adalah target default endpoint /pools/create dan alur “Create pool” di web UI.

Apa yang CPMM berikan

  • Token-2022 dengan daftar whitelist ekstensi yang telah diverifikasi. CPMM tidak menerima mint Token-2022 sembarangan. Program menerapkan whitelist ekstensi aman saat pembuatan pool: TransferFeeConfig, MetadataPointer, TokenMetadata, InterestBearingConfig, dan ScaledUiAmount. Ekstensi lain pada mint menyebabkan Initialize ditolak dengan NotSupportMint — kecuali mint itu sendiri ada di daftar whitelist hard-coded kecil yang dipertahankan dalam program (digunakan untuk menambahkan mint tertentu secara case-by-case). Fee transfer khususnya memengaruhi matematika swap dan diterapkan di sisi yang benar dari trade — lihat algorithms/token-2022-transfer-fees.
  • Fee yang dapat diprediksi. Setiap pool mereferensikan AmmConfig yang dipilih saat pembuatan. Config membawa trade-fee rate (dibagi antara LP, protokol, dan dana) dan creator-fee rate yang terpisah dan independen. Creator fee adalah bucket tersendiri — tidak pernah menjadi bagian dari trade fee. Pool memilih untuk menerapkannya saat pembuatan. Default dan matematika split lengkap ada di products/cpmm/fees.
  • On-chain TWAP via ring buffer observasi. Setiap swap memperbarui akun observation. Kontrak eksternal dapat membaca observasi cumulative-price untuk menghitung TWAP tanpa oracle custom.
  • Flat account layout. Pool sepenuhnya digambarkan oleh enam PDA (authority, pool state, LP mint, dua vault, observation). Tidak ada akun OpenBook per-market, tidak ada event queue, tidak ada request queue. Transaksi lebih murah dalam compute dan account count daripada AMM v4.
  • Kompatibel burn-and-earn. LP token dapat dikunci di bawah program LP Lock sehingga pool creator dapat terus mengklaim fee tanpa mempertahankan hak untuk menarik likuiditas. Digunakan untuk peluncuran likuiditas “permanen”.

Apa yang CPMM bukan

  • Bukan concentrated. Likuiditas tersebar merata di seluruh rentang harga, seperti Uniswap v2. Jika Anda membutuhkan market making yang efisien modal — yaitu, konsentrasi likuiditas di dekat harga saat ini — gunakan CLMM.
  • Bukan hybrid. Berbeda dengan AMM v4, pool CPMM tidak menempatkan resting order di pasar OpenBook. Routing di seluruh pool CPMM terjadi melalui program AMM Routing, bukan melalui CLOB.
  • Bukan dapat diluncurkan untuk kurva sembarangan. Kurva di-hard-code ke constant product. Jika Anda menginginkan bonding curve untuk peluncuran token, gunakan LaunchLab, yang lulus ke pool CPMM saat penuh.

Bagaimana CPMM berbeda dari AMM v4

DimensiAMM v4CPMM
KurvaConstant productConstant product
Dependensi OpenBookInert (semula menempatkan order di pasar OpenBook; integrasi dinonaktifkan)Tidak
Dukungan Token-2022Tidak (SPL Token saja)Ya (termasuk transfer fee)
Jumlah akun per V2 swap~9~11
Compute unit per swap~80k–120k (jalur V2)~60k–100k
Oracle TWAPTidak ada akun oracle nativeRing buffer observation
Pembuatan pool baru hari iniBukan default (program masih menerima)Default
StatusSepenuhnya operasionalAktif, direkomendasikan
Perlakuan lebih mendalam dari cerita migrasi ada di protocol-overview/versions-and-migration.

Model mental

Pool CPMM adalah objek milik program yang menampung tiga saldo: vault0 (token0), vault1 (token1), dan supply dari LP mint. Supply LP mint melacak klaim depositor di pool; vault token menyimpan aset aktual. Segalanya — PDA authority, akun observation, pointer fee-config — adalah bookkeeping untuk membuat hubungan tiga-variabel itu tradable, fee-collecting, dan observable. Setiap operasi yang user-facing runtuh menjadi state transition yang well-defined:
  • Deposit: transfer token0 dan token1 masuk, mint LP ke user, tidak ada perubahan harga.
  • Withdraw: burn LP dari user, transfer token0 dan token1 keluar dengan ratio saat ini pool, tidak ada perubahan harga.
  • Swap: transfer satu token masuk, transfer yang lain keluar; ratio bergerak di sepanjang kurva x · y = k (dikurangi fee); akun observation mengambil sampel harga baru.
Pengumpulan fee (CollectProtocolFee, CollectFundFee) adalah transaksi terpisah yang ditandatangani oleh authority masing-masing; ini tidak terjadi pada setiap swap. Matematika dijelaskan di products/cpmm/math dan instruction set di products/cpmm/instructions.

Kapan memilih CPMM

Pilih CPMM ketika:
  • Anda meluncurkan token baru atau pair baru dan tidak memiliki pendapat kuat tentang range mana yang akan melihat trading.
  • Salah satu atau kedua token menggunakan ekstensi Token-2022.
  • Anda menginginkan model simple fee-per-trade daripada dynamic tick-based.
  • Anda mengintegrasikan dan ingin route melalui Raydium tanpa membawa kompleksitas CLMM positions.
Lebih suka CLMM ketika:
  • Pair stabil atau sangat berkorelasi (stablecoin-stablecoin, LST-SOL) dan Anda ingin konsentrasi likuiditas sekitar parity.
  • Anda adalah tim market-making yang bersedia mengelola range secara aktif untuk fee APR yang lebih tinggi per dollar TVL.
Lebih suka AMM v4 ketika:
  • Anda bermigrasi tooling AMM v4 existing dan tidak membuat pool baru.
(Catatan: mode hybrid OpenBook AMM v4 tidak lagi aktif — itu bukan alasan untuk memilih AMM v4 lagi.)

Ke mana selanjutnya

  • Accounts — enam PDA dari pool CPMM dan cara menurunkannya.
  • MathSwapBaseInput vs SwapBaseOutput, penanganan Token-2022 transfer-fee, update observation.
  • Instructions — surface instruction lengkap dengan daftar akun.
  • Fees — split fee empat arah dan cara mengumpulkannya.
  • Code demos — snippet TypeScript yang dapat dijalankan untuk create / swap / deposit / withdraw.
Sumber: