Zum Hauptinhalt springen

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.

Diese Seite wurde mit KI automatisch übersetzt. Maßgeblich ist stets die englische Version.Englische Version ansehen →

Zusammenfassung in einem Absatz

Stable AMM ist eine Variante von Raydiums AMM, die eine Kurvenformel durch eine vorberechnete Nachschlagetabelle ersetzt. Statt x·y=k speichert der Pool ein dünn besetztes Array von (x, y, price)-Punkten und nutzt binäre Suche + lineare Interpolation, um Preise zu ermitteln. Dieses Design eignet sich hervorragend für Stablecoin-Paare und andere Assets mit bekannten Preisbeziehungen: Swaps zwischen 1:1-gekoppelten Token haben quasi keinen Slippage. Wie AMM v4 ist Stable AMM an einen OpenBook-Markt gebunden und postet dort limitierte Orders. Die Liquidität ist derzeit gering; die meisten Integratoren greifen auf Stable-Pools über das AMM-Routing-Programm zu.

Warum eine Nachschlagetabelle statt xy=k

Constant-Product-AMMs verursachen hohen Slippage bei Paaren mit engem Preisspanne. Ein USDC-USDT-Swap sollte fast kostenlos sein; in einem Constant-Product-Pool zwingt k=x·y selbst bei minimalem Volumen zu einer Preisbewegung. Eine Nachschlagetabelle ermöglicht es dem Pool-Administrator, die tatsächliche Preisbeziehung auszudrücken:
  • Für Stablecoins: Verdichten Sie die Tabelle um 1:1, damit Mikro-Swaps ~0 Slippage kosten.
  • Für besicherte Paare: Kodieren Sie das Zielverhältnis und lassen Sie das Gitter die Gebühren-/Anreizfläche formen.
Die Tabelle ist zwischen UpdateModelData-Aufrufen statisch (die der Admin postet, wenn sich die Beziehung ändert), sodass die On-Chain-Kosten nur die Interpolationssuche sind – viel günstiger als eine Formel zu berechnen.

Wie es funktioniert: das ModelData-Konto

Der Pool enthält ein ModelDataInfo-Konto – ein 50.000-Element-Array von DataElement-Strukturen. Jedes Element enthält:
DataElement {
  x: u64,           // table X coordinate
  y: u64,           // table Y coordinate
  price: u64,       // price at (x, y)
}
Nur die ersten valid_data_count Elemente sind befüllt; der Rest ist Null. Beim Swap führt das Programm folgende Schritte durch:
  1. Berechnet ein Verhältnis aus den aktuellen Pool-Reserven und nutzt binäre Suche, um zu finden, welche zwei Tabellenelemente dieses Verhältnis einrahmen.
  2. Interpoliert linear zwischen den zwei einrahmenden Punkten, um den Quote-Preis zu ermitteln.
  3. Wendet Gebühren an (gleich 0,25% wie bei AMM v4) und gibt das Ergebnis an den Benutzer zurück.
Das multiplier-Feld in der Tabelle berücksichtigt die Möglichkeit, dass x und y mit verringertem Maßstab gespeichert sind (z. B. mit 6 Dezimalstellen statt 18). Die Preisfindung wird entsprechend skaliert.

Vergleich: Stable AMM vs. AMM v4 vs. CPMM

DimensionStable AMMAMM v4CPMM
KurveNachschlagetabelle + InterpolationConstant Product (xy=k)Constant Product
Primärer AnwendungsfallStablecoins, gekoppelte PaareAllgemeine Paare, Legacy Deep LiquidityAllgemeine Paare, neue Deployments
OpenBook-AbhängigkeitJaJaNein
Token-2022NeinNeinJa
Slippage-ProfilMinimal bei 1:1Hoch bei engen VerhältnissenModerat über gesamten Bereich
Von Admin einstellbare KurveJa (UpdateModelData)Nein (nur SetParams)Nein
Tabellengröße~50.000 Elemente × 24 BytesN/AN/A
Rechenaufwand pro Swap~5.000–15.000 CU (binäre Suche + Interpolation)~150.000–200.000 CU~60.000–100.000 CU
Kontenanzahl pro Swap~17 (AMM + OpenBook)~18 (AMM + OpenBook)~11

Mentales Modell

Ein Stable-AMM-Pool ist ein interpoliertes Nachschlag-Tabellen-AMM, dessen Vaults auch OpenBook-Limitorders einlagern, genau wie AMM v4. Der Hauptunterschied liegt darin, dass die Preisfindungskurve nicht fest codiert ist – sie ist ein dünn besetztes Array, das der Administrator befüllen und aktualisieren kann. Die Operationen ähneln AMM v4: direkter Swap (Benutzer ↔ Pool), Deposit / Withdraw (LP-Operationen), Crank (MonitorStep) und Administrator-Wartung (UpdateModelData, SetParams).

Wann Stable AMM die richtige Wahl ist

  • Sie betreiben ein Stablecoin- oder anderes korreliertes Vermögenspaare und möchten enge, vorhersehbare Preisgestaltung.
  • Sie haben tiefes Wissen über die Preisbeziehung Ihres Paares und möchten es direkt als Kurve kodieren.
  • Sie haben bereits Integrationen für AMM v4 und benötigen einfach eine andere Kurvenvariante.
Für einen neuen, allgemeinen Pool ohne strikte Korrelationsanforderung ist CPMM der einfachere und liquidere Standard.

Nächste Schritte

  • KontenAmmInfo, ModelDataInfo, DataElement-Feldbreferenz.
  • Mathematik – binäre Suche, Interpolation und Gebührenanwendung.
  • AnweisungenInitModelData, UpdateModelData, Swap- und LP-Anweisungen.
  • Gebühren – die 0,25%-Aufteilung (identisch mit AMM v4).
  • Code-Demos – Routing und direkte Integration.
Quellen: