Кальтер / Блог

DEX и AMM: как пул заменяет книгу заявок при обмене токенов

DEX и AMM: как пул токенов формирует цену, что означают price impact, slippage и minimum received.

Материал подготовлен с помощью ИИ; источники и расчёты проверены редакцией ZASLON.

AMM рассчитывает обмен через соотношение резервов в пуле; на схеме: Токен A в пуле, Функция AMM, Токен B в пуле.
Редакционная схема ZASLON. Условная иллюстрация механизма; не рыночные данные и не интерфейс сервиса.

DEX позволяет обменивать токены через децентрализованный протокол. Один из вариантов такой торговли — AMM: смарт-контракт хранит резервы токенов и задаёт цену формулой. Например, в модели Uniswap constant-product произведение резервов связано формулой x·y=k; это объясняет, почему крупная относительно резерва сделка сильнее сдвигает цену. Это модель конкретного типа AMM, не описание каждого протокола (механика Uniswap AMM). Ethereum объясняет DeFi и смарт-контракты как программируемую инфраструктуру DeFi.

Как происходит обмен

Пользователь выбирает входной и выходной токены, сеть и сумму. Если это ERC-20, сначала может потребоваться approve, а затем swap вызывает контракт пула или роутера. Цена меняется по мере сделки относительно резервов; крупный обмен сильнее сдвигает котировку в простой модели. В Uniswap итог учитывает комиссию пула, а маршрут может проходить через несколько пулов; сетевые расходы и актуальное состояние рынка — отдельные факторы. Конкретные комиссии и маршруты зависят от версии и конфигурации пула (Uniswap swaps). Показанная интерфейсом цена может быть оценкой, а не гарантией.

Price impact и slippage tolerance

Price impact — изменение цены, вызванное самим размером обмена относительно ликвидности. Slippage — отличие итогового исполнения от ожидаемого значения из-за движения рынка и исполнения; определения интерфейсов могут различаться. В потоке Uniswap параметр amountOutMinimum задаёт минимальный выход: если расчёт не достигает границы, вызов завершается ошибкой. Это поведение конкретного протокола/интеграции, а не общее обещание каждого DEX (документация Uniswap о swap). Чем выше amountOutMinimum, тем строже минимальный результат и тем вероятнее отказ при движении рынка. Слишком низкий минимум допускает худший обмен. Установи срок действия и проверь маршрут до подтверждения.

Риски AMM

Пул может иметь мало резервов или быть изменённым/вредоносным контрактом; токен — скрытые ограничения перевода, налог или возможность заморозки. Показанная цена не означает справедливую, а аудит — не гарантию отсутствия ошибок. LP несут отдельный риск изменения соотношения резервов и стоимости относительно простого хранения (impermanent loss), а пользователь обмена — риски контракта, цены, комиссии и неверного токена. Проверь адрес протокола из официальной документации и разрешения approve.

Пример с условными числами

Пусть экран показывает оценку 100 условных B за выбранную сумму A, а пользователь задаёт минимум 99 B. При фактическом результате 99,2 B обмен проходит; при 98,8 B контракт отменяет swap, если именно такой порог запрограммирован и вызов дошёл до исполнения. В Ethereum неуспешное исполнение может потратить gas, даже если изменения состояния откатились (Ethereum: gas). Это учебный пример, не текущая котировка или рекомендация по настройке tolerance. Сверь точный текст транзакции и контракт до подписи.

В описанной AMM-модели обмен проходит через контракт и резервы пула, а не через книгу заявок. Сравни котировку после всех комиссий с централизованным маршрутом и учитывай возможность вывода. Далее: ликвидность и комиссии сети.