Тестируем пулы ликвидности Uniswap v3: наш результат за месяц

Вы добавили ликвидность в пул на Uniswap v3, настроили ценовой диапазон, подтвердили транзакцию — и отложили телефон в сторону. Месяц спустя открываете кошелёк и видите сумму, которая вроде бы больше вложенного, а вроде бы и нет.

Тестируем пулы ликвидности Uniswap v3: наш результат за месяц

Интерфейс Uniswap показывает текущую стоимость позиции, но не отвечает на главный вопрос: ваша стратегия сработала лучше, чем если бы вы просто продержали токены в кошельке?

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

Каждая позиция в v3 — это NFT: почему это важно для отслеживания

Первое, что нужно понять: в Uniswap v3 ваша ликвидность — это не безликая доля в общем котле, как было во второй версии протокола. Каждая позиция выпускается как невзаимозаменяемый токен стандарта ERC-721. Это значит, что у вашей конкретной ликвидности есть свой ID, свои границы диапазона, свой набор активов и своя история начисления комиссий.

Когда я впервые открыла позицию, я ожидала увидеть что-то вроде депозита: положил деньги — получил процент. В реальности получился скорее «живой» инструмент, который нужно мониторить. Позиция привязана к конкретному диапазону цен, и если рынок уходит за его границы, ваша ликвидность конвертируется полностью в один из двух токенов и перестаёт приносить доход. Это ключевая механика, ради которой, собственно, и существуют концентрированные позиции в v3: вы можете получить значительно больше комиссий с меньшим капиталом — но ценой активного управления.

В Uniswap v3 вы не «поставили и забыли» — ваша позиция как NFT с конкретным ID требует того же внимания, что и любой активный инструмент: мониторинг диапазона, контроль доходности, решение о ребалансировке.

Именно поэтому для проверки результатов недостаточно взглянуть на баланс кошелька. Вам нужно «достучаться» до конкретной позиции по её токен-ID и вытянуть три ключевых числа: сколько комиссий начислено, как изменилась стоимость активов и какой ущерб нанесли непостоянные потери.

Три слагаемых итоговой доходности

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

Комиссии (fees earned). Это то, что вы заработали непосредственно как поставщик ликвидности. Каждый своп, проходящий через ваш диапазон, генерирует комиссию, и её доля пропорциональна вашему вкладу в общий объём ликвидности в этом ценовом коридоре. В интерфейсе Uniswap эти комиссии отображаются, но только накопленные — без учёта того, что происходило с самими активами.

Изменение стоимости активов (price movement). Вы вложили ETH и USDC, а за месяц цена эфира выросла на 15%. Или упала. Это влияет на стоимость вашей позиции напрямую, и это не ваш «заработок» от стратегии — это рыночное движение, которое вы бы получили и при простом удержании токенов.

Непостоянные потери (Impermanent Loss). Вот тут начинается самое интересное и самое неприятное. Когда цена активов в пуле меняется относительно начального соотношения, автоматический ребалансировщик протокола перераспределяет вашу долю: продаёт подорожавший актив и покупает подешевевший. По сути, вы фиксируете убыток на росте и увеличиваете позицию в падающем активе. Потери «непостоянные», потому что если цена вернётся к исходной, они обнулятся — но на практике это случается редко.

КомпонентЧто показываетГде смотреть
Комиссии (fees)Сколько заработали на свопахИнтерфейс Uniswap + Revert Finance
Изменение цены активовРыночное движение базовых токеновОтдельно не выделяется в Uniswap
Непостоянные потери (IL)Убыток от автоматического ребалансаRevert Finance / APY.vision
Net ROIИтоговая чистая доходность с учётом всегоRevert Finance — «Strategy vs HODL»

Понимание этих трёх компонентов — необходимый минимум, чтобы не обмануться красивым числом на экране. Позиция может показывать +20% от начального депозита, но если простое удержание дало бы +30%, ваша стратегия проиграла рынку. Именно для этого существует сравнение с HODL.

Strategy vs HODL: единственный честный показатель

Когда я подключила кошелёк к Revert Finance и увидела метрику «Strategy vs HODL», в голове наконец щёлкнуло. Этот показатель отвечает на единственный вопрос, который имеет значение: ваша стратегия с концентрированной ликвидностью обогнала сценарий, в котором вы просто держали бы те же токены в кошельке?

Если Strategy vs HODL положительный — поздравляю: ваше активное управление ликвидностью дало результат лучше, чем пассивное удержание. Если отрицательный — вы потратили время, газ на открытие и закрытие позиции, а в итоге получили меньше, чем если бы токены просто лежали.

Мне потребовалось около десяти минут, чтобы разобраться в интерфейсе: подключаете кошелёк, находите свою позицию по ID токена (его можно скопировать прямо из деталей позиции в интерфейсе Uniswap), и сервис строит график с двумя линиями — стоимость вашей стратегии и стоимость HODL. Расхождение между ними и есть ваш реальный результат.

В моём тесте за месяц это число оказалось ключевым. Потому что абсолютная доходность позиции в долларах может быть впечатляющей — но в условиях растущего рынка растут все активы, и вопрос лишь в том, дала ли вам ваша стратегия «прибавку» к этому росту или, наоборот, съела часть прибыли за счёт непостоянных потерь.

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

Важный нюанс: Revert Finance учитывает непостоянные потери автоматически, поэтому вы видите чистую картину. Это экономит кучу времени и защищает от типичной ошибки ручного подсчёта, когда IL просто забывают посчитать.

Выбор fee tiers и риск выхода из диапазона

Uniswap v3 предлагает четыре уровня комиссий для пулов: 0,01%, 0,05%, 0,3% и 1%. Выбор тира — это не техническая деталь, а стратегическое решение, которое напрямую влияет на то, сколько вы заработаете и как часто будете ребалансировать позицию.

0,01% — для пар стейблкоин к стейблкоину (USDC/USDT), где волатильность минимальна, а объёмы свопов огромны. Здесь имеет смысл ставить узкий диапазон и собирать крохи с каждого свопа, компенсируя это их количеством.

0,05% — «зона комфорта» для пар вроде ETH/stETH или ETH/USDC на умеренных диапазонах. Неплохой баланс между доходностью на своп и частотой срабатываний.

0,3% — для более волатильных пар, где каждый своп должен компенсировать больший риск отклонения цены от вашего диапазона.

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

Fee TierТипичные парыПлюсыМинусы
0,01%Стейблкоин/СтейблкоинМинимальное проскальзывание, огромные объёмыМизерная комиссия за своп
0,05%ETH/stETH, ETH/USDCХороший баланс доходностиТребует точного диапазона
0,3%Волатильные альткоиныВысокая плата за свопЧастые выходы из диапазона
1%Экзотические парыМаксимальная комиссияНизкие объёмы торгов

В моём тесте я выбрала пул ETH/USDC с комиссией 0,3% — классическая связка с хорошей ликвидностью. Диапазон задала относительно узкий, чтобы получить концентрированную ликвидность и повышенные сборы. Ожидание: узкий диапазон = больше комиссий за единицу капитала. Реальность: больше комиссий — да, но и выше риск вылета за границы.

И вот тут кроется главный UX-подвох Uniswap v3. Когда позиция выходит за пределы заданного диапазона (статус «Out of Range»), она на 100% конвертируется в один из токенов — тот, который подешевел. Позиция перестаёт приносить комиссионный доход. В интерфейсе это отображается, но если вы не проверяете позицию регулярно, можно провести неделю вне диапазона и не заметить, что ликвидность «простаивает».

Для моего теста это стало ключевым уроком. За месяц рыночная цена ETH успела пробить верхнюю границу моего диапазона, и дня на четыре позиция оказалась «Out of Range». Эти четыре дня — потерянные комиссии, которые невозможно вернуть. В итоговой аналитике это выливается в заметную разницу между ожидаемой и фактической доходностью.

Решение о том, какой тир выбрать, сильно зависит от вашей готовности ребалансировать позицию. Если вы готовы заходить в кошелёк раз в пару дней и корректировать диапазон — узкие позиции с низкими тирями могут дать отличную доходность. Если предпочитаете более пассивный подход — широкий диапазон с тиром 0,3% будет надёжнее, хотя и менее прибыльным в благоприятных условиях.

Практическая аналитика: как проверить результат за месяц

После теста я перепробовала два основных инструмента для анализа: Revert Finance и APY.vision. Оба работают по схожему принципу — подключаете кошелёк, сервис находит ваши позиции по ID токена и строит аналитику. Но между ними есть нюансы, которые влияют на удобство ежемесячной проверки.

Revert Finance — мой основной рабочий инструмент для этой задачи. Плюсы: показатель Strategy vs HODL, который сразу отвечает на главный вопрос; наглядные графики; подробная разбивка по комиссиям и непостоянным потерям; возможность посмотреть доходность за произвольный период. Минус: интерфейс перегружен деталями, и первые десять минут вы чувствуете себя в кабине Boeing — много кнопок, непонятно, с чего начать.

APY.vision — хорош для быстрого взгляда на общую картину. Интерфейс чище, но меньше гибкости в настройке периода анализа. Для ежемесячной проверки подходит, но если хотите покопаться в деталях — Revert Finance информативнее.

Вот алгоритм проверки результатов за месяц, который я выстроила после нескольких итераций:

1. Открываем Revert Finance и подключаем кошелёк через WalletConnect или MetaMask. Находим нужную позицию по ID — он виден в деталях вашей позиции в интерфейсе Uniswap.

2. Смотрим Strategy vs HODL — это первое число, которое нужно зафиксировать. Оно показывает разницу между тем, что заработала ваша стратегия, и тем, что дал бы простой холд.

3. Проверяем накопленные комиссии — отдельная строка, показывающая, сколько токенов вы заработали на свопах за период. Сравниваем с ожиданиями при открытии позиции.

4. Анализируем непостоянные потери — Revert Finance показывает IL отдельной цифрой. Если IL превышает заработанные комиссии, стратегия убыточна по сравнению с холдом, и нужно менять подход.

5. Проверяем периоды «Out of Range» — на графике видно, когда позиция находилась вне диапазона и не зарабатывала. Оцениваем, сколько дней потеряно, и думаем, стоит ли расширять диапазон.

6. Считаем затраты на газ — часто упускаемый, но важный фактор. Открытие позиции, закрытие, ребалансировка — каждое действие стоит газа. На Ethereum Mainnet это может «съесть» значительную часть прибыли от небольших позиций; на решениях второго уровня (Arbitrum, Optimism, Base) затраты на порядок ниже.

Этот шестишаговый алгоритм занимает минут пятнадцать–двадцать, но даёт полную картину. Без него вы рискуете ориентироваться на одно-два числа из интерфейса Uniswap, которые не учитывают непостоянные потери и не показывают относительную эффективность стратегии.

Кстати, если вы планируете делать обучающий контент по своим DeFi-стратегиям — от текстовых гайдов до профессиональных видео-разборов, — то конкретные цифры из Revert Finance станут отличной основой для сценария. Наглядное представление данных помогает не только вам, но и аудитории, если вы делитесь опытом.

Наш результат: что вышло за месяц

Пора поделиться конкретикой. За месяц тестирования позиции в пуле ETH/USDC (fee tier 0,3%) с концентрированным диапазоном результат получился неоднозначным — и именно поэтому он интересен.

Абсолютная доходность позиции выглядела вполне достойно: начальный депозит вырос. Но когда я открыла Revert Finance и посмотрела Strategy vs HODL, картина стала сложнее. Стратегия с концентрированной ликвидностью обогнала простой холд, но не так значительно, как я ожидала, исходя из теоретических расчётов при открытии.

Причины разрыва между ожиданием и реальностью:

  • Четыре дня вне диапазона — рыночная цена пробила верхнюю границу, и позиция перестала зарабатывать комиссии. Самый чувствительный удар по итоговой доходности.
  • Непостоянные потери в период роста ETH — классическая ситуация: чем сильнее растёт один из активов в паре, тем больше IL. Концентрированный диапазон усиливает этот эффект.
  • Затраты на газ — открытие и закрытие позиции на Ethereum Mainnet обошлись заметно, хотя для позиций выше пары тысяч долларов это не критично.

Если бы я просто купила и держала ETH и USDC в начальном соотношении, без пула, — результат за месяц был бы сопоставим, но с меньшим количеством стресса и без необходимости мониторить диапазон. Однако в фазе бокового движения рынка, а не сильного тренда, концентрированная ликвидность дала бы заметное преимущество за счёт накопленных комиссий при незначительном IL. Пулы — инструмент не для каждого рыночного режима, и это нормально.

Вердикт: кому и когда подходит этот инструмент

После месяца «руками» у меня сложилась чёткая картина. Концентрированная ликвидность в Uniswap v3 — мощный инструмент, но с конкретным профилем пользователя и конкретными условиями рынка.

Подходит, если вы:

  • Готовы проверять позицию хотя бы раз в два–три дня
  • Понимаете механику непостоянных потерь и принимаете её как цену входа
  • Работаете на L2 (Arbitrum, Base, Optimism), где газ на ребалансировку не съедает прибыль
  • Уверены в диапазоне и уровне комиссий, которые выбираете
  • Имеете достаточный капитал, чтобы комиссии перекрывали издержки

Не подходит, если вы:

  • Хотите «поставить и забыть» на полгода — без мониторинга позиция рискует простаивать вне диапазона неделями
  • Работаете с маленьким депозитом на Ethereum Mainnet — газ на открытие и закрытие может превысить заработанные комиссии
  • Ожидаете фиксированную доходность — в пулах ликвидности нет гарантий, и волатильность рынка может обернуться против вас
  • Не хотите разбираться в аналитике — без Revert Finance или APY.vision вы летите вслепую
Пулы ликвидности в Uniswap v3 — это не пассивный доход, а активная стратегия. Ожидание «поставил и забыл» сталкивается с реальностью мониторинга, ребалансировки и постоянной оценки — и только от вас зависит, перевешивает ли потенциальная доходность эти усилия.

Мой итоговый вывод: для ежемесячной проверки эффективности стратегии Revert Finance с метрикой Strategy vs HODL — лучший доступный инструмент. Он отвечает на единственный правильный вопрос: «Моя стратегия обошла холд, или я зря старалась?». И именно этот вопрос стоит задавать себе каждый раз, когда вы проверяете результат в пуле ликвидности. Без него любое число на экране — просто цифра без контекста.

Частые вопросы

Почему недостаточно просто смотреть на баланс кошелька в Uniswap?
Интерфейс биржи не учитывает непостоянные потери и не показывает, была ли ваша стратегия эффективнее простого удержания активов.
Что такое непостоянные потери в Uniswap v3?
Это убыток, возникающий при изменении цены активов, когда протокол автоматически продает подорожавший актив и покупает подешевевший.
Как узнать, принесла ли стратегия прибыль?
Необходимо использовать сторонние сервисы, такие как Revert Finance, для анализа метрики Strategy vs HODL, которая показывает результат относительно пассивного удержания.
Что происходит, если цена выходит за границы диапазона?
Позиция полностью конвертируется в один из активов и перестает приносить комиссионный доход до тех пор, пока цена не вернется в заданный коридор.
Как выбрать подходящий уровень комиссии (fee tier)?
Выбор зависит от пары активов: 0,01% подходит для стейблкоинов, 0,05% — для умеренно волатильных пар, 0,3% — для стандартных активов, а 1% — для экзотических пар с высокой волатильностью.