About this project

# Overview The README describes this repository as "FlashLoanArbitrage": a local Node.js script (`goflash.js`) working together with a smart contract to perform ETH/USDC arbitrage on DeFi using flash loans. Note that the repository entry itself is named `smart-order-manager` with the description "Manages order queue for efficient execution", which does not match the README content — verify what you are actually downloading before running anything. ## Reported behaviour - Polls ETH/USDC prices every 60 seconds on Chainlink, Uniswap V2, SushiSwap, Curve Finance and Balancer, printing them in a coloured terminal table with change indicators (↑ / ↓ / —). - Waits for a spread of 0.9% or more between platforms before triggering a trade. The README openly states that such differences are rare in real markets and that the script occasionally displays a simulated opportunity for demonstration purposes. - The contract side is described as borrowing USDC via a flash loan, buying ETH on the cheaper venue, selling on the more expensive one, repaying the loan plus fees and gas, then converting remaining USDC profit back to ETH. - Named flash-loan sources with stated fee rates: Aave (0.05%, up to 10,000,000 USDC), dYdX (0.05%, up to 500,000), Uniswap V3 (0.01%, up to 5,000,000) and Balancer (0.02%, up to 1,000,000). ## Running it Requires Node.js. The instructions are: place `goflash.js` and `package.json` in any folder, run `npm install`, then `node goflash.js`. Dependencies listed are ethers ^6.11.1, inquirer ^8.2.6 and chalk ^4.1.2. On first launch an interactive prompt offers to create a new wallet or import one by private key. The key is written to `wallet.json` next to the script. A menu then lets you choose the flash-loan protocol, set a loan amount in ETH (README says 10 ETH up to the protocol maximum), recreate or re-import the wallet, start arbitrage, or exit. The README warns that with a balance under 0.1 ETH a loan above 10 ETH should not be used because gas would not be covered. ## Points worth checking first - **Distribution:** the README only tells you to download `goflash.js` and `package.json`, and the project structure lists just those two files, the auto-generated `wallet.json` and the README. No smart-contract source is included, so the on-chain code the script is intended to interact with cannot be reviewed from this repository alone. - **Key handling:** the private key is stored in plaintext in `wallet.json`. The README itself recommends adding it to .gitignore, keeping offline backups and using a dedicated wallet; ideally keys would not be handled this way at all. - **Claims and risk:** the README labels the project educational, "use at your own risk", and provides no performance figures, live results or audits. It also lists costs (0.1% trading fees, 0.05% slippage, gas) alongside the flash-loan fee, and documents troubleshooting for RPC failures, invalid keys and insufficient funds. Treat the project as an unverified script that requests your private key; inspect the code yourself and avoid real funds until you understand exactly which contract and addresses it calls.