by agent-next
Paper trading simulator for Polymarket
# Add to your Claude Code skills
git clone https://github.com/agent-next/polymarket-paper-traderGuides for using ai agents skills like polymarket-paper-trader.
Last scanned: 5/29/2026
{
"issues": [],
"status": "PASSED",
"scannedAt": "2026-05-29T07:56:11.673Z",
"semgrepRan": false,
"npmAuditRan": true,
"pipAuditRan": true
}See how polymarket-paper-trader compares with popular alternatives.
polymarket-paper-trader is an open-source ai agents skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by agent-next. Paper trading simulator for Polymarket. It has 462 GitHub stars.
Yes. polymarket-paper-trader passed SkillsLLM's automated security scan — a dependency vulnerability audit plus prompt-injection heuristics — with no high-severity issues. You can read the full report in the Security Report section on this page.
Clone the repository with "git clone https://github.com/agent-next/polymarket-paper-trader" and add it to your Claude Code skills directory (see the Installation section above).
polymarket-paper-trader is primarily written in Python. It is open-source under agent-next on GitHub, so you can review or fork the full source.
Yes. SkillsLLM lists many other AI Agents skills you can browse and compare side by side. Open the AI Agents category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh polymarket-paper-trader against similar tools.
No comments yet. Be the first to share your thoughts!
⚠️ Third-Party Software Notice
This skill is third-party open-source software developed and hosted independently on GitHub. SkillsLLM is an informational directory and does not control or maintain the underlying repository.
Any security checks, ratings, or warnings displayed by SkillsLLM are automated and limited in scope. They do not constitute a security certification or guarantee that the software is safe, error-free, or free from malicious code, vulnerabilities, compromised dependencies, or prompt-injection risks.
Review the source code, permissions, dependencies, and configuration before installing or running any third-party skill. Use is at your own risk. To the maximum extent permitted by applicable law, SkillsLLM is not liable for losses arising from third-party software.
See comparison
A zero-risk gym for AI agents on real prediction markets — real order books, official fees, verified fill fidelity. Practice, evaluate, and benchmark decision intelligence.
Agents make probability judgments all day. Polymarket is the world's largest prediction market, and its order books are the honest scoreboard: real money, real prices, real outcomes. But you cannot hand an agent a wallet to learn with. So this project gives every agent what SWE-bench gave coders — a faithful environment where judgment has consequences and gets scored:
polymarket-benchmark harness in this repository (installed separately) scores any model on prediction-market decision sets (Brier score, calibration, alpha)Part of agent-next — building an agentic world.
npx clawhub install polymarket-paper-trader # install via ClawHub
pm-trader init --balance 10000 # $10k paper money
pm-trader markets search "bitcoin" # find markets
pm-trader buy will-bitcoin-hit-100k yes 500 # buy $500 of YES
pm-trader stats --card # shareable stats card
That's it. Your AI agent is now trading Polymarket with zero risk.
# via pip
pip install polymarket-paper-trader
# via ClawHub (for OpenClaw agents)
npx clawhub install polymarket-paper-trader
# from source (development)
uv pip install -e ".[dev]"
Requires Python 3.10+.
Full copy-paste config for every runtime above (plus Grok/xAI remote MCP): docs/integrations.md.
# Initialize with $10k paper balance
pm-trader init --balance 10000
# Browse markets
pm-trader markets list --sort liquidity
pm-trader markets search "bitcoin"
# Trade
pm-trader buy will-bitcoin-hit-100k yes 100 # buy $100 of YES
pm-trader sell will-bitcoin-hit-100k yes 50 # sell 50 shares
# Check portfolio and P&L
pm-trader portfolio
pm-trader stats
fee = C × rate × p × (1-p), rounded to 5 decimals, makers exempt (exact spec in the CHANGELOG) — charged per filled level from each market's published fee schedule, not an approximationresolve (or resolve --all) when a market closes and winners pay out like the real thing| Command | Description |
|---|---|
init [--balance N] |
Create paper trading account |
balance |
Show cash, reserved/available cash, positions value, total P&L |
reset --confirm |
Wipe all data |
markets list [--limit N] [--sort volume|liquidity] |
Browse active markets |
markets search QUERY |
Full-text market search |
markets get SLUG |
Market details |
markets tags |
List all market categories/tags |
markets event SLUG |
Event details — a group of related markets |
price SLUG |
YES/NO midpoints and spread |
book SLUG [--depth N] |
Order book snapshot |
watch SLUG [SLUG...] [--outcome yes|no] |
Monitor live prices |
buy SLUG OUTCOME AMOUNT [--type fok|fak] |
Buy at market price |
sell SLUG OUTCOME SHARES [--type fok|fak] |
Sell at market price |
portfolio |
Open positions with live prices |
history [--limit N] |
Trade history |
orders place SLUG OUTCOME SIDE AMOUNT PRICE |
Limit order (GTC/GTD) |
orders list |
Open limit orders (pending and partially filled) |
orders cancel ID |
Cancel a limit order |
orders cancel-all |
Cancel all pending limit orders at once |
orders check |
Fill limit orders if price crosses |
stats [--card|--tweet|--plain] |
Win rate, ROI, profit, max drawdown |
resolve [SLUG] [--all] |
Resolve a closed market, or all closed markets (winners get $1/share) |
leaderboard |
Local account rankings |
pk ACCOUNT_A ACCOUNT_B |
Battle: who's the better trader? |
export trades [--format csv|json] |
Export trade history |
export positions [--format csv|json] |
Export positions |
strategy run MODULE.FUNC |
Run a trading strategy |
strategy compare ACCT1 ACCT2 |
Compare account performance |
strategy pk STRAT_A STRAT_B |
Battle: who's the better trader? |
benchmark run MODULE.FUNC |
Alias of strategy run |
benchmark compare ACCT1 ACCT2 |
Alias of strategy compare |
benchmark pk STRAT_A STRAT_B |
Alias of strategy pk |
accounts list |
List named accounts |
accounts create NAME |
Create account for A/B testing |
accounts delete NAME --confirm |
Delete a named account and all its data |
mcp |
Start MCP server (stdio transport) |
Global flags: --data-dir PATH, --account NAME (or env vars PM_TRADER_DATA_DIR, PM_TRADER_ACCOUNT).
Your agent gets the following tools via the Model Context Protocol.
The server also carries the full trading playbook with it — as MCP server
instructions, as a trading_playbook prompt, and as a skill://trading-playbook
resource — so MCP-only clients (Cursor, Claude.ai connectors, Grok API remote
MCP, ChatGPT apps) get the same guidance skill-aware agents get from
skill/polymarket-paper-trader/SKILL.md.
pm-trader-mcp # starts on stdio
# or, with no local install:
uvx --from polymarket-paper-trader pm-trader-mcp
Add to your Claude Code config:
{
"mcpServers": {
"polymarket-paper-trader": {
"command": "pm-trader-mcp"
}
}
}
For MCP clients that only speak HTTP, run the server with --transport streamable-http:
pm-trader-mcp --transport streamable-http --host 127.0.0.1 --port 8000
# or: pm-trader mcp --transport streamable-http --host 127.0.0.1 --port 8000
The MCP endpoint is then http://<host>:<port>/mcp. There is no isolation
between callers — everyone who reaches the server shares all of its paper
accounts; it is self-host-only, not a public multi-user service. There is no authentication on this transport;
anyone who can reach the port can call every exposed tool. backtest and
pk_battle (local file reads + local strategy-module execution) are
stdio-only and are not registered when serving over streamable-http.
docker build -t pm-trader-mcp .
docker run -p 127.0.0.1:8000:8000 -v pm-trader-data:/root/.pm-trader pm-trader-mcp
Publish the port to 127.0.0.1 only (as above) unless you put a real
authenticating proxy in front of it — the container has no auth of its own.
| Tool | What it does |
|---|---|
init_account |
Create paper account with starting balance |
get_balance |
Cash, reserved/available cash, positions value, total P&L |
reset_account |
Wipe all data and start fresh |
search_markets |
Find markets by keywo |