polymarket-fast-loop

Trade Polymarket BTC 5-minute and 15-minute fast markets using CEX price momentum signals via Simmer API. Default signal is Binance BTC/USDT klines. Use when user wants to trade sprint/fast markets, automate short-term crypto trading, or use CEX momentum as a Polymarket signal.

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "polymarket-fast-loop" with this command: npx skills add leogordon2004/poly

Polymarket FastLoop Trader

Trade Polymarket's 5-minute BTC fast markets using real-time price momentum from Binance.

Polymarket only. All trades execute on Polymarket with real USDC. Use --live for real trades, dry-run is the default.

How it works: Every cycle, the script finds the current live BTC fast market, checks BTC price momentum on Binance, and trades if momentum diverges from market odds.

This is a template. The default signal (Binance momentum) gets you started. Your agent's reasoning is the edge — layer on sentiment analysis, multi-exchange spreads, news feeds, or custom signals to improve it.

⚠️ Fast markets carry Polymarket's 10% fee (is_paid: true). Factor this into your edge calculations.

When to Use This Skill

Use this skill when the user wants to:

  • Trade BTC sprint/fast markets (5-minute or 15-minute)
  • Automate short-term crypto prediction trading
  • Use CEX price momentum as a Polymarket signal
  • Monitor sprint market positions

Setup Flow

When user asks to install or configure this skill:

  1. Ask for Simmer API key

    • Get from simmer.markets/dashboard → SDK tab
    • Store in environment as SIMMER_API_KEY
  2. Ask about settings (or confirm defaults)

    • Asset: BTC, ETH, or SOL (default BTC)
    • Entry threshold: Min divergence to trade (default 5¢)
    • Max position: Amount per trade (default $5.00)
    • Window: 5m or 15m (default 5m)
  3. Set up cron or loop (user drives scheduling — see "How to Run on a Loop")

Quick Start

# Set your API key
export SIMMER_API_KEY="your-key-here"

# Dry run — see what would happen
python fastloop_trader.py

# Go live
python fastloop_trader.py --live

# Live + quiet (for cron/heartbeat loops)
python fastloop_trader.py --live --quiet

# Live + smart sizing (5% of balance per trade)
python fastloop_trader.py --live --smart-sizing --quiet

How to Run on a Loop

The script runs one cycle — your bot drives the loop. Set up a cron job or heartbeat:

Every 5 minutes (one per fast market window):

*/5 * * * * cd /path/to/skill && python fastloop_trader.py --live --quiet

Every 1 minute (more aggressive, catches mid-window opportunities):

* * * * * cd /path/to/skill && python fastloop_trader.py --live --quiet

Via OpenClaw heartbeat: Add to your HEARTBEAT.md:

Run: cd /path/to/fast market && python fastloop_trader.py --live --quiet

Configuration

Configure via config.json, environment variables, or --set:

# Change entry threshold
python fastloop_trader.py --set entry_threshold=0.08

# Trade ETH instead of BTC
python fastloop_trader.py --set asset=ETH

# Multiple settings
python fastloop_trader.py --set min_momentum_pct=0.3 --set max_position=10

Settings

SettingDefaultEnv VarDescription
entry_threshold0.05SIMMER_SPRINT_ENTRYMin price divergence from 50¢ to trigger
min_momentum_pct0.5SIMMER_SPRINT_MOMENTUMMin BTC % move to trigger
max_position5.0SIMMER_SPRINT_MAX_POSITIONMax $ per trade
signal_sourcebinanceSIMMER_SPRINT_SIGNALPrice feed (binance, coingecko)
lookback_minutes5SIMMER_SPRINT_LOOKBACKMinutes of price history
min_time_remaining60SIMMER_SPRINT_MIN_TIMESkip fast markets with less time left (seconds)
assetBTCSIMMER_SPRINT_ASSETAsset to trade (BTC, ETH, SOL)
window5mSIMMER_SPRINT_WINDOWMarket window duration (5m or 15m)
volume_confidencetrueSIMMER_SPRINT_VOL_CONFWeight signal by Binance volume

Example config.json

{
  "entry_threshold": 0.08,
  "min_momentum_pct": 0.3,
  "max_position": 10.0,
  "asset": "BTC",
  "window": "5m",
  "signal_source": "binance"
}

CLI Options

python fastloop_trader.py                    # Dry run
python fastloop_trader.py --live             # Real trades
python fastloop_trader.py --live --quiet     # Silent except trades/errors
python fastloop_trader.py --smart-sizing     # Portfolio-based sizing
python fastloop_trader.py --positions        # Show open fast market positions
python fastloop_trader.py --config           # Show current config
python fastloop_trader.py --set KEY=VALUE    # Update config

Signal Logic

Default signal (Binance momentum):

  1. Fetch last 5 one-minute candles from Binance (BTCUSDT)
  2. Calculate momentum: (price_now - price_5min_ago) / price_5min_ago
  3. Compare momentum direction to current Polymarket odds
  4. Trade when:
    • Momentum ≥ min_momentum_pct (default 0.5%)
    • Price diverges from 50¢ by ≥ entry_threshold (default 5¢)
    • Volume ratio > 0.5x average (filters out thin moves)

Example: BTC up 0.8% in last 5 min, but fast market YES price is only $0.52. The 3¢ divergence from the expected ~$0.55 → buy YES.

Customizing Your Signal

The default momentum signal is a starting point. To add your own edge:

  • Multi-exchange: Compare prices across Binance, Kraken, Bitfinex — divergence between exchanges can predict CLOB direction
  • Sentiment: Layer in Twitter/social signals — a viral tweet can move fast markets
  • Technical indicators: RSI, VWAP, order flow analysis
  • News: Breaking news correlation — use your agent's reasoning to interpret headlines

The skill handles all the Simmer plumbing (discovery, import, trade execution). Your agent provides the alpha.

Example Output

⚡ Simmer FastLoop Trading Skill
==================================================

  [DRY RUN] No trades will be executed. Use --live to enable trading.

⚙️  Configuration:
  Asset:            BTC
  Entry threshold:  0.05 (min divergence from 50¢)
  Min momentum:     0.5% (min price move)
  Max position:     $5.00
  Signal source:    binance
  Lookback:         5 minutes
  Min time left:    60s
  Volume weighting: ✓

🔍 Discovering BTC fast markets...
  Found 3 active fast markets

🎯 Selected: Bitcoin Up or Down - February 15, 5:30AM-5:35AM ET
  Expires in: 185s
  Current YES price: $0.480

📈 Fetching BTC price signal (binance)...
  Price: $97,234.50 (was $96,812.30)
  Momentum: +0.436%
  Direction: up
  Volume ratio: 1.45x avg

🧠 Analyzing...
  ⏸️  Momentum 0.436% < minimum 0.500% — skip

📊 Summary: No trade (momentum too weak: 0.436%)

Source Tagging

All trades are tagged with source: "sdk:fastloop". This means:

  • Portfolio shows breakdown by strategy
  • Other skills won't interfere with your fast market positions
  • You can track fast market P&L separately

Troubleshooting

"No active fast markets found"

  • Fast markets may not be running (off-hours, weekends)
  • Check Polymarket directly for active BTC fast markets

"No fast markets with >60s remaining"

  • Current window is about to expire, next one isn't live yet
  • Reduce min_time_remaining if you want to trade closer to expiry

"Import failed: Rate limit exceeded"

  • Free tier: 10 imports/day. Pro: 50/day
  • Fast market trading needs Pro for reasonable frequency

"Failed to fetch price data"

  • Binance API may be down or rate limited
  • Try --set signal_source=coingecko as fallback

"Trade failed: no liquidity"

  • Fast market has thin book, try smaller position size

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

yuqing-bitable-and-label

Incrementally sync data from XiaoAi API to Feishu Bitable and optionally auto-label records with machine-based type and sentiment annotations.

Registry SourceRecently Updated
General

张律师综合套装

张律师法律AI中台 - 中国首个开源法律AI技能库,涵盖刑事辩护、民商事诉讼、合同审查全流程

Registry SourceRecently Updated
General

刑事辩护

刑事辩护全流程AI助手 - 6大阶段21个模板,从接案到执行全覆盖

Registry SourceRecently Updated