# MEV Bot V2 - Production Safety Configuration # ================================================ # DO NOT deploy without reviewing ALL settings below # This configuration prioritizes safety over profitability # ================================ # BLOCKCHAIN CONNECTION # ================================ # CRITICAL: Use archive RPC provider for production RPC_URL=https://arb-mainnet.g.alchemy.com/v2/YOUR_ALCHEMY_KEY WS_URL=wss://arb-mainnet.g.alchemy.com/v2/YOUR_ALCHEMY_KEY SEQUENCER_WS_URL=wss://arb1.arbitrum.io/ws CHAIN_ID=42161 # ================================ # WALLET CONFIGURATION # ================================ # WARNING: Protect this key - use hardware wallet for large funds PRIVATE_KEY=your_private_key_here # EXECUTOR CONTRACT: Set to your deployed flashloan contract address # Leave as 0x0 if not using flashloans EXECUTOR_CONTRACT=0x0000000000000000000000000000000000000000 # ================================ # SAFETY MODE # ================================ # DRY RUN: Set to "true" for simulation-only (NO REAL TRANSACTIONS) # ONLY set to "false" after thorough testing DRY_RUN_MODE=true # EXECUTION: Disable actual execution until validated ENABLE_EXECUTION=false # SIMULATION: Always keep enabled for safety checks ENABLE_SIMULATION=true # FRONT-RUNNING: Disable until profit calculations validated ENABLE_FRONT_RUNNING=false # ================================ # PROFIT THRESHOLDS (Conservative) # ================================ # Minimum profit required (in wei): 0.05 ETH = very conservative MIN_PROFIT_WEI=50000000000000000 # Minimum ROI: 5% = conservative (rejects marginal opportunities) MIN_ROI=0.05 # Minimum swap amount to consider (in wei): 0.1 ETH MIN_SWAP_AMOUNT=100000000000000000 # Minimum pool liquidity (in wei): $50,000 equivalent MIN_POOL_LIQUIDITY=50000000000000000000000 # ================================ # RISK LIMITS (Strict) # ================================ # Maximum position size per trade: 1 ETH = very conservative MAX_POSITION_SIZE=1000000000000000000 # Maximum daily trading volume: 10 ETH = strict daily limit MAX_DAILY_VOLUME=10000000000000000000 # Maximum slippage tolerance: 1% = strict (prevents sandwich attacks) MAX_SLIPPAGE_BPS=100 # Maximum gas limit per transaction: 1.5M gas MAX_GAS_LIMIT=1500000 # Maximum gas price: 50 gwei (prevents overpaying during spikes) MAX_GAS_PRICE_GWEI=50 # ================================ # CIRCUIT BREAKER THRESHOLDS # ================================ # Stop trading after this many consecutive losses MAX_CONSECUTIVE_LOSSES=3 # Stop trading if hourly loss exceeds this (in wei): 0.1 ETH MAX_HOURLY_LOSS=100000000000000000 # Stop trading if daily loss exceeds this (in wei): 0.5 ETH MAX_DAILY_LOSS=500000000000000000 # Cooldown period after circuit breaker trips (seconds): 1 hour CIRCUIT_BREAKER_COOLDOWN=3600 # ================================ # GAS STRATEGY (Conservative) # ================================ # Gas price strategy: "safe" = lower gas, slower inclusion # Options: safe, standard, fast, ultra GAS_PRICE_STRATEGY=safe # Gas price multiplier: 1.0 = no markup (safer) GAS_PRICE_MULTIPLIER=1.0 # ================================ # EXECUTION SETTINGS # ================================ # Use private RPC for transaction submission (reduces MEV risk) USE_PRIVATE_RPC=false PRIVATE_RPC_URL= # Transaction confirmation blocks: 1 for Arbitrum CONFIRMATION_BLOCKS=1 # Transaction timeout: 2 minutes TX_TIMEOUT_SECONDS=120 # Maximum retries for failed transactions MAX_TX_RETRIES=2 # ================================ # ARBITRAGE DETECTION # ================================ # Maximum hops in arbitrage path: 2 = simple, safer MAX_HOPS=2 # Maximum paths to evaluate per opportunity: 50 = focused MAX_PATHS=50 # Maximum concurrent opportunity evaluations: 5 = conservative MAX_CONCURRENT_DETECTION=5 # ================================ # POOL DISCOVERY # ================================ # Maximum pools to discover and monitor: 100 = focused set MAX_POOLS_TO_DISCOVER=100 # Pool discovery interval (seconds): 5 minutes POOL_DISCOVERY_INTERVAL=300 # ================================ # PERFORMANCE # ================================ # Worker count for parallel processing: 4 = moderate WORKER_COUNT=4 # Buffer size for event processing: 100 BUFFER_SIZE=100 # ================================ # MONITORING & ALERTS # ================================ # Metrics server port METRICS_PORT=9090 # Enable detailed logging LOG_LEVEL=info # Alert webhook URL (for Slack/Discord/Telegram) ALERT_WEBHOOK_URL= # Alert on circuit breaker trip ALERT_ON_CIRCUIT_BREAKER=true # Alert on large loss (threshold in wei): 0.05 ETH ALERT_LOSS_THRESHOLD=50000000000000000 # ================================ # EMERGENCY CONTROLS # ================================ # Emergency stop file path - create this file to stop bot immediately EMERGENCY_STOP_FILE=/tmp/mev-bot-emergency-stop # Auto-restart after emergency stop (dangerous - keep false) AUTO_RESTART_AFTER_EMERGENCY_STOP=false # ================================ # ADDITIONAL SAFETY FEATURES # ================================ # Require manual confirmation for each trade (testing only) REQUIRE_MANUAL_CONFIRMATION=true # Maximum trades per hour: 10 = rate limiting MAX_TRADES_PER_HOUR=10 # Blacklist pools (comma-separated addresses of problematic pools) BLACKLISTED_POOLS= # Whitelist tokens only (comma-separated addresses - empty = allow all) WHITELISTED_TOKENS= # ================================ # NOTES FOR PRODUCTION # ================================ # Before deploying to production: # # 1. Set DRY_RUN_MODE=true initially and monitor for 24+ hours # 2. Verify profit calculations match expected values # 3. Ensure circuit breaker triggers correctly # 4. Test emergency stop mechanism # 5. Set up monitoring/alerting # 6. Start with minimal position sizes # 7. Gradually increase limits after validating profitability # 8. NEVER set ENABLE_EXECUTION=true without thorough testing # # Recommended deployment sequence: # Day 1: DRY_RUN_MODE=true (monitor only) # Day 2-3: If stable, test with ENABLE_EXECUTION=true but MAX_POSITION_SIZE=0.1 ETH # Day 4-7: If profitable, increase to MAX_POSITION_SIZE=0.5 ETH # Week 2+: If consistently profitable, gradually increase limits