About this project

FlashLoanArbitrage is presented in its README as a personal DeFi arbitrage project consisting of a smart contract plus a local Node.js script, goflash.js, that the user runs on their own machine. The repository name (flashloan-roi-calculator) and its one-line description ("Calculates ROI for flashloan-based investments") point to an ROI calculator, while the README itself documents an executable trading bot — the two descriptions do not fully match, and the repository material does not include the smart contract source in the listed project structure. How the README says it works According to the documentation, the contract takes a flash loan denominated in USDC, buys ETH on the cheaper venue, sells it on the more expensive one, repays the loan plus fees and gas, and converts the remaining profit back to ETH. The script is said to poll ETH/USDC prices on Chainlink, Uniswap V2, SushiSwap, Curve Finance and Balancer, display them with up/down change indicators, and act only when the spread between venues is at least 0.9%. Flash-loan sources listed are Aave (0.05%), dYdX (0.05%), Uniswap V3 (0.01%) and Balancer (0.02%), each with a stated liquidity ceiling. Setup and interface The README gives a four-step workflow: download goflash.js and package.json, run npm install, then node goflash.js. On first launch an interactive menu (built with inquirer, with chalk for colored output and ethers for Ethereum access) offers to create a new wallet or import an existing one by private key; the key is written to wallet.json in the same folder. Subsequent menus allow selecting the protocol, setting a loan amount in ETH (stated range: 10 ETH up to the protocol maximum), recreating or re-importing the wallet, and starting or exiting arbitrage monitoring. Stated constraints and caveats The README warns that wallet balance is used for gas only, recommends at least 0.1 ETH for loans above 10 ETH, and lists assumed costs of 0.1% trading fees and 0.05% slippage on top of the flash-loan fee and gas. A troubleshooting section covers private-key format errors, insufficient funds, RPC availability and missing ETH/USDC pairs. Notably, it states that 0.9% dislocations are rare in real markets and that the script "shows a simulated opportunity occasionally for demonstration" — so displayed results may not correspond to genuine executable trades. The license section describes the project as shared as-is for educational purposes, used at the user's own risk. Who it may suit Readers interested in how flash-loan arbitrage flows are wired together, or in the interactive CLI pattern (wallet menu, protocol selection, live price table), will find the README a readable walkthrough of the intended design. Anyone considering running it should weigh two practical points the document itself makes clear: the script has no source for the deployed contract in this repository, and it requires pasting a private key into wallet.json, which the README repeatedly flags as sensitive and recommends keeping in .gitignore with offline backups and a dedicated wallet.