Install
openclaw skills install auto-trading-winnerClawHub Security found sensitive or high-impact capabilities. Review the scan results before using.
Cross-venue trading skill for ClawHub that supports both manual candidate selection and unattended auto mode, while filtering markets by price band and trading volume.
openclaw skills install auto-trading-winnerThis skill scans markets on sim, polymarket, or kalshi, filters for markets priced in a configurable middle band, ranks them by trading volume, and supports both manual selection and unattended auto mode.
This is a template. The default signal is simple volume ranking plus a price-band filter. Remix it with your own alpha, liquidity rules, timing rules, or fair-value model. The skill handles market discovery, venue-specific indexing, context checks, sizing, and trade execution plumbing.
On each run, the skill:
auto_redeem().30% to 70%.5 by default.RUN_MODE=manual, lets you manually select one candidate.RUN_MODE=auto, starts from rank 1 automatically unless SELECT_CANDIDATE is provided.simmer_sdk.sizing.size_position().--live.This skill follows Simmer's manual ClawHub pattern:
SKILL.mdclawhub.jsontrade_skill.pySIMMER_API_KEY (required): Your Simmer API key.SOLANA_PRIVATE_KEY (optional): Needed only for live Kalshi self-custody trading.WALLET_PRIVATE_KEY (optional): Needed only if your Polymarket setup uses an external wallet flow.TRADING_VENUE: sim, kalshi, or polymarket. Default: simRUN_MODE: manual or auto. Default: manualMARKET_QUERY: Optional query term used during discovery. Default: empty string.MIN_PRICE: Minimum YES price allowed. Default: 0.30MAX_PRICE: Maximum YES price allowed. Default: 0.70MAX_MARKETS: Maximum number of discovered markets to inspect before ranking. Default: 50CANDIDATE_LIMIT: Number of ranked candidates to show. Default: 5FAIR_PROBABILITY: Fair YES probability used for sizing and side selection. Default: 0.55MIN_EDGE: Minimum edge required before trading. Default: 0.03MAX_SLIPPAGE_PCT: Skip trades if estimated slippage exceeds this threshold. Default: 0.15SIMMER_ENABLE_LIVE: Set to true to allow live order placement. Default: falseSELECT_CANDIDATE: Optional 1-based index of the candidate to trade in non-interactive runs.AUTO_CONFIRM_LIVE: Optional explicit override required if you want RUN_MODE=auto together with live execution on kalshi or polymarket. Default: falsesource and skill_slug.reasoning.RUN_MODE=manual is the default for all venues.RUN_MODE=auto makes the skill non-interactive and starts from the top-ranked candidate.kalshi and polymarket requires an explicit AUTO_CONFIRM_LIVE=true override.Review candidates without trading:
export SIMMER_API_KEY="sk_live_..."
export TRADING_VENUE="sim"
python trade_skill.py
Trade candidate 2 in a non-interactive run:
export SELECT_CANDIDATE="2"
python trade_skill.py --live
Unattended dry-run from the highest-ranked candidate:
export TRADING_VENUE="kalshi"
export RUN_MODE="auto"
python trade_skill.py
Fully unattended paper-trading run on sim:
export TRADING_VENUE="sim"
export RUN_MODE="auto"
export SIMMER_ENABLE_LIVE="true"
python trade_skill.py
Interactive review:
export TRADING_VENUE="kalshi"
python trade_skill.py
From inside this skill folder:
npx clawhub@latest publish . --slug auto-trading-winner --version 1.0.0
Always publish with an explicit --slug.
After publishing, verify the install path explicitly:
npx clawhub@latest install auto-trading-winner
If you update the skill, publish a patch version:
npx clawhub@latest publish . --slug auto-trading-winner --bump patch
Recommended local smoke test before publishing:
export SIMMER_API_KEY="sk_live_..."
export TRADING_VENUE="sim"
export MARKET_QUERY="bitcoin"
export SELECT_CANDIDATE="1"
python trade_skill.py