DEX-агрегаторы — одни из наиболее технически интересных и практически ценных продуктов в стеке DeFi. Они решают реальную проблему пользователей: поиск лучшей цены при фрагментированной ликвидности. Это руководство объясняет архитектуру и ключевые технические задачи при создании подобных систем.
Основная проблема: фрагментация ликвидности
Ликвидность в DeFi распределена по десяткам протоколов и сотням блокчейнов. Одна и та же пара токенов может одновременно торговаться на Uniswap v2, Uniswap v3 (с несколькими уровнями комиссий), Curve, Balancer и ряде других AMM. Каждый пул имеет свои цены, глубину ликвидности и структуру комиссий.
Для пользователя, обменивающего ETH на USDC, оптимальное исполнение — это не всегда единственный пул с лучшей ценой. Чаще всего это разбивка ордера между несколькими пулами, минимизирующая суммарный слиппидж и комиссии. Своп на $1M, концентрированный в одном пуле, даст худшее среднее исполнение, чем тот же объём, разделённый на пять пулов.
Технические компоненты
Агрегация ценовых потоков
Агрегатор должен непрерывно запрашивать данные о ценах и ликвидности из всех релевантных пулов. Для он-чейн запросов это означает чтение состояния смарт-контракта (резервы пула, уровни комиссий, текущий тик). Для офф-чейн вычислений — поддержку базы данных, которая обновляется в реальном времени по мере создания блоков.
Алгоритм маршрутизации
С учётом фрагментированного ландшафта ликвидности агрегатор должен найти оптимальный маршрут. Это вариант задачи поиска кратчайшего пути, оптимизирующий минимальную суммарную стоимость (цена + слиппидж + комиссии + газ), а не количество переходов. Сложность резко возрастает при многошаговых маршрутах и разделённых ордерах.
Исполнение в смарт-контракте
Решение по маршрутизации кодируется в транзакцию смарт-контракта. Контракт агрегатора принимает входной токен пользователя, выполняет оптимальный маршрут и доставляет выходной токен. Атомарность критична: если любой шаг многопротокольного маршрута не удался, вся транзакция откатывается.
Оценка газа
Больше переходов — больше газа. Агрегатор, нашедший незначительно лучшую цену через три пула, может дать худшее итоговое исполнение, чем двухпуловой маршрут, если учесть стоимость газа.
Ключевые технические вызовы
Устаревшие данные
К моменту отправки транзакции состояние пула может измениться. Другие транзакции могут сдвинуть цены, и маршрут потеряет актуальность или откатится из-за превышения допуска слиппиджа. Решения включают JIT-ценовые фиды и буферы слиппиджа.
MEV и сэндвич-атаки
Если агрегатор отправляет транзакции через публичный мемпул, боты могут фронтраннить или сэндвичить своп. Решения: приватная отправка транзакций (Flashbots, MEV Blocker), механизмы пакетных аукционов (CoW Protocol) или системы запроса котировок (RFQ).
Мультичейн-сложность
Поддержка свопов между разными блокчейнами требует отдельной инфраструктуры маршрутизации для каждой сети, обработки разных архитектур AMM и интеграции бриджей для кросс-чейн маршрутов.
Обнаружение новых пулов
Новые пулы ликвидности запускаются постоянно. Агрегатор должен непрерывно открывать новые источники через мониторинг событий в блокчейне и API протоколов.
Бизнес-модель
DEX-агрегаторы монетизируются через: положительный слиппидж, уровни комиссий поверх комиссий пула, приоритетные комиссии за поток ордеров и комиссии фронтенда от платформ на базе агрегатора.
Что такое «лучшая цена»
Лучшая спотовая цена на момент котировки? После слиппиджа при данном объёме? После вычета газа? После комиссий MEV-защиты? Разные агрегаторы оптимизируют разные определения, поэтому сравнение котировок по одному свопу у разных агрегаторов даёт разные результаты.




