5-Min BTC Trading Strategy

Edit
Last updated 2026-04-07 18:42 UTC
tradingstrategy5minbtcpolymarket

5-Min BTC Trading Strategy

Fishy trades Polymarket binary options on 5-minute BTC/ETH/SOL/XRP up/down markets.

Flow

btc_realtime.py (RealtimeFeed singleton)
   Binance websocket: real-time ticks + orderbook imbalance
   Started by Fishy on_startup, shared singleton

momentum_engine.py (RealtimeSignalGenerator)
   6 indicators: tick momentum, orderbook imbalance, aggressor ratio,
    RSI, volume spike, ROC
   Falls back to candle-based if feed not yet connected
   Output: {coin, direction UP/DOWN, confidence 0.50-0.78, regime}

polymarket_engine.py (FiveMinMarketDiscovery)
   Gamma API slug: {coin}-updown-5m-{epoch}
   Discovers markets for next upcoming window
   Confirms: up_token_id, down_token_id, prices, accepting_orders

bot_fishy.py (five_min_crypto_loop, runs every 60s)
   Gate: 30-260s remaining in window, one trade per window
   Risk check: FiveMinRiskEngine (circuit breaker after 4 losses, 30min pause)
   Pick best signal (confidence >= 0.53), BUY limit order
   Posts trade to #finance

Risk Parameters

Parameter Value
Max per trade $5
Daily loss limit $15
Max trades/day 50
Circuit breaker 4 consecutive losses → 30-min pause
Min confidence 0.53 (raises to 0.55 if WR < 45% after 20 trades)

Chainlink Data Streams

Polymarket resolves BTC 5-min markets using Chainlink data streams.
- Feed ID: 0x0003da4b5d66b4bc78e7c85dc7c7e29db5dde3db4d3c0c4b2d6f7e1e2a3b4c5 (approx)
- Resolution = price at exact window end (UTC epoch boundary)
- CL-EARLY strategy: bet before the window open using Chainlink price feed signal

CL Strategies

CL-EARLY (enabled)

CL-CONFIRMED (enabled)

CL-LATE (disabled)

Signal Boosters

Confidence boosters are applied proportionally to move size (_boost_scale = min(1.0, abs(move_pct) / 0.08)):

Edge_max expansion is gated on real moves (abs(move_pct) >= 0.08):
- conf >= 0.84 + big move → edge_max expands to 0.78
- conf >= 0.79 + big move → edge_max expands to 0.73