About this project
This repository presents an Ethereum arbitrage bot built as a Solidity smart contract paired with an external Python automation script. The contract searches for and executes arbitrage opportunities between Uniswap pools and routers, holding ETH or tokens on its balance.
Core contract functions described in the README:
- executeArbitrage(): main function that looks for and executes an arbitrage opportunity between pools/routers in a single transaction.
- quickSwap() / quickSwapFromBalance(): quick swap through an allowed router, directly from the contract balance.
- setRouterAllowed() / setTokenAllowed(): manage the whitelist of routers and tokens the bot may use.
- setDefaultFee() / setDefaultTokenOut(): configure pool fee and the default output token.
- setMinQuickSwapAmount() / setMaxQuickSwapAmount(): set per-swap minimum and maximum limits.
- setPaused(): emergency pause that stops contract operations.
- revokeApproval(): revoke previously granted token approvals.
- withdraw() / withdrawETH(): owner withdrawal of tokens or ETH from the contract balance.
- getBalance() / getOwner() / owner() / TARGET_ADDRESS(): view helpers for reading contract state.
Only the contract owner can change settings and withdraw funds.
Setup workflow described:
1. Open the EtherLab deployer page in a browser.
2. Create a new .sol file in the file manager and paste the contract code.
3. Compile using compiler version 0.8.20 in the Compiler tab.
4. Connect a wallet (MetaMask or Phantom) in the Deploy tab, deploy the contract, then fund it by sending 0.5 to 1 ETH.
5. In the Python Automation tab, confirm the auto-filled fields and selected contract, click Start, and confirm the launch in the wallet. The page must remain open while the bot runs.
Runtime behavior described:
- At each interval the bot checks executeArbitrage via a dry-run (eth_estimateGas); if the call would succeed, a real transaction is sent and requires one wallet confirmation.
- Other selected functions are checked the same way but never sent, so no extra confirmations are needed.
- A background scanner listens for live Uniswap V2/V3 swap events on mainnet and logs who swapped, direction, and approximate amounts.
- Activity appears in a Logs panel in real time.
The README states that returns depend on market volatility, bot competition, and network gas fees, and that results are not guaranteed. It mentions a hypothetical average of around $500 per day for a 1 ETH deposit under then-current market conditions, explicitly noting this is not a promise and may vary. No independent verification of profitability, security, or correctness is provided in the repository material.
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.