polymarket-btc-midcandle

BTC Mid-Candle Scalper — 75%+ win rate on Polymarket BTC 15-minute markets. Enters mid-candle (2–12 min remaining) when intracandle momentum is confirmed by 5m + 3m price change. Fully configurable: tune the momentum threshold, volume gate, and entry price window to dial in your own edge. Proven on real money. Use when you want a battle-tested, high-WR crypto trading bot running 24/7 on Polymarket.

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-btc-midcandle" with this command: npx skills add DjDyll/polymarket-btc-midcandle

BTC Mid-Candle Scalper 🔥

75%+ win rate. Real money. 400+ trades. This is the highest-performing BTC strategy in the Simmer ecosystem — built, battle-tested, and profitable over months of live trading. Now you can run it yourself.

This is a template. The default signal is mid-candle BTC momentum from Binance klines — remix it with your own data sources, tighter time windows, or custom volume filters. The skill handles all the plumbing (market discovery, trade execution, safeguards). Your tuning provides the alpha.


What It Does

Polymarket's BTC Up/Down markets close every 15 minutes at :00, :15, :30, and :45. Most traders enter blind at candle open — guessing direction with no data. This strategy waits.

The edge: By the time 2–12 minutes remain in a candle, BTC has shown its hand. If 5-minute and 3-minute price changes both agree on direction AND volume confirms it isn't noise — that's a high-conviction trade with a known time horizon.

The result: 65–75%+ win rate depending on your settings. Defaults are calibrated to produce edge out of the box.

⚠️ Important: The defaults are a starting point, not a magic formula. You need to fine-tune these settings to your account size, risk tolerance, and market conditions. A trader who tunes their thresholds will outperform one who runs defaults. The strategy section below explains exactly what each knob does.


Setup

1. Install & configure

clawhub install polymarket-btc-midcandle

Set your API key:

export SIMMER_API_KEY=sk_live_your_key_here

Or set it in your .env file if using OpenClaw.

2. Get your Poly Agent ID

Find it at simmer.markets/dashboard → Agents. Copy your agent ID.

python btc_midcandle.py --set poly_agent_id=your_agent_id_here

3. Run in paper mode first

python btc_midcandle.py

You'll see [PAPER MODE] — no real money moves. Watch it for a day. Make sure the signals make sense.

4. Go live

python btc_midcandle.py --live

5. Set up cron (recommended)

crontab -e

Add:

3,8,13,18,23,28,33,38,43,48,53,58 * * * * cd /path/to/skill && python btc_midcandle.py --live >> /var/log/btc-midcandle.log 2>&1

Runs every 5 minutes. This timing is intentional — entering slightly after the candle opens gives you confirmed momentum rather than a guess.


Configuration

# View current config
python btc_midcandle.py --config

# Set a value
python btc_midcandle.py --set momentum_threshold=0.0012
python btc_midcandle.py --set bet_size=10.0
ParameterEnv VarDefaultDescription
poly_agent_idSIMMER_BTCMC_AGENT_IDYour Polymarket agent ID (required)
bet_sizeSIMMER_BTCMC_BET_SIZE5.0USDC per trade
momentum_thresholdSIMMER_BTCMC_THRESHOLD0.0015Min 5m price change (0.15%)
min_volume_ratioSIMMER_BTCMC_VOL_RATIO1.2Volume vs 2h avg (0 = disabled)
min_entry_priceSIMMER_BTCMC_MIN_ENTRY0.45Min entry price per side
max_entry_priceSIMMER_BTCMC_MAX_ENTRY0.65Max entry price per side
enable_1m_confirmSIMMER_BTCMC_1M_CONFIRMfalseRequire 1m candle to confirm
skip_hoursSIMMER_BTCMC_SKIP_HOURS2,9,10,11,15UTC hours to skip (see warning below)
discord_webhookSIMMER_BTCMC_WEBHOOK""Discord alert webhook (optional)
max_position_usdSIMMER_BTCMC_MAX_POSITION50.0Max USDC per trade when using --smart-sizing
sizing_pctSIMMER_BTCMC_SIZING_PCT0.03Portfolio % per trade when using --smart-sizing (3%)

Skip Hours — Do Not Remove Without Data

The following UTC hours are skipped by default because BTC midcandle has historically poor win rate during these windows:

Hour (UTC)Local time (ET)Why it's bad
2h10pm ET (prev night)Low volume, thin books, random noise
9h5am ETPre-market — BTC drifts without conviction
10h6am ETPre-market open — spread widens, fills unpredictable
11h7am ETEarly NY session — choppy before real volume arrives
15h11am ETPost-open chop — directional momentum breaks down

These are configured as skip_hours = "2,9,10,11,15" and enforced automatically. Do not remove hours from this list without your own shadow data showing consistent WR above 55% for that hour. Trading these hours is the single fastest way to drag your win rate below breakeven.


Tuning Guide

This is where you find your edge. The defaults produce solid results, but tuning to your conditions can meaningfully improve win rate.

Momentum threshold (momentum_threshold)

Controls how much BTC must move in 5 minutes before you enter.

  • Lower (0.0010): More trades, slightly lower accuracy. Good in trending markets.
  • Higher (0.0020): Fewer trades, only strong moves. Better in choppy conditions.
  • Start here: Run paper mode for 3–5 days. Check your --positions output. If you're getting too many marginal trades, raise it.

Volume ratio (min_volume_ratio)

Filters out low-volume momentum that tends to reverse.

  • 0 (disabled): Maximum trade frequency. Raw momentum only.
  • 1.2 (default): Only trade when volume is 1.2× the 2-hour average.
  • 1.5–2.0: High-conviction only. Fewer trades, but strong volume confirmation.

Entry price window (min_entry_price / max_entry_price)

Filters out bad entries. Entry price is how much you pay per share.

  • Too cheap (<0.40): You're betting against the crowd. Usually wrong.
  • Too expensive (>0.70): High cost, limited upside.
  • Sweet spot (0.45–0.65): Balanced risk/reward. Default is calibrated here.

1m confirmation (enable_1m_confirm) — OFF by default

Adds a final gate: the last 1-minute candle must agree with your direction before a trade fires.

  • Disabled (default): More trades, some noise. Good baseline to start.
  • Enabled: Reduces false signals at the cost of some missed entries. Recommended once you're comfortable with the strategy.

💡 Tip: Try enabling this after your first week. Compare your win rate with vs without — most traders see a meaningful improvement on choppy days.


Commands

# Paper trade (default)
python btc_midcandle.py

# Live trade
python btc_midcandle.py --live

# Show open positions
python btc_midcandle.py --positions

# Portfolio-based sizing (% of balance)
python btc_midcandle.py --live --smart-sizing

# Skip safeguards (advanced — not recommended)
python btc_midcandle.py --live --no-safeguards

# View config
python btc_midcandle.py --config

# Set a config value
python btc_midcandle.py --set bet_size=10

Example Output

============================================================
🔴 LIVE: BTC Mid-Candle Scalper — 2026-03-15 22:33 UTC
============================================================
⏰ Candle :30 | 8 min remaining | ✅ In window
📊 Volume: 1.41x ✅
📈 Momentum: up | 5m: +0.1821% | 3m: +0.0943%
📋 Market: Will BTC go up or down — March 15, 10:30-10:45PM ET?
💲 Entry price: 0.512 (side=yes)

🚀 Placing YES $5.00 — Mid-candle up (8m left): 5m=+0.1821% 3m=+0.0943% vol=1.41x
✅ Filled: 9.7 YES shares for $5.00

Remix Ideas

The skill handles market discovery, execution, and safeguards. Swap in your own signal:

  • Fear & Greed signal: Only trade when Crypto Fear & Greed is above 60 (greed confirms momentum)
  • Order flow: Add Binance aggTrades to confirm buy/sell pressure before entering
  • Multi-asset confirmation: Only enter BTC UP if ETH is also moving up (correlated moves are stronger)
  • News filter: Skip trades during scheduled macro events (CPI, Fed announcements)

Troubleshooting

No trades firing?

  • Check your cron is running: tail -f /var/log/btc-midcandle.log
  • Momentum threshold may be too high for current market conditions — try lowering to 0.0010
  • Check Binance API is reachable from your server

Too many losing trades?

  • Raise momentum_threshold — only trade stronger moves
  • Enable enable_1m_confirm — adds a final confirmation step
  • Raise min_volume_ratio to 1.5 — only trade high-conviction volume

"No active BTC market found"?

  • Verify your poly_agent_id is set correctly
  • Check Simmer API status at status.simmer.markets

Win rate lower than expected?

  • Run paper mode for a week before going live — calibrate thresholds to your specific market hours
  • Check --positions for markets that are resolving against you — look for patterns in losing trades

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

Leads

Leads - command-line tool for everyday use

Registry SourceRecently Updated
General

Bmi Calculator

BMI计算器。BMI计算、理想体重、健康计划、体重追踪、儿童BMI、结果解读。BMI calculator with ideal weight, health plan. BMI、体重、健康。

Registry SourceRecently Updated
General

Blood

Blood — a fast health & wellness tool. Log anything, find it later, export when needed.

Registry SourceRecently Updated
General

Better Genshin Impact

📦BetterGI · 更好的原神 - 自动拾取 | 自动剧情 | 全自动钓鱼(AI) | 全自动七圣召唤 | 自动伐木 | 自动刷本 | 自动采集/挖矿/锄地 | 一条龙 | 全连音游 - UI A better genshin impact, c#, auto-play-game, automatic, g...

Registry SourceRecently Updated