# Server PORT=3000 # Polling interval in ms (e.g. 5000 = 5 seconds) POLL_INTERVAL_MS=5000 # Market start time (ISO 8601). Bot starts evaluating after START_DELAY_MINS. # Example: 2025-02-19T15:00:00.000Z MARKET_START_TIME= # Minutes after market start before bot starts (default 8) START_DELAY_MINS=8 # Kalshi: base URL (elections API example below) KALSHI_API_BASE=https://api.elections.kalshi.com/trade-api/v2 # Or main exchange: https://api.kalshi.com/trade-api/v2 # Kalshi market ticker for this 15-min market (e.g. KXHIGHNY-24JAN01-T60) KALSHI_TICKER= # Polymarket CLOB base POLYMARKET_CLOB_BASE=https://clob.polymarket.com # Polymarket token IDs: UP (Yes) and DOWN (No) for the same event POLYMARKET_TOKEN_UP= POLYMARKET_TOKEN_DOWN= # Arbitrage thresholds (cents 0-100) # Buy on Polymarket when Kalshi YES price is in [KALSHI_MIN, KALSHI_MAX] KALSHI_MIN_CENTS=93 KALSHI_MAX_CENTS=96 # and Polymarket is at least this many cents cheaper than Kalshi MIN_SPREAD_CENTS=10 POLYMARKET_PRIVATE_KEY=0x... # EOA private key (required) POLYMARKET_PROXY_WALLET_ADDRESS=0x... # Gnosis Safe / proxy wallet address (required) POLYMARKET_CHAIN_ID=137 POLYMARKET_TRADE_USD=10 # USD per buy order POLYMARKET_BUY_COOLDOWN_SECONDS=60 # Min seconds between buy orders