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.
Эта страница переведена с помощью ИИ. За эталон принимается английская версия.Открыть английскую версию →
Информация о версии.
- SDK:
@raydium-io/raydium-sdk-v2@0.2.42-alpha - Кластер: Solana
mainnet-beta - ID программы Stable AMM:
5quBtoiQqxF9Jv6KYKctB59NT3gtJD2Y65kdnB1Uev3h(см.reference/program-addresses) - Последняя проверка: 2026-04
liquidity SDK изначально поддерживает пулы Stable AMM. Стабильные пулы отображаются как version: 5 (или pooltype: "StablePool") на ApiV3PoolInfoStandardItem; те же вспомогательные функции addLiquidity / removeLiquidity / swap работают для них так же, как для пулов constant-product AMM v4 (version: 4) — SDK определяет вариант и автоматически генерирует правильные инструкции. Off-chain математика стабильной кривой находится в src/raydium/liquidity/stable.ts.Установка
Определение пула Stable
Два эквивалентных признака наApiV3PoolInfoStandardItem:
version: 4, constant-product), так и Stable AMM (version: 5) проходят через один и тот же API LiquidityModule в SDK. Внутри модуль распределяет работу между:
InstructionType.AmmV4AddLiquidity/AmmV4RemoveLiquidityдля пулов v4InstructionType.AmmV5AddLiquidity/AmmV5RemoveLiquidityдля пулов v5 (Stable)
programId пула (возвращаемый вместе с ключами пула) подсказывает SDK, в какую программу выполнить CPI; вам не нужно его жёстко кодировать.
Поиск пула по паре монет
Обмен через пул Stable
ПотокLiquidityModule.swap имеет ту же форму, что и для пулов v4 — просто передайте ему объект пула v5:
programId пула из ключей пула и распределяет работу в программу Stable AMM. Специальный аргумент programId не требуется.
Добавление и удаление ликвидности
addLiquidity и removeLiquidity работают идентично для пулов v4 и v5:
InstructionType.AmmV5AddLiquidity, потому что pooltype.includes("StablePool") имеет значение true. Соответствующий поток removeLiquidity симметричен — передайте lpAmount и минимальные размеры, которые вы примете с каждой стороны.
Вспомогательные функции off-chain quote (stable.ts)
Для server-side расчётов цены или backtesting SDK предоставляет базовую математику стабильной кривой:ModelDataInfo на цепи загружаются один раз функцией initLayout() и кэшируются в raydium.liquidity.stableLayout. Передайте текущие резервы (x, y), и вспомогательные функции рассчитают, выполняя двоичный поиск в таблице поиска и линейно интерполируя между двумя окружающими строками DataElement. См. products/stable/math для базового алгоритма.
Маршрутизация через AMM Routing (multi-hop / лучшая цена)
Если вы не хотите самостоятельно выбирать площадку, программа AMM Routing рассмотрит все пулы Raydium AMM (v4 / CPMM / CLMM / Stable) и проведёт маршрут через ту комбинацию, которая лучше всего:Рекомендации
- Для обменов конечных пользователей предпочитайте поток маршрутизации
tradeV2. Он обрабатывает все типы пулов Raydium, включая Stable. - Для операций, специфичных для пула (добавление / удаление LP в известном пуле Stable) используйте
LiquidityModuleнапрямую — он автоматически определяет пулы v5. - Для off-chain расчёта цены / аналитики вызывайте
getStablePrice/getDyByDxBaseIn/getDxByDyBaseInпослеinitLayout(). Нет RPC-трафика за расчёт после кэширования данных модели. - Не кодируйте вручную сырые инструкции
SwapBaseIn. Программа Stable AMM (разветвлённая от AMM v4) ожидает 17–19 счётов OpenBook для V1 swap entrypoints, сmodel_data_accountсреди них. Встроенные вспомогательные функции SDK правильно обрабатывают каждый счёт и порядок; самостоятельная реализация подвержена ошибкам.
Что дальше
- Math — как работает интерполяция таблицы поиска.
- Instructions — полный справочник инструкций.
- AMM Routing — маршрутизация между несколькими пулами через AMM v4, CPMM, CLMM, Stable.
raydium-sdk-V2/src/raydium/liquidity/liquidity.ts— точка входа модуля; распределение v4 / v5.raydium-sdk-V2/src/raydium/liquidity/stable.ts—StableLayout,getStablePrice,getDxByDyBaseIn,getDyByDxBaseIn.


