public/skills/adlai88/simmer-copytrading/SKILL.md
Mirror positions from top Polymarket traders using Simmer API. Size-weighted aggregation across multiple wallets.
npx skillsauth add demerzels-lab/elsamultiskillagent simmer-copytradingInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Mirror positions from successful Polymarket traders using the Simmer SDK.
Use this skill when the user wants to:
# Check account balance and positions
python scripts/status.py
# Detailed position list
python scripts/status.py --positions
API Reference:
https://api.simmer.marketsAuthorization: Bearer $SIMMER_API_KEYGET /api/sdk/portfolioGET /api/sdk/positionsUser provides wallet(s) directly in chat:
User: "Copytrade this wallet: 0x1234...abcd"
User: "What positions does 0x5678...efgh have?"
User: "Follow these whales: 0xaaa..., 0xbbb..."
→ Run with --wallets flag:
python copytrading_trader.py --wallets 0x1234...abcd
python copytrading_trader.py --wallets 0xaaa...,0xbbb... --dry-run
This is the simplest way - no setup needed, just pass wallets directly.
For automated recurring scans, wallets can be saved in environment:
| Setting | Environment Variable | Default |
|---------|---------------------|---------|
| Target wallets | SIMMER_COPYTRADING_WALLETS | (none) |
| Top N positions | SIMMER_COPYTRADING_TOP_N | auto |
| Max per position | SIMMER_COPYTRADING_MAX_USD | 50 |
| Max trades/run | SIMMER_COPYTRADING_MAX_TRADES | 10 |
Top N auto-calculation (when not specified):
Polymarket Constraints:
⚠️ Start Conservative: Begin with small amounts (
--max-usd 5-10) and--dry-runto understand how the skill behaves before scaling up.
Each cycle the script:
Run a scan:
python copytrading_trader.py
Dry run (no actual trades):
python copytrading_trader.py --dry-run
Check positions only:
python copytrading_trader.py --positions
View current config:
python copytrading_trader.py --config
Override wallets for one run:
python copytrading_trader.py --wallets 0x123...,0x456...
Full rebalance mode (includes sells):
python copytrading_trader.py --rebalance
Sell when whales exit positions:
python copytrading_trader.py --whale-exits
After each run, message the user with:
Example output to share:
🐋 Copytrading Scan Complete
Configuration:
• Following 2 wallets
• Top 10 positions, max $50 each
• Balance: $250.00 USDC
Fetched positions:
• 0x1234...abcd: 15 positions
• 0x5678...efgh: 22 positions
• Combined: 28 unique markets
• Conflicts skipped: 2
Top 10 by allocation:
1. "Will BTC hit $100k?" - 18.5% → BUY YES
2. "Trump pardons X?" - 12.3% → BUY NO
3. "Fed rate cut Jan?" - 9.8% → Already held
...
Trades executed: 4 buys ($180 total)
• Bought 45 YES shares on "Will BTC hit $100k?" @ $0.82
• Bought 120 NO shares on "Trump pardons X?" @ $0.15
...
Next scan in 4 hours.
User: "Copytrade 0x1234...abcd"
→ Run: python copytrading_trader.py --wallets 0x1234...abcd
→ Report what positions that wallet has and what trades would execute
User: "What is 0x5678...efgh holding?"
→ Run: python copytrading_trader.py --wallets 0x5678...efgh --dry-run
→ Show their positions without trading
User: "Follow these wallets: 0xaaa..., 0xbbb..., 0xccc..."
→ Run: python copytrading_trader.py --wallets 0xaaa...,0xbbb...,0xccc...
→ Aggregate positions across all wallets, report results
User: "Copytrade this whale but only top 5 positions"
→ Run: python copytrading_trader.py --wallets 0x... --top-n 5
User: "How are my positions doing?"
→ Run: python copytrading_trader.py --positions
→ Show current Polymarket positions with P&L
User: "Show copytrading config"
→ Run: python copytrading_trader.py --config
→ Display current settings
User: "Sell positions that whales have exited"
→ Run: python copytrading_trader.py --whale-exits
→ Compares your positions to whales, sells any they've closed
User: "Do a full rebalance to match the whales"
→ Run: python copytrading_trader.py --rebalance
→ Includes both buys AND sells to match whale allocations
Common approaches:
The skill works best when:
"Order too small" / "below minimum (5)"
--max-usd or reduce --top-n to concentrate into fewer positions"No wallets specified"
"Agent has no USDC balance"
"Conflict skipped"
"Insufficient balance"
"Market could not be imported"
testing
Query real-time and historical financial data across equities and crypto—prices, market moves, metrics, and trends for analysis, alerts, and reporting.
data-ai
YouTube SERP Scout for agents. Search top-ranking videos, channels, and trends for content research and competitor tracking.
development
Search X (Twitter) in real time, extract relevant posts, and publish tweets/replies instantly—perfect for social listening, engagement, and rapid content ops.
development
Intelligent search for agents. Multi-source retrieval with confidence scoring - web, academic, and Tavily in one unified API.