Osmosis

OSMOSIS

Для нормального функционирования любой блокчейн экосистемы нужен хороший DEX, или же децентрализованная биржа, если по-русски. DEXs позволяют привлекать ликвидность в сеть, инвестировать в проекты, обменивать токены, в общем, создают здоровую экономическую модель. И самым значимым DEX с наибольшей ликвидностью, объемом торгов и комиссий в сети Cosmos является именно Osmosis.

Что такое Osmosis

Osmosis это высокотехнологичный AMM (автоматический маркет-мейкер) протокол, который позволяет запускать кастомизированные пулы ликвидности с широкими набором настраиваемых параметров. Был основан в январе 2021 года Sunny Aggarwal, Josh Lee, и Dev Ojha, все три персонажа являются опытными блокчейн разработчиками, работавшими на Tendermint, где и разработали архитектуру для своего DEX. В данный момент за разработку и написание кода отвечает их компания Osmosis Labs. Команда Osmosis, вдохновленная такими проектами, как Balancer и Uniswap, поставила перед собой цель предоставить пользователям и разработчикам лучшие в своем роде инструменты для создания и настройки AMM, уходящих далеко за границы функционала простой “свапалки”.

Модули

Osmosis построен на Сosmos-SDK. В плане базовых модулей почти все Сosmos сети одинаковы.

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

Команда Osmosis сильно вовлечена в разработку Cosmos-SDK и Tendermint. Если разрабатываются какие-то модули полезные для всех, они предоставляются всей экосистеме. У самого Osmosis’a на данный момент представлены 8 модулей.

1. Эпоха (Epochs)

Эпоха — это временной интервал, на который опирается весь программный код для выполнения задач.

Как он работает? Время от времени в SDK необходимо запускать определенный код. Цель модуля Эпохи - позволить другим модулям установить, что они хотели бы получать сигнал один раз в каждый период, чтобы в определённом промежутке происходила какая-то логика.

Чаще всего Эпоха встречается в распространении наград за стейкинг и фарминг, они начисляются ежедневно в определённое время. При этом Epochs создает обобщенный интерфейс эпохи для других модулей, чтобы они могли легко получать сигналы о таких событиях.

2. GAMM

Этот модуль cодержит AMM логику (Generalized Automated Market Maker)

Нужен для создания и взаимодействия с пулами ликвидности на Osmosis DEX. Пока предоставляется поддержка только balancer constant function pool. Также, ведётся разработка stableswap.

По простому это LP-токены пулом DEX. Те самые гаммы, за которые можно получить дроп, но только если вы их обеспечиваете в Osmosis 😁

Как он работает? Gamm - это ваша доля от общего количества ликвидности в пуле. При присоединении к пулу пользователь предоставляет некоторое количество токенов, в то время как внешний интерфейс заботится о расчете сколько токенов пула пользователь может получить в момент отправки транзакции. После проверки токены доли GAMM пула чеканятся и отправляются на учетную запись пользователя. Также возможно присоединение к пулу с использованием одного актива, благодаря автоконвертации

3. Incentives (стимулирование)

Это модуль стимулирования поставщиков ликвидности — награды за предоставление ликвидности на DEX.

Целью incentives модуля является поощрение пользователей, которые блокируют определенный токен на определенный период времени. Заблокированные токены могут быть любого номинала, включая токены LP (gamm/pool/x), токены IBC (токены, отправленные через IBC) и нативные токены (такие как ATOM или JUNO).

4. Lockup (блокировки)

Модуль блокировки предоставляет пользователям интерфейс для блокировки токенов в модуле для получения поощрений.

Как он работает? После того, как токены были добавлены в определенный пул и превращены в доли LP с помощью модуля GAMM, пользователи могут заблокировать эти доли LP на определенный срок, чтобы начать получать большее вознаграждение.

Чтобы разблокировать эти общие ресурсы LP, пользователи должны запустить таймер разблокировки и дождаться завершения периода разблокировки, который был установлен при блокировке. По истечении периода разблокировки пользователи могут превратить доли LP обратно в свою соответствующую долю токенов.

5. Mint (чеканка)

Модуль отвечает за создание токенов и делает это "гибко".

Чтобы сразу учесть вознаграждения валидаторов, стимулирования предоставления ликвидности пула, предоставления средств для управления Osmosis и выплаты разработчикам за поддержку и улучшение Osmosis.

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

6. Pool Incentives

Модуль представляет собой некую модель дополнительной стимуляции поставщиков ликвидности.

Модуль pool-incentives является отдельным, но связанным с incentives модулем.

Как он работает? Когда пул создается с помощью GAMM модуля, pool-incentives модуль автоматически создает отдельные датчики в incentives модуле для каждой длительности блокировки, которая существует в этом пуле. Модуль pool-incentives также берет pool_incentives распределение из gov модуля и распределяет его по различным стимулирующим датчикам.

7. Gov (управление)

Модуль гавернанса обеспечивает управление в сети, что позволяет держателям токенов Osmosis участвовать в процессе принятия решений под руководством сообщества.

Например, любой участник сети может:

  • Предложить идею и получить обратную связь.

  • Изменять идею в соответствии с отзывами по мере необходимости.

  • Укрепить предложение, внеся монеты (что может сделать любой желающий поддержать идею), которыми выдвинет предложение в активные пропозалы.

  • Проголосовать за активное предложение.

8. Superfluid Staking

Это уникальный для Osmosis модуль стейкинга долей GAMM токенов, этого модуля нет нигде и разработан он конкретно в Оsmosis.

Если вам не понятен термин Superfluid Staking, чуть ниже есть описание процесса, но стоит начать с разбора пользы от стейкинга и пользы от обеспечения ликвидности:

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

Обеспечение ликвидности помогает избежать сильных колебаний курса монеты при покупке и продаже.

Суперфлюидный стейкинг обеспечивает безопасность сети с помощью встроенного в фарминг - стейкинга, одновременно с обеспечением ликвидности часть монет находится в стейкинге. В результате чего гарантия безопасности уровня консенсуса (которую обеспечивает стейкинг) также будет основываться на долях GAMM LP. Токен OSMO чеканится и сжигается в контексте Superfluid Staking.

На функциональном уровне работа Osmosis ничем не отличается от работы других AMMs – пулы ликвидности лочат токены через смарт-контракт, который обеспечивает функционирование торгов (свапов). Поставщики ликвидности депонируют свои токены в пулы ликвидности, получают за это LP токены (токены пула ликвидности) и, соответственно, долю от генерируемых в пуле комиссий. Модель формирования цены тоже стандартная для большинства AMM - доля токена в пуле должна оставаться постоянной. А чем Osmosis такой примечательный и уникальный, расскажем дальше.

Как работает Osmosis

Стимулы для предоставления ликвидности

Для обеспечения необходимой ликвидности на Osmosis используются два ключевых механизма – удельный вес обеспечиваемой ликвидности (bonded liquidity gauge) и комиссии за вывод средств из пула ликвидности (exit fees).

Удельный вес обеспечиваемой ликвидности

Данный механизм позволяет формировать дополнительное (помимо доходности от полученных пулом комиссий) вознаграждение поставщикам ликвидности исходя из их доли в пуле ликвидности и от времени, на которое они лочат свои LP токены данного пула. 45% ежедневной эмиссии токенов OSMO выделяется на это дополнительное вознаграждение. При этом у пользователя есть различные опции (или же удельный вес, в оригинале gauges) по выбору времени лока своих LP токенов. Допустим, в пуле ATOM/OSMO есть опции лока на день, неделю и месяц – далее опция 1, опция 2 и опция 3 соответственно. При этом дополнительные вознаграждения определенным образом распределяются между этими опциями. Несколько практических примеров:

1. Валера добавляет свои активы в пул, получает LP токены, но не хочет их лочить. Тогда его доход будет состоять из полученных пулом комиссий, никакого дополнительного вознаграждения он не получит.

2. Валера выбирает опцию 1. Теперь его доход состоит из комиссий пула и дополнительного вознаграждения, предусмотренного опцией 1 (разумеется, пропорционально доле LP токенов Валеры от общей доли LP токенов, получающих вознаграждение от 1 опции).

3. Валера выбирает опцию 3. А значит, что теперь его доход помимо комиссий пула теперь будет включать в себя дополнительные вознаграждения, предусмотренные для опции 1, опции 2 и опции 3. Короче парень берет от жизни по максам.

Стоит учесть, что у пользователей есть возможность разделить свои LP токены на различные опции, например, отправить 50% в первую опцию, а 50% во вторую.

Не все пулы ликвидности могут получать дополнительное вознаграждение в токенах OSMO. Стейкеры OSMO путем он-чейн голосования выбирают, какие пулы получат это вознаграждение и в каких долях оно будет распределено между различными опциями. Для этого стейкеры присваивают пулам и их опциям так называемые “очки аллокации (allocation points)”. Например, в ходе голосования было присвоено всего 20 очков аллокации, 2 очка аллокации приходится на опцию 1 пула X, тогда данная опция получит 2/20 = 10% от всех дополнительных вознаграждений.

Помимо “официального” дополнительного вознаграждения (45% от ежедневной эмиссии токенов OSMO), любой проект или пользователь может назначить своё дополнительное вознаграждение и установить распределение по опциям для какого-то определенного пула.

Удельный вес обеспечиваемой ликвидности выполняет еще одну важную функцию – служит защитой от “вампирских атак”, поскольку для получения дополнительного дохода пользователи вынуждены лочить свои средства, у сторонних DEXs нет возможности переманить поставщиков ликвидности на свою площадку краткосрочным супервыгодным предложением.

Детально обо всем этом можно почитать тут.

Комиссия за вывод средств из пула ликвидности

Комиссия за вывод средств из пула – это небольшой процент LP токенов, который взимается у поставщика ликвидности, когда он отправляет запрос на вывод средств из пула. При этом эти токены сжигаются.

Кастомизация пулов ликвидности

Поставщики ликвидности могут экспериментировать с различными функциями маркет-мейкинга, это значит, что у Osmosis нет какой-то определенной математической функции, как у большинства других AMM, по которой работают пулы ликвидности (для примера, Uniswap используют функцию x*y = k, где x и y это соответственно количество одного и второго токенов в пулах, а k – постоянная величина, если вы совсем новичок и ничего не поняли, то почитайте как работает Uniswap, это необходимые базовые знания). Параметры пула, такие как изначальный удельный вес токенов (доля определенного токена в пуле), комиссия за свапы и вычисление TWAP (Time-Weighted Average Price, что-то типа средней цены за определенный промежуток времени) выбираются создателями пула. Но при этом у всех держателей LP токенов каждого пула есть право голоса на принятие каких-либо изменений в пуле, пропорциональное их доле LP (а еще до кучи есть определенные коэффициенты, которые учитывают, как долго пользователей является поставщиком ликвидности в данный пул и в зависимости от этого он получает буст к своим голосам, такие дела).

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

Суперфлюидный стейкинг (superfluid staking)

У мульти-чейн экосистемы есть один большой недостаток – обеспечение безопасности сети, которое достигается за счет стейкинга. Так у ETH 2.0 безопасность сети обеспечивают стейкеры эфира, у Polkadot экосистемы за безопасность отвечает рилэй чейн, т.е. сама полька. И там, и там залочено большое количество монет, поэтому безопасность на высоком уровне. В свою очередь в экосистеме Cosmos, на данный момент нет своего “ядра”, отвечающего за безопасность и поэтому может возникнуть проблема, когда с одной стороны нативные токены нужны для стейкинга и обеспечения безопасности, с другой стороны нативные токены нужны и для создания ликвидности. Osmosis придумал как убить двух зайцев одним выстрелом. Суперфлюидный стейкинг – это механизм, позволяющий использовать часть токенов OSMO, находящихся в пулах ликвидности, для их одновременного стейкинга.

Небольшой практический пример:

Пользователь добавляет в пул ATOM/OSMO ликвидность на 1000$ (500$ в токенах ATOM и 500$ в токенах OSMO) и выбирает срок лока своих токенов в пуле, который гарантирует ему определенный APR (annual percentage rate – или годовая процентная ставка). Пусть этот APR = X. После этого у пользователя есть возможность добавить часть своих залоченных в пуле токенов OSMO в стейкинг. Какую часть из этих токенов пользователь может добавить в стейкинг, определяется исходя из соображений безопасности. Изначально эта часть равнялась 50% от токенов OSMO. Таким образом в нашем примере пользователь будет получать доход X за предоставление ликвидности в пул и дополнительный доход Y за стейкинг токенов OSMO на 250$ в эквиваленте (50% от 500$ в токенах OSMO, добавленных в пул ликвидности).Стоит учесть, что доходность Y является динамически изменяющейся величиной, так как соотношение количества токенов ATOM/OSMO постоянно меняется с изменением их цены друг относительно друга. Эти изменения учитываются благодаря TWAP (time-weighted average price, или же средней цене на заданном интервале времени) оракулу.

Неофициальное видео на русском языке, где подробно и доходчиво с практическими примерами объясняется работа суперфлюидного стейкинга тут

Официальное видео про принцип работы суперфлюидного стейкинга на английском языке тут

Суперфлюидный стейкинг позволяет поставщикам ликвидности получать больше наград (награды пула ликвидности + награды за стейкинг) и при этом улучшает безопасность Osmosis (больше OSMO в стейкинге).

Osmosis Frontier

Существует проблема, связанная с тем, что нет ни одного эффективного и безопасного мульти-чейн моста. Использование нескольких мостов создаёт различные разновидности обернутых токенов (wrapped token) одного и того же актива (например, вы хотите перевести эфир в сеть Cosmos используя мост X, на выходе вы получите xETH, если будете использовать мост Y, то получите yETH), это, во-первых, размывает ликвидность, а во-вторых, приводит к путанице рядовых пользователей, которые видят кучу разных обернутых вариаций одного и того же токена и не знают, что им выбрать. Osmosis категорически не хотят, чтобы такое происходило на их площадке, но и ждать появления идеального моста тоже не является приемлемым вариантом. Поэтому они запустили своего рода экспериментальный DEX – Osmosis Frontier, где любой пользователь может создать свой пул с любым активом. Такой вот дикий запад для любых экспериментов (хочешь, скам коины листи, хочешь с настройками пулов играйся, хочешь мосты тестируй).

Ссылка на площадку тут. !!! _помните, что здесь можно нарваться на скам, пул может быть пустым и слиппедж ударит вам серпом по яшкам. Короче, будьте осторожны, если вдруг решите поэкспериментировать !!!_

*Так же стоит отметить, что в официально медиуме Osmosis вскользь упоминалось о том, что, возможно в будущем на Osmosis появится возможность отображать все различные врапнутые версии одного и того же актива как единого токена.

** У пользователя есть возможность добавить некоторые активы из сети Ethereum на Osmosis с помощью интерфейса Axelar. На начало июня 2022 года эти активы ограничивались USDC, WBTC, WETH и DAI.

Официальный гайд по тому, как это можно сделать тут.

*** В конце июня 2022 года Osmosis, благодаря интеграции приложения Kado, предоставили пользователям возможность напрямую покупать токены axUSDC и OSMO со своих кредитных карт или банковских аккаунтов.

Более подробную информацию можно найти тут.

Токеномика

График эмиссии токенов OSMO по годам

Нативный токен $OSMO выполняет гавернанс и утилити функции.

Во-первых, он служит для обеспечения экономической безопасности Osmosis посредством стейкинга, а когда будет запущена функция обеспечения общей безопасности, Osmosis собираются стать частью хаба Cosmos. Во-вторых, $OSMO позволяет холдерам принимать участие в он-чейн голосованиях. В-третьих, токен используется для оплаты комиссий и предоставления дополнительного вознаграждения поставщикам ликвидности.

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

UPD

Osmosis недавно объявили, что собираются работать с Polkadot и ERC токенами, что станет возможным благодаря их интеграции с Axelar и Moonbeam. Подробнее об этом можно почитать тут

Last updated