UniswapX: как новый протокол роутинга повлияет на ликвидность DEX

25.08.2023
25 мин
2776
22
UniswapX: как новый протокол роутинга повлияет на ликвидность DEX. Заглавный коллаж новости.

В августе 2023 года на долю Uniswap приходится более 64% совокупного объема торгов на децентрализованных биржах (DEX). 

Как и большинство других платформ, Uniswap использует алгоритм автоматического маркетмейкера (АММ) и пулы ликвидности. Это надежное и проверенное решение, но оно не адаптировано для традиционных игроков и создает определенные риски при использовании площадки.

Чтобы улучшить качество пользовательского опыта, а также обеспечить быструю и выгодную конвертацию цифровых активов, команда проекта запустила протокол UniswapX, объединяющий децентрализованную и централизованную (через прокси) ликвидность. Incrypted разобрался, что такое UniswapX, какие преимущества он даст обычным пользователям и как может повлиять на архитектуру DEX.

Что такое UniswapX

UniswapX — это роутинговый протокол с открытым исходным кодом, нацеленный на создание качественного опыта использования DEX за счет более выгодного курса и быстрой конвертации криптовалют. Для решения этих задач UniswapX привлекает новые источники ликвидности, добавляет аукционный механизм и меняет формат обмена. 

По сути, это новый способ обмена криптовалют на Uniswap, отличающийся от традиционных свопов через пулы ликвидности. 

Технически протокол представляет собой совокупность нескольких связанных смарт-контрактов, на момент написания развернутых в основной сети Ethereum. Благодаря этому взаимодействие с UniswapX не требует разрешения со стороны Uniswap Labs, а сам протокол нельзя заблокировать на уровне блокчейна. 

Архитектура протокола

Архитектура UniswapX включает как новые решения, так и уже известные разработки Uniswap Labs.

Архитектуры протокола UniswapX.
Схематическое изображение архитектуры протокола UniswapX. Источник: Uniswap.

На схеме выше изображены основные модули протокола.

Permit2 — представленное в ноябре 2022 года решение для предоставления прав на использование токенов ERC-20. Снижает стоимость газа за счет пакетных подтверждений и позволяет расходовать токены другим приложениям, подключенным к модулю.

Permit2 позволяет смарт-контрактам Uniswap использовать токены из кошелька пользователя для обмена и делает возможной оплату другой стороной сделки.

Также разработчики ввели систему реализации свопов через ордеры. Если раньше обмен проходил в виде транзакций с набором параметров (баланс, обмениваемый и получаемый токены, сумма и другие), то теперь пользователь создает и подписывает ордер. 

Параметры ордера UniswapX. Источник: Uniswap.
Параметры ордера UniswapX. Источник: Uniswap.

Для дальнейшего исполнения ордер размещается в сети модулем заполнения (filler; филлер).

UniswapX использует новый тип ордера на основе голландского аукциона. Ниже мы разберем, как это работает. Но главная особенность в том, что пользователь может указывать верхний и нижний лимиты цены, а также темпы ее изменения. 

Модуль заполнения — участник протокола, который выполняет ордер пользователя на установленных условиях. Он передает входные параметры заявки в сеть и предоставляет ликвидность для обмена.

Эти модули могут взаимодействовать с UniswapX через собственные смарт-контракты или предоставляя протоколу права на использование активов. Подробнее об этом можно прочитать в документации проекта.

Order Reactor — смарт-контракт, который формирует из входных параметров обмена динамичный ордер и рассчитывает его в режиме реального времени. Именно Order Reactor отвечает за постепенное снижение обменного курса и проверяет, соответствует ли фактические условия исполнения ордера требованиям пользователя. 

На момент написания Order Reactor может создавать голландские ордера и эксклюзивные голландские ордера под конкретные модули заполнения. В будущем он будет поддерживать больше типов заказов, например, рыночные или лимитные. 

Executor — смарт-контракт взаимодействующий с адресами филлеров и пулами ликвидности Uniswap. Выполняет две основные функции:

  • выбор исполнителя ордера с наиболее выгодными условиями;
  • списание активов с кошельков сторон сделки и взаиморасчеты. 

В период бета-тестирования команда Uniswap Labs контролирует список исполнителей, чтобы обеспечить бесперебойный обмен. В будущем функции модуля заполнения сможет выполнять любой пользователь.

Ключевые особенности UniswapX 

Благодаря новой архитектуре протоколу удалось решить ряд характерных для DEX и AMM проблем и предоставить пользователям ряд преимуществ. 

Голландские ордера — новый тип ордеров, построенный на основе голландского аукциона с постепенным снижением обменного курса. Изначально ордер попадает в сеть по самой выгодной цене, но если ни один филлер не соглашается его исполнить в установленный временной промежуток, цена снижается.

Например, вы решили обменять 1 ETH при рыночной стоимости $2000 через UniswapX и создали ордер с ценовым диапазоном $2050-1900. Изначально его выставят по цене $2050. Если через определенное время на ордер не отзовется ни один филлер, цена упадет до $2000, затем до $1950 и так далее, до минимального заданного значения. 

Временной промежуток для снижения стоимости и минимальный ценовой уровень можно задать при открытии ордера. Разработчики уверяют, что голландский аукцион позволяет сохранить баланс между выгодой для поставщика ликвидности и лучшим обменным курсом для пользователя;

Безгазовые свопы — поскольку ордер размещается в блокчейне не напрямую пользователем, а филлером, то последний оплачивает комиссию за транзакцию. Эти расходы затем включаются в стоимость свопа, то есть пользователю не нужно удерживать «газовые» токены сети, чтобы провести обмен;

Отсутствие комиссии за неудачные транзакции — если в установленный временной промежуток так и не появился филлер, принявший ордер, то такая заявка не будет размещена в сети, то есть за ее создание не взимается комиссия;

Внешняя ликвидность — ордер может быть выполнен как за счет пулов ликвидности Uniswap, так и с использованием средств филлера. Взаимодействовать с протоколом может смарт-контракт или External Owned Accounts (EOA), то есть обычный некастодиальный кошелек, что открывает новые возможности для традиционных маркетмейкеров.

Цитата эксперта:
Михаил Мельник
Ведущий разработчик и блокчейн-архитектор 1inch Network
Михаил Мельник
Ведущий разработчик и блокчейн-архитектор 1inch Network
Неявно можно использовать ликвидность, которая находится вне сети. Работает это так: PMM [private market maker] хранит разные активы одновременно в своем Ethereum-кошельке и на какой-нибудь бирже. И когда он исполняет чей-то ордер, то использует ликвидность, которая у него уже есть на балансе кошелька. Однако синхронно с этим PMM совершает контр-трейд на бирже, чтобы сохранить общий баланс своего портфеля. И периодически перегоняет ликвидность туда-сюда. Получается такой асинхронный пространственный арбитраж, и эти “приседания” с небольшой натяжкой можно назвать “использованием офчейн-ликвидности для выполнения ордеров".

Интегрированный MEV — UniswapX интегрирует MEV-решения, которые возвращают полученную от ордера прибыль в виде более выгодного обменного курса для пользователя. Кроме того, разработчики отметили, что ордера лучше защищены от фронтраннинга, чем обычные транзакции.

В технической документации UniswapX также описан механизм для бесшовной интеграции кроссчейн-обмена с EVM-совместимыми блокчейнами и роллапами. Однако пока протокол доступен только для свопов в сети Ethereum. Команда обещает реализовать модуль интероперабельности позже.

Жизненный цикл кроссчейн-транзакции UniswapX. Источник: Uniswap.
Жизненный цикл кроссчейн-транзакции UniswapX. Источник: Uniswap.

Как проходит обмен через UniswapX

Чтобы лучше понять, как работает протокол, рассмотрим перечисленные элементы архитектуры в действии. Схема обмена через UniswapX представлена ниже.

Жизненный цикл свопа UniswapX. Источник: техническая документация UniswapX. 
Жизненный цикл свопа UniswapX. Источник: техническая документация UniswapX

Своп с использованием протокола состоит из следующих шагов:

  1. Пользователь создает ордер с определенными параметрами и подписывает его. Одновременно с этим, он предоставляет контракту Permit2 права на доступ к активам в кошельке.
  2. Подписанный ордер отправляется в публичный или приватный пул, где его находит филлер. Затем филлер размещает параметры ордера в Order Reactor и оплачивает газ. Стоимость газа включается в обменный курс. 

Если истекло установленное на выполнение ордера время, а филлер так и не отозвался, то обмен считается неудачным. Пользователь не платит комиссию за своп.

  1. Order Reactor вызывает Executor Contract, передавая ему рассчитанные параметры ордера и текущие условия выполнения. Эти условия могут меняться в соответствии с принципом голландского аукциона в зависимости от того, сколько времени заявка находится в Order Reactor. 
  2. Executor Contract взаимодействует с филлером, чтобы получить от него условия обмена. Затем эта информация передаются обратно в Order Reactor, который проверяет, соответствуют ли они входным данным. 

Если параметры ордера и исполнителя совпадают, то Executor Contract списывает активы с кошельков пользователя и филлера и проводит взаиморасчет. После этого обмен считается выполненным. 

В разговоре с Incrypted Мельник уточнил, что размещение ордера в смарт-контракте происходит непосредственно в момент его выполнения. А в блокчейн транзакцию заводит тот участник, который сразу же и исполняет данный ордер.

То есть ситуация при которой ордер публикует один филлер, а исполняет другой с более выгодным предложением просто невозможна.

Один из пользователей X (ранее Twitter) отметил баг, из-за которого UniswapX определяет статус свопа на основе баланса пользователя. Это приводит к том, что если вы выставили на продажу 1 ETH за 2000 USDT и во время исполнения ордера на ваш кошелек перевели 2000 USDT, никак не связанные со свопом, то протокол посчитает ваш обмен удачно выполненным. 

Цитата эксперта:
Антон Буков
сооснователь 1inch Network
Антон Буков
сооснователь 1inch Network
По задумке команды разработчиков, балансы пользователя фиксировались до и после свопа, чтобы можно было определить курс обмена. Однако этот подход был некорректен, поскольку внутри конкретной транзакции балансы могут меняться и по другим причинам, например, если у пользователя будут дополнительные ордера на другом или даже на том же протоколе. 

На момент написания неизвестно, устранена ли эта проблема.

Как использовать UniswapX

UniswapX доступен через интерфейс веб-приложения Uniswap в виде опции в настройках свопа. Чтобы активировать протокол при обмене:

  1. Переходим на страницу обмена Uniswap и подключаем кошелек.
Как использовать UniswapX. Шаг 1
Как использовать UniswapX. Шаг 1
  1. Нажимаем на значок шестеренки в правом углу окна обмена и активируем UniswapX при помощи переключателя.
Как использовать UniswapX. Шаг 2
Как использовать UniswapX. Шаг 2

Теперь при обмене Uniswap задействует протокол для поиска более выгодных предложений. Проверить, как изменился маршрут свопа, можно после выбора обменной пары. Для этого достаточно навести курсор на надпись Uniswap API.

Как использовать UniswapX. Шаг 3
Как использовать UniswapX. Шаг 3

Во время тестирования работы протокола команда Incrypted не обнаружила изменений в маршруте обмена при активации протокола. При этом с включенным UniswapX обмен менее выгоден (в пределах в нескольких центов), чем при отключенном. Это может быть связано с комиссией самого протокола.

Пока UniswapX находится на этапе бета-тестирования, а поставщиков ликвидности немного, рекомендуем каждый раз проверять маршрут свопа при активации протокола. Если разницы нет, то обмен напрямую через пул может быть выгоднее и безопаснее. 

Возможные последствия для поставщиков ликвидности

Uniswap Labs позиционирует UniswapX как способ предоставить пользователям более выгодные условия обмена, однако протокол может повлиять и на общую структуру ликвидности DEX. В частности, он использует пулы в качестве «запасного варианта» в тех случаях, когда филлеры отказываются от выполнения ордера или не могут предоставить лучшие условия. 

Если количество филлеров возрастет и они смогут предложить лучшие условия обмена, это может привести к снижению объема торговли в пулах Uniswap, и, как следствие, к падению доходов поставщиков ликвидности. 

В результате маркетмейкеры, у которых есть достаточный объем активов и техническая база для взаимодействия с UniswapX, могут предпочесть участию в пулах прямую работу с протоколом. 

Другой аспект — гибкое взаимодействие с UniswapX. У маркетмейкеров есть возможность предоставлять протоколу ликвидность через сложные смарт-контракты с интегрированными арбитражными стратегиями. Последние открывают доступ к дополнительному доходу. 

В пулах Uniswap V3 такой опции нет. Вероятно, расширенный дизайн пула будет реализован в V4, но это решение пока в разработке

Это значит, что в случае популяризации UniswapX пользователи действительно могут получить более выгодные условия обмена, а также избавиться от проскальзывания и непостоянных потерь, но ценой снижения децентрализации. 

Если пулы Uniswap аккумулировали ликвидность от тысяч розничных поставщиков, что обеспечивало устойчивость к манипуляциям и отсутствие единой точки отказа, то UniswapX создает предпосылки для доминирования крупных маркетмейкеров со всеми их преимуществами и недостатками.

Будет интересно

Как вам статья?

22
0

статьи на эту же тему

Bullish on Ukraine: маркетинговый директор...
avatar Artem Galunov
03.05.2024
Runes: чем новые токены в сети биткоина...
avatar Ivan Babiuk
30.04.2024
RWA-токены и их классификация для...
avatar Danyil Voloshchuk
27.04.2024