Перейти к основному содержанию

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.

Эта страница переведена с помощью ИИ. За эталон принимается английская версия.Открыть английскую версию →

Что это

AMM Routing — это программа-маршрутизатор CPI, которая выполняет многошаговые свопы через пулы Raydium в одной транзакции. Вместо того чтобы собирать N дочерних CPI на клиенте, вы один раз вызываете маршрутизатор и передаёте маршрут как список аккаунтов. Маршрутизатор направляет каждый шаг в соответствующую программу пула (AMM v4, CPMM, CLMM или Stable) и цепляет выход одного шага как вход в следующий. ID программы: см. reference/program-addresses. Devnet: DRaybByLpbUL57LJARs3j8BitTxVfzBg351EaMr5UTCd. Модель аккаунтов: каждый промежуточный токен проходит через принадлежащий пользователю ATA. Пользователь подписывает входной ATA и предоставляет каждый промежуточный ATA в списке аккаунтов. Рекомендуемые точки входа свопа — тег 8 (SwapBaseIn) и тег 9 (SwapBaseOut), которые принимают пустую очередь limit_prices при отсутствии CLMM в маршруте.

Содержание раздела

Обзор

Что делает маршрутизатор, зачем он нужен и когда использовать его вместо сборки со стороны клиента.

Аккаунты

Структура пользовательского ATA, блок аккаунтов на каждый шаг и как маршрутизатор определяет направление по ID программы.

Математика

Маршрутизатор не выполняет расчёты. Каждый шаг ценообразуется по своей кривой. Проскальзывание накапливается на шагах; limit_prices для CLMM.

Инструкции

Справка по шести вариантам инструкций: точный ввод / точный вывод Current (8 / 9) и Legacy (0 / 1) свопы, плюс утилиты wSOL (5 / 6).

Комиссии

Комиссия маршрутизатора отсутствует. Каждый шаг платит комиссию своей программы пула. Стоимость CU масштабируется линейно с количеством шагов.

Примеры кода

Примеры TypeScript с использованием SDK и сборкой необработанных инструкций.

Когда читать это

  • Вам нужно выполнить маршрут с 2 и более шагами в одной транзакции.
  • Вы реализуете программу, которая вызывает CPI маршрутизатор.
  • Вы — агрегатор, выбирающий между сборкой со стороны клиента и маршрутизацией на цепи.

Что дальше

Источники:
  • reference/program-addresses для канонического ID программы
  • raydium-io/raydium-programs/raydium-route для исходного кода