defi

Разбираемся в концентрированных пулах ликвидности (Uniswap v3)

Концентрированные пулы обещают в разы больше комиссий, чем обычные. Обещание честное, но у него есть обратная сторона, которую надо уметь считать. Ниже математика по шагам: состав позиции, потери конвертации, ширина диапазона и критерий, при котором комиссии покрывают потери. Потом то, что платит один конкретный пул: комиссии отдельно, награды отдельно, и почему контракт считает награды не так, как задумано. Потом две цели, с которыми в пул приходят, обмен через range order и доходность, XLM, где не спасают ни ширина, ни награды, и стратегия, которая в пуле работает сегодня. В конце сравнение с lending-пулом и схема, по которой это выбирать. Примеры на концентрированных пулах Aquarius, AMM в сети Stellar.

Оглавление
  1. Часть 1. Математика
  2. Состав позиции
  3. Как считается доход
  4. Откуда берётся убыток
  5. Ширина
  6. Когда ставка окупается
  7. Перестановка фиксирует потери
  8. Часть 2. Что платит Aquarius
  9. Как считается результат
  10. Только комиссии
  11. Как считаются награды
  12. Награды по контракту
  13. Награды как задумано
  14. Что из этого следует
  15. Часть 3. Обмен: range order
  16. Часть 4. XLM, волатильная пара
  17. XLM против EUR/USD
  18. Двигать или ждать
  19. Пики и откаты
  20. Кому пул выгоден
  21. Часть 5. Минимальный диапазон
  22. Часть 6. Swap против lending
  23. Часть 7. Как выбирать
  24. Сводная таблица
  25. Итог
Параметры пулов сняты 15–16 сентября 2026 через API Aquarius. История цен XLM с Binance с 2018 года, EUR/USD за 1 000 дней, дневные закрытия. Это разбор механики, а не совет, куда нести деньги.

Часть 1. Математика #

Состав позиции #

В обычном пуле ликвидность размазана по всем ценам от нуля до бесконечности. В концентрированном поставщик выбирает отрезок [Pa,Pb][P_a, P_b], и его деньги работают только внутри. Цена живёт на сетке тиков с шагом, который задаёт пул:

P=1.0001 tP = 1.0001^{\,t}

Границы диапазона можно ставить только на узлах этой сетки; шаг задаёт пул, у XLM/USDC это 20 тиков, около 0.2%, у USDC/EURC, пары долларового и евро-стейблкоинов, 60, около 0.6%. Больше формула не понадобится, она здесь для того, чтобы «±25%» дальше читалось как «границы на ближайших узлах сетки».

Позиция описывается одним числом, ликвидностью LL. Сколько в ней монет при цене PP внутри диапазона:

x=L(1P−1Pb)y=L(P−Pa)\begin{aligned} x &= L\left(\dfrac{1}{\sqrt{P}} - \dfrac{1}{\sqrt{P_b}}\right) \\ y &= L\left(\sqrt{P} - \sqrt{P_a}\right) \end{aligned}

где xx первая монета пары, yy вторая, а PP цена первой монеты во второй. Ниже PaP_a позиция целиком в xx, выше PbP_b целиком в yy. Между границами она непрерывно продаёт xx на росте и покупает на падении. Двигать диапазон нельзя: позицию выводят и открывают новую.

Из корней следует неочевидная вещь: диапазон ±25% от цены выглядит симметричным, но в логарифмах это −28.8% вниз и +22.3% вверх. Вторая монета оплачивает нижнюю часть диапазона, первая верхнюю, и нижняя часть в логарифмах длиннее. Поэтому позиция при входе получается 44% первой монеты и 56% второй по стоимости, а не 50/50. Ровно 50/50 даёт только диапазон, симметричный в разах: от P/kP/k до P⋅kP \cdot k.

0102030405060708090100↑ доля первой монеты в позиции, % стоимости0,70,80,911,11,21,3цена, в разах от цены входа →44%
Из чего состоит позиция при каждой цене. Диапазон ±25% от цены входа, полоса это диапазон, пунктир цена входа. Ниже диапазона позиция целиком в первой монете, выше целиком во второй

Сколько ликвидности покупает доллар, зависит от ширины. Для узких диапазонов LL обратна полуширине, поэтому при одинаковой сумме ±5% даёт примерно в пять раз больше LL, чем ±25% (отношение ширин 25 к 5), а ±1% в пять раз больше, чем ±5%:

L≈стоимость позицииwPL \approx \frac{\text{стоимость позиции}}{w \sqrt{P}}

где ww полуширина в долях.

Как считается доход #

Комиссии обменов делятся между позициями, в чей диапазон попала цена сделки, пропорционально их доле в активной ликвидности:

доля позиции=LLакт+L\text{доля позиции} = \frac{L}{L_{\text{акт}} + L}

где LактL_{\text{акт}} активная ликвидность пула без этой позиции. Эту долю от комиссий пула позиция и получает.

Награды в AQUA, токене протокола, делятся так же, пропорционально LL; у держателей ICE с множителем до 2.5, дальше он не учитывается. Обе величины линейны по LL, а LL на доллар обратна ширине. Отсюда главное свойство: сужение диапазона умножает доход, и ровно в той же пропорции умножает всё остальное, о чём ниже.

Откуда берётся убыток #

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

Пример на обычном пуле. В него кладут 1 000 EURC + 1 000 USDC при курсе 1.00. Правило пула: x⋅y=1 000 000x \cdot y = 1\,000\,000. EURC дорожает до 1.21. Рынок выкупает EURC, пока запасы не станут:

x=1 000 0001.21=909.09y=1 000 000⋅1.21=1 100\begin{aligned} x &= \sqrt{\frac{1\,000\,000}{1.21}} = 909.09 \\ y &= \sqrt{1\,000\,000 \cdot 1.21} = 1\,100 \end{aligned}

Стоимость позиции: 909.09⋅1.21+1 100=2 200909.09 \cdot 1.21 + 1\,100 = 2\,200. Если бы монеты лежали в кошельке: 1 000⋅1.21+1 000=2 2101\,000 \cdot 1.21 + 1\,000 = 2\,210. Минус десять долларов.

Куда они делись. Пул продал 90.91 EURC за 100 USDC, средняя цена продажи 1.10. А в конце EURC стоит 1.21. Продал по 1.10 то, что теперь стоит 1.21: 90.91⋅0.11=1090.91 \cdot 0.11 = 10. Пул продаёт постепенно на всём пути наверх, поэтому средняя цена продажи всегда хуже конечной. При падении зеркально: покупает по пути вниз по средней выше конечной.

Общая формула для обычного пула, где P0P_0 цена входа, а P/P0P/P_0 во сколько раз цена изменилась:

позициякошелёк=2P/P01+P/P0\dfrac{\text{позиция}}{\text{кошелёк}} = \dfrac{2\sqrt{P/P_0}}{1 + P/P_0}

При P/P0=1.2P/P_0 = 1.2 это −0.41%, при P/P0=2P/P_0 = 2 или 0.50.5 это −5.7%.

В концентрированном пуле та же формула умножается на коэффициент концентрации, во сколько раз LL на доллар больше, чем в полном диапазоне. Он равен 2/w2/w, для ±1% это 200. Так, 2 000 $ в диапазоне 1.1385–1.1615 (на входе 865 EUR + 1 005 USD) при движении курса с 1.15 до 1.16 отстают от удержания на 3.8 $, ровно как дают формула и множитель 200. За границей множитель уже не работает: при 1.17 позиция целиком в долларах, 2 005 $, а внесённые монеты стоили бы 2 017 $, минус 12 $; при 1.20 позиция те же 2 005 $, монеты 2 043 $, минус 38 $. После 1.1615 она больше ничего не продаёт, а евро продолжает расти.

-30-25-20-15-10-50↑ позиция против монет в кошельке, %0,512цена, в разах от цены входа →полный диапазон±25%±5%
Потери конвертации при движении цены: на сколько процентов позиция стоит меньше, чем те же монеты в кошельке. На цене входа ноль, в любую сторону минус. Полный диапазон против ±25% и ±5%; пунктир это цена входа и границы ±25%. Ось цены логарифмическая: падение вдвое и рост вдвое на одном расстоянии от входа

Это impermanent loss: если цена вернётся к точке входа, пул откупит те же 90.91 EURC за те же 100 USDC, и потери исчезнут. Отсюда и непостоянство убытка. Но это верно ровно до тех пор, пока позицию не трогают: обнулиться потери могут только у позиции, которая всё ещё стоит там же, где была открыта.

Ширина: доход, потери и время внутри #

Три соотношения. ww полуширина диапазона (0.05 для ±5%), σ\sigma годовая волатильность.

Доход внутри диапазона:

доход∝1w\text{доход} \propto \dfrac{1}{w}

Потери конвертации внутри диапазона, в год:

потери≈σ24w\text{потери} \approx \dfrac{\sigma^2}{4w}

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

дней≈(ln⁡(1+w))2σдень2\text{дней} \approx \dfrac{\left(\ln(1+w)\right)^2}{\sigma_{\text{день}}^2}

Ту же формулу можно прочитать наоборот: чтобы диапазон прожил заданное время, его ширина должна быть порядка волатильности за это же время. Для EUR/USD на год это около ±7%, для XLM около ±80%.

Снаружи диапазона дохода нет, а неправильная монета остаётся в позиции. При какой ширине итог за год лучше всего, из формул не выводится: это зависит от того, как именно ходит курс конкретной пары. Надо считать на истории, и это часть 2.

Когда ставка вообще окупается #

Из двух формул выше следует простой критерий. Доход внутри диапазона это ставка/w\text{ставка}/w, где ставка это комиссии и награды пула на доллар ликвидности за год, потери это σ2/4w\sigma^2/4w. Ширина сокращается, и остаётся отношение:

4⋅ставкаσ2\dfrac{4 \cdot \text{ставка}}{\sigma^2}

Если оно заметно больше единицы, комиссии перекрывают потери внутри диапазона, и дальше вопрос только в том, сколько времени цена проводит внутри; по нынешнему контракту Aquarius от этого зависят комиссии и потери, но не награды. Если меньше единицы, позиция проигрывает удержанию при любой ширине: сужение умножает и доход, и потери одинаково, а остаться в диапазоне узкому труднее.

Какую ставку сюда подставлять. Бейдж пула (доходность на его странице: комиссии и награды за год, делённые на всю ликвидность пула) это ставка средней позиции. Позиция, более узкая, чем средняя, получает больше во столько раз, во сколько у неё больше LL на доллар, то есть её ставка равна бейджу, умноженному на wср/ww_{\text{ср}}/w, где wсрw_{\text{ср}} полуширина средней позиции пула. Отсюда ставка в критерии это бейдж, умноженный на wсрw_{\text{ср}}. У XLM/USDC wсрw_{\text{ср}} около 0.5: позиция ±25% держит вдвое больше LL на доллар, чем средняя. У USDC/EURC около 0.024: в бэктесте ниже ставка внутри диапазона, умноженная на полуширину, при любой ширине даёт 0.43% при бейдже 18%.

Подставим пулы Aquarius на день снятия. XLM/USDC: бейдж около 11% в год, годовая волатильность 79%, σ2≈0.62\sigma^2 \approx 0.62, отношение 4⋅0.11⋅0.5/0.62≈0.354 \cdot 0.11 \cdot 0.5 / 0.62 \approx 0.35. Меньше единицы: пока цена внутри диапазона, позиция теряет против кошелька быстрее, чем зарабатывает. USDC/EURC: бейдж около 18%, волатильность 7%, σ2≈0.005\sigma^2 \approx 0.005, отношение 4⋅0.18⋅0.024/0.005≈3.54 \cdot 0.18 \cdot 0.024 / 0.005 \approx 3.5. Из одних комиссий бейдж около 2.7%, и отношение около 0.5: сам пул потери не покрывает, это делают награды. Один и тот же инструмент, но на одной паре он работает, а на другой нет, и разница не в ширине диапазона, а в σ2\sigma^2 в знаменателе. Чтобы XLM/USDC перешёл через единицу при нынешней волатильности, комиссии пула должны вырасти почти втрое, а с учётом времени вне диапазона, по бэктесту ниже, впятеро.

Формула грубая: потери σ2/4w\sigma^2/4w это скорость внутри диапазона, а у диапазона конечной ширины они упираются в потолок, когда цена выходит. Поэтому дальше всё проверяется на истории, и история подтверждает знак: на XLM неподвижная позиция ±25% отстаёт от кошелька в трёх годовых отрезках из четырёх, на EUR/USD обгоняет его при любой ширине, и только за счёт наград.

Если двигать диапазон, потери становятся постоянными #

Impermanent loss называется так только применительно к позиции, которую не трогают. Перенос диапазона делает потери постоянными в буквальном смысле: позиция выводится в уже сконвертированном состоянии, цене больше некуда возвращаться, а новая открывается вокруг текущей цены. В примере ±1% из раздела про убыток это выглядит так: евро продан по средней 1.156 на пути к 1.17 и при перестановке откуплен по 1.17. Новый диапазон вокруг 1.17 продаёт его по средней 1.176 на пути к 1.182, и там его снова откупают по 1.182. Каждый раз позиция продаёт дешевле, чем потом откупает, и каждый такой цикл это реализованный минус.

В числах это третья таблица части 2: у движущегося ±1% потери конвертации 12.8% в год и ещё 5.3% издержек на 34 перестановки, у ±3% 4.0% и 0.7% на четыре. По нынешнему контракту двигать незачем: неподвижная позиция той же ширины получает те же награды без перестановок и без постоянных потерь, 35% против 18% у ±1%, 11% против 9% у ±3%, а комиссии, ради которых стоило бы стоять в диапазоне, это 15% дохода.

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

Часть 2. Что платит Aquarius #

Формулы части 1 общие для любого концентрированного пула. Дальше числа одного пула, USDC/EURC на Aquarius, по истории EUR/USD: сначала одни комиссии, потом награды, которые контракт считает не так, как задумано.

Как считается результат #

Позиция на 2 000 $ открывается и год не трогается. На конец года считаются три числа и итог из них:

  • Доход. Комиссии за каждый день, когда цена внутри диапазона: доля позиции в активной ликвидности пула × комиссии пула за день. Награды AQUA за каждый день отрезка: ликвидность позиции × ставка AQUA на единицу ликвидности × цена AQUA. Так платит нынешний контракт Aquarius: вес в наградах он снимает в момент ввода, когда цена внутри, и держит, пока аккаунт не сделает в этом пуле ничего другого; подробнее в разделе про награды ниже. Комиссий вне диапазона нет.
  • Потери конвертации. Стоимость позиции на конец года минус стоимость тех же монет, что были внесены, по курсу конца года. Это и есть цена того, что пул продавал по пути.
  • Издержки. Только у стратегий, которые трогают позицию: комиссия пула за обмен при перестановке, 0.30% в USDC/EURC и 0.10% в XLM/USDC от обменянной суммы, обычно половины позиции, плюс сеть, около 0.5 $ за операцию. Неподвижная позиция их не несёт, поэтому в первой таблице этого столбца нет.
  • Итого к удержанию = доход + потери + издержки, в процентах от позиции; потери и издержки в таблицах уже со знаком минус. В таблицах ниже это столбец «средний год». Движение самого курса сюда не входит: оно одинаково для пула и для кошелька.

Пример на одном годе. Курс 1.0981 → 1.0401 за год, диапазон ±3% (1.0652–1.1310). Вход: 897 EUR + 1 015 USD. Цена была внутри 87% дней, начислено 41 $ комиссий и 237 $ наград, доход 278 $. В конце года позиция целиком в евро: 1 835 EUR, по курсу 1.0401 это 1 909 $. Внесённые монеты по тому же курсу стоили бы 1 948 $. Потери конвертации −39 $. Итого к удержанию +239 $, это +12%.

Только комиссии: ставка на боковик #

Теперь то же самое по истории EUR/USD с 22 декабря 2023 по 16 сентября 2026, это 1 000 дней. Она нарезана на отрезки длиной в год, начинающиеся каждые 5 дней: 127 отрезков, каждый это один год, который стратегия прожила бы, войдя в его первый день. Дальше «год» и «годовой отрезок» значат одно и то же. Доход, потери и средний год это средние по 127 отрезкам, они складываются. Сначала то, что платит сам пул, без наград AQUA:

Пул USDC/EURC, комиссия 0.30% · только комиссии, без наград · диапазон вокруг цены на первый день отрезка, ширина по строкам, дальше не трогаем · 2 000 $ · EUR/USD с 22 декабря 2023 по 16 сентября 2026, 127 годовых отрезков с шагом 5 дней, перекрываются

Ширина Комиссии Потери конв. Средний год Обычный год Плохой год Внутри диапазона
±1% 1.5% −2.6% −1.1% −1.5% ≤ −5.4% 24%
±2% 1.3% −2.4% −1.1% −1.2% ≤ −5.3% 41%
±3% 1.2% −2.2% −1.0% −0.8% ≤ −5.2% 54%
±5% 0.9% −1.8% −0.9% −0.5% ≤ −4.7% 72%
±8% 0.7% −1.4% −0.7% −0.1% ≤ −4.0% 85%
±15% 0.4% −0.8% −0.4% −0.1% ≤ −2.1% 100%

На одних комиссиях позиция это ставка на боковик, и на этой истории она в среднем проигрывает кошельку при любой ширине: комиссий 0.4–1.5% в год, потерь 0.8–2.6%, и сужение поднимает обе цифры одинаково. Отрезков, где комиссии покрыли потери, около 35% у ±1–3% и около 45% у ±8–15%, это спокойные годы курса; лучший год у ±1% дал 4%, у ±15% 0.4%. Это критерий из следующего раздела со ставкой из одних комиссий, около 0.5. Единственная пара, где сам механизм платит без наград, это пара 1:1 вроде USDC/USDT0 или XLM/yXLM: у неё σ\sigma около нуля, столбец «потери» пустой, и та же таблица была бы в плюсе при любой ширине. Много там не заработать, комиссия таких пулов 0.01–0.05%, и все стоят в одном самом узком диапазоне, так что это единицы процентов в год; зато и работы нет. Риск один, отвязка, и он бьёт по всей сумме. Остальное, что swap-пул на EUR/USD приносит сверх кошелька, это награды AQUA. Как именно контракт их платит, решает, какими будут следующие две таблицы, поэтому сначала об этом.

Награды: как задумано и как считает контракт #

С комиссиями вопроса нет. И Uniswap v3, и Aquarius ведут на каждом тике счётчик накопленных комиссий на единицу ликвидности и обновляют его при каждом пересечении тика во время обмена. Разница счётчиков на границах диапазона даёт ровно то, что прошло через позицию, пока цена была внутри, с точностью до сделки и без участия владельца.

С наградами вопрос есть, потому что награда это плата за время: сколько дней позиция простояла в диапазоне и с какой ликвидностью. В Uniswap v3 наград от протокола нет, а для чужих программ стимулов пул ведёт второй счётчик, секунды на единицу ликвидности внутри отрезка тиков, и обновляет его при тех же пересечениях. Контракт стейкера снимает его при входе и при выходе, и разность, умноженная на LL, даёт точное время внутри2: позиция, вышедшая из диапазона, перестаёт копить в ту же секунду, а вернувшаяся снова копит, и никто ничего не нажимает.

Aquarius унаследовал награды от своих обычных пулов, где вес участника это его доля в общей ликвидности и меняется он только при вводе и выводе. Для концентрированных пулов к этому весу добавили одну проверку1: в момент действия аккаунта в пуле, ввода, вывода или claim, контракт смотрит, внутри ли текущий тик диапазона каждой его позиции, и записывает вес по всем позициям сразу. Счётчика времени внутри диапазона у пула нет, поэтому между двумя действиями он не знает, где была цена, и платит по последней записи. Отсюда три следствия.
  • Позицию открыли внутри диапазона, и после этого действий в пуле не было: цена вышла, а награды идут по прежнему весу.
  • Вес записали, когда цена была снаружи: наград нет, пока следующее действие не застанет цену внутри.
  • Вторая позиция того же аккаунта в том же пуле переписывает вес первой, и если та в этот момент снаружи, её награды останавливаются.

Документация называет это свойством текущей версии контракта, которое может измениться. Задуманное поведение это награды только за время внутри диапазона, как у стейкера Uniswap; расчёт по нему в третьей таблице ниже.

Награды по нынешнему контракту #

Смотреть на два столбца: средний год и обычный год. Когда они расходятся, результат зависит от везения с курсом; здесь они почти совпадают, и почему, сказано под таблицей.

Пул USDC/EURC, комиссия 0.30% · комиссии и награды AQUA по нынешнему контракту · диапазон вокруг цены на первый день отрезка, ширина по строкам, дальше не трогаем · 2 000 $ · EUR/USD с 22 декабря 2023 по 16 сентября 2026, 127 годовых отрезков с шагом 5 дней, перекрываются

Ширина Комиссии Награды Потери конв. Средний год Обычный год Плохой год Внутри диапазона
±1% 1.5% 36.2% −2.6% 35.1% 34.6% ≤ +31.1% 24%
±2% 1.3% 18.1% −2.4% 17.0% 16.9% ≤ +13.0% 41%
±3% 1.2% 12.1% −2.2% 11.1% 11.2% ≤ +7.0% 54%
±5% 0.9% 7.3% −1.8% 6.4% 6.8% ≤ +2.7% 72%
±8% 0.7% 4.6% −1.4% 3.9% 4.4% ≤ +0.6% 85%
±15% 0.4% 2.4% −0.8% 2.1% 2.3% ≤ +0.4% 100%

Чем уже диапазон, тем лучше, и не только в среднем: ±1% даёт 35% в средний год, 35% в обычный и 31% в плохой, ±15% везде около 2%. Разброса, которого следовало бы ждать от узкой позиции, почти нет, потому что от времени внутри диапазона зависят только комиссии и потери, а награды, основная часть дохода, идут весь год. ±1% при этом стоит внутри четверть года: три четверти времени позиция получает награды за ликвидность, которой в торговле нет.

Награды как задумано, с перестановкой #

А так это выглядело бы, если бы награды платились как задумано, только за время внутри диапазона. Тогда стоять снаружи бессмысленно, и диапазон переставляется при каждом выходе цены. При перестановке примерно половина позиции меняется по комиссии самого пула, 0.30%, это 0.15% от позиции; на 2 000 $ сеть добавляет ещё сотые, итого около 0.17% за раз. Средние по тем же 127 отрезкам:

Пул USDC/EURC, комиссия 0.30% · диапазон вокруг цены на первый день отрезка, ширина по строкам, при выходе переставляем вокруг новой цены · 2 000 $ · EUR/USD с 22 декабря 2023 по 16 сентября 2026, 127 годовых отрезков с шагом 5 дней, перекрываются

Ширина Комиссии Награды Потери конв. Издержки Средний год Обычный год Плохой год Перестановок в год
±1% 5.3% 30.2% −12.8% −5.3% 17.5% 16.4% ≤ +11.7% 34
±2% 3.0% 17.2% −6.4% −1.6% 12.3% 12.3% ≤ +8.4% 9
±3% 2.1% 11.8% −4.0% −0.7% 9.2% 9.2% ≤ +6.9% 4
±5% 1.3% 7.2% −2.7% −0.3% 5.5% 5.3% ≤ +3.3% 2
±8% 0.8% 4.6% −1.4% −0.1% 3.9% 4.2% ≤ +2.5% <1
±15% 0.4% 2.4% −0.8% 0.0% 2.0% 2.3% ≤ +0.4% 0

Столбца «внутри диапазона» здесь нет, он по построению 91–100%: перестановка возвращает позицию внутрь на следующий день. Награды идут, пока позиция в диапазоне, держит её там перестановка, и платит за это столбец «потери»: при ±1% капитал в позиции тает на 12.8% в год, и это уже не отыграется, потому что каждая перестановка фиксирует продажу дешевле и покупку дороже. ±1% с его 34 перестановками это бот, и на дневных ценах его результат проверить нельзя; рабочая ширина здесь от ±2–3%, 9–12% в год. Против таблицы по нынешнему контракту это в два-три раза меньше на той же ширине: сегодняшний контракт платит те же награды неподвижной позиции, без перестановок и без постоянных потерь.

Что из этого следует #

Три таблицы дают три разных ответа на один вопрос, и разницу между ними делает только то, что и как платит пул: ширина и история курса во всех трёх одни и те же. На одних комиссиях позиция это ставка на боковик, которая на этой истории в среднем проигрывает кошельку. Награды по нынешнему контракту делают лучшей самую узкую неподвижную позицию, потому что идут весь год, пока аккаунт ничего не делает. Награды как задумано делают лучшим движущийся диапазон от ±2–3%, с ботом и постоянными потерями. Дальше пост считает награды так, как их платит контракт сегодня, и там, где это меняет вывод, приводит числа задуманного поведения; движущийся диапазон это расчёт на то, что контракт поправят.

Часть 3. Обмен: range order #

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

Диапазон целиком выше или ниже текущей цены называется range order. В нём одна монета: над ценой лежит XLM и на росте становится USDC, под ценой лежит USDC и на падении становится XLM. От лимитной заявки на бирже он отличается в трёх местах.

  • Комиссии получаете вы. Пока цена внутри диапазона, через позицию меняются другие и платят ей комиссию, как любой позиции в пуле.
  • Обмен обратим. Если цена прошла диапазон и вернулась, пул тем же путём поменяет монеты назад. Сама позиция не закроется, её выводят вручную, как только цена диапазон прошла.
  • До прихода цены позиция стоит как кошелёк. Дохода нет, но и потерь нет.

Границы выбираются так.

  1. Ширина. Целиком обмен проходит по цене ab\sqrt{ab}, где aa и bb границы диапазона. Узкий диапазон меняет почти по одной цене и проходится быстро. Широкий меняет частями по пути и дольше собирает комиссии, но целиком проходится только у дальней границы. Например, 1 000 USDC в диапазоне 0.12–0.14 при цене 0.176 превратятся примерно в 7 700 XLM по 0.12⋅0.14≈0.130\sqrt{0.12 \cdot 0.14} \approx 0.130, если цена опустится ниже 0.12.
  2. Сетка. Границы встают только на узлы сетки тиков, и выбранная цена округлится до ближайшего. У XLM/USDC шаг около 0.2%, и диапазон меньше одного шага не поставить.

Фиксация прибыли частями. Условные 20 000 XLM + 1 000 USDC при XLM 0.176, range order на продажу 0.60–0.80:

02 0004 0006 0008 00010 00012 00014 00016 00018 000↑ стоимость, $0,20,40,60,8цена XLM →держать в кошелькепозиция вокруг ценыrange order на продажу
Сколько стоят 20 000 XLM + 1 000 USDC при каждой цене XLM, если держать их в кошельке, положить XLM в range order на продажу 0.60–0.80 или всё в позицию вокруг цены 0.14–0.45. Пунктир это цена входа 0.176 и границы range order 0.60 и 0.80

До 0.60 range order ведёт себя как удержание, потом продаёт по 0.69 за монету и собирает комиссии, а после 0.80 стоит в USDC. Третья линия это та же сумма в обычной позиции вокруг цены входа, 0.14–0.45: она тоже обменивает, только распродаёт XLM уже к 0.45, не спросив, и дальше не растёт. Это потери конвертации из части 1 в виде цены, по которой пул продал. Границы range order здесь в 3.4 и 4.5 раза выше входа, и на истории XLM с 2018 года цена за год доходила до нижней в 28% годовых отрезков, а проходила верхнюю в 24%. Более близкий range order, на 20–50% выше входа, цена проходит насквозь в каждом втором отрезке, но почти в половине таких случаев к концу года возвращается, и незакрытая позиция снова в XLM.

Крупная продажа без проскальзывания. Рыночная продажа большого объёма в тонком пуле сдвигает цену против себя. Range order исполняют другие, и комиссию платят они. Среди самых активных аккаунтов XLM/USDC единственный с позицией в плюсе продавал так: односторонние вводы XLM широким диапазоном целиком выше цены, ±24.5% от своей середины, на росте мая–июня, +1.4% оборота пула и 4 тыс. $ комиссий за 51 день.

Range order годится для обмена, который сделали бы и так: комиссии к нему бонус, а единственная плата это надзор за откатом. Заработать на нём без обмена нельзя: пока цена не пришла, он не работает, а когда пришла, это обычная позиция со всем, что описано дальше.

Часть 4. Доходность на волатильной паре: XLM #

Вторая цель: обе монеты остаются в позиции, и она должна принести больше, чем те же монеты в кошельке. Для EUR/USD ответ дали таблицы части 2. Здесь XLM/USDC, где позиция в среднем проигрывает кошельку при любой ширине, и что с этим делает перестановка, возврат цены и ICE.

Работает ли это вообще: XLM против EUR/USD #

Главный вывод: при нынешних оборотах Aquarius позиция в диапазоне на XLM/USDC приносит меньше, чем те же монеты в кошельке, а на USDC/EURC больше, и причина в волатильности пары, ширина диапазона этого не меняет. «Меньше, чем в кошельке» не значит «в убыток»: в долларах позиция чаще в плюсе, просто кошелёк был бы ещё больше в плюсе. И это вывод для того, кто держит монеты без ICE и без хеджа; кому пул выгоден при той же волатильности, разобрано ниже. Позиция на волатильном активе это продажа роста в обмен на комиссии, и она срезает и падение, и подъём: два реальных годовых отрезка из бэктеста ниже, в одном XLM −20%, позиция +10%, в другом XLM +308%, позиция те же +10%. При нынешних оборотах комиссий за это дают мало. Это не особенность Aquarius. Loesch и соавторы посчитали первые полгода Uniswap v3 по 17 крупнейшим пулам, 43% всей ликвидности: комиссий 199 млн $, потерь конвертации 260 млн $, и 49.5% из 17 тысяч адресов проиграли удержанию3. Heimbach, Schertenleib и Wattenhofer из ETH Zürich пришли к тому же с другой стороны: в парах с малой волатильностью есть простые прибыльные стратегии со скромным доходом, а в волатильных заметный доход достаётся только ценой риска и активного управления4. Дальше это видно на числах Aquarius.

Дневная волатильность XLM за последний год 4.12%, годовая 79%. У EUR/USD 0.39% и 7%. Это не пара 1:1 вроде USDC/USDT: курс движется, просто примерно в десять раз медленнее, чем XLM. Потери внутри диапазона идут как σ2\sigma^2, значит при одинаковой ширине у XLM они больше в 110–130 раз: 112 по дневной волатильности, 127 по годовой. Сколько дней диапазон живёт до первого выхода цены за границу, по формуле из раздела про ширину. Две пары: EUR/USD с дневной волатильностью 0.4% и XLM/USDC с 4.1%, линиями модель, точками реальные медианы. Обе оси логарифмические: и ширина, и дни различаются в десятки раз, а на таких осях квадратичная зависимость выглядит прямой, и удвоение ширины даёт вчетверо больше дней:

1101001 00010 000↑ дней до первого выхода за границу±2%±5%±10%±20%±50%ширина диапазона →EUR/USD, σ 0.4% в деньXLM/USDC, σ 4.1% в день
Дней до первого выхода за границу по ширине диапазона. Линии: модель случайного блуждания T = (ln(1 + w))² / σ². Точки: реальные медианы по дневным ценам из таблицы ниже; EUR/USD шире ±5% за 1 000 дней не выходил ни разу. Обе оси логарифмические

Те же реальные медианы числами, дней до первого выхода (медиана дней до выхода):

EUR/USD за 1 000 дней и XLM с 2018 года · дневные цены

Ширина EUR/USD XLM
±1% 10 дней 1 день
±2% 28 дней 1 день
±3% 54 дня 2 дня
±5% 133 дня 3 дня
±10% не выходил за 1 000 дней 8 дней
±25% не выходил 28 дней
±50% не выходил 74 дня

На графике видно, где модель работает. До ±5% точки EUR/USD лежат на своей линии, а от ±10% курс не выходит вовсе: евро не блуждает случайно, а возвращается к прежним уровням. Точки XLM на узких диапазонах висят над линией только потому, что дневные цены не видят выхода быстрее одного дня; от ±10% они ложатся на прямую. На XLM диапазон ±5% живёт три дня, ±25% около месяца. Если переставлять диапазон при каждом выходе, одна перестановка это обмен примерно половины позиции по 0.1% плюс сеть, около 0.05% позиции: при ±5% на XLM это около 6% в год, при ±25% около 0.5%. Сама перестановка дешёвая. Дорого то, что она фиксирует, и это видно в следующем разделе.

Цена вышла за границу: двигать или ждать #

После выхода в позиции одна монета, и есть два варианта: переставить диапазон вокруг новой цены, докупив вторую монету, или не трогать. Оба на пуле XLM/USDC (комиссия 0.10%), 10 000 $, ±25%, по всей истории XLM с 2018 года, нарезанной на годовые отрезки с шагом 30 дней: 89 отрезков, результат каждого делится на «держать те же монеты в кошельке». Перестановка в модели происходит по закрытию дня выхода, и откуп идёт по нему, а не по границе: 13 июля 2023, в день решения по XRP, между границей 0.1137 и закрытием 0.1552 было +36%.

Пул XLM/USDC, комиссия 0.10% · ±25% · XLM с 31 мая 2018 по 16 сентября 2026, 89 годовых отрезков с шагом 30 дней, перекрываются

Стратегия (±25%) Медиана Худшее Лучшее Отрезков лучше удержания
Переставить с обменом 0.53 0.14 1.09 3%
Ничего не делать 0.75 0.20 1.24 25%

По годам видно, где именно проигрыш. Отношение к удержанию:

Пул XLM/USDC · ±25% · по календарным годам

Год XLM Перест. Ничего
2019 −60% 0.53 0.75
2020 +182% 0.34 0.62
2021 +102% 0.24 0.73
2022 −74% 0.66 0.45
2023 +78% 0.88 0.85
2024 +152% 0.56 0.71
2025 −53% 0.65 0.74

Хуже всего в годы сильного роста: позиция продавала XLM на пути вверх, а перестановка каждый раз выкупала его дороже, отсюда 0.24 в 2021 и 0.34 в 2020. Ни в один полный календарный год пул не обыграл удержание. Перестановка лучше неподвижной позиции только в двух годах из семи, 2022 и 2023, и направление цены это не предсказывает: в 2019 и 2025 XLM тоже падал, а перестановка была хуже. 2018 в таблице нет, история начинается с конца мая.

Чувствительность к объёму торгов: модель брала сегодняшний объём пула. Чтобы медиана стратегии «ничего не делать» вышла на 1.0, объёму нужно вырасти примерно впятеро; при десятикратном медиана 1.42, и пул обыгрывает удержание в 72% отрезков.

Если цена вернулась: пики и откаты #

Аргумент за «ждать»: цена сходила далеко вверх и вернулась. Если бы она вернулась ровно к точке входа, позиция откупила бы XLM обратно, потерь бы не было, а комиссии остались бы. Настоящие циклы так аккуратно не заканчиваются. Два реальных цикла XLM, 10 000 $ на входе, диапазоны ±25% и ±50% от цены входа:

Пул XLM/USDC · 10 000 $ · цикл 2021: XLM на входе 0.184, на пике 0.735 (май 2021), в конце 0.137

Диапазон Внутри Итог с комиссиями Держать те же монеты Отношение
±25%, 0.138–0.230 25% 8 852 $ 8 877 $ 1.00
±50%, 0.092–0.276 46% 9 327 $ 9 019 $ 1.03

Пул XLM/USDC · 10 000 $ · цикл 2024: XLM на входе 0.132, на пике 0.561 (декабрь 2024), в конце 0.176

Диапазон Внутри Итог с комиссиями Держать те же монеты Отношение
±25%, 0.099–0.165 30% 12 412 $ 11 476 $ 1.08
±50%, 0.066–0.198 53% 12 493 $ 11 290 $ 1.11
10 00015 00020 000↑ стоимость, $2024априюльокт2025априюльокт2026априюльпул + комиссиимонеты в кошелькевышла наверх, всё в USDC
Цикл 2024 по неделям, 10 000 $ на входе, диапазон ±25% (0.099–0.165). Серые полосы: недели, когда цена XLM была между 0.099 и 0.165, то есть внутри диапазона, и позиция собирала комиссии; разрывы короче недели слиты. Вне полос цена ниже или выше диапазона, позиция лежит в одной монете и ничего не собирает. Летом 2024 цена ушла под диапазон, позиция целиком в XLM и ходит вместе с ценой; с ноября 2024 цена над диапазоном, позиция целиком в USDC и линия ровная, пока в 2026 цена не вернулась к границе. Зазор на финише это комиссии, потери конвертации остались. Удержание взлетает на пике и возвращается. Ось стоимости логарифмическая, иначе пик съедает разрыв на финише

На пике в обоих циклах цена прошла верхнюю границу насквозь, и позиция была целиком в USDC: 10 520 $ у ±25% и 10 866 $ у ±50%. Суммы в двух циклах совпадают, потому что границы заданы долями от цены входа, а остаток после полной продажи зависит только от долей, не от самих цен.

Ни один цикл не закончился внутри диапазона, и потери никуда не делись: в 2021 цена финишировала чуть ниже нижней границы, позиция ±25% на обратном пути откупила весь XLM и стоит 8 098 $ против 8 877 $ у тех же монет в кошельке; в 2024 финишировала выше верхней, позиция целиком в USDC, 10 520 $ против 11 476 $. Отношение 1.00 и 1.08 получилось потому, что комиссии за время внутри, 754 $ и 1 892 $, покрыли эти потери, и запас небольшой: ±25% был внутри четверть цикла в 2021 и треть в 2024. Так что на круге пул не проигрывает не потому, что потери отыгрались, а потому, что комиссии набежали на ту же сумму. Если цена ушла и не вернулась, помогает только ширина: за верхней границей позиция стоит в USDC, а отставание от кошелька растёт без предела, на ±25% из 2024 года около 335 $ за каждый цент.

Кому расчёт сходится #

Критерий 4⋅ставка/σ24 \cdot \text{ставка}/\sigma^2 считан для того, кто положил монеты и сравнивает с кошельком. У части участников пула ставка выше или ориентир другой, и для них тот же пул сходится.

  • Держатели ICE. Множитель поднимает награды до 2.5 раз, и это меняет ставку только для них. На XLM/USDC награды невелики, и даже с множителем отношение остаётся меньше единицы; на USDC/EURC, где награды основная часть дохода, он превращает хорошую ставку в очень хорошую.
  • Маркетмейкеры с хеджем. Узкий диапазон, перестановки ботом и короткая позиция по XLM на бирже с фьючерсами против той, что лежит в пуле. Движение цены им безразлично, остаются комиссии за вычетом платы за финансирование. Их ориентир не кошелёк, а доходность на капитал. В цепочке видна только их сторона в пуле: ближе всего к цене в XLM/USDC ставят позиции боты с диапазонами ±0.1–0.4% и капиталом в единицы тысяч долларов, о них выше.
  • Те, кто ставит на боковик и оказывается прав. В четверти годовых отрезков XLM пул обошёл кошелёк, и в четырёх таких отрезках из пяти цена к концу года осталась в диапазоне. Это честная ставка, просто с историей не на её стороне.

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

Часть 5. Что делают в пуле сегодня: минимальный диапазон без перестановок #

По части 1 минимальный диапазон ставить нельзя: цена выходит из него в первые часы, и на этом заканчиваются и комиссии, и по задуманному поведению награды. По нынешнему контракту для наград это неважно, и по таблицам части 2 на EUR/USD выигрывает самая узкая неподвижная позиция. Доведённая до предела, стратегия выглядит так: диапазон минимальной ширины вокруг текущей цены, у XLM/USDC это 20 тиков, ±0.2%; ввод при цене внутри; и дальше с этого аккаунта в этом пуле не делается ничего, ни ввода, ни вывода, ни claim, пока цена снаружи. LL на доллар у такой позиции в сотни раз больше, чем у ±25%, и во столько же раз больше доля в наградах пула, пока таких позиций мало; сколько именно даёт вход, показывает форма ввода Aquarius на момент входа, потому что эмиссия пула делится между всеми записанными весами. Цена выходит из диапазона в первые часы, и с этого момента комиссий нет, а награды идут.

Что при этом происходит с деньгами. После выхода позиция это одна монета: ниже цены входа P0P_0 весь капитал в XLM, выше весь в USDC. Половина капитала обменяна по P0P_0 в ту монету, которая дальше дешевеет относительно другой, и против кошелька 50/50 это проигрыш капитал2 ∣P/P0−1∣\tfrac{\text{капитал}}{2}\,|P/P_0 - 1|; ширина диапазона его не меняет, любая узкая позиция конвертируется целиком. Это выплата по опциону со страйком P0P_0 на половину капитала, и считать такую позицию надо как проданный опцион.

Для держателя XLM это покрытый колл: цена ушла вниз, в позиции ровно столько XLM, сколько было бы в кошельке, потерь нет; ушла вверх, XLM продан по P0P_0, и рост мимо. Для держателя USDC это проданный пут: ушла вверх, доллары на месте; ушла вниз, на все деньги куплен XLM по P0P_0. В обоих случаях одна сторона исхода бесплатна, вторая стоит цену опциона. Годовой опцион на деньгах при волатильности XLM 79% стоит около 32% номинала, то есть около 16% капитала позиции в год: это цена, которую награды должны перекрыть, чтобы схема была в плюсе. Премия растёт линейно со временем, а цена опциона как корень из него, поэтому горизонт схемы от полугода. На EUR/USD та же арифметика в таблице части 2: у ±1% 36% наград против 2.6% потерь.

Это и делают крупнейшие участники XLM/USDC. 89% ликвидности LL пула держат пятнадцать аккаунтов с суммарным капиталом около 32 тыс. $, диапазонами в 20–80 тиков; семь из них связаны переводами и действуют синхронно, в пределах получаса. До сентября они переставляли диапазоны вслед за ценой, в активный день каждый час, а с 9 сентября не двигаются: их диапазоны стоят на 5.6% выше рынка целиком в XLM и получают награды по весу последнего действия. За 3.5 месяца у двух главных аккаунтов −1.5 и −1.7 тыс. $ по цене, +0.5 и +0.4 тыс. $ комиссий и +1.4 и +1.2 тыс. $ наград AQUA по всем пулам: потери по цене уже случились, награды продолжают идти. Есть ли у них встречная позиция вне Stellar, по данным не сказать. Остальные крупные участники в другой игре: 92% капитала пула, 1.2 млн $, лежат у одного аккаунта в диапазонах ±50% и ±100% с мая без единого вывода, минус 9% по цене вместе с рынком, ровно как удержание; крупнейший вкладчик USDC/EURC, 126 тыс. $, держит два слоя, широкий ±9.7% и узкий ±1.5% вокруг курса, и двигает узкий раз в несколько недель. Слои это конструкция под задуманное поведение наград, где широкий страхует простой узкого; при нынешнем он ничего не добавляет.

Распределение ликвидности XLM/USDC в интерфейсе Aquarius: пунктир текущей цены 0.1825 и высокий узкий пик ликвидности справа от него, около 0.185
Распределение ликвидности XLM/USDC в интерфейсе Aquarius 17 сентября 2026. Цена 0.1825, а самый высокий пик ликвидности стоит справа от неё, около 0.185: это те самые диапазоны, целиком в XLM и вне цены, и по нынешнему контракту они получают награды

На чём это держится. Четыре вещи, и каждая может измениться без вашего участия.

  • Свойство контракта. Документация называет его особенностью текущей версии и не советует строить на нём долгих планов. После исправления позиция вне диапазона получает ноль с момента фикса, а опцион уже продан.
  • Размытие. Награды это доля в записанном весе пула: каждая новая такая позиция делит ту же эмиссию, и кластер с 89% ликвидности уже здесь.
  • Эмиссия и цена AQUA. Голосование держателей ICE и рынок.
  • Никаких действий в пуле. Ни добавить, ни забрать, ни собрать награды этим аккаунтом, пока цена снаружи. Claim при цене внутри ±0.2% это вопрос удачи, так что реально награды забираются один раз, при выходе.

Часть 6. Swap-пул против lending-пула #

Lending-пул зарабатывает не на обменах, а на займах: поставщики вносят монеты, заёмщики берут их под залог других монет и платят процент. Резервов в таком пуле несколько, но перетекания между ними нет: внесённый USDC остаётся USDC при любом курсе. Состава позиции, который плавает с ценой, здесь не существует, поэтому нет и потерь конвертации: вся математика части 1 к lending-пулу неприменима. Слабое место у него другое.

Пример: Blend Fixed, крупнейший lending-пул Stellar: внесено 194 млн $, занято 44 млн $, и почти весь этот спрос на займы это USDC. Резерв USDC: внесено 53.8 млн $, занято 43.8, утилизация 81%. Заёмщики платят около 13% годовых, но проценты идут только с занятых 81%, и около четверти их забирает backstop, поставщику остаётся 13%⋅0.81⋅0.75≈8%13\% \cdot 0.81 \cdot 0.75 \approx 8\%. Ставку никто не обещает, это цена спроса на займы: за последний год она ходила между 5.8 и 19.8% при медиане 9.3%, осенью 2025 была 14–15%, к сентябрю 2026 сползла к 7–8%.

0%2%4%6%8%10%12%14%↑ ставка поставщика, % годовыхиюльокт2026априюль7,4%
Ставка поставщика USDC в lending-пуле Blend Fixed, медианы по месяцам: с 14–15% осенью 2025 она сползла к 7–8%

Сравнение с концентрированным USDC/EURC из части 1, для того же поставщика стейблкоинов:

USDC в lending-пуле Blend Fixed против USDC/EURC в swap-пуле Aquarius · параметры на 16 сентября 2026

Swap-пул USDC/EURC Lending USDC
Доход из чего комиссии обменов и награды AQUA, наград 85% процент заёмщиков, наград нет
Ставка 4–11% в обычный год не трогая, от ±8% к ±3%; 4–9% двигая ту же ширину медиана за год 9.3%, сейчас около 8%
Потери конвертации −1.4–2.2% в год не трогая, −1.4–4% двигая, ±3–8%; их покрывает доход нет
Состав позиции наполовину евро, плавает с курсом целиком доллар
Работа выбор ширины; перестановки, если двигать нет
Что гасит доход голосование ICE и цена AQUA уход заёмщиков
Риск хвоста отвязка, контракт невозврат займов, отвязка, контракт, очередь на выход при полной утилизации

Строка «ставка» в таблице стоит на разных базах: у swap это средние по 127 годовым отрезкам, у lending фактический год, и напрямую такие числа не сравниваются. Общий отрезок у двух инструментов один, докуда достаёт история ставок Blend: с 28 июня 2025. Четыре стратегии на нём: lending целиком в USDC, lending 50/50 с половиной депозита в EURC, swap ±3% с перестановкой при выходе и узкий swap ±1.5%, который не трогают:

0%5%10%15%20%25%30%↑ заработано сверх кошелька, %июльокт2026априюльlending USDClending 50/50swap ±3%swap ±1.5%
Четыре стратегии на одном отрезке, с 28 июня 2025 по 16 сентября 2026: заработано сверх тех же монет в кошельке. Lending по фактическим дневным ставкам пула, swap по модели части 1 на реальном курсе EUR/USD. Lending ровно копит, swap дышит вместе с курсом

Тот же отрезок ранжирует и ширину swap-диапазона; здесь все четыре позиции неподвижные:

0%5%10%15%20%25%30%↑ заработано сверх кошелька, %июльокт2026априюль±1.5%±3%±5%±10%
Неподвижные swap-позиции четырёх ширин на том же отрезке. Потерь в это окно почти не было, и веер это формула из части 1 в чистом виде: доход обратен ширине, а награды по нынешнему контракту идут и снаружи диапазона

Оба графика застали удачное для swap окно. Из ±3% курс не вышел ни разу, и перестановок не случилось; из ±1.5% он выходил шестнадцать раз, но каждый раз возвращался, и неподвижная позиция снова зарабатывала, 362 дня внутри из 446. Это ставка на боковик, которая сыграла, но по нынешнему контракту результат от неё почти не зависит: награды у неподвижной позиции идут и снаружи диапазона, и у ±3% в бэктесте части 2 даже плохой год даёт 7%. По задуманному поведению наград половина годовых отрезков ±1% давала бы не больше 3.8%, каждый десятый в минусе.

Swap-пул платит за обе монеты пары, комиссии идут с обменов между ними. Lending-пул платит только за ту монету, которую занимают, и ставка держится ровно до тех пор, пока держится спрос на займы. Хрупкое место того же сорта, что награды AQUA, и обнуляется оно так же молча.

Вывод: lending-пул это 8% без условий, swap-пул это 4–11% с четырьмя условиями из части 5. Около 8% в lending-пуле достаются одним депозитом, без потерь конвертации и без зависимости от наград. Неподвижный ±3–8% в swap-пуле даёт 4–11% тоже одним депозитом, но почти целиком из наград, без них минус при любой ширине, и держится это на свойстве контракта, которое авторы обещают изменить; по задуманному поведению наград swap на той же ширине давал бы 4–9% и только с перестановками, и по доходу на усилие выигрывал бы lending. Обнуляются они по-разному и независимо: swap-пул голосованием, ценой AQUA и коммитом, lending-пул уходом заёмщиков. И это же задаёт ноль для части 7: swap-пул на стейбл-паре должен обгонять не кошелёк, а ставку lending-пула на те же монеты.

Часть 7. Как выбирать #

Сводная таблица #

По целям и по тому, на чём держится результат.

Стратегия Где выигрывает Где проигрывает Работа
Range order выше или ниже цены обмен, который сделали бы и так; комиссии бонус нет дохода, пока цена не дошла; на откате обмен обратно вывести, когда цена прошла
Минимальный диапазон, после ввода никаких действий в пуле сегодня, пока контракт платит награды по весу на момент ввода: около 35% на ±1% EUR/USD, для того, кто готов остаться в любой из двух монет после исправления контракта, при размытии или обнулении наград; по цене это проданный опцион на половину капитала ввод, и больше ничего с этого аккаунта в этом пуле
Неподвижный широкий диапазон боковик; на круге «вверх и обратно» не проигрывает тренд в любую сторону; без наград минус при любой ширине нет
Неподвижный узкий на привязанной паре, XLM/yXLM или USDC/USDT0 обе монеты стоят одинаково, годится и ±0.1%, потерь конвертации почти нет отвязка, и она бьёт по всей сумме нет
Движущийся диапазон ±2–3% по задуманному поведению наград на EUR/USD: 9–12% при 4–9 перестановках в год по нынешнему контракту проигрывает неподвижному той же ширины; волатильный актив, любой тренд; без наград минус перестановки, дисциплина
Удержание без пула тренд боковик, где комиссии ушли другим нет
Lending-пул для стейблкоинов около 8% без потерь конвертации и без наград уход заёмщиков; очередь на выход при полной утилизации нет

Сначала цель. Обмен или доходность. Для обмена всё в части 3: range order там, где и так продали бы или купили, и вывести его, когда цена прошла. Всё ниже про доходность.

Комиссии считать отдельно от наград. Позиция на одних комиссиях это ставка на боковик: критерий 4⋅ставка/σ24 \cdot \text{ставка}/\sigma^2 со ставкой из одних комиссий около 0.5 на USDC/EURC и намного меньше на XLM/USDC, так что в спокойный год она выигрывает, а в среднем по истории проигрывает кошельку при любой ширине. Исключение одно: пара 1:1 из двух железных токенов, где потерь нет и комиссии платят сами, единицы процентов в год без перестановок и без наград; риск там один, отвязка, и на всю сумму. Награды AQUA это то, что делает среднее положительным, и они зависят от голосования, цены токена и версии контракта. План должен выдерживать сценарий «награды обнулились»: для EUR/USD он в таблице «только комиссии» части 2.

Сегодня: минимальный диапазон без перестановок. Пока контракт платит награды по весу на момент ввода, больше всего приносит диапазон минимальной ширины, после ввода которого в пуле не делают ничего, и годится он тому, кто готов оказаться в любой из двух монет: это проданный опцион на половину капитала за премию наградами, на EUR/USD около 35% годовых. Горизонт от полугода, условия в части 5, и главное из них: с этого аккаунта в этом пуле больше ничего не делать.

Если контракт поправят. Действуют числа третьей таблицы части 2: на EUR/USD движущийся ±2–3% с 9–12% при 4–9 перестановках и постоянных потерях, а неподвижная позиция снова зависит от времени внутри диапазона; на XLM минус при любой ширине. Ширину неподвижной позиции тогда берут порядка волатильности за срок, на который её ставят, для EUR/USD на год около ±7%.

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

Ноль для стейбл-пар это lending. Те же USDC можно отдать в lending-пул под около 8% без потерь конвертации, без наград и без работы. Swap-позиция имеет смысл, только если после всех вычетов даёт больше и вы готовы к тому, от чего зависят награды.

Считать до входа. Комиссии в диапазоне × доля времени внутри + награды − σ2/4w\sigma^2/4w − издержки; по задуманному поведению награды тоже × долю времени внутри. Запас нужен заметный, больше одного-двух процентов. Откуда брать числа: бейдж на странице пула, комиссии и награды за год, делённые на его ликвидность, это ставка средней позиции. Доход своей позиции внутри диапазона это бейдж, умноженный на отношение своей LL на доллар к средней по пулу, wср/ww_{\text{ср}}/w; для позиции шире средней это меньше единицы. В критерий идёт ставка, бейдж, умноженный на wсрw_{\text{ср}}. σ\sigma считается по истории цены: стандартное отклонение дневных логарифмических доходностей, умноженное на 365\sqrt{365}; у XLM это 4.1% в день и 79% в год, у EUR/USD 0.39% и 7%. Доля времени внутри для своей ширины есть в первой таблице EUR/USD, столбец «Внутри диапазона»; сколько диапазон живёт до первого выхода, в таблице медиан. Издержки за перестановку: половина позиции по комиссии пула, 0.05% при 0.10% и 0.15% при 0.30%, плюс сеть, на маленькой позиции заметная. Формула считает заработок сверх тех же монет в кошельке. Для стейбл-пары планка выше: те же монеты можно отдать в lending-пул, где USDC на день снятия приносит около 8% годовых без потерь конвертации и без перестановок. Позиция в swap-пуле имеет смысл, только если после всех вычетов даёт больше этих 8%.

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

Итог #

alex0007:~$ tldr concentrated-liquidity-pools
  • У swap-пула слишком много оговорок, чтобы инвестировать без серьёзных компетенций: волатильность пары, ширина, перестановки, доля наград в доходе, версия контракта
  • Swap-пул руками, без автоматизации и ботов, скорее всего приведёт к убытку
  • Без ботов более-менее работает один сценарий: узкий диапазон на паре 1:1 из токенов, которым не грозит отвязка. Доход единицы процентов, потерь конвертации нет, риск один и на всю сумму
  • Версия концентрированных пулов Aquarius на момент написания статьи платит награды так, что честное стояние в диапазоне менее выгодно, чем флот аккаунтов с минимальными диапазонами, которые после ввода с пулом не взаимодействуют
  • Lending-пул даёт сопоставимую доходность, требует меньше внимания, не требует автоматизации и не конвертирует вашу инвестицию в другую монету
¹ Aquarius, документация для разработчиков. Concentrated liquidity, разделы Swap fees и AQUA rewards: docs.aqua.network/developers/concentrated-liquidity.
² Uniswap v3-staker. Дизайн контракта стимулов: учёт секунд на единицу ликвидности внутри диапазона, снимок при входе и выходе: github.com/Uniswap/v3-staker.
³ Loesch, Hindman, Richardson, Welch. Impermanent Loss in Uniswap v3, 2021: arXiv:2111.09192.
⁴ Heimbach, Schertenleib, Wattenhofer. Risks and Returns of Uniswap V3 Liquidity Providers, 2022: arXiv:2205.08904.
Данные. Параметры пулов сняты 15–16 сентября 2026 через API Aquarius: объём торгов, активная ликвидность, награды. История XLM: дневные закрытия XLM/USDT на Binance с 31 мая 2018 по 16 сентября 2026. EUR/USD: дневные закрытия EURUSDT на Binance с 22 декабря 2023 по 16 сентября 2026, 1 000 дней; эта история стоит за пару USDC/EURC, у стейблкоинов своей истории мало, а ходят они вместе с валютами. Годовые отрезки: история нарезана на отрезки по 365 дней с шагом 5 дней для EUR/USD и 30 дней для XLM. Участники пулов: список держателей и все вводы и выводы с 29 апреля 2026 из API Aquarius, диапазоны позиций из операций аккаунтов в Horizon, капитал по чистым потокам монет по ценам на момент операции; результат по цене не включает несобранные комиссии. Lending: ставки и объёмы пула Blend Fixed (V2) из API DefiLlama, дневные значения с 28 июня 2025 (начало их истории по пулу, сам пул старше) по 16 сентября 2026; ставка поставщика, без токенов-наград.
Термины. Годовой отрезок: кусок истории длиной 365 дней; отрезки начинаются каждые 5 или 30 дней и перекрываются, по ним считается статистика. Типичный отрезок: медиана, половина отрезков дала больше, половина меньше. Худшие 10% отрезков: каждый десятый отрезок дал не больше этого. Потери конвертации: стоимость позиции минус стоимость внесённых монет по цене конца периода. К удержанию: результат позиции с доходом, делённый на стоимость тех же монет в кошельке. Активная ликвидность: ликвидность позиций, чей диапазон включает текущую цену. Перестановка в моделях: вывод позиции, обмен примерно половины по комиссии самого пула (0.30% в USDC/EURC, 0.10% в XLM/USDC), ввод вокруг новой цены, сеть 0.5 $.
Что не учтено. Объём торгов и ликвидность пула взяты на день снятия и распространены на всю историю. Цены дневные: внутридневные выходы за границы не видны, поэтому время в диапазоне завышено, а число перестановок занижено, и для узких диапазонов это существенно. Комиссии не реинвестировались, издержки перестановок из рабочей ликвидности не вычитались; и то и другое эффекты второго порядка. Награды считались по сегодняшней эмиссии и цене токена, линейно по ликвидности; у неподвижной позиции за весь отрезок, как платит нынешний контракт, у движущейся за дни внутри, что при перестановке в день выхода почти то же самое. Границы диапазонов заданы в процентах от цены входа, как в форме Aquarius, поэтому позиция на входе не 50/50. Всё это сдвигает результат в обе стороны, но не меняет соотношений между стратегиями. Отвязка монеты от доллара и уязвимость контракта в моделях отсутствуют вовсе, а бьют по всей сумме.