Об этом проекте

README под названием FlashLoanArbitrage описывает DeFi-бота для арбитража с использованием flash loan, построенного на базе локального скрипта Node.js (goflash.js) и смарт-контракта. В описании репозитория указано, что он отслеживает доходность различных DeFi-позиций, однако фактическим предметом README является исполнение арбитража, а не отслеживание доходности. Согласно документации, смарт-контракт берет flash loan в USDC, конвертирует ETH пользователя в USDC перед сделкой, покупает ETH по более низкой цене на одной платформе, продает ETH по более высокой цене на другой, погашает заем, оплачивает комиссии и газ, конвертирует прибыль из USDC обратно в ETH и оставляет остаток в качестве прибыли. Локальный скрипт goflash.js проверяет цены ETH/USDC в пяти источниках: Chainlink, Uniswap V2, SushiSwap, Curve Finance и Balancer. Он ожидает разницы в цене 0,9% или более, прежде чем запустить арбитраж через контракт; при более низком пороге он ждет, чтобы избежать убытков. В README перечислены четыре протокола flash loan: 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). Для снижения комиссий рекомендуются dYdX или Uniswap V3. Суммы займов устанавливаются в ETH в диапазоне от 10 ETH до максимума протокола. В документации содержится предупреждение: если баланс кошелька ниже 0,1 ETH, не следует выбирать заем более 10 ETH, так как может не хватить средств на газ. Раздел настройки объясняет процесс загрузки goflash.js и package.json, установки зависимостей npm и запуска node goflash.js. Сообщается, что при первом запуске скрипт предлагает пользователю создать новый кошелек или импортировать существующий с помощью приватного ключа, сохраняя его в wallet.json. Главное меню включает выбор DeFi-протокола, сумму займа в ETH, пересоздание кошелька, импорт кошелька, запуск арбитража и выход. Скрипт отображает баланс кошелька, адрес и цены в реальном времени с индикаторами роста/падения. В списке зависимостей указаны ethers, inquirer и chalk. Мониторинг цен показывает котировки ETH/USDC от Chainlink, Uniswap V2, SushiSwap, Curve Finance и Balancer, а также максимальную разницу цен между платформами. Особое внимание уделено предупреждениям о безопасности и рисках: не фиксировать wallet.json в Git, добавить его в .gitignore, хранить офлайн-бэкапы приватного ключа, использовать отдельный кошелек для бота, начинать с малых сумм и никогда не передавать приватный ключ. В README также упоминаются торговые комиссии (0,1%), проскальзывание (0,05%), комиссии за газ и комиссии за flash loan. Раздел устранения неполадок охватывает ошибки формата модулей, неверный формат приватного ключа, недостаточность средств, нулевой баланс, недоступность RPC, отсутствие пары ETH/USDC на V2 и отсутствие возможностей для арбитража. Отмечается, что такие разницы цен редки на реальных рынках и скрипт иногда показывает симулированную возможность для демонстрации. В целом, README представляет автоматизированный скрипт для DeFi flash loan арбитража с управлением кошельками, многоплатформенным мониторингом цен, выбором протокола и отказом от ответственности. Проект предоставляется «как есть» в образовательных целях и используется на собственный риск пользователя. Заметным несоответствием является то, что название и описание репозитория предполагают отслеживание доходности, в то время как README описывает арбитраж.