跳轉到主要內容

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.

本頁內容由 AI 自動翻譯,所有內容以英文版本為準。查看英文版 →
本文件中的所有內容都假設你已經安裝好 Solana 開發工具鏈。本頁列出了必需工具、截至 2026 年 4 月已知可與 Raydium 正常配合工作的最低版本,以及設定過程中的常見問題。在執行後續章節的程式碼範例前,請先閱讀此頁。

核心工具

Solana CLI

用於與 Solana 區塊鏈互動的標準命令列介面,支援錢包管理、RPC 呼叫和程式部署。 安裝:
sh -c "$(curl -sSfL https://release.solana.com/v1.18.22/install)"
# 或安裝最新穩定版:
sh -c "$(curl -sSfL https://release.solana.com/stable/install)"
驗證:
solana --version   # → solana-cli 1.18.22 (或更新版本)
設定主網:
solana config set --url https://api.mainnet-beta.solana.com
solana config set --keypair ~/.config/solana/id.json
solana-keygen new                           # 若你還沒有錢包,請建立一個
solana address                              # 顯示你的公鑰
測試 Raydium 時,你幾乎總是需要一個有資金的開發網錢包:
solana config set --url https://api.devnet.solana.com
solana airdrop 2                            # 用於測試的 2 SOL

SPL Token CLI

用於 SPL Token / Token-2022 操作的官方命令列工具,包括建立鑄幣、鑄造代幣和轉帳。 安裝(已包含在 Solana CLI 中):
spl-token --version
常見操作:
spl-token create-token                                  # 建立 SPL Token 鑄幣
spl-token create-token --program-id TOKEN_2022 ...      # 建立 Token-2022 鑄幣
spl-token create-account <MINT>                         # 建立 ATA
spl-token mint <MINT> 1000                              # 將 1000 代幣鑄造至你的 ATA
spl-token transfer <MINT> 100 <RECIPIENT>               # 轉帳 100 個代幣
spl-token display <ACCOUNT_OR_MINT>                     # 檢視詳情

Anchor CLI

用於獲取 Raydium IDL、構建用戶端和驗證程式。 安裝:
cargo install --git https://github.com/coral-xyz/anchor avm --locked
avm install 0.30.1
avm use 0.30.1
anchor --version
常見操作:
anchor idl fetch <PROGRAM_ID> -o program.idl.json       # 獲取鏈上 IDL
anchor idl init -f idl.json <PROGRAM_ID>                # 上傳 IDL
anchor build                                             # 從源程式碼構建程式

TypeScript 設定

Raydium 的主要整合方式。

套件

npm install \
  @solana/web3.js \
  @solana/spl-token \
  @coral-xyz/anchor \
  @raydium-io/raydium-sdk-v2 \
  bn.js \
  decimal.js
截至 2026 年 4 月已知能夠相互配合的版本:
套件版本
@solana/web3.js≥1.95
@solana/spl-token≥0.4
@coral-xyz/anchor≥0.30
@raydium-io/raydium-sdk-v2≥0.2.42-alpha

最小指令碼

import { Connection, Keypair } from "@solana/web3.js";
import { Raydium } from "@raydium-io/raydium-sdk-v2";

const connection = new Connection("https://api.mainnet-beta.solana.com", "confirmed");
const owner      = Keypair.fromSecretKey(/* your key */);

const raydium = await Raydium.load({
  connection,
  owner,
  cluster:      "mainnet",
  disableFeatureCheck: true,
});

const poolInfo = await raydium.api.fetchPoolById({ id: "..." });
console.log(poolInfo);
完整的 SDK 參考請見 sdk-api/typescript-sdk

Rust 設定

用於 CPI 整合和鏈上程式開發。

工具鏈

rustup install 1.76.0           # 或 Anchor 當前要求的版本
rustup component add rustfmt clippy
solana-install init 1.18.22     # 包含 BPF 工具鏈

Raydium CPI 整合的程式 Cargo.toml

[dependencies]
anchor-lang        = "0.30.1"
anchor-spl         = "0.30.1"
raydium-cp-swap    = { version = "0.2", features = ["cpi"] }
raydium-clmm       = { version = "0.1", features = ["cpi"] }
"cpi" 功能會匯入帶有 CPI 幫助函數的 cpi 模組(這樣你可以使用 raydium_cp_swap::cpi::swap_base_input(...))。詳見 sdk-api/rust-cpi

Python 設定

次要整合方式,常用於機器人開發者。

套件

pip install solders solana-py anchorpy
pip install raydium-py    # 社群 Raydium SDK (非官方)
版本:
套件版本
solders≥0.21
solana-py≥0.34
anchorpy≥0.21
raydium-py≥0.2.1

最小指令碼

from solana.rpc.async_api import AsyncClient
from solders.keypair import Keypair
from anchorpy import Provider, Wallet, Program

async def main():
    conn = AsyncClient("https://api.mainnet-beta.solana.com")
    owner = Keypair()
    wallet = Wallet(owner)
    provider = Provider(conn, wallet)

    # 載入 IDL 和程式
    with open("cpmm.idl.json") as f:
        idl = json.load(f)
    program = Program(idl, CPMM_PROGRAM_ID, provider)

    pool = await program.account["PoolState"].fetch(pool_id)
    print(pool)
詳見 sdk-api/python-integration

RPC 端點

公開的主網 RPC (api.mainnet-beta.solana.com) 受到嚴格的速率限制,在較重的負載下會被節流。若要正式使用,請獲取私有端點:
供應商說明
Helius最受歡迎;免費額度慷慨。
Triton企業級;高級定價,穩定可靠。
QuickNode穩定可靠;亞秒級延遲。
自有 RPC 節點硬體成本約 $500/月;完全可控。
設定:
const connection = new Connection("https://mainnet.helius-rpc.com/?api-key=...");
某些 RPC 操作需要特殊功能:
  • getProgramAccounts — 無限制的掃描成本較高;某些提供商會限制或按掃描次數收費。
  • getPriorityFeeEstimate — Helius 特定端點;其他提供商有等效功能。
  • geyser / WebSocket 串流 — 低延遲機器人需要;並非所有提供商都支援。

開發網和本地網

開發網

Solana 的公開測試區塊鏈。Raydium 在開發網上有部分部署:
  • 存在一些 CPMM 池用於測試。
  • AMM v4 有歷史開發網池。
  • CLMM 有幾個演示池。
  • Farm v6 已部署。
solana config set --url https://api.devnet.solana.com
solana airdrop 2
SDK 透過 cluster: "devnet" 支援開發網:
const raydium = await Raydium.load({ connection, owner, cluster: "devnet" });
注意:開發網池的流動性較低,可能存在過時的狀態。不要依賴開發網進行價格發現;僅將其用於構建和測試指令流。

帶有分叉主網狀態的本地網

為了進行更逼真的測試,可以將主網狀態分叉到本地驗證器:
solana-test-validator \
  --url https://api.mainnet-beta.solana.com \
  --clone CPMMoo8L3F4NbTegBCKVNunggL7H1Zpdmwpwh8KMoZ0F \
  --clone CAMMCzo5YL8w4VFF8KVHrK22GGUsp5VTaW7grrKgrWqK \
  --clone <SOME_POOL_ID> \
  --clone <SOME_MINT_ID>
這樣會將特定程式/帳戶狀態複製到本地主機,你可以在那裡自由交易。適用於:
  • 針對真實的 Raydium 程式測試你的 CPI 整合。
  • 使用修改後的參數重放交易以進行除錯。
  • 使用大量合成交易量進行壓力測試。
Raydium 團隊在主網部署前廣泛使用分叉本地網進行迴歸測試。

專案範本

TypeScript 整合入門

my-raydium-app/
├── package.json
├── tsconfig.json
├── src/
│   ├── swap.ts           # 交換範例
│   ├── add-liquidity.ts
│   └── read-pool.ts
└── .env                  # RPC URL、錢包路徑
最小的 package.json
{
  "name": "my-raydium-app",
  "type": "module",
  "scripts": { "swap": "tsx src/swap.ts" },
  "dependencies": {
    "@raydium-io/raydium-sdk-v2": "^0.2.42-alpha",
    "@solana/web3.js": "^1.95",
    "@solana/spl-token": "^0.4"
  },
  "devDependencies": {
    "@types/node": "^20",
    "tsx": "^4",
    "typescript": "^5"
  }
}

Anchor CPI 程式入門

my-raydium-cpi/
├── Anchor.toml
├── Cargo.toml
├── programs/
│   └── my-cpi/
│       ├── Cargo.toml
│       └── src/lib.rs
└── tests/
    └── my-cpi.ts
使用 Anchor 0.30:
anchor init my-raydium-cpi
cd my-raydium-cpi
# 在 Cargo.toml 中新增 raydium-cp-swap,並設定 features = ["cpi"]
anchor build
anchor test

實用的命令列工具

solana-keygen

solana-keygen new --outfile ./wallet.json          # 產生密鑰
solana-keygen pubkey ./wallet.json                 # 顯示公鑰

讀取任何帳戶

solana account <ADDRESS> --output json-compact
用於快速查看池狀態,無需解碼器。

程式日誌

solana logs | grep CPMMoo8                         # 跟蹤 CPMM 相關交易日誌

交易檢查

solana confirm <TX_SIGNATURE> -v                   # 格式化輸出日誌
或透過 explorer — 貼上簽名並查看「Program Logs」標籤。

環境衛生

為不同用途分開錢包

  • 開發錢包:持有測試網 SOL,用於構建。
  • 生產錢包:持有真實 SOL,僅用於部署/多簽提交。
  • 機器人熱錢包:餘額小,權限受限。
密鑰不應該硬編碼。使用環境變數或密鑰管理器。

.env 模式

# .env (不提交)
SOLANA_RPC_URL=https://mainnet.helius-rpc.com/?api-key=...
WALLET_PATH=/Users/you/.config/solana/id.json
import { config } from "dotenv";
config();

const connection = new Connection(process.env.SOLANA_RPC_URL!);

版本釘選

鎖定所有 Solana 生態系統依賴項。生態系統發展迅速;@solana/web3.js 的次要版本更新曾引入破壞性變化。應認真使用 package-lock.json / Cargo.lock

相關連結

來源: