tldr: разбираемся на примере FRAX, как печатать сотни миллионов стейблкоинов из
Краткое напоминание о том, что такое FRAX, и как оно работает:
⁃ FRAX - частично алгоритмический стейблкоин, то есть его привязка к доллару частично обеспечена залогом других токенов (примерно как DAI; пока что в залог можно давать только стейблы), частично - гавернанс-токеном FXS (примерно как UST);
⁃ соотношение этих частей определяется автоматически и зависит от текущей цены FRAX (ниже/выше $1) и доступной на дексах ликвидности FXS, сейчас соотношение (уровень коллатеризации/CR) составляет примерно 90%;
⁃ CR определяет правила минта и сжигания FRAX: (1) при CR 100% для минта 1 FRAX потребуется 1 стейблкоин, при его сжигании будет выдан 1 стейблкоин, (2) при CR 90% для минта 1 FRAX потребуется 0.9 стейблкоина + $0.1 в FXS (который сразу же сжигается), при его сжигании будет выдано 0.9 стейблкоина + свеженапечатанный $0.1 в FXS;
⁃ откуда пег к $1: ты всегда (точнее когда цена FRAX ниже $0.993) можешь зайти в приложение Frax и обменять 1 FRAX на стейблкоин (DAI/FEI/LUSD/SUSD/USDP/USDC) либо стейблкоин+FXS общей стоимостью $1;
⁃ соответственно, пока у FRAX достаточно залоговых средств для обмена FRAX на $1, мы можем быть уверены, что арбитражники будут выравнивать цену FRAX до $1.
Зачем нужен такой дизайн? Задача FRAX - увеличение эффективности капитала. Идея в том, что у стейблкоин-проектов чем выше требуемый протоколом уровень коллатеризации, тем ниже эффективность капитала (т.к. залог лежит мертвым грузом, не принося юзерам и/или протоколу никакой прибыли). Снижение требований к уровню коллатеризации уже само по себе увеличивает эффективность капитала, но Frax пошли дальше и внедрили Algorithmic Market Operations Controller или AMO. В официальных документах его определяют как контракт(ы), который алгоритмически совершает операции на открытом рынке, но при этом не ставит под риск пег FRAX. А еще называют АМО полным по Тюрингу пространством проектирования механизмов стабилизации цены FRAX. Что-то непонятное, правда? Для начала запомним ключевой тезис по АМО от команды Frax: “AMO controllers … cannot arbitrarily mint FRAX out of thin air and break the peg”. И попробуем разобраться, что они имели в виду:
⁃ АМО это алгоритмически заданные правила направления средств протокола в другие дефи-протоколы (что-то типа алгоритмической монетарной политики, где Frax - центральный банк), средства протокола в данном случае это (1) оставленные в качестве залога стейблкоины,(2) собственные средства протокола и (3) свеженапечатанный FRAX;
⁃ пример АМО №1: “Collateral Investor AMO” - направляет залоговые стейблкоины в Aave, Compound и/или Yearn, не влияет на уровень коллатеризации (т.к. средства могут быть мгновенно вытащены из протоколов);
⁃ пример АМО №2: “Curve AMO” - направляет залоговый USDC и напечатанный FRAX в пул FRAX3CRV, а ЛП-токены пула - в ваулт Yearn crvFRAX, Stake DAO и Convex Finance;
⁃ пример АМО №3: “Uniswap v3 Liquidity AMO” - направляет залоговые стейблкоины и напечатанный FRAX в пулы Uniswap v3;
⁃ другие АМО: Collateral Hedge (шорт на залоговые активы), FRAX Lending (печать новых FRAX в лендинги типа Compound и Cream), в будущем - Tornado Cash AMO (анонимность за счет вновь сминченных FRAX) и прочие;
⁃ важно, что под "напечатанным FRAX'ом" выше имеется в виду FRAX, напечатанный протоколом без какого-либа залога (out of thin air в общем-то): в отношении напечатанных FRAX для каждого АМО устанавливается свой уровень коллатеризации - например, FRAX в лендингах считаются коллатеризованными на 100%, но могут быть и другие правила (в чате Frax мне не смогли пояснить, как узнать CR для различных АМО, но отметили, что расчеты CR корректируются оффчейн PID-контроллером и мультисигом);
⁃ АМО по большей части создаются и контролируются командой Frax, но создание некоторых АМО выносится на голосование;
⁃ другие стейблкоины используют похожие конструкции, но в меньших масштабах: D3M у MakerDAO, protocol-owned FEI у Fei и AMO у Angle.