Diese Seite wurde mit KI automatisch übersetzt. Maßgeblich ist stets die englische Version.Englische Version ansehen →
Versionsbanner.
- SDK:
@raydium-io/raydium-sdk-v2@0.2.42-alpha - Cluster: Solana
mainnet-beta - Stable AMM Program ID:
5quBtoiQqxF9Jv6KYKctB59NT3gtJD2Y65kdnB1Uev3h(siehereference/program-addresses) - Zuletzt verifiziert: 2026-04
liquidity-Modul des SDK verarbeitet Stable AMM Pools nativ. Stable Pools erscheinen als version: 5 (oder pooltype: "StablePool") auf ApiV3PoolInfoStandardItem; die gleichen addLiquidity / removeLiquidity / Swap-Helfer funktionieren für sie wie für AMM v4 (version: 4) Constant-Product-Pools — das SDK erkennt die Variante und gibt automatisch die korrekten Instruktionen aus. Die Off-Chain-Stable-Curve-Mathematik befindet sich in src/raydium/liquidity/stable.ts.Setup
Einen Stable Pool identifizieren
Zwei äquivalente Signale aufApiV3PoolInfoStandardItem:
version: 4, Constant-Product) als auch Stable AMM (version: 5) fließen durch die gleiche LiquidityModule API im SDK. Intern verteilt das Modul auf:
InstructionType.AmmV4AddLiquidity/AmmV4RemoveLiquidityfür v4 PoolsInstructionType.AmmV5AddLiquidity/AmmV5RemoveLiquidityfür v5 (Stable) Pools
programId des Pools (zurückgegeben mit den Pool-Keys) teilt dem SDK mit, in welches Programm es CPI durchführen soll; Sie müssen es nicht hardcodieren.
Einen Pool nach Mint-Paar finden
Durch einen Stable Pool swappen
DerLiquidityModule.swap Flow hat die gleiche Form wie für v4 Pools — übergeben Sie einfach ein v5 Pool-Objekt:
programId des Pools aus den Pool-Keys und verteilt in das Stable AMM Programm. Es ist kein spezielles programId-Argument erforderlich.
Liquidität hinzufügen und entfernen
addLiquidity und removeLiquidity funktionieren identisch über v4 und v5 Pools:
InstructionType.AmmV5AddLiquidity aus, weil pooltype.includes("StablePool") wahr ist. Der entsprechende removeLiquidity Flow ist symmetrisch — geben Sie lpAmount und die Mindestbeträge ein, die Sie auf jeder Seite akzeptieren.
Off-Chain Quote Helfer (stable.ts)
Für serverseitige Quoting oder Backtesting stellt das SDK die zugrunde liegende Stable-Curve-Mathematik bereit:ModelDataInfo wird einmal von initLayout() abgerufen und in raydium.liquidity.stableLayout zwischengespeichert. Übergeben Sie aktuelle Reserven (x, y) und die Helfer berechnen durch binäre Suche in der Nachschlagetabelle und lineare Interpolation zwischen den zwei umgebenden DataElement-Zeilen. Siehe products/stable/math für den zugrunde liegenden Algorithmus.
Routing durch AMM Routing (Multi-Hop / Best-Price)
Wenn Sie nicht selbst einen Ort wählen möchten, berücksichtigt das AMM Routing Programm jeden Raydium AMM (v4 / CPMM / CLMM / Stable) und leitet durch die beste Kombination:Empfehlungen
- Für End-User-Swaps bevorzugen Sie den
tradeV2Routing-Flow. Er verarbeitet jeden Raydium Pool-Typ einschließlich Stable. - Für Pool-spezifische Operationen (LP Add / Remove auf einem bekannten Stable Pool) verwenden Sie das
LiquidityModuledirekt — es erkennt v5 Pools automatisch. - Für Off-Chain-Quoting / Analytics rufen Sie
getStablePrice/getDyByDxBaseIn/getDxByDyBaseInnachinitLayout()auf. Kein RPC-Verkehr pro Quote nach dem Zwischenspeichern der Modelldaten. - Codieren Sie nicht manuell rohe
SwapBaseInInstruktionen. Das 2026-06-22 Upgrade entfernte die toten OpenBook-Konten, daher benötigt das neue Swap-Layout 9 Konten (das alte 18-Konto-Layout wird immer noch für Rückwärtskompatibilität geparst).Depositist jetzt 12 Konten (alte 14 kompatibel),Withdraw12 (alte 21/22 kompatibel), undWithdrawPnl10 ohne Kompatibilitätspfad. Die vordefinierten Helfer des SDK wählen das korrekte Layout und die Reihenfolge für Sie aus; das Rollen Ihrer eigenen ist fehleranfällig. Sieheproducts/stable/instructionsfür die vollständigen Kontotabellen.
Wo es weitergeht
- Math — wie die Nachschlagetabellen-Interpolation funktioniert.
- Instructions — vollständige Instruktionsreferenz.
- AMM Routing — Multi-Pool-Routing über AMM v4, CPMM, CLMM, Stable.
raydium-sdk-V2/src/raydium/liquidity/liquidity.ts— Modul-Einstiegspunkt; v4 / v5 Verteilung.raydium-sdk-V2/src/raydium/liquidity/stable.ts—StableLayout,getStablePrice,getDxByDyBaseIn,getDyByDxBaseIn.

