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. На этой странице перечислены инструменты, минимальные версии, совместимые с Raydium по состоянию на апрель 2026 года, а также описаны особенности настройки. Начните отсюда перед запуском примеров кода из последующих глав.
Основные инструменты
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 (или новее)
Конфигурация для mainnet:
solana config set --url https://api.mainnet-beta.solana.com
solana config set --keypair ~/.config/solana/id.json
solana-keygen new # создайте кошелёк, если его ещё нет
solana address # ваш публичный ключ
Для тестирования Raydium потребуется кошелёк на devnet с балансом:
solana config set --url https://api.devnet.solana.com
solana airdrop 2 # 2 SOL для тестирования
SPL Token CLI
Официальный CLI для операций SPL Token / Token-2022 — создание минтов, эмиссия токенов, переводы.
Установка (включён в Solana CLI):
Основные операции:
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
Требуется для получения IDL Raydium, создания клиентов и проверки программ.
Установка:
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:
| Пакет | Версия |
|---|
@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 набор инструментов включён
Cargo.toml программы для интеграции Raydium CPI
[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 # SDK Raydium сообщества (не официальный)
Версии:
| Пакет | Версия |
|---|
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 эндпоинты
Публичный mainnet RPC (api.mainnet-beta.solana.com) имеет жёсткие ограничения по частоте запросов и выдаёт throttle под нагрузкой. Для серьёзного использования получите приватный эндпоинт:
| Поставщик | Примечания |
|---|
| Helius | Самый популярный; щедрый бесплатный уровень. |
| Triton | Корпоративный; премиум-цены, стабильность. |
| QuickNode | Качественный; латентность менее секунды. |
| Собственный узел RPC | Стоит ~$500/мес на оборудовании; полный контроль. |
Конфигурация:
const connection = new Connection("https://mainnet.helius-rpc.com/?api-key=...");
Некоторые RPC операции требуют расширенные возможности:
getProgramAccounts — неограниченные сканы дороги; некоторые поставщики могут блокировать или взимать плату за сканирование.
getPriorityFeeEstimate — специфичный для Helius эндпоинт; у других есть аналоги.
geyser / WebSocket потоковая передача — требуется для низкоточных ботов; не все поставщики предоставляют.
Devnet и localnet
Devnet
Публичный тестовый кластер Solana. Raydium имеет частичное развёртывание на devnet:
- Некоторые пулы CPMM существуют для тестирования.
- AMM v4 имеет исторические пулы на devnet.
- CLMM имеет несколько демопулов.
- Farm v6 развёрнут.
solana config set --url https://api.devnet.solana.com
solana airdrop 2
SDK поддерживает devnet через cluster: "devnet":
const raydium = await Raydium.load({ connection, owner, cluster: "devnet" });
Важно: пулы на devnet имеют тонкую ликвидность и могут иметь устаревшее состояние. Не полагайтесь на devnet для определения цен; используйте его только для построения и тестирования потоков инструкций.
Localnet с состоянием форка mainnet
Для реалистичного тестирования форкируйте состояние mainnet в локальный валидатор:
solana-test-validator \
--url https://api.mainnet-beta.solana.com \
--clone CPMMoo8L3F4NbTegBCKVNunggL7H1Zpdmwpwh8KMoZ0F \
--clone CAMMCzo5YL8w4VFF8KVHrK22GGUsp5VTaW7grrKgrWqK \
--clone <SOME_POOL_ID> \
--clone <SOME_MINT_ID>
Это клонирует определённое состояние программы/аккаунта на localhost, где вы можете свободно проводить транзакции. Идеально для:
- Юнит-тестирования интеграции CPI с реальной программой Raydium.
- Воспроизведения транзакции с изменённым параметром для отладки.
- Стресс-тестирования с большими синтетическими объёмами.
Команда Raydium активно использует форкированный localnet для регрессионного тестирования перед развёртыванием на mainnet.
Шаблоны проектов
Стартовый шаблон интеграции TypeScript
my-raydium-app/
├── package.json
├── tsconfig.json
├── src/
│ ├── swap.ts # пример swap
│ ├── 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
# добавить raydium-cp-swap в Cargo.toml с features = ["cpi"]
anchor build
anchor test
Полезные CLI утилиты
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 testnet, используется для построения.
- Production кошелёк: содержит реальные 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 ранее приводило к breaking changes. Используйте package-lock.json / Cargo.lock религиозно.
Ссылки
Источники: