Об этом проекте
В README этого репозитория описывается проект FlashLoanArbitrage (сам репозиторий называется defi-position-manager) — консольный бот на Node.js для арбитража с использованием мгновенных займов (flash-loans) между DeFi-площадками.
Принцип работы
- Смарт-контракт берет flash-loan в USDC, покупает ETH там, где он дешевле, продает там, где он дороже, погашает заем вместе с комиссиями и газом, конвертирует прибыль обратно в ETH и оставляет остаток пользователю.
- Локальный скрипт goflash.js проверяет цены ETH/USDC на Chainlink (используется как эталонный оракул), Uniswap V2, SushiSwap, Curve Finance и Balancer, и ожидает спреда не менее 0,9% перед запуском сделки.
- Сканирование выполняется каждые 60 секунд с выводом таблицы цен каждой площадки с индикаторами роста, падения или отсутствия изменений.
Площадки для flash-loans и заявленные лимиты
- Aave (комиссия 0,05%, до 10 000 000 USDC)
- dYdX (0,05%, до 500 000 USDC)
- Uniswap V3 (0,01%, до 5 000 000 USDC)
- Balancer (0,02%, до 1 000 000 USDC)
Эти данные взяты из README и не были проверены.
Запуск
Согласно README, необходимо установить зависимости с помощью npm install и запустить скрипт командой node goflash.js. При первом запуске интерактивное меню (созданное с помощью inquirer) предлагает создать новый кошелек или импортировать существующий по приватному ключу; ключ записывается в файл wallet.json в той же папке. Затем меню позволяет пользователю выбрать протокол кредитования, установить сумму займа в ETH (от 10 ETH до максимума протокола), перегенерировать или повторно импортировать кошелек, запустить арбитраж или выйти.
Требования и риски, отмеченные в README
- Предупреждается, что баланс кошелька ниже 0,1 ETH может не покрыть затраты на газ для займов свыше 10 ETH. Торговые комиссии (0,1%), проскальзывание (0,05%) и газ указываются как расходы, вычитаемые из прибыли.
- Также указано, что разница в цене 0,9% редко встречается на реальных рынках, и скрипт иногда показывает симулированную возможность для демонстрации, поэтому стабильная прибыльность не гарантируется.
- Приватные ключи хранятся в открытом виде в wallet.json; в README рекомендуется исключить этот файл из Git, делать резервные копии ключей офлайн и использовать выделенный кошелек. Любой пользователь должен рассматривать обработку ключей как серьезную проблему безопасности.
- В описанной структуре проекта указаны только goflash.js, package.json, wallet.json и README.md. Исходный код смарт-контракта, его адрес, сеть или детали развертывания отсутствуют.
- Заявленные зависимости: ethers ^6.11.1, inquirer ^8.2.6, chalk ^4.1.2. В README проект представлен как предоставленный «как есть» в образовательных целях, и используется пользователь на свой страх и риск.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.