> ## 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.

# Обзор CPMM

> Что такое CPMM Raydium (Standard AMM), чем он отличается от AMM v4 и когда его выбирать.

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

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

## Краткое резюме в одном абзаце

CPMM — **C**onstant **P**roduct **M**arket **M**aker, в интерфейсе Raydium официально известный как "Standard AMM" — это нативная реализация на Solana классической AMM с формулой `x · y = k`. Без OpenBook order book, без наследия Serum, без внешних зависимостей кроме SPL Token и Token-2022. Каждый пул представляет собой тройку (два хранилища токенов, один LP mint), управляемую программой через PDA-авторитет и оцениваемую произведением балансов хранилищ. Это AMM, который Raydium рекомендует для всех новых пулов с константным произведением, и именно это используют эндпоинт `/pools/create` и поток "Create pool" в веб-интерфейсе по умолчанию.

## Что вы получаете с CPMM

* **Token-2022 с проверенным allow-list расширений.** CPMM **не** принимает произвольные Token-2022 minты. Программа при создании пула применяет whitelist безопасных расширений: `TransferFeeConfig`, `MetadataPointer`, `TokenMetadata`, `InterestBearingConfig` и `ScaledUiAmount`. Любое другое расширение на минте приводит к отказу `Initialize` с ошибкой `NotSupportMint` — если только сам mint не находится в небольшом жёстко закодированном allow-list, который поддерживается в программе (используется для подключения специфических mintов в индивидуальном порядке). Комиссии за передачу, в частности, влияют на математику свопа и применяются с правильной стороны торговли — см. [`algorithms/token-2022-transfer-fees`](/ru/algorithms/token-2022-transfer-fees).
* **Предсказуемые комиссии.** Каждый пул ссылается на `AmmConfig`, выбранный при создании. Конфиг содержит торговую комиссию (распределяемую между LP, протоколом и фондом) и отдельную независимую комиссию создателя. Комиссия создателя — это отдельный бакет, никогда не часть торговой комиссии. Пулы выбирают её взимание при создании. Значения по умолчанию и полная математика распределения описаны в [`products/cpmm/fees`](/ru/products/cpmm/fees).
* **On-chain TWAP через буфер кольца наблюдений.** Каждый своп обновляет аккаунт `observation`. Внешние контракты могут прочитать кумулятивное наблюдение цены для вычисления TWAP без пользовательского оракула.
* **Плоская структура аккаунтов.** Пул полностью описывается шестью PDA (авторитет, состояние пула, LP mint, два хранилища, наблюдение). Никаких per-market аккаунтов OpenBook, никакой event queue, никакой request queue. Транзакции дешевле как по вычислениям, так и по количеству аккаунтов, чем AMM v4.
* **Совместимость с Burn-and-earn.** LP токены можно заблокировать под программой [LP Lock](/ru/reference/program-addresses), чтобы создатель пула мог продолжать получать комиссии без сохранения права на вывод ликвидности. Используется для запусков "постоянной" ликвидности.

## Чем CPMM не является

* **Не концентрированный.** Ликвидность распределяется равномерно по всему ценовому диапазону, как в Uniswap v2. Если вам нужен капиталоэффективный маркет-мейкинг — то есть концентрация ликвидности рядом с текущей ценой — используйте [CLMM](/ru/products/clmm).
* **Не гибридный.** В отличие от [AMM v4](/ru/products/amm-v4), пулы CPMM не размещают ордера на покой на OpenBook маркете. Маршрутизация через пулы CPMM происходит через программу [AMM Routing](/ru/reference/program-addresses), а не через CLOB.
* **Не запускаемый для произвольных кривых.** Кривая жёстко закодирована как константное произведение. Если вам нужна bonding curve для запуска токена, используйте [LaunchLab](/ru/products/launchlab), который переходит в пул CPMM при заполнении.

## Как CPMM отличается от AMM v4

| Аспект                          | AMM v4                                                                               | CPMM                                  |
| ------------------------------- | ------------------------------------------------------------------------------------ | ------------------------------------- |
| Кривая                          | Константное произведение                                                             | Константное произведение              |
| Зависимость от OpenBook         | Неактивна (первоначально размещала ордера на OpenBook маркете; интеграция отключена) | Нет                                   |
| Поддержка Token-2022            | Нет (только SPL Token)                                                               | **Да** (включая комиссии за передачу) |
| Количество аккаунтов на V2 своп | \~9                                                                                  | \~11                                  |
| Compute units на своп           | \~80k–120k (путь V2)                                                                 | \~60k–100k                            |
| TWAP оракул                     | Нет нативного аккаунта оракула                                                       | буфер кольца `observation`            |
| Создание нового пула сегодня    | Не по умолчанию (программа всё ещё принимает)                                        | По умолчанию                          |
| Статус                          | Полностью рабочий                                                                    | Активный, рекомендуемый               |

Более подробное описание истории миграции находится в [`protocol-overview/versions-and-migration`](/ru/protocol-overview/versions-and-migration).

## Концептуальная модель

Пул CPMM — это объект, принадлежащий программе, содержащий три баланса: `vault0` (token0), `vault1` (token1) и предложение LP mint. Предложение LP mint отслеживает претензию депозиторов на пул; хранилища токенов содержат фактические активы. Всё остальное — PDA авторитета, аккаунт наблюдения, указатель конфига комиссии — это документооборот, чтобы сделать эти три переменные tradable, fee-collecting и observable.

Каждая операция, видимая пользователю, сводится к хорошо определённому переходу состояния:

* **Deposit:** передача token0 и token1 в пул, минтирование LP пользователю, без изменения цены.
* **Withdraw:** сжигание LP пользователя, передача token0 и token1 в текущем соотношении пула, без изменения цены.
* **Swap:** передача одного токена, получение другого; соотношение движется вдоль кривой `x · y = k` (минус комиссии); аккаунт наблюдения записывает новую цену.

Сбор комиссий (`CollectProtocolFee`, `CollectFundFee`) — это отдельная транзакция, подписанная соответствующим авторитетом; это не происходит на каждом своппе. Математика описана в [`products/cpmm/math`](/ru/products/cpmm/math), а набор инструкций в [`products/cpmm/instructions`](/ru/products/cpmm/instructions).

## Когда выбрать CPMM

Выбирайте CPMM когда:

* Вы запускаете новый токен или новую пару и не имеете сильного мнения о том, какой диапазон будет видеть торговлю.
* Один или оба токена используют расширения Token-2022.
* Вы хотите простую модель комиссии за торговлю вместо динамической, основанной на тиках.
* Вы интегрируетесь и хотите маршрутизировать через Raydium без усложнения, связанного с позициями CLMM.

Предпочитайте [CLMM](/ru/products/clmm) когда:

* Пара стабильная или высоко коррелирована (stablecoin-stablecoin, LST-SOL) и вы хотите концентрировать ликвидность рядом с паритетом.
* Вы команда маркет-мейкеров, готовая активно управлять диапазонами для более высокого APR по комиссиям на доллар TVL.

Предпочитайте [AMM v4](/ru/products/amm-v4) когда:

* Вы мигрируете существующий инструментарий AMM v4 и не создаёте новый пул.

(Примечание: гибридный режим OpenBook в AMM v4 больше не активен — это не причина выбирать AMM v4.)

## Что дальше

* [Accounts](/ru/products/cpmm/accounts) — шесть PDA пула CPMM и как их получить.
* [Math](/ru/products/cpmm/math) — `SwapBaseInput` vs `SwapBaseOutput`, обработка комиссий за передачу Token-2022, обновления наблюдений.
* [Instructions](/ru/products/cpmm/instructions) — полная поверхность инструкций со списками аккаунтов.
* [Fees](/ru/products/cpmm/fees) — четырёхсторонний раздел комиссий и как их собирать.
* [Code demos](/ru/products/cpmm/code-demos) — запускаемые фрагменты TypeScript для create / swap / deposit / withdraw.

Источники:

* [Исходный код Raydium CP-Swap — `raydium-io/raydium-cp-swap`](https://github.com/raydium-io/raydium-cp-swap)
* [`reference/program-addresses`](/ru/reference/program-addresses) для канонических ID программ
