> ## 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 Маршрутизация

> Программа, которая объединяет свопы через несколько пулов (AMM v4, CPMM, CLMM, Stable) в одной транзакции с управляемыми пользователем промежуточными ATA.

<Info>
  **Эта страница переведена с помощью ИИ. За эталон принимается английская версия.**

  [Открыть английскую версию →](/products/routing/index)
</Info>

## Что это

AMM Routing — это программа-маршрутизатор CPI, которая выполняет многошаговые свопы через пулы Raydium в одной транзакции. Вместо того чтобы собирать N дочерних CPI на клиенте, вы один раз вызываете маршрутизатор и передаёте маршрут как список аккаунтов. Маршрутизатор направляет каждый шаг в соответствующую программу пула (AMM v4, CPMM, CLMM или Stable) и цепляет выход одного шага как вход в следующий.

**ID программы:** см. [`reference/program-addresses`](/ru/reference/program-addresses).

**Devnet:** `DRaybByLpbUL57LJARs3j8BitTxVfzBg351EaMr5UTCd`.

**Модель аккаунтов:** каждый промежуточный токен проходит через **принадлежащий пользователю ATA**. Пользователь подписывает входной ATA и предоставляет каждый промежуточный ATA в списке аккаунтов. Рекомендуемые точки входа свопа — тег 8 (`SwapBaseIn`) и тег 9 (`SwapBaseOut`), которые принимают пустую очередь `limit_prices` при отсутствии CLMM в маршруте.

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

<CardGroup cols={2}>
  <Card title="Обзор" icon="circle-info" href="/ru/products/routing/overview">
    Что делает маршрутизатор, зачем он нужен и когда использовать его вместо сборки со стороны клиента.
  </Card>

  <Card title="Аккаунты" icon="database" href="/ru/products/routing/accounts">
    Структура пользовательского ATA, блок аккаунтов на каждый шаг и как маршрутизатор определяет направление по ID программы.
  </Card>

  <Card title="Математика" icon="function" href="/ru/products/routing/math">
    Маршрутизатор не выполняет расчёты. Каждый шаг ценообразуется по своей кривой. Проскальзывание накапливается на шагах; `limit_prices` для CLMM.
  </Card>

  <Card title="Инструкции" icon="terminal" href="/ru/products/routing/instructions">
    Справка по шести вариантам инструкций: точный ввод / точный вывод Current (8 / 9) и Legacy (0 / 1) свопы, плюс утилиты wSOL (5 / 6).
  </Card>

  <Card title="Комиссии" icon="percent" href="/ru/products/routing/fees">
    Комиссия маршрутизатора отсутствует. Каждый шаг платит комиссию своей программы пула. Стоимость CU масштабируется линейно с количеством шагов.
  </Card>

  <Card title="Примеры кода" icon="code" href="/ru/products/routing/code-demos">
    Примеры TypeScript с использованием SDK и сборкой необработанных инструкций.
  </Card>
</CardGroup>

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

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

## Что дальше

* [`products/routing/overview`](/ru/products/routing/overview) — дизайн и обоснование.
* [`products/routing/instructions`](/ru/products/routing/instructions) — полная справка по инструкциям.
* [`integration-guides/routing-and-mev`](/ru/integration-guides/routing-and-mev) — общая стратегия маршрутизации.
* [`integration-guides/aggregator`](/ru/integration-guides/aggregator) — когда использовать маршрутизатор в контексте агрегатора.

Источники:

* [`reference/program-addresses`](/ru/reference/program-addresses) для канонического ID программы
* `raydium-io/raydium-programs/raydium-route` для исходного кода
