Всё, что нужно знать о ценовых оракулах в DeFi
🧵 Перевод треда Stephen DeFi Dojo в X.
Прочтение статьи поможет узнать:
- Какие бывают типы оракулов
- Как узнать какой ценовой оракул использует DeFi приложение
- Как избежать ликвидации
- Как ответственно использовать кредитное плечо для фарминга
ЧТО ТАКОЕ ОРАКУЛ?
Признаюсь, оракулы долгое время меня пугали, поскольку казались эзотерическими бэкэнд-функциями, понятными только разработчикам.
Поэтому я был рад узнать, что это не какие-то загадочные механизмы, а на самом деле всё очень просто.
Оракул — это источник ценовой информации. Вот и всё.
Это источник данных о цене актива. Эти данные используются протоколами, особенно протоколами заимствования и кредитования, которые полагаются на внешние ценовые данные для таких вещей, как ликвидации.
Общие оракулы берут данные из таких источников, как @chainlink, @redstone_defi и @PythNetwork.
ДВА ТИПА ОРАКУЛОВ
Существует два основных типа оракулов: с рыночным курсом и с обменным курсом.
- Оракулы с рыночным курсом используют индекс цен из различных источников, обычно смешанных между децентрализованными биржами (DEX) и централизованными биржами (CEX).
- Оракулы с обменным курсом вместо использования индекса цен с бирж используют внутреннюю стоимость актива, обычно определяемую тем, чем этот актив обеспечен.
Давайте разберёмся подробнее 👇
ОРАКУЛЫ С РЫНОЧНЫМ КУРСОМ
Как уже сказано, эти оракулы используют индекс цен из живых и активных рынков.
Вот пример оракула $ETH от @redstone_defi, который использует ДВАДЦАТЬ ОДИН источник ценовой информации для создания единой составной индикативной цены, которую протоколы могут использовать по мере необходимости.
Важно понимать, что оракулы с рыночным курсом чувствительны к отклонениям, поскольку они определяются тем, как давление продавцов и покупателей на рынке влияет на цену.
Если, скажем, wstETH отклонится на 5% из-за того, что люди его продают во время "чёрного лебедя", и у вас кредитное плечо wstETH/ETH 10x, ВАС ЛИКВИДИРУЮТ, если этот протокол и рынок используют оракул с рыночным курсом.
ОРАКУЛЫ С ОБМЕННЫМ КУРСОМ
Они же redemption price oracle.
У этих оракулов есть три популярных названия:
- Оракул чистой стоимости активов (NAV Oracle)
- Фундаментальный оракул (fundamental oracle)
- Оракул обменного курса (exchange rate oracle)
Все они означают одно и то же: цена определяется НЕ рыночным курсом, а СТОИМОСТЬЮ актива, обычно основанной на том, чем этот актив обеспечен.
Они чаще всего ассоциируются с LST (токены с ликвидным стейкингом) и LRT (токены с ликвидным рестейкингом), потому что оба эти производные инструменты полностью обеспечены застейканными или рестейканными формами $ETH.
Вот пример оракула wstETH/stETH от Chainlink, который использует внутреннее обеспечение ETH стейкинга stETH для определения стоимости wstETH.
Обратите внимание, что это не индекс цен, и график никогда не падает.
Поскольку эти оракулы используют обеспечение вместо рыночного курса, отклонения, вызванные продажами, НЕ могут вызвать ликвидации, потому что ценовой источник не зависит от рынков, а только от того, сколько стоит актив на основе его обеспечения.
КАК ОПРЕДЕЛИТЬ, КАКОЙ ОРАКУЛ ИСПОЛЬЗУЕТСЯ?
Это вопрос на миллиард долларов, буквально. Миллиарды были либо потеряны, либо спасены в зависимости от типа оракула, используемого на данном рынке.
Хотя можно исследовать контракты, большинство протоколов заимствования делают это достаточно просто для понимания.
Возьмём, к примеру, Morpho Labs:
Здесь вы можете ясно видеть, что используется оракул обменного курса на этом рынке sUSDe/DAI, что означает, что вас не ликвидируют из-за отклонений.
Однако это не значит, что каждый оракул Morpho — это оракул обменного курса.
Вот другой рынок sUSDe, где заимствуется USDT, и мы видим оракул Redstone вместо "Exchange Rate".
Когда вы нажимаете на базовый контракт оракула (sUSDe), вы перенаправляетесь на контракт в Etherscan.
Это может показаться пугающим, но не беспокойтесь.
ИССЛЕДОВАНИЕ ОРАКУЛОВ НА ETHERSCAN
Для этого оракула рынка sUSDe/USDT нас перенаправляют сюда:
Первый явный признак того, что это оракул с рыночным курсом — отсутствие функций в разделе "Read as Proxy" и наличие упоминанияRedstone Price Feed в description.
Оракул обменного курса будет иметь некоторые функции, которые выводят определённую информацию. Давайте найдём пример.
Silo Finance делает это очень просто. Здесь вы можете увидеть, что этот оракул $ezETH указан внизу информации о залоге и долге для каждого рынка.
Если мы нажмём на оракул Chainlink и перейдём в "Contract", вы увидите, что на этот раз у нас есть множество функций для чтения.
Это отличный признак того, что мы используем оракул обменного курса, но давайте убедимся.
Самый простой способ — нажать на "description". Здесь просто говорится, что это обменный курс.
Я также ищу функцию "latestAnswer" и затем сверяю её с фактическим обменным курсом.
Здесь "latestAnswer" даёт нам 1015757....
Что намного лучше, чем рыночный курс 1.0125 в сети.
Aave также позволяет легко просматривать оракулы.
Нажав на детали залога, мы можем увидеть ценовой оракул вверху.
И вы можете нажать на него, чтобы перейти к контракту:
Нажмите на "Read Contract", чтобы посмотреть, есть ли какие-либо функции, которые расскажут нам об оракуле.
Есть! Если вы проверите "description", мы получим "weETH / eETH (ETH) /USD"
Это говорит нам о том, что они используют соотношение weETH к ETH и используют оракул ETH к USD для долларовой цены.
Но давайте сделаем ещё один шаг, чтобы подтвердить ВСЁ и сделать вас экспертом по оракулам.
В этом контракте weETH вы можете увидеть функцию "RATIO PROVIDER".
Если мы нажмём на эту функцию и перейдём в "Read Contract", мы найдём наш надёжный старый "Description" и "latestAnswer", подтверждающие, что это обменный курс между weETH и eETH.
НО МЫ НЕ МОЖЕМ НА ЭТОМ ОСТАНОВИТЬСЯ.
Если оракул weETH использует оракул eETH<>USD, то вы всё ещё можете быть ликвидированы, если eETH отклонится, поэтому нам нужно знать, что они используют для оценки актива в USD.
Для этого мы нажимаем на "BASE_TO_USD_AGGREGATOR", потому что мы хотим посмотреть на контракт, который оценивает базовый (eETH) в USD.
И ХОРОШИЕ НОВОСТИ! Это фид ETH<>USD!
Это означает, что этот оракул weETH использует обменный курс weETH<>eETH, а затем оценивает eETH так, как если бы это был ETH.
Это было сложно, но не слишком! И это все сложности, которые стоило разобрать.
ЗАКЛЮЧЕНИЕ
Я знаю, что это может показаться сложным, поэтому вот несколько хороших практических правил:
- Если в "Read Contract" или "Read as proxy" есть функции получения курса типа get_rate(), latestAnswer или подобные, которые выдают значения, похожие на курс, это, вероятно, оракул обменного курса. Найти описание функций получения обменного курса часто можно в документации проекта.
- Если в "Read Contract" или "Read as proxy" нет функций, это, вероятно, оракул с рыночным курсом.
- Всегда проверяйте функцию "description" для дополнительной проверки.
Если мы вернёмся к тому примеру sUSDe/USDT и нажмём "Read as Proxy", мы можем увидеть в "description", что используется ценовой источник Redstone.
А затем мы можем нажать "latestAnswer", чтобы подтвердить, что вывод — это рыночный курс 1.0947, а не фактический обменный курс, который в настоящее время составляет 1.0952.
- Если в "Read Contract" ничего нет, проверьте "Read as Proxy"
- Всегда сначала проверяйте "description"
- Сверяйте с "latestAnswer"
ЕСЛИ СОМНЕВАЕТЕСЬ, СПРОСИТЕ У КОМАНДЫ!
Существуют некоторые протоколы, которые не делают оракулы легко доступными для просмотра.
В этих случаях лучше всего зайти в Discord, написать в Twitter или Telegram и попросить команду предоставить адрес контракта оракула, чтобы вы могли проверить и убедиться, с чем имеете дело.
Это может сэкономить вам много денег.
✨ Подписался на канал и умнее сразу стал!