Об этом проекте
FlashLoanArbitrage — это проект на JavaScript для командной строки, предназначенный для DeFi-арбитража в сети Ethereum с использованием flash-лоанов. Согласно README, смарт-контракт берет USDC через flash-loan, покупает ETH там, где он дешевле, продает там, где он дороже, погашает заем вместе с комиссиями и затратами на газ, а оставшуюся прибыль в USDC конвертирует обратно в ETH. Локальный скрипт goflash.js запускается на машине пользователя, отслеживает цены ETH/USDC и активирует контракт при появлении возможности. В описании репозитория упоминается прогнозирование движения цены ETH с помощью технического анализа, однако в самом README задокументирован бот для исполнения арбитража, а не модель прогнозирования; компоненты прогнозирования или технического анализа в README не описаны, а структура проекта содержит только goflash.js, package.json, wallet.json и README.md, поэтому исходные коды смарт-контрактов в дереве файлов не представлены.
Мониторинг цен опирается на пять источников: Chainlink в качестве оракула базовой цены ETH, Uniswap V2, SushiSwap, Curve Finance и Balancer. Описано, что скрипт сканирует эти цены каждые 60 секунд и ждет разницы в 0,9% или более, прежде чем действовать, основываясь на том, что меньшие разрывы не покроют расходы. Вывод консоли показывает цену каждой площадки с индикатором роста, падения или отсутствия изменений, а также максимальный спред между платформами.
Перечислены четыре протокола flash-лоанов с данными из README: 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 рекомендуются dYdX или Uniswap V3 из-за более низких комиссий и отмечается, что комиссии масштабируются в зависимости от размера займа.
Процесс настройки описан как загрузка goflash.js и package.json в папку, запуск npm install, затем node goflash.js. При первом запуске скрипт сообщает об отсутствии кошелька и предлагает интерактивное меню: создать новый кошелек (отображается адрес и приватный ключ, который записывается в wallet.json в той же папке) или импортировать существующий кошелек с помощью 64-символьного приватного ключа с префиксом 0x. Последующие запуски открывают главное меню с выбором DeFi-протокола, суммой займа в ETH (от 10 ETH до максимума протокола), пересозданием кошелька, импортом кошелька, запуском арбитража и выходом.
Заявленные расходы включают торговые комиссии 0,1%, проскальзывание 0,05% и газ. В README рекомендуется держать в кошельке не менее 0,1 ETH для оплаты газа при заимствовании более 10 ETH, и указано, что баланс кошелька используется только для газа, в то время как ETH не переводится в контракт. Зависимости: ethers ^6.11.1, inquirer ^8.2.6 и chalk ^4.1.2. Раздел по устранению неполадок охватывает ошибки формата модулей, неверный формат приватного ключа, недостаточность средств, недоступность RPC-эндпоинтов и отсутствие пар V2.
В самом README указаны важные предостережения: разница в ценах 0,9% описывается как редкая на реальных рынках, и сообщается, что скрипт иногда показывает симулированную возможность в демонстрационных целях, поэтому прибыльное исполнение в реальном времени не гарантируется. Приватный ключ хранится в открытом виде в wallet.json; в README рекомендуется никогда не фиксировать этот файл в репозитории, добавить его в .gitignore, хранить офлайн-бэкапы, использовать выделенный кошелек и начинать с небольших сумм. Проект предоставляется «как есть» в образовательных целях и используется на страх и риск владельца.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.