Главное
Автоматический маркет-мейкер (Automated Market Maker, AMM) — программный алгоритм контроля ликвидности и ценообразования криптоактивов на децентрализованных биржах.
AMM-системы широко применяются в сфере DeFi, в частности на децентрализованных биржах (DEX), таких как включая Uniswap, Balancer, Bancor и Curve.
Для создания децентрализованных рынков AMM использует ликвидность в криптовалютных общедоступных пулах из нескольких токенов, заблокированных в специальных смарт-контрактах.
Как появился автоматический маркетмейкер (АММ)?
Автоматический маркетмейкер (AMM) — автономный торговый механизм, на котором работает большинство торговых DeFi-протоколов. Он обеспечивает движение капитала и выполнение обменных операций пользователей на доступных рынках криптоактивов.
Первым известным разработчиком, кто заговорил о реализации AMM, был член команды проекта Gnosis Алан Лю. Его идеи были изложены основателем Ethereum Виталиком Бутериным на Reddit в 2016 году и в личном блоге в июле 2017 года.
Эта концепция легла в основу протокола платформы Uniswap, получившей первый грант в размере $100 000 от Ethereum Foundation. Кроме того, Виталик Бутерин консультировал разработчиков Uniswap.
Впоследствии АММ стал широко известен именно благодаря Uniswap. В то же время, одной из первых успешных реализаций AMM можно назвать платформу Bancor Network, собравшая $140 млн через ICO в июне 2017 года.
Как пулы ликвидности связаны с АММ?
Ключевым элементом, необходимым для работы АММ, является пул ликвидности — своеобразное хранилище криптоактивов в виде смарт-контракта. Пул ликвидности обычно состоит двух криптоактивов и формирует рынок — аналог торговой пары на централизованной бирже.
Одни участники пула блокируют свои средства для получение дохода за счет комиссий за обмен. Таких пользователей называют поставщиками ликвидности.
Другая категория — непосредственные пользователи децентрализованной биржи, которые обменивают криптовалюты в протоколе (такие операции называются «свопы»), используя при этом какой-то из пулов.
Чтобы лучше понять пулы ликвидности, рассмотрим, что привело к их созданию.
Первые DEX-биржи работали на Ethereum и использовали для торговли стандартную книгу ордеров, применяемых на централизованных биржах. Чтобы такой торговый механизм был эффективным, он должен иметь крайне высокую скорость обработки транзакций. Учитывая, что операции на децентрализованной бирже подтверждаются через блокчейн, реальная скорость и возможности таких DEX были крайне ограничены. АММ позволила найти решение этой проблемы.
Таким образом, AMM — принципиально иной способ создания рынка активов, являясь формулой или правилами по которым протокол работает с заявками на покупку или продажу, а также с резервами пользователей.
Как работают пулы ликвидности?
В пулах могут использоваться два и более активов. Например, на бирже Uniswap можно создавать пулы для парных токенов. Платформа Balancer позволяет создавать пулы для трех и более токенов. А протокол Curve предназначен для пулов на основе активов с аналогичной стоимостью, таких как ETH и обернутый токен WETH или USDC и DAI. Работу этих пулов регулирует АММ.
Каждая из таких AMM-DEX может использовать свои собственные формулы и правила для взаимодействия с пулами ликвидности. Например, протокол Uniswap использует следующую формулу: x * y = k.
В уравнении x и y представляют количество токенов, доступных в пуле ликвидности; k — постоянная величина, называемая инвариантом. В случае с Curve используются формулы x * y = k и x + y = k.
По формуле x * y = k также работают проекты SushiSwap и PancakeSwap — это наиболее распространенный вид AMM-DEX.
Как происходит ценообразование актива в пуле ликвидности?
При блокировании ликвидности в пуле ее поставщик получает специальные LP-токены, подтверждающие их долю в пуле. Их можно представить как долговую расписку, владение которой дает право получать комиссии от обменных операций на бирже и вернуть свою долю из пула.
LP-токены — это передаваемый криптоактив, который можно продать или обменять на открытом рынке, а также инвестировать в сторонние DeFi-приложения.
Процесс обмена одного актива на другой посредством пула ликвидности называется свопом (swap). Суть процесса заключается в добавлении в пул только одного актива, вместо двух, как в случае с LP. За проведение свопа пул взимает небольшую комиссию, сравнимую с комиссией за сделку на централизованной бирже, то есть 0,1-0,3%. Комиссии распределяются между поставщиками ликвидности пропорционально их доле в пуле.
Пример
Создадим условный пул ликвидности для пары ETH/USDC. При цене 1 ETH, равной 2000 USDC, нужно будет одновременно заблокировать в смарт-контракте любое количество этих двух монет в соотношении 1:2000. При такой цене в пуле может быть 100 ETH и 200 000 USDC.
Баланс активов в пуле определяется их ценой. Когда пользователь решит обменять 10 ETH, используя вышеописанный пул, он внесет свои монеты в смарт-контракт обычной транзакцией. В обмен на свои 10 ETH он получит 20 000 USDC (без учета комиссии за обмен).
После этого обмена баланс пула составит уже 110 ETH и 180 000 USDC. Следовательно, цена ETH конкретно в этом пуле составит около 1636 USDC вместо 2000 USDC на других рынках. Такая ситуация привлекает арбитражных трейдеров, которые извлекают выгоду из дисбаланса путем добавления USDC в пул, пока цена не достигнет рыночных 2 000 USDC за 1 ETH.
В чем недостатки АММ?
Хотя АММ стал прорывом для трейдинга и DeFi, у него есть ряд явных недостатков. Во-первых, при совершении свопов с помощью АММ существует высокий риск проскальзывания цены. В свою очередь, это приводит к рискам непостоянных убытков для LP и извлекаемой майнером ценности (MEV) для обычных пользователей.
Для защиты от подобных рисков создаются и другие виды AMM, такие как проект CowSwap, сочетающий в себе разработки AMM-Balancer и протокола Gnosis.
Во-вторых, в отличие от централизованных бирж при торговле через АММ можно размещать только один вид заявок. Торговать лимитными заявками или другими видами, например Stop Loss, нельзя.
Что такое непостоянные убытки (Impermanent Loss)?
Непостоянные убытки (Impermanent Loss, IL) — это временные или нереализованные убытки при удержании активов в пуле ликвидности при использовании AMM-DEX. IL относятся к поставщикам ликвидности (LP), означая разницу в цене на момент блокировки токенов в пуле и фактической ценой на момент удержания. Убытки называются нереализованными потому, что не фиксируются до тех пор, пока ликвидность не выведена из пула.
В качестве примера возьмем пул ликвидности на бирже Uniswap, работающий по классической формуле x * y = k:
- Поставщик ликвидности заблокировал 1 ETH и 2000 DAI. Его доля в пуле составила 10%.
- Всего в пуле находится 10 ETH и 20 000 DAI — эквивалент 40 000 DAI.
- Баланс пула не менялся, так как не было новых поставщиков ликвидности.
- Спустя месяц рыночная цена ETH изменилась до 4000 DAI.
- За этот месяц арбитражные трейдеры воспользовались ситуацией и постепенно изменили соотношение в пуле на 5 ETH с одной стороны и на 20 000 DAI с другой. При этом общий размер пула остался первоначальным — 40 000 DAI.
- В этот момент, поставщик ликвидности решил вывести свою долю из пула — она составляет 10%.
- С учетом текущего баланса пула он выводит 0,5 ETH и 2000 DAI, хотя изначально добавлял 1 ETH и 2000 DAI.
- Первоначальная стоимость его доли была 4000 DAI (1 ETH плюс 2000 DAI) в пересчете на стейблкоины. Стоимость активов на момент вывода составила те же 4000 DAI (0,5 ETH плюс 2000 DAI)
- Однако, если бы пользователь просто удерживал свои 1 ETH и 2000 DAI, то стоимость его активов составила бы уже 6000 DAI. В этом и заключается нереализованный убыток или прибыль при использовании AMM-DEX.
- Пользователь также получит 10% (пропорционально его доле в пуле) от всех комиссий пула в качестве награды за предоставление ликвидности. Награда может быть уменьшена, например, из-за налогов, отчисляемых в адрес разработчиков или в казначейство проекта на будущее развитие.
Как снизить риски при торговле с помощью AMM?
Прежде чем использовать пул ликвидности следует просчитать все возможные комиссии, которые вам придется заплатить на момент ввода и планируемого вывода активов.
Необходимо учитывать возможность движения цены активов в обе стороны. Некоторые потенциальные проблемы, такие как риск непостоянных убытков (IL), можно рассчитать заранее.
Для расчета показателя IL нужно понимать природу его происхождения. Также можно воспользоваться одним из калькуляторов непостоянных убытков, доступных в интернете.