> ## 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.

# プログラムアドレス

> Solana mainnet-beta と devnet における Raydium プログラムの正規 ID と共有 PDA。サイト内の他のページはこちらのページにリンクしてアドレスをハードコードしていません。

<Info>
  **このページは AI による自動翻訳です。すべての内容は英語版を正とします。**

  [英語版を表示 →](/reference/program-addresses)
</Info>

<Info>
  **信頼できる情報源。** このページは、プログラムアドレスを逐語的にリストアップしている唯一の場所です。その他のページはここにリンクしています。ID が変更される場合は、**ここでのみ**更新してください。サイト内のすべての参照が一貫性を保ちます。

  実際のトランザクションに署名する前に、必ず値をライブ API（`https://api-v3.raydium.io/main/info`）と照合してください。
</Info>

## Mainnet-beta

<Tip>
  ルール：ネット上にあるプログラム ID がこの表と一致しない場合は、**トランザクションに署名しないでください。** 不一致のプログラム ID は、Solana 上で資金を失う最も簡単な方法です。
</Tip>

### オンチェーンプログラム

| プログラム                                | プログラム ID                                       | ソース                                                              |
| ------------------------------------ | ---------------------------------------------- | ---------------------------------------------------------------- |
| **AMM v4**（ハイブリッド AMM + OpenBook）    | `675kPX9MHTjS2zt1qfr1NYHuzeLXfQM9H24wFSUt1Mp8` | [raydium-amm](https://github.com/raydium-io/raydium-amm)         |
| **CPMM**（標準 AMM）                     | `CPMMoo8L3F4NbTegBCKVNunggL7H1ZpdTHKxQB5qKP1C` | [raydium-cp-swap](https://github.com/raydium-io/raydium-cp-swap) |
| **CLMM**（集中流動性）                      | `CAMMCzo5YL8w4VFF8KVHrK22GGUsp5VTaW7grrKgrWqK` | [raydium-clmm](https://github.com/raydium-io/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`](/ja/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`](https://github.com/raydium-io)下の公開ソースリポジトリとともに提供されています。Stable AMM、LaunchLab、AMM Routing、Burn & Earn / LP Lock、および Farm プログラムは公開されていません。ライブ API、オンチェーンバイトコード、および[`raydium-io/raydium-idl`](https://github.com/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`](/ja/products/cpmm/fees)を参照し、クロスプロダクト行列については[`reference/fee-comparison`](/ja/reference/fee-comparison)を参照してください。

### PDA シード

以下のシードは**正規**で、SDK とオンチェーン CPI の両方で使用されます。常に PDA を計算し、派生アドレスをハードコードしないでください。

```ts theme={null}
// 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`](/ja/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 と同じルート構造）。

## オンチェーンアドレスを検証する方法

1. **Solana Explorer。** アドレスを[explorer.solana.com](https://explorer.solana.com)に貼り付け、それが`Program`として表示され、現在のアップグレード権限があることを確認します。Mainnet-beta は Raydium のアップグレード権限によって署名されたデプロイを表示する必要があります。
2. **CLI。** `solana program show <PROGRAM_ID> -u mainnet-beta`を使用して、デプロイスロット、BPF ローダー、アップグレード権限、およびデータ長を検査します。これらを実行書に記録します。
3. **IDL 添付。** `anchor idl fetch <PROGRAM_ID> --provider.cluster mainnet`でオンチェーン IDL をクエリします。IDL の`address`フィールドが一致する必要があります。同じ IDL は[github.com/raydium-io/raydium-idl](https://github.com/raydium-io/raydium-idl)にもミラーリングされています。信頼する前に、オンチェーン IDL とリポジトリを比較してください。
4. **コンフィグ/管理者権限。** CPMM/CLMM コンフィグアカウントについては、`owner`/`protocol_owner`フィールドを読み取り、[`security/admin-and-multisig`](/ja/security/admin-and-multisig)で公開されている現在の Raydium マルチシグと一致することを確認します。

上記の 4 つのチェックのいずれかがこのページと矛盾する場合、このページが間違っていると判断し、新しいコードをアドレスに対して作成する前に issue を開いてください。

## このページを更新する方法

* プログラム ID への変更はセーフティクリティカルです。（a）Raydium アナウンスへのリンク、（b）[`reference/changelog`](/ja/reference/changelog)へのエントリ追加、および（c）ドキュメント全体のリンクチェック実行を行わずに、プログラム ID の変更を公開しないでください。古い値を参照しているページがないことを確認します。
* 廃止予定事項は、削除されるのではなく、ステータスノート付きでテーブルに留まります。既存のプールは古いプログラムを通じて解決されます。

情報源：

* ライブ API：`https://api-v3.raydium.io/main/info`
* [github.com/raydium-io/raydium-idl](https://github.com/raydium-io/raydium-idl)
* [github.com/raydium-io/raydium-cp-swap](https://github.com/raydium-io/raydium-cp-swap)
