Хотите получить прибыль от мира Defi? Посмотрите Flash Loans и The Graph вместе взятые! Используя эти децентрализованные рыночные инструменты, вы можете всего за несколько кликов открыть мир прибыльного треугольного арбитража. Но с чего начать? Здесь, конечно! Мы изучим все тонкости этой стратегии и предоставим вам достаточно материала для начала.

план

  • Использование The Graph для индексации децентрализованных рыночных данных для сети Ethereum

  • Создайте алгоритм для обнаружения и проверки возможностей треугольного арбитража.

  • Создавайте смарт-контракты с помощью срочных кредитов для совершения сделок с выгодными возможностями треугольного арбитража.

предпосылки

  • Терминология Web3 (пулы ликвидности, DEX, AMM и т. д.)

  • Uniswaps CFMM (маркет-мейкер с постоянной функцией)

  • знание графиков

  • Знание смарт-контрактов и флеш-кредитов

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

Что такое треугольный арбитраж?

Треугольный арбитраж — это результат разницы цен, которая возникает, когда обменные курсы трех валют не совпадают. Что касается Defi (децентрализованных финансов), эти различия можно найти между тремя отдельными пулами ликвидности (LP), хранящимися на DEX (децентрализованных биржах). Мы сосредоточимся на трех отдельных DEX, которые расширят нашу сеть и возможности для большей дифференциации на рынке Defi.

Рынки, на которых мы сосредоточимся

Uniswap V2, Uniswap V3 и Sushiswap — это DEX. Они во многом похожи, но в долгосрочной перспективе они выгодны для нас по трем причинам.

  • Все они являются AMM (автоматическими маркет-мейкерами), использующими один и тот же CFMM (маркет-мейкер с постоянной функцией).

  • Оба имеют схожие шаблоны подграфов, размещенные на протоколе The Graphs.

  • У каждой DEX есть быстрый и эффективный способ предоставления срочных кредитов.

Какой тип CFMM мы используем?

Давайте быстро рассмотрим Uniswaps CFMM. Согласно официальному документу Uniswap, следующая формула автоматически устанавливает цену в пределах LP данной транзакции.

CFMM

  • Ra — резервная сумма токена A.

  • Rb — резервная сумма токена B.

  • Δb — входная величина (то, что у вас есть)

  • Δa — объем выпуска (то, что вы получаете)

  • r — включенная комиссия (каждая LP имеет комиссию за транзакцию, обычно 3%), в данном случае r обозначается как r — 3%.

  • Наконец, k можно найти как произведение двух запасов: Ra * Rb = k.

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

Предположим, что в пуле ликвидности токен A имеет резерв токенов 5, а токен B имеет резерв токенов 20. Если трейдер Райан захочет обменять 1 свой токен A на токен B, сколько токенов получит Райан?

Нарушив приведенное выше уравнение, мы можем заменить следующее:

Далее мы можем упростить уравнение и найти Δb, чтобы получить окончательную величину. Но сначала давайте удалим комиссию за обмен из суммы Райана, в результате чего сумма Райана составит 0,997.

Наконец, Райанс получит 3,324996 токенов B и покинет пул ликвидности с новой суммой резерва токенов. Если мы повторно применим формулу CFMM, мы увидим, что результаты не меняются. Вот почему его называют маркет-мейкером с постоянной функцией.

Итак, теперь, когда мы рассмотрели, как рассчитать количество токенов, которые мы получим в данной сделке, все, что нам нужно, — это данные пула ликвидности.

Как мы получаем данные?

Представляем The Graph, децентрализованный протокол индексации данных блокчейна с открытым исходным кодом. Разработчики могут создавать и публиковать различные API, называемые «подграфами», которые выполняют запросы в GraphQL. В настоящее время большинство DEX не поддерживают традиционные запросы API. Вместо этого большинство DEX имеют подграфы, предназначенные для запроса данных, найденных на их платформе, с использованием стандартных API-интерфейсов GraphQL.

Чтобы настроить это, выполните следующий почтовый запрос Axios к подграфу Uniswap V3:

Этот параметр будет принимать запрос GraphQL для индексации данных блокчейна в подграфе Uniswap V3. Не волнуйтесь, вам не обязательно создавать эти запросы самостоятельно. Вы можете перейти на игровую площадку DEX и протестировать свои собственные запросы. Используйте следующий запрос подграфа Uniswap V3.

Это индексирует протокол Uniswap V3s для 1000 пулов ликвидности. Результирующим ответом будет массив из n объектов, отсортированный по объему торгов каждого пула в заданный период времени (обратите внимание, что в некоторых пулах ликвидности торговля может не проводиться).

Что такое флэш-кредит?

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

  • Это необеспеченные кредиты

  • Они работают через смарт-контракты

  • они мгновенные

I. Быстрый кредит как необеспеченный кредит

В отличие от традиционных кредитов, срочные кредиты являются необеспеченными кредитами, то есть залог не требуется. Поскольку быстрые кредиты не имеют обеспечения, они несут высокий риск для кредиторов. Однако быстрые кредиты имеют строгий набор правил в смарт-контрактах. Эти строгие правила обеспечивают безопасность. Короче говоря, транзакции будут возобновлены, если что-то пойдет не так.

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

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

3. Флэш-кредиты выдаются мгновенно.

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

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