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 →
AMM v4 jauh lebih banyak akun dibanding CPMM atau CLMM karena setiap operasi menyentuh state OpenBook. Halaman ini mengelompokkan akun ke dalam bagian “pool-owned” dan “OpenBook-owned” sehingga integrator dapat dengan cepat melihat sisi mana yang mana.
Inventaris
Sebuah pool AMM v4 terikat ke tepat satu pasar OpenBook saat pembuatan. Gambaran lengkap saat ini adalah:| Kategori | Akun | Pemilik | Peran |
|---|---|---|---|
| Pool | AmmInfo | Program AMM v4 | State pool: fee yang terakumulasi, status, referensi ke vault dan pasar OpenBook. |
| Pool | amm_authority | Program AMM v4 | PDA yang dimiliki program dan menandatangani pergerakan vault. Dibagikan di semua pool AMM v4. |
| Pool | amm_open_orders | OpenBook | Akun OpenOrders OpenBook pool untuk pasar ini. |
| Pool | amm_target_orders | Program AMM v4 | Grid target limit order di sisi pool untuk diposting kembali ke OpenBook. |
| Pool | pool_coin_token_account | SPL Token | Vault sisi coin pool (ATA dari amm_authority). |
| Pool | pool_pc_token_account | SPL Token | Vault sisi pc pool. |
| Pool | lp_mint | SPL Token | Mint LP yang dapat ditukar. |
| Pool | pool_withdraw_queue | Program AMM v4 | Antrian legacy untuk penarikan tertunda; tetap kosong. |
| Pool | pool_temp_lp | Program AMM v4 | Akun LP tambahan yang digunakan saat Initialize. |
| Market (OpenBook) | serum_market | OpenBook | Pasar itu sendiri (mint base/quote, vault signer, dll). |
| Market | serum_bids, serum_asks | OpenBook | Antrian bid dan ask. |
| Market | serum_event_queue | OpenBook | Event yang tertunda (fill, pembatalan). |
| Market | serum_coin_vault, serum_pc_vault | SPL Token | Vault tingkat pasar OpenBook. |
| Market | serum_vault_signer | OpenBook | PDA tingkat pasar yang menandatangani pergerakan serum_*_vault. |
AmmInfo
Akun state root pool. Besar (≈ 752 bytes) karena membawa referensi pool dan OpenBook secara inline.
coin_vault,pc_vault— vault SPL Token pool.coinadalahtoken_0menurut konvensi Serum/OpenBook (base),pcadalahtoken_1(quote).coin_decimals,pc_decimals— sesuai dengan mint.open_orders,target_orders,market— harus diteruskan ke setiap instruksi swap/deposit/withdraw.fees.swap_fee_numerator / swap_fee_denominator— fee trade gabungan. Default25 / 10_000 = 0.25%.status— bitmask yang mengontrol operasi. Dapat diatur admin melaluiAdminSetStatus.state_data.need_take_pnl_*— delta antara fee terakumulasi bruto dan apa yang telah disapu.TakePnlmengatur ulang ini ke nol.
Wirring OpenBook
Tidak lagi aktif. Pool AMM v4 tidak lagi berbagi likuiditas ke OpenBook — grid limit order telah dinonaktifkan. Akun OpenBook yang dijelaskan di bagian ini tetap ada di
AmmInfo setiap pool dan masih divalidasi oleh entrypoint swap V1 (dan oleh Initialize, Deposit, Withdraw) untuk kompatibilitas ke belakang, tetapi state on-book yang direferensikan kosong dalam praktik. Gunakan entrypoint swap V2 (SwapBaseInV2 / SwapBaseOutV2) yang sepenuhnya melewatkan akun ini dan mewakili jalur eksekusi kanonis hari ini.amm_open_orders AMM adalah akun yang dimiliki OpenBook menyimpan state limit order pool di pasar ini: order aktif, saldo settlement, referrer, dll. amm_target_orders adalah sisi AMM: ini menyimpan grid yang dimaksudkan AMM (harga/ukuran untuk setiap slot order) sehingga program dapat secara murah membandingkan dengan apa yang saat ini diposting dan menempatkan / membatalkan diff.
PDA Authority
Ada tepat satu PDAamm_authority untuk seluruh program AMM v4. Seed-nya trivial (["amm authority"]) dan bump-nya disimpan pada setiap AmmInfo. Authority ini menandatangani semua pergerakan token untuk semua pool AMM v4.
amm_authority di atas sebenarnya mencakup keduanya dalam desain program ini; versi berbeda menggunakan penurunan berbeda, jadi periksa AmmInfo.nonce pool spesifik dalam kode).
Vault
Vault SPL Token pool adalah akun token standar yangowner-nya adalah amm_authority. Bukan ATA — alamatnya adalah PDA spesifik yang diturunkan di Initialize dengan seed ["amm_associated_seed", coin_mint_or_pc_mint, market, amm_id]. Alamat disimpan di AmmInfo; penurunan adalah keingintahuan satu kali.
Token-2022 tidak didukung. Program menghardcode ID program SPL Token untuk semua pergerakan vault. Mencoba mengikat pool AMM v4 ke mint Token-2022 gagal di Initialize.
Mint LP
Mint SPL Token klasik yang authority-nya adalahamm_authority. Total supply melacak kepemilikan LP dari pool; membakar LP mengembalikan token dari kedua vault secara pro-rata. Karena AMM v4 sebelum CPMM, tidak ada mirror lp_supply di state pool — baca supply mint on-chain secara langsung.
Bitmask status
AmmInfo.status mengontrol operasi. Bit (posisi mungkin berbeda di berbagai versi program — konfirmasi melalui sumber):
| Bit | Flag | Efek |
|---|---|---|
| 0 | SWAP_DISABLED | Swap* menolak. |
| 1 | DEPOSIT_DISABLED | Deposit menolak. |
| 2 | WITHDRAW_DISABLED | Withdraw menolak. |
| 3 | CLMM_LIKE_MIGRATE | Flag migration-gate digunakan oleh ops. |
AdminCancelOrders, AdminSetParams, dll.
Observation / oracle
AMM v4 tidak memiliki akun observation khusus. Protokol lain yang membutuhkan TWAP on-chain biasanya mengonsumsi penyeberangan buku OpenBook secara tidak langsung atau membaca off-chain. Jika Anda membutuhkan TWAP Raydium dengan dukungan program, gunakan CPMM atau CLMM.Menurunkan akun pool dari awal
Karena AMM v4 tidak dirancang untuk PDA per-pasangan yang deterministik (itu sebelum konvensi Solana itu),amm_id kanonis adalah keypair berseeded yang diturunkan dengan:
amm_open_orders, amm_target_orders, amm_withdraw_queue, pool_temp_lp, pool_coin_token_account, pool_pc_token_account, dan lp_mint. SDK dan API pra-menghitung ini untuk Anda; lihat raydium-sdk-v2’s Liquidity.getAssociatedPoolKeys.
Dalam praktik, integrator membaca himpunan akun pool lengkap dari GET https://api-v3.raydium.io/pools/info/ids?ids=<POOL_ID> atau dari SDK. Menurunkan dengan tangan jarang dibutuhkan.
Referensi siklus hidup cepat
| Event | Akun dibuat | Akun dihancurkan |
|---|---|---|
Initialize2 | amm_info, amm_open_orders, amm_target_orders, vault, lp_mint, pool_withdraw_queue, pool_temp_lp | — |
Deposit | — (mungkin membuat user LP ATA) | — |
Withdraw | — | — |
SwapBaseIn / SwapBaseOut | — (mungkin membuat user ATA) | — |
TakePnl | — | — |
MonitorStep (crank) | — | — |
AmmInfo tetap ada.
Apa yang dibaca di mana
- Matematika dan aritmatika fee:
products/amm-v4/math. - Pembagian fee dan cara perbandingannya dengan CPMM/CLMM:
products/amm-v4/fees. - Daftar akun instruksi:
products/amm-v4/instructions. - Penurunan akun OpenBook: Dokumentasi program OpenBook (
github.com/openbook-dex/program).
- Program Raydium AMM —
raydium-io/raydium-amm reference/program-addressesuntuk ID program kanonis- Protokol OpenBook / Serum untuk akun pihak lawan


