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

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.

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

Модель комиссий

Stable AMM использует ту же структуру комиссий, что и AMM v4. В каждом пуле только один уровень комиссии (устанавливается при инициализации); пулы нельзя перенастроить на более высокие уровни.
ПараметрПо умолчаниюЗначение
swap_fee_numerator / swap_fee_denominator25 / 10_000Общая комиссия за сделку: 0,25% от объёма входа.
trade_fee_numerator / trade_fee_denominator25 / 10_000Та же 0,25%, используется интеграцией OpenBook для ценообразования ордеров.
pnl_numerator / pnl_denominator12 / 100Доля протокола из комиссии: 12% — то есть 0,25% × 12% = 0,03% от объёма.
min_separate_numerator / min_separate_denominator4 / 10_000Внутренний порог округления.
Здесь нет fund-fee и нет creator-fee — это более поздние изобретения (CPMM/CLMM). Stable AMM предшествует этому соглашению.

Как вычисляется распределение

При каждом свопе:
gross_fee = ceil(amount_in * (swap_fee_numerator / swap_fee_denominator))    // e.g., 0.25% of amount_in
pnl_portion = gross_fee * (pnl_numerator / pnl_denominator)                  // 12% of gross_fee
lp_portion = gross_fee − pnl_portion                                          // 88% of gross_fee
  • lp_portion остаётся в хранилище, увеличивает k и приносит выгоду LP при выводе.
  • pnl_portion увеличивает AmmInfo.out_put.need_take_pnl_coin или need_take_pnl_pc (в зависимости от входного токена) и выводится через WithdrawPnl.
Тот же инвариант-сохраняющий трюк, как в CPMM: сумма PnL физически находится в хранилище, но вычитается из «эффективных резервов», используемых в математике кривой, поэтому её удаление не смещает цену.

PnL из OpenBook (как в AMM v4)

Когда лимитные ордера пула на OpenBook исполняются, это может быть на стороне taker и приносить или терять спред маркет-мейкера/taker. Эти исполнения рассчитываются во время MonitorStep и кредитуют/дебетуют резервы пула. Программа отслеживает их в счётчиках out_put.total_pnl_{coin,pc} для аналитики. Этот OpenBook PnL отличается от 0,03% комиссии протокола. Он увеличивает резервы пула и приносит выгоду LP и протоколу пропорционально. Операционная связь с OpenBook — причина, по которой CPMM (независимый от книги ордеров) теперь стал стандартом для новых пулов.

Сбор комиссий

Мультиподпись Raydium (или тот, кто контролирует amm_admin) вызывает WithdrawPnl для сбора:
  1. Сначала завершает все ожидающие исполнения OpenBook (через внутреннюю логику крана).
  2. Переводит need_take_pnl_coin и need_take_pnl_pc из хранилищ в указанные администратором счета.
  3. Обнуляет счётчики.
Операция не перемещает кривую. LP не видят изменения цены.

Реализация комиссий LP

Нет отдельной инструкции «собрать комиссии». Комиссии LP накапливаются в хранилищах, увеличивая резервы. LP реализуют их путём сжигания LP через Withdraw. Стоимость токена LP растёт по мере роста резервов.

Визуализация: куда идут $1 000 объёма

При swap с сильной базой USDC на $1 000 против пула Stable с параметрами по умолчанию:
Общая комиссия за сделку (0,25%):     $2.50
  Доля LP   (0,22%):         $2.20  → остаётся в пуле, увеличивает k
  Доля PnL  (0,03%):         $0.30  → need_take_pnl_pc, выводится WithdrawPnl
Пользователь получит (минус кривая):  $997.50
Сравните с AMM v4 (идентично) и CPMM (уровень 0,25%, без creator fee): CPMM даёт LP $2,10, протоколу $0,30, фонду $0,10.

Таблица сравнения

Stable AMMAMM v4CPMM index=0
Комиссия за сделку0,25%0,25%0,25%
LP0,22%0,22%0,21%
Протокол0,03%0,03%0,03%
ФондНетНет0,01%
CreatorНетНет0 по умолчанию
Полная матрица: reference/fee-comparison.

Заметки для интеграторов

  • Котировки: Всегда читайте AmmInfo из блокчейна; не жёстко кодируйте комиссии. Принципиально SetParams может их изменить, хотя мультиподпись не меняла значения по умолчанию.
  • Кривая vs. комиссии: Комиссия 0,25% независима от того, является ли кривая формулой (x·y=k в AMM v4) или таблицей поиска (Stable). Обе применяют одну и ту же 0,25% к сумме входа.
  • Нет награждений: Пулы Stable не поддерживают выплаты вознаграждений на пуле. Экосистемные фермы (Farm v3/v5/v6) обрабатывают стейкинг отдельно.

Что дальше

Источники:
  • raydium-stable/program/src/state.rs (структура Fees)
  • Поля AmmInfo.fees на цепи в активных пулах mainnet