このページは AI による自動翻訳です。すべての内容は英語版を正とします。英語版を表示 →
信頼できる情報源。 このページは、プログラムアドレスを逐語的にリストアップしている唯一の場所です。その他のページはここにリンクしています。ID が変更される場合は、ここでのみ更新してください。サイト内のすべての参照が一貫性を保ちます。実際のトランザクションに署名する前に、必ず値をライブ API(https://api-v3.raydium.io/main/info)と照合してください。
Mainnet-beta
ルール:ネット上にあるプログラム ID がこの表と一致しない場合は、トランザクションに署名しないでください。 不一致のプログラム ID は、Solana 上で資金を失う最も簡単な方法です。
オンチェーンプログラム
| プログラム | プログラム ID | ソース |
|---|
| AMM v4(ハイブリッド AMM + OpenBook) | 675kPX9MHTjS2zt1qfr1NYHuzeLXfQM9H24wFSUt1Mp8 | raydium-amm |
| CPMM(標準 AMM) | CPMMoo8L3F4NbTegBCKVNunggL7H1ZpdTHKxQB5qKP1C | raydium-cp-swap |
| CLMM(集中流動性) | CAMMCzo5YL8w4VFF8KVHrK22GGUsp5VTaW7grrKgrWqK | raydium-clmm |
| Stable AMM(StableSwap スタイルカーブ) | 5quBtoiQqxF9Jv6KYKctB59NT3gtJD2Y65kdnB1Uev3h | 公開されていません |
| Farm v3(レガシー RAY ステーキング) | EhhTKczWMGQt46ynNeRX1WfeagwwJd7ufHvCDjRxjo5Q | 公開されていません |
| Farm v5(レガシーエコシステムファーム) | 9KEPoZmtHUrBbhWN1v1KWLMkkvwY6WLtAVUCPRtRjP4z | 公開されていません |
| Farm v6(現在のエコシステムファーム) | FarmqiPv5eAj3j1GMdMCMUGXqPUvmquZtMy86QH6rzhG | 公開されていません |
| LaunchLab | LanMV9sAd7wArD4vJFi2qDdfnVhFxYSUg6eADduJ3uj | 公開されていません |
| AMM Routing(Raydium のオンチェーンルーター) | routeUGWgWzqBWFcrCfv8tritsqukccJPu3q5GPP3xS | 公開されていません |
| Burn & Earn / LP Lock | LockrWmn6K5twhz3y9w1dQERbmgSaRkfnTeTKbpofwE | 公開されていません |
注記:
- AMM v4 と Farm v3/v5 は既存のプールとポジション用に保持されています。Raydium UI と SDK は、新規プール作成と新規エコシステムファーム作成を CPMM、CLMM、Farm v6 にそれぞれ振り分けています。詳細は
protocol-overview/versions-and-migrationを参照してください。
- 上記の Farm v3 ID は、$RAY シングルアセットステーキングプログラムとしても機能します。LP ステーキングの動作は Farm v3 と同じです。
- Stable AMM は、AMM Routing プログラムが AMM v4、CPMM、CLMM と並行してターゲットできる別のプログラムです。他の 3 つのプログラムと比較してリクイディティは限定的であり、SDK はこれに対する第一級の API を公開していません。これを通じてルーティングするインテグレーターは、通常ルーターを経由して行います。
- ソースコードの可用性。 上記のオンチェーンプログラムのうち、
raydium-amm(AMM v4)、raydium-cp-swap(CPMM)、および raydium-clmm(CLMM)のみがgithub.com/raydium-io下の公開ソースリポジトリとともに提供されています。Stable AMM、LaunchLab、AMM Routing、Burn & Earn / LP Lock、および Farm プログラムは公開されていません。ライブ API、オンチェーンバイトコード、およびraydium-io/raydium-idlで公開されている IDL に対して検証してください。
共有管理者権限
すべての Anchor ベースのプログラム(CLMM、CPMM、LaunchLab、Lock)は、管理パス(CreateAmmConfig や UpdatePoolStatus など)への命令レベルのアクセス制御のために、単一のハードコードされた管理者 Pubkey を共有します:
| クラスター | 管理者 |
|---|
| mainnet-beta | GThUX1Atko4tqhN2NaiTazWSeFWMuiUvfFnyJyUghFMJ |
| devnet | DRayqG9RXYi8WHgWEmRQGrUWRWbhjYWYkCRJDd6JBBak |
アカウントレベルの運用権限(例:CPMM/CLMM AmmConfig の protocol_owner、fund_owner、または LaunchLab GlobalConfig のマイグレーションウォレット)はオンチェーンに保存され、プログラム管理者と異なる場合があります。高リスクのトランザクションを送信する前に、関連するコンフィグアカウントから直接読み取ります。
共有コンフィグ / PDA 規約
複数の Raydium プログラムは、公開キーが安定しているコンフィグアカウントを公開 API にリストアップしています。ハードコーディングよりも API ルックアップを優先してください:
# CPMM フィーコンフィグ({id, index, tradeFeeRate, ...} の配列を返す)
GET https://api-v3.raydium.io/main/cpmm-config
# CLMM フィーコンフィグ
GET https://api-v3.raydium.io/main/clmm-config
デフォルト CPMM AmmConfig インデックス 0(標準 0.25% プール)のフィーパラメーター(参考):
| フィールド | 値 | 意味 |
|---|
trade_fee_rate | 2500 | 取引量の 0.25% |
protocol_fee_rate | 120000 | トレードフィーの 12%(取引量ではなく)プロトコルにルーティング |
fund_fee_rate | 40000 | トレードフィーの 4% がファンドマルチシグにルーティング |
creator_fee_rate | 500 | 取引量の 0.05% がプールクリエーターに(オプション) |
分割方法の構成についてはproducts/cpmm/feesを参照し、クロスプロダクト行列についてはreference/fee-comparisonを参照してください。
PDA シード
以下のシードは正規で、SDK とオンチェーン CPI の両方で使用されます。常に PDA を計算し、派生アドレスをハードコードしないでください。
// CPMM — すべてのシードは特記されない限り、静的 ASCII 文字列です。
const [ammConfig] = PublicKey.findProgramAddressSync(
[Buffer.from("amm_config"), u16ToBytes(index)],
CPMM_PROGRAM_ID,
);
const [authority] = PublicKey.findProgramAddressSync(
[Buffer.from("vault_and_lp_mint_auth_seed")],
CPMM_PROGRAM_ID,
);
const [poolState] = PublicKey.findProgramAddressSync(
[Buffer.from("pool"), ammConfig.toBuffer(), token0Mint.toBuffer(), token1Mint.toBuffer()],
CPMM_PROGRAM_ID,
);
const [lpMint] = PublicKey.findProgramAddressSync(
[Buffer.from("pool_lp_mint"), poolState.toBuffer()],
CPMM_PROGRAM_ID,
);
const [vault0] = PublicKey.findProgramAddressSync(
[Buffer.from("pool_vault"), poolState.toBuffer(), token0Mint.toBuffer()],
CPMM_PROGRAM_ID,
);
const [vault1] = PublicKey.findProgramAddressSync(
[Buffer.from("pool_vault"), poolState.toBuffer(), token1Mint.toBuffer()],
CPMM_PROGRAM_ID,
);
const [observation] = PublicKey.findProgramAddressSync(
[Buffer.from("observation"), poolState.toBuffer()],
CPMM_PROGRAM_ID,
);
token0Mint / token1Mint は、ハッシング前に公開キーバイト順でソートされます(token0 < token1)。これを誤るとエクスタントプールの有効な PDA が生成されます。
同等の CLMM シードは同じスタイルに従います。詳細はproducts/clmm/accountsを参照してください。
Devnet
| プログラム | プログラム ID |
|---|
| AMM v4 | DRaya7Kj3aMWQSy19kSjvmuwq9docCHofyP9kanQGaav |
| CPMM | DRaycpLY18LhpbydsBWbVJtxpNv9oXPgjRSfpF2bWpYb |
| CLMM | DRayAUgENGQBKVaX8owNhgzkEDyoHTGVEGHVJT1E9pfH |
| Stable AMM | DRayDdXc1NZQ9C3hRWmoSf8zK4iapgMnjdNZWrfwsP8m |
| LaunchLab | DRay6fNdQ5J82H7xV6uq2aV3mNrUZ1J4PgSKsWgptcm6 |
| AMM Routing | DRaybByLpbUL57LJARs3j8BitTxVfzBg351EaMr5UTCd |
| Burn & Earn / LP Lock | DLockwT7X7sxtLmGH9g5kmfcjaBtncdbUmi738m5bvQC |
| Farm v3 / v5 / v6 | devnet 用に確実に公開されていません。使用前にライブ API(https://api-v3-devnet.raydium.io/main/info)で確認してください。 |
Devnet REST API ベース:https://api-v3-devnet.raydium.io/(mainnet と同じルート構造)。
オンチェーンアドレスを検証する方法
- Solana Explorer。 アドレスをexplorer.solana.comに貼り付け、それが
Programとして表示され、現在のアップグレード権限があることを確認します。Mainnet-beta は Raydium のアップグレード権限によって署名されたデプロイを表示する必要があります。
- CLI。
solana program show <PROGRAM_ID> -u mainnet-betaを使用して、デプロイスロット、BPF ローダー、アップグレード権限、およびデータ長を検査します。これらを実行書に記録します。
- IDL 添付。
anchor idl fetch <PROGRAM_ID> --provider.cluster mainnetでオンチェーン IDL をクエリします。IDL のaddressフィールドが一致する必要があります。同じ IDL はgithub.com/raydium-io/raydium-idlにもミラーリングされています。信頼する前に、オンチェーン IDL とリポジトリを比較してください。
- コンフィグ/管理者権限。 CPMM/CLMM コンフィグアカウントについては、
owner/protocol_ownerフィールドを読み取り、security/admin-and-multisigで公開されている現在の Raydium マルチシグと一致することを確認します。
上記の 4 つのチェックのいずれかがこのページと矛盾する場合、このページが間違っていると判断し、新しいコードをアドレスに対して作成する前に issue を開いてください。
このページを更新する方法
- プログラム ID への変更はセーフティクリティカルです。(a)Raydium アナウンスへのリンク、(b)
reference/changelogへのエントリ追加、および(c)ドキュメント全体のリンクチェック実行を行わずに、プログラム ID の変更を公開しないでください。古い値を参照しているページがないことを確認します。
- 廃止予定事項は、削除されるのではなく、ステータスノート付きでテーブルに留まります。既存のプールは古いプログラムを通じて解決されます。
情報源: