Sobre o projeto
FlashLoanArbitrage é uma ferramenta de linha de comando em JavaScript para arbitragem em DeFi usando flash loans. O README descreve duas partes: um smart contract que executa a sequência de trocas e um script local, goflash.js, que roda no computador do usuário e aciona o contrato ao detectar uma oportunidade de preço.
Como o autor explica o funcionamento: o contrato toma um flash loan denominado em USDC, compra ETH barato em uma plataforma e o vende mais caro em outra, paga o empréstimo acrescido de taxas e gas, e então converte o lucro restante de USDC de volta para ETH. O script local monitora os preços de ETH/USDC em diversas plataformas e só age quando a diferença é de 0,9% ou mais, um limite escolhido pelo autor para reduzir a chance de trocas com prejuízo.
Provedores de flash-loan listados no README: Aave (taxa de 0,05%, até 10.000.000 USDC), dYdX (0,05%, até 500.000 USDC), Uniswap V3 (0,01%, até 5.000.000 USDC) e Balancer (0,02%, até 1.000.000 USDC). Empréstimos maiores acarretam taxas maiores, portanto, o README desaconselha empréstimos excessivos para saldos pequenos de carteira. As fontes de preço escaneadas são Chainlink como referência de oráculo, Uniswap V2, SushiSwap, Curve Finance e Balancer.
Para executar: baixe goflash.js e package.json em qualquer pasta, execute npm install e depois node goflash.js. No primeiro lançamento, o script oferece a criação de uma nova carteira ou a importação de uma existente via chave privada (prefixo 0x, 64 caracteres hexadecimais). A chave privada gerada é armazenada em wallet.json na mesma pasta, e o README alerta repetidamente para manter esse arquivo fora do Git e nunca compartilhar a chave. O menu interativo (construído com inquirer) apresenta opções para escolher o protocolo DeFi, definir o valor do empréstimo em ETH, recriar ou importar uma carteira, iniciar a arbitragem e sair; chalk é usado para saída colorida no console e ethers para acesso ao Ethereum.
O README afirma que o monitoramento imprime uma tabela de preços de ETH/USDC por plataforma com marcadores de subida/descida/estável e o spread máximo entre as plataformas, atualizado periodicamente (menciona um ciclo de varredura de 60 segundos). Também observa ressalvas práticas: um saldo de carteira inferior a 0,1 ETH é descrito como insuficiente para cobrir o gas para empréstimos acima de 10 ETH; os custos incluem taxas de flash-loan, cerca de 0,1% de taxas de negociação, cerca de 0,05% de slippage e gas; e spreads de 0,9% entre plataformas são descritos como raros em mercados reais, com o script ocasionalmente mostrando uma oportunidade simulada para demonstração. Uma seção de solução de problemas cobre erros de formato de módulo, formato de chave privada inválido, fundos insuficientes para gas, saldo de carteira zero e reconexão de RPC, observando que a ausência de um par ETH/USDC no V2 é normal.
As dependências declaradas são ethers ^6.11.1, inquirer ^8.2.6 e chalk ^4.1.2. O projeto é publicado como está para fins educacionais, com o uso sob risco do usuário. Leitores que o avaliem devem tratar a promessa de lucro e o código do contrato com cautela: o fluxo de trabalho exige o manuseio de uma chave privada de uma carteira com fundos, o contrato on-chain não é descrito como auditado e o próprio README reconhece que oportunidades reais no limite declarado são incomuns.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.