Down the Rabbit Hole: Mean Finance
Mean Finance — это открытый протокол Dollar Cost Average (DCA), который позволяет пользователям или Dapps осуществлять DCA любого токена ERC20 на любой другой токен ERC20 с доступом к предпочитаемой частоте, сохраняя при этом децентрализацию и защищая личные данные от передачи централизованным сторонам. Mean Finance использует оракулы Chainlink и Uniswap V3 TWAP для достижения всех этих целей.
Протокол настроен таким образом, чтобы клиенты были защищены от волатильности, а маркет-мейкеры имели хорошие стимулы для совершения сделок:
Вот что Mean Finance предлагает пользователям и маркет-мейкерам:
Пользователи:
- Усиленная защита от волатильности рынков.
- Доступ к торговле, защищенной MEV.
- Доступ к безгазовому DCA.
Маркет-мейкеры:
- Они могут использовать весь баланс протокола для исполнения сделок.
- Зарабатывают определенный процент комиссионных.
- Арбитраж пулов.
Дизайн Mean Finance позволяет свести к минимуму всевозможные действия, связанные с MEV, для пользователей. В случае совпадения желаний в пулах, пользователи подбираются к одному и тому же пулу; в противном случае маркет-мейкер берет на себя исполнение сделок по желаемой стоимости.
Свопы в Mean Finance
Свопы играют важнейшую роль в экосистеме Mean Finance. Существует несколько стимулов, побуждающих разработчиков проводить свопы.
Multi Swaps
Они использовали стратегию Factory/Pairs в v1. Теперь, с появлением Hub, все находится под одним контрактом, что позволяет осуществлять множественные свопы благодаря этому обновлению.
Обычно свопы осуществляются между двумя отдельными токенами, и вы обмениваете один токен на другой, отправляя один. В Mean Finance вы можете совершать одновременные обмены с участием множества токенов.
Это помогает экономить газ и снижает количество ликвидности, необходимое для выполнения свопов.
Вот пример того, как это работает:
- Допустим, при обмене WETH/DAI, предложив 100 DAI, можно получить взамен 200 WETH.
- При обмене WETH/USDC можно предложить 100 WETH и получить взамен 50 USDC.
- Теперь, при обмене USDC/DAI, нужно будет предложить 200 USDC, чтобы получить взамен 200 DAI.
Если есть необходимость выполнять обмены по отдельности, участники обмена должны каждый раз предоставлять разные токены. Даже при повторном использовании наград из одной пары для другой будет происходить несколько переводов токенов, что приведет к быстрому росту платы за газ.
Однако при многократном обмене нет необходимости в ненужных переводах токенов и не требуется пользовательский код, поскольку все это обрабатывается Hub для использования участниками обмена.
Вот что получают свопперы в обмен на предоставление ликвидности и расходование газа для выполнения свопов:
- Из-за цены оракулов, используемых в парах Mean Finance, может существовать возможность арбитража между оракулами и другими DEX.
- Как и флэш-свопы, Mean Finance отправляет вознаграждение при выполнении свопа.
- Аналогично флэш-кредитам, Mean Financing позволит участникам свопа бесплатно заимствовать ликвидность протокола при свопе.
- Они будут делить комиссию протокола за сделку со своппером. В настоящее время они будут получать 0,45% от проданных токенов, 3/4 от 0,6%.
Next Swap
В отличие от AMM, участники свопа Mean Finance не могут определить сумму, которую они хотели бы обменять, и эти суммы определяются размещением, установленным для различных пар. Поэтому понимание того, какие токены должны быть поставлены и какое вознаграждение должно быть предложено, является первым шагом в осуществлении свопа.
До Next Swap
Все позиции имеют интервалы обмена, которые определяют, когда производить обмен. Следовательно, в какой-то момент у пары может закончиться исполнение свопа. Если это так, попытка выполнения свопа только для этой пары приведет к возврату. Проверьте доступность следующего свопа, чтобы узнать, когда он будет доступен.
Информация о Next Swap
Если значение secondsUntilNextSwap для любой пары возвращает ноль, вы можете выполнить обмен немедленно. В этом случае вы можете вызвать getNextSwapInfo, чтобы узнать все об этом обмене и решить, выполнять его или нет.
Здесь вы можете найти их функции.
Выполнение обмена
Вы можете совершить обмен, когда определитесь с количеством поставляемых жетонов и вознаграждением.
Существует несколько способов сделать это, в том числе:
- Flash swap: Позволяет заимствовать ликвидность и получать вознаграждение до возврата необходимых средств.
- Swap for caller: Вам нужно только передать требуемую сумму для “swap for caller”, что более просто и не требует особых знаний Ethereum для получения вознаграждения
- Swap for DEX: Это сделка, в которой ликвидность не требуется. Вы просто покрываете расходы за газ и оставляете платеж себе.
Управление позициями
Mean Finance сосредоточен на позициях. Пользователи заявляют о своем намерении торговать токенами, когда открывают позицию, и эти позиции могут создаваться, изменяться и прекращаться.
Чтобы попытаться прояснить ситуацию, вот пример:
Рассмотрим человека, который хочет приобрести WETH и имеет немного DAI. Он хочет создать позицию Mean Finance, потому что ему не хватает знаний в области рыночного тайминга. Его позиция будет выглядеть следующим образом, если он хочет покупать WETH на 5 DAI каждый день в течение года:
- От: DAI
- Кому: WETH
- Ставка: 5 DAI
- Количество свопов: 365
- Интервал обмена: daily
Джон должен внести все необходимые средства в самом начале создания позиции. В его ситуации эта сумма составит 5 x 365, или 1825 DAI. С другой стороны, поскольку свопы осуществляются ежедневно, ему не придется вносить дополнительные депозиты или оплачивать расходы на газ.
Изменение позиций
У пользователей есть несколько вариантов изменения своих позиций. Люди могут:
- Добавить дополнительные деньги на свой счет
- Забрать деньги с их позиции
- Реорганизовать имеющиеся ресурсы
Как вы могли заметить, у позиции можно изменить только свойства “ставка” и “количество свопов”. Нет возможности изменить свойства “интервал свопов”, “от” или “до”.
Кроме того, у пользователей есть возможность в любой момент покинуть свою позицию. Оставшийся и обмененный баланс возвращается пользователю, а должность уничтожается.
Устаревшие позиции
Существуют различные стимулы для поощрения свопперов к завершению всех транзакций. На эти стимулы может влиять множество факторов:
- Общее настроение крипторынка
- Спрос/популярность токенов, используемых в свопе
- Объемы токенов, участвующих в свопе
Поэтому некоторые посты могут долгое время оставаться незаполненными. Эти позиции называются «устаревшими». Комиссии взимаются только за свопы; таким образом, баланс остается неизменным, если позиции устаревают.
Архитектура
Mean Finance v2 разделена на Core и Periphery, как и Uniswap.
Смарт-контракты на стороне Periphery предназначены для облегчения взаимодействия домена с Core.
В то время как Core содержит все контракты, необходимые для функционирования протокола.
Контракты
Наиболее значимыми контрактами являются:
1. The Companion
Hub — это самый значимый контракт в протоколе. Однако из-за ограничений на размер контракта пользовательские возможности не самые лучшие. Companion может помочь в этой ситуации.
Companion — это смарт-контракт, который сосуществует с Hub и взаимодействует с ним, чтобы улучшить пользовательский опыт и предложить некоторые недостающие функции.
2. Hub
С точки зрения архитектуры, Mean Finance использовала стратегию Factory/Pairs в версии 1. Был заводской контракт, который развертывал новые пары, сохраняя при этом отслеживание текущих, и каждая пара была отдельным контрактом.
Хотя эта стратегия была эффективной, развертывание новых контрактов для каждой новой пары было довольно дорогостоящим, особенно в сети Ethereum Mainnet. Этот метод также затруднял получение выгоды от совпадения желаний при обмене.
Поэтому они разработали “Hub” для версии 2. Нет необходимости в развертывании новых контрактов, поскольку “Hub” — это единый контракт, который управляет всеми парами. Кроме того, проведение свопов для множества пар в рамках одной транзакции стало более простым и менее затратным.
3. Permission Manager
Контракт, который управляет владением/передачей NFT и другими правами, называется Permission Manager.
Обязанности:
- Управляет владением и передачей NFT
- Только Hub может выполнять минт и сжигание, когда позиция установлена или прекращена.
- Разрешения на опоры
- Управляет дополнительными разрешениями
- Поощряет использование разрешения EIP-2612 для дополнительных разрешений
4. Oracles
Оракулы являются важным компонентом системы, поскольку они раскрывают цены токенов во время свопов. Это означает, что пара может поддерживаться Mean Finance только в том случае, если для этого существует оракул в сети. Таким образом, Mean Finance объединила два альтернативных источника, Uniswap v3 и Chainlink, чтобы включить как можно больше пар.
Они разработали “Oracle Aggregator” для использования обоих. Этот контракт служит в качестве прокси при запросе котировок, поскольку он знает о двух других оракулах. Логика работы прокси относительно проста. Если оракул Chainlink поддерживает указанную пару, мы будем использовать Chainlink, а если нет, то переключимся на Uniswap v3 в качестве резервной копии.
Это связано с тем, что объем и ликвидность каждой пары влияют на надежность оракулов Uniswap v3. Было бы безопаснее использовать Chainlink, когда он доступен, и стараться избегать ошибочных котировок, потому что нет никакого контроля над всем этим.
5. Libraries
На Periphery несколько библиотек должны упростить работу разработчика.
- InputBuilding: Конкретные параметры, необходимые для выполнения обмена, описаны в разделе обмен. Эта библиотека помогает при интеграции, поскольку переводит параметры из более удобного для пользователя формата в тот, который ожидает Hub.
- ModifyPositionWithRate: При изменении позиции в версии 1 необходимо было указать новую ставку и количество свопов. Хотя в версии 2 стратегия была изменена, они все же создали библиотеку для пользователей, предпочитающих более ранний метод.
- SecondsUntilNextSwap: При выполнении позиции DCA время — это все. Используйте эту библиотеку для определения времени, которое потребуется для получения следующего свопа, если вы хотите знать, как долго вам придется ждать.
Сборы
В Mean Finance сборы очень просты. Плата за газ и плата за протокол — это две категории.
Плата за газ
Расходы на газ возникают только тогда, когда пользователи взаимодействуют с позициями. К ним относятся:
- Создание своей позиции
- Изменение позиции
- Снятие обмененного баланса
- Прекращение позиции
- Предоставление или отмена разрешений
Пользователям не придется платить за газ при совершении обменов. Обменщики несут ответственность за оплату этой сетевой стоимости.
Стоимость протокола
С пользователей не взимается плата за протокол при взаимодействии с позициями; плата за протокол взимается только с бирж. С каждого пользователя, участвующего в свопе, взимается протокольная плата в момент исполнения, и в настоящее время эта плата составляет 0,6 процента.
Интеграция токенов
Mean Finance поддерживает не все токены, о которых может заявить провайдер oracle. У них есть система разрешенных списков, которая регулирует, какими токенами можно торговать или депонировать.
Список разрешений позволяет нам изучать новые монеты перед их интеграцией в Mean Finance и предотвращать опасные ситуации.
Кроме того, если вы хотите, чтобы Mean Finance поддерживала новый токен, присоединяйтесь к каналу #new-token-request на сервере Discord.
Строите что-то?
Свяжитесь с нами в Discord ↗
Ищете больше контента, чтобы узнать о Web3?
Подпишитесь на нашу рассылку, чтобы получать еженедельные обновления 👇
https://thedapplist.substack.com/
Связаться с нами
🌏 https://thedapplist.com
🐤 https://twitter.com/thedapplist
💬 https://telegram.me/thedapplist
👾 https://discord.io/thedapplist