Diese Seite wurde mit KI automatisch übersetzt. Maßgeblich ist stets die englische Version.Englische Version ansehen →
Versionsbanner. Alle Demos zielen auf
@raydium-io/raydium-sdk-v2@0.2.42-alpha gegen Solana mainnet-beta ab, verifiziert 2026-04. Programm-ID: 675kPX9MHTjS2zt1qfr1NYHuzeLXfQM9H24wFSUt1Mp8 (siehe reference/program-addresses).Erstellung neuer Pools wird hier nicht gezeigt. Die Raydium-Benutzeroberfläche bietet keine AMM v4 Pool-Erstellung mehr — neue Paare verwenden standardmäßig CPMM. Das AMM v4-Programm selbst akzeptiert
Initialize2 on-chain; es ist nur nicht der empfohlene Weg. Die folgenden Demos behandeln die Live-Pool-Operationen, die jeder Integrator noch benötigt: Swap, Deposit, Withdraw.Setup
Pool nach ID abrufen
poolKeys ist die Struktur, die die Instruction Builder verwenden. Sie enthält jeden AMM v4 und OpenBook-Konto in der Reihenfolge, die das Programm erwartet.
Swap (Base-In)
Swap (Base-Out)
Liquidität hinzufügen
fixedSide: "a" teilt dem SDK mit, dass Sie den genauen amountInA angegeben haben und amountInB höchstens maxAnotherAmount sein sollte. Die On-Book-Liquidität des Pools wird vor der Pro-Rata-Berechnung abgewickelt, sodass das Einzahlungsverhältnis den aktuellsten Reserven entspricht.
Liquidität entfernen
Compute-Unit / Priority-Fee-Abstimmung
AMM v4 Swaps sind rechenintensiv, da jede Instruction den vollständigen OpenBook-Status validiert. Ein typischer Swap verbraucht 180k–250k CU, je nachdem wie viele offene Orders auf dem Weg abgewickelt werden müssen. Geben Sie immer ein Compute-Unit-Limit an:computeBudgetConfig weglassen, kann das SDK dennoch sein eigenes Standard verwenden; überprüfen Sie innerTransactions zur Bestätigung. Siehe integration-guides/priority-fee-tuning.
Direkter Rust CPI
Wenn Sie von Ihrem eigenen Anchor-Programm aus in AMM v4 CPI aufrufen müssen, müssen Sie die Kontoliste vonSwapBaseIn wörtlich modellieren. Eine minimale Skizze:
Instruction.
Die CPI-Skizze oben verwendet das Legacy v1
SwapBaseIn Layout (Tag 9, 17 Konten) zum Lesen/Reproduzieren bestehender Transaktionen. Seit dem 2026-07 Upgrade werden die Market-Konten akzeptiert, aber ignoriert. Für neuen Code bevorzugen Sie SwapBaseInV2 / SwapBaseOutV2 (Tags 16 / 17), die die Market-Konten (und amm_open_orders) vollständig weglassen — übergeben Sie nur 8 Konten: token_program, amm, amm_authority, die beiden Pool-Vaults, die beiden Benutzer-Token-Konten und user_owner.Fallstricke
- Falsche Kontoanzahl bei v1 Swaps. Das Legacy
SwapBaseIn/SwapBaseOuterfordert immer noch die vollständige 17-Konto- (oder 18-Konto-) Liste — eine nicht übereinstimmende Anzahl führt zuWrongAccountsNumber. Der Inhalt der Market-Konten wird nicht mehr validiert, aber Sie müssen ihre Slots dennoch belegen. Bevorzugen Sie die V2 Einstiegspunkte, um dies zu vermeiden. - Rohe Vault-Salden lesen. Reserven sind jetzt nur noch Vault-basiert; subtrahieren Sie aufgelaufene PnL (
need_take_pnl_*). Das SDK-Quote oderapi-v3.raydium.io/pools/info/idskümmert sich darum für Sie. - Entfernte Instructions aufrufen.
MonitorStep,MigrateToOpenBook,WithdrawSrm,SimulateInfo,AdminCancelOrdersund LegacyInitialize/PreInitializewerden jetzt zurückgewiesen. Verwenden SieInitialize2für Pool-Erstellung; es gibt keinen Crank zum Aufrufen. - Token-2022 Mints. Nicht unterstützt. Ein AMM v4 Pool kann nicht gegen einen Token-2022 Mint erstellt werden; jedes Token-2022 Paar sollte auf CPMM oder CLMM sein.
Nächste Schritte
products/amm-v4/instructions— die Instruction-Ebene hinter diesen Demos.user-flows/migrate-amm-v4-to-cpmm— wenn Sie ein LP sind und eine Migration erwägen.integration-guides/priority-fee-tuning— Priority-Fee-Dimensionierung für schwere AMM v4 Swaps.

