Halaman ini diterjemahkan secara otomatis oleh AI. Versi bahasa Inggris adalah acuan resmi.Lihat versi bahasa Inggris →
Banner versi.
- SDK:
@raydium-io/raydium-sdk-v2@0.2.64-alpha - Cluster: Solana
mainnet-beta - ID program Stable AMM:
5quBtoiQqxF9Jv6KYKctB59NT3gtJD2Y65kdnB1Uev3h(lihatreference/program-addresses) - Terakhir diverifikasi: 2026-09-09 terhadap SDK
0.2.64-alphasource dan demo amm/traderaydium-sdk-V2-demo
liquidity SDK menangani pool Stable AMM secara native. Pool stabil muncul sebagai version: 5 (atau pooltype: "StablePool") pada ApiV3PoolInfoStandardItem; helper addLiquidity / removeLiquidity / swap yang sama bekerja untuk mereka seperti untuk pool constant-product AMM v4 (version: 4) — SDK mendeteksi varian dan memancarkan instruksi yang benar secara otomatis. Matematika kurva stabil off-chain berada di src/raydium/liquidity/stable.ts.Setup
Mengidentifikasi pool Stable
Dua sinyal setara padaApiV3PoolInfoStandardItem:
version: 4, constant-product) maupun Stable AMM (version: 5) mengalir melalui API LiquidityModule yang sama pada SDK. Secara internal modul dispatch ke:
InstructionType.AmmV4AddLiquidity/AmmV4RemoveLiquidityuntuk pool v4InstructionType.AmmV5AddLiquidity/AmmV5RemoveLiquidityuntuk pool v5 (Stable)
programId pool (dikembalikan dengan kunci pool) memberi tahu SDK program mana yang akan di-CPI; Anda tidak perlu hardcode-nya.
Temukan pool berdasarkan pasangan mint
Swap melalui pool Stable
AlurLiquidityModule.swap memiliki bentuk yang sama seperti pool v4 — cukup berikan objek pool v5. Dua detail mudah salah: computeAmountOut membutuhkan reserve live pool yang digabungkan ke info pool (item API saja tidak membawanya), dan slippage-nya adalah angka biasa, bukan Percent:
programId pool dari kunci pool dan dispatch ke program Stable AMM. Tidak ada argumen programId khusus yang diperlukan.
Tambah dan hapus likuiditas
addLiquidity dan removeLiquidity bekerja identik di pool v4 dan v5:
InstructionType.AmmV5AddLiquidity karena pooltype.includes("StablePool") benar. Alur removeLiquidity yang sesuai simetris — berikan lpAmount dan jumlah minimum yang akan Anda terima di setiap sisi.
Helper quote off-chain (stable.ts)
Untuk quoting server-side atau backtesting, SDK mengekspos matematika kurva stabil yang mendasar:ModelDataInfo on-chain diambil sekali oleh initLayout() dan di-cache di dalam raydium.liquidity.stableLayout, dapat dibaca sebagai .stableModelData. initStableModelLayout() idempoten: hanya re-fetch saat validDataCount === 0, jadi memanggil initLayout() lagi gratis. Berikan reserve saat ini (x, y) dan helper menghitung dengan binary-searching tabel lookup dan linear interpolating antara dua baris DataElement sekitarnya. Lihat products/stable/math untuk algoritma yang mendasar.
Routing melalui AMM Routing (multi-hop / harga terbaik)
Jika Anda tidak ingin memilih venue sendiri, program AMM Routing akan mempertimbangkan setiap AMM Raydium (v4 / CPMM / CLMM / Stable) dan routing melalui kombinasi mana pun yang terbaik: Router adalah pipeline lima-panggilan daripadaswap() tunggal, dan ditulis sepenuhnya — dengan saran caching yang membuatnya dapat digunakan dalam produksi — pada products/routing/code-demos. Bentuknya adalah:
Rekomendasi
- Untuk swap end-user, lebih suka alur routing
tradeV2. Ini menangani setiap tipe pool Raydium termasuk Stable. - Untuk operasi pool-spesifik (LP tambah / hapus pada pool Stable yang diketahui), gunakan
LiquidityModulesecara langsung — ia auto-detects pool v5. - Untuk quoting off-chain / analytics, panggil
getStablePrice/getDyByDxBaseIn/getDxByDyBaseInsetelahinitLayout(). Tidak ada traffic RPC per quote setelah data model di-cache. - Jangan hand-encode instruksi
SwapBaseInraw. Upgrade 2026-06-22 menghapus akun OpenBook yang mati, jadi layout swap baru mengambil 9 akun (layout 18-akun lama masih parse untuk kompatibilitas mundur).Depositsekarang 12 akun (lama 14 kompatibel),Withdraw12 (lama 21/22 kompatibel), danWithdrawPnl10 dengan tidak ada jalur kompatibilitas. Helper pre-built SDK memilih layout dan urutan yang benar untuk Anda; rolling your own error-prone. Lihatproducts/stable/instructionsuntuk tabel akun lengkap.
Ke mana selanjutnya
- Math — bagaimana interpolasi tabel lookup bekerja.
- Instructions — referensi instruksi lengkap.
- AMM Routing — routing multi-pool di seluruh AMM v4, CPMM, CLMM, Stable.
raydium-sdk-V2/src/raydium/liquidity/liquidity.ts— titik masuk modul; dispatch v4 / v5.raydium-sdk-V2/src/raydium/liquidity/stable.ts—StableLayout,getStablePrice,getDxByDyBaseIn,getDyByDxBaseIn.

