Find markets where Simmer's AI consensus diverges from the real market price, then trade the edge.
> This is a template. The default logic trades when AI divergence exceeds 2% on zero-fee markets, using Kelly sizing capped at 25%. Remix it with different edge thresholds, sizing strategies, or additional filters (e.g., only trade markets resolving within 7 days). The skill handles plumbing (divergence scanning, fee checks, safeguards, execution). Your agent provides the alpha.
When user asks to install or configure this skill:
```bash
pip install simmer-sdk
```
SIMMER_API_KEYWALLET_PRIVATE_KEY# Scan only (dry run, no trades)
python ai_divergence.py
# Scan + execute trades
python ai_divergence.py --live
# Only show bullish divergences
python ai_divergence.py --bullish
# Only >15% divergence
python ai_divergence.py --min 15
# JSON output
python ai_divergence.py --json
# Cron mode (quiet, trades only)
python ai_divergence.py --live --quiet
# Show config
python ai_divergence.py --config
# Update config
python ai_divergence.py --set max_bet_usd=10
| Key | Env Var | Default | Description |
|---|---|---|---|
| ----- | --------- | --------- | ------------- |
min_divergence | SIMMER_DIVERGENCE_MIN | 5.0 | Min divergence % for scanner display |
min_edge | SIMMER_DIVERGENCE_MIN_EDGE | 0.02 | Min divergence to trade (2%) |
max_bet_usd | SIMMER_DIVERGENCE_MAX_BET | 5.0 | Max bet per trade |
max_trades_per_run | SIMMER_DIVERGENCE_MAX_TRADES | 3 | Max trades per cycle |
kelly_cap | SIMMER_DIVERGENCE_KELLY_CAP | 0.25 | Kelly fraction cap |
daily_budget | SIMMER_DIVERGENCE_DAILY_BUDGET | 25.0 | Daily spend limit |
default_direction | SIMMER_DIVERGENCE_DIRECTION | (both) | Filter: "bullish" or "bearish" |
Update via CLI: python ai_divergence.py --set max_bet_usd=10
Each imported market has two prices:
current_probability) — Simmer's AI consensus price, derived from multi-model ensemble forecastingexternal_price_yes) — Real market price on Polymarket/Kalshidivergence = AI consensus - external price
When divergence > 0: AI thinks the market is underpriced → buy YES
When divergence < 0: AI thinks the market is overpriced → buy NO
Position size uses the Kelly criterion:
kelly_fraction = edge / (1 - price)
position_size = kelly_fraction * max_bet_usd
Capped at kelly_cap (default 25%) to limit risk.
75% of Polymarket markets have 0% fees. The remaining 25% charge 10% (short-duration crypto/sports). This skill only trades zero-fee markets to avoid fee drag eroding the edge.
GET /api/sdk/markets/opportunities — Divergence-ranked market listGET /api/sdk/context/{market_id} — Fee rate and safeguards per marketPOST /api/sdk/trade — Trade execution (via SDK client)GET /api/sdk/positions — Current portfolio positions"No markets above min edge threshold"
→ All divergences are below the min_edge setting. Lower it with --set min_edge=0.01 or wait for larger divergences.
"Daily budget exhausted"
→ The skill has hit its daily spend limit. Adjust with --set daily_budget=50.
All markets skipped for fees
→ Only zero-fee markets are traded. If all available divergence opportunities have fees, no trades execute. This is by design.
"context fetch failed"
→ The SDK context endpoint is rate-limited (18 req/min). If running frequently, reduce max_trades_per_run.
共 5 个版本