Skip to main content
Diese Seite wurde mit KI automatisch übersetzt. Maßgeblich ist stets die englische Version.Englische Version ansehen →
Maßgebliche Quelle. Diese Seite ist der einzige Ort in der Dokumentation, an dem Programmadressen wörtlich aufgelistet sind. Andere Seiten verlinken hierher. Falls sich eine ID ändert, aktualisieren Sie sie nur hier, und alle Verweise auf der Website bleiben konsistent.Überprüfen Sie die Werte immer gegen die Live-API (https://api-v3.raydium.io/main/info), bevor Sie echte Transaktionen signieren.

Mainnet-beta

Faustregel: Falls eine Programm-ID in der Praxis nicht mit der Tabelle unten übereinstimmt, signieren Sie die Transaktion nicht. Eine nicht übereinstimmende Programm-ID ist der einfachste Weg, um Gelder auf Solana zu verlieren.

On-Chain-Programme

Hinweise:
  • AMM v4 und Farm v3/v5 werden für bestehende Pools und Positionen beibehalten. Die Raydium-UI und das SDK leiten die Erstellung neuer Pools und neue Ökosystem-Farmen an CPMM, CLMM bzw. Farm v6 weiter – siehe protocol-overview/versions-and-migration.
  • Die Farm v3 ID oben dient auch als $RAY Single-Asset-Staking-Programm. Das Verhalten ist identisch mit Farm v3 für LP-Staking.
  • Stable AMM ist ein separates Programm, das das AMM Routing-Programm neben AMM v4, CPMM und CLMM ansteuern kann. Die Liquidität ist im Vergleich zu den anderen drei Programmen dünn, und das SDK stellt keine First-Class-API dafür bereit; Integratoren, die es durchleiten, tun dies in der Regel über den Router.
  • Quellcode-Verfügbarkeit. Von den On-Chain-Programmen oben werden nur raydium-amm (AMM v4), raydium-cp-swap (CPMM) und raydium-clmm (CLMM) mit öffentlichen Quellrepositorys unter github.com/raydium-io ausgeliefert. Stable AMM, LaunchLab, AMM Routing, Burn & Earn / LP Lock und die Farm-Programme sind nicht öffentlich verfügbar – überprüfen Sie sie stattdessen gegen die Live-API, den On-Chain-Bytecode und die veröffentlichten IDLs in raydium-io/raydium-idl.

Gemeinsame Admin-Autorität

Alle Anchor-basierten Programme (CLMM, CPMM, LaunchLab, Lock) teilen sich einen einzigen hardcodierten Admin-Pubkey für Zugriffskontrolle auf Anweisungsebene zu Admin-Pfaden (wie CreateAmmConfig oder UpdatePoolStatus): Operationale Autoritäten auf Kontoebene (z. B. protocol_owner, fund_owner auf CPMM/CLMM AmmConfig oder die Migrations-Wallets auf LaunchLab GlobalConfig) werden On-Chain gespeichert und können vom Programm-Admin abweichen. Lesen Sie sie direkt vom relevanten Config-Konto, bevor Sie hochriskante Transaktionen senden.

CPMM Permission-PDA Creator Authority

CreatePermissionPda akzeptiert entweder den gemeinsamen Programm-Admin oben oder einen dedizierten Owner. Seit dem CPMM-Upgrade 2026-09 akzeptiert ClosePermissionPda die gleichen zwei Unterzeichner; davor war es nur Admin.

CPMM Support-Mint Registry Authority

CreateSupportMintAssociated und CloseSupportMintAssociated akzeptieren entweder den gemeinsamen Programm-Admin oder den dedizierten Owner unten. Die Registrierung eines Mint erlaubt ihm, die Token-2022-Erweiterungs-Allowlist von CPMM zu passieren – siehe reference/token-2022-support.

CPMM Fee-Owner Wallets

Seit dem CPMM-Upgrade 2026-09 schreibt CreateAmmConfig diese festen Schlüssel in die protocol_owner und fund_owner der neuen Config, statt den Admin-Unterzeichner-Schlüssel zu kopieren. Sie sind die Unterzeichner, die CollectProtocolFee und CollectFundFee für jede Config akzeptieren, die ab diesem Upgrade erstellt wurde.
Dies sind die Werte, die das Programm in neue Configs schreibt, keine Beschreibung bestehender. AmmConfig-Konten, die vor dem Upgrade erstellt wurden, behalten das, was auf ihnen gespeichert ist. Lesen Sie immer protocol_owner / fund_owner vom Konto, bevor Sie eine Sammel-Transaktion erstellen.

Excess-Lamports Collection Wallets

Jedes der drei Programme, die am 2026-09-09 aktualisiert wurden, erhielt eine Admin-Anweisung, die Lamports zurückgibt, die über dem Rent-Exempt-Minimum auf Programm-kontrollierten Konten gehalten werden, gemäß SIMD-0437 Rent Reduction. Jedes Programm hardcodiert sein eigenes Ziel-Wallet, und jedes ist ein dedizierter Schlüssel – nicht der gemeinsame Programm-Admin. CPMM und LaunchLab akzeptieren zusätzlich den gemeinsamen Programm-Admin als Unterzeichner. AMM v4 akzeptiert nur das Wallet oben – es hat kein Admin-Fallback. AMM v4 kompiliert auch einen separaten Testnet-Schlüssel (75KWb5XcqPTgacQyNw9P5QU2HL3xpezEVcgsFCiJgTT) unter seinem testnet-Feature. Diese Anweisungen verschieben nur Lamports; sie berühren niemals einen Token-Saldo, schließen ein Konto oder ändern den Pool-Status. Siehe products/amm-v4/instructions, products/cpmm/instructions und products/launchlab/instructions.

LaunchLab Delegated Config Creator

CreateConfig akzeptiert entweder den gemeinsamen Programm-Admin oder die delegierte Autorität unten. Die delegierte Rolle kann eine neue GlobalConfig erstellen; sie kann den Admin-Only-Pfad UpdateConfig für ein bestehendes Konto nicht aufrufen.

CLMM Restricted-Issuer Freeze Authorities

Wenn einer der Vault-Mints in einem CLMM-Pool eine der Freeze-Autoritäten unten hat, haben neue Positionen, die über einen V2-Pfad geöffnet werden, ihr Position-NFT-Token-Konto eingefroren. Die Liste ist frozen_position_nft_authorities::IDS im CLMM-Programm, und sein einziger Eintrag ist die Issuer-Autorität, die auch die seit langem entfernte Superstate-Erkennung von CLMM abgeglichen hat. Dies sind Underlying-Asset-Issuer-Autoritäten, die nur als Match-Schlüssel verwendet werden. Das CLMM-Pool-PDA, nicht der Issuer-Schlüssel, wird Freeze-Autorität für den Position-NFT-Mint. Die Liste ist im CLMM-Programm hardcodiert. Das Hinzufügen oder Entfernen einer Autorität erfordert ein Programm-Upgrade.

Gemeinsame Config / PDA Konventionen

Mehrere Raydium-Programme stellen Config-Konten bereit, deren öffentliche Schlüssel stabil sind und auf der öffentlichen API aufgelistet sind. Bevorzugen Sie die API-Abfrage gegenüber dem Hardcoding:
Der Pool-Erstellungs-Fee-Empfänger von CPMM ist ein festes Konto, nicht abgeleitet oder über die API nachgeschlagen: create_pool_fee_reveiver::ID in raydium-cp-swap’s lib.rs, derzeit DNXgeM9EiiaAbaWvwjHj9fQQLAX5ZsfHyvmYUNRAdNC8. Die initialize-Anweisung von CPMM validiert es durch exakte Adresse, daher muss es bereits auf dem Cluster vorhanden sein, gegen den Sie testen. Standard-CPMM AmmConfig Index 0 (Standard 0,25%-Pool) Fee-Parameter als Referenz: Siehe products/cpmm/fees für die Zusammensetzung der Aufteilungen und reference/fee-comparison für die produktübergreifende Matrix.

PDA Seeds

Die Seeds unten sind kanonisch und werden sowohl vom SDK als auch von On-Chain CPIs verwendet. Berechnen Sie PDAs immer; hardcodieren Sie abgeleitete Adressen nicht.
token0Mint / token1Mint werden nach Byte-Reihenfolge des öffentlichen Schlüssels sortiert (token0 < token1), bevor sie gehasht werden. Wenn Sie dies falsch machen, erhalten Sie ein gültiges PDA für einen nicht existierenden Pool. Die äquivalenten CLMM Seeds folgen dem gleichen Stil; siehe products/clmm/accounts.

Devnet

Devnet REST API Base: https://api-v3-devnet.raydium.io/ (gleiche Route-Form wie Mainnet).

Wie man eine Adresse On-Chain überprüft

  1. Solana Explorer. Fügen Sie die Adresse in explorer.solana.com ein und bestätigen Sie, dass sie als Program mit einer aktuellen Upgrade-Autorität markiert ist. Mainnet-beta sollte Deployments anzeigen, die von Raydiums Upgrade-Autorität signiert sind.
  2. CLI. Verwenden Sie solana program show <PROGRAM_ID> -u mainnet-beta, um Deploy-Slot, BPF-Loader, Upgrade-Autorität und Datenlänge zu überprüfen. Notieren Sie diese in Ihrem Runbook.
  3. IDL-Anhang. Fragen Sie die On-Chain-IDL mit anchor idl fetch <PROGRAM_ID> --provider.cluster mainnet ab. Das Feld address der IDL sollte übereinstimmen. Die gleichen IDLs werden unter github.com/raydium-io/raydium-idl gespiegelt – vergleichen Sie die On-Chain-IDL mit dem Repo, bevor Sie ihr vertrauen.
  4. Config/Admin-Autoritäten. Für CPMM/CLMM Config-Konten lesen Sie das Feld owner/protocol_owner und bestätigen Sie, dass es dem aktuellen Raydium Multisig entspricht, das in security/admin-and-multisig veröffentlicht ist.
Falls einer der vier Überprüfungen oben mit dieser Seite nicht übereinstimmt, behandeln Sie diese Seite als falsch und öffnen Sie ein Issue, bevor Sie neuen Code gegen die Adressen schreiben.

Diese Seite aktualisieren

  • Änderungen an Programm-IDs sind sicherheitskritisch. Versenden Sie eine Programm-ID-Änderung nicht, ohne (a) auf die Raydium-Ankündigung zu verlinken, (b) einen Eintrag in reference/changelog hinzuzufügen und (c) eine Link-Überprüfung über die Docs auszuführen, um zu bestätigen, dass keine Seite noch auf den alten Wert verweist.
  • Veraltete Einträge bleiben in der Tabelle mit einer Status-Notiz, statt gelöscht zu werden – bestehende Pools werden weiterhin über das alte Programm aufgelöst.
Quellen: