Uniswap V3
Развертывание неиспользуемого обеспечения в парах стейблкойнов на Uni v3 с FRAX
Основная инновация в алгоритме Uniswap v3 AMM заключается в том, что поставщики ликвидности могут предоставлять ликвидность между определенными ценовыми диапазонами, что позволяет накапливать очень глубокую ликвидность для пар стейблкойн-стейблкойн (например, FRAX-USDC) с жестким соблюдением баланса. В отличие от Uniswap v2, ордеры на диапазоны в Uniswap v3 сосредотачивают ликвидность, а не распределяют ее по неограниченному ценовому диапазону.
AMO ликвидности Uniswap v3 обеспечивает полезное использование FRAX и обеспечения, предоставляя ликвидность другим стейблкойнам в паре с FRAX. Поскольку AMO может войти в любую позицию Uni v3 и выполнить минтинг FRAX для этой позиции, это дает возможность расширения в любые другие стейблкойны, а позднее в волатильное обеспечение в Uni v3. Кроме того, функцию collectFees() можно периодически вызывать для распределения прибыли AMO на рыночные операции с избыточным обеспечением.
Характеристики AMO
Снижение обеспечения: Неиспользуемое обеспечение и новые FRAX, выпущенные посредством минтинга, вносятся в пару Uni v3.
Рыночные операции: Накопление комиссий за транзакции Uni v3 и доходов от свопов между типами обеспечения.
Восстановление обеспечения: Вывод из пар Uni v3, сжигание FRAX и возвращение USDC для увеличения CR.
FXS1559: Ежедневные комиссии за транзакции накапливаются сверх уровня CR.
Производные
Все цены являются соотношением между двумя единицами. Обычно при сравнении цен на бытовые товары и услуги мы используем валюту в качестве общей расчетной единицы в знаменателе (например, доллар). В Uniswap цены определяются соотношением между величиной резервов x и величиной резервов y в пуле.
Механика ордеров на диапазоны в Uniswap v3 соответствует существующему постоянному инвариантному выражению маркетмейкера продукта x∗y=k (CPMM), превращая резервы в виртуальные по достижении определенного уровня цены, так называемой «метки». Ордеры на диапазоны указывают, какими метками ограничивается позиция ликвидности и следуют инвариантной константе продукта без необходимости распределения ликвидности по всему диапазону (0,∞) для определенного актива.
Цена в Uniswap v3 определяется уровнем 1,0001 от метки i. Метки цен могут быть представлены алгебраической группой G={gi∣i∈Z,g=1,0001}. Этот механизм позволяет легко конвертировать целые числа в границы цен, и его удобно использовать для дискретизации каждой границы метка-цена как одного базисного пункта (0,01%) в цене от другой метки.
Виртуальные резервы отслеживаются путем отслеживания ликвидности и границ меток для каждой позиции. При пересечении граничного уровня метки ликвидность L, доступная для этой метки, может изменяться для отражения движения позиций между соответствующими ценовыми диапазонами. В пределах метки свопы изменяют цену sqrt(P) в соответствии с виртуальными резервами, т. е. устанавливают безвариантную постоянную стоимость продукта (x∗y=k). Виртуальные резервы x и y рассчитываются на основе ликвидности и цены:
Обратите внимание, что в реальной системе используется квадратный корень цены, поскольку операция извлечения корня сохраняется при расчете внутренних свопов, и это помогает предотвратить ошибки, связанные с округлением.
Ликвидность можно представить как виртуальное k в формуле x∗y=k CPMM, в то время как ΔY соответствует величине актива Y,а ΔP представляет колебания цены внутри метки.
Поскольку L фиксируется для свопов между метками, ΔX и ΔY можно рассчитать на основе ликвидности и квадратного корня цены. При пересечении метки своп должен опускаться только до граничного уровня P, а затем изменять ликвидность, доступную для следующей метки.
Last updated