Open prediction-market position
open_pm_positionOpen a mock prediction-market position on a binary outcome with virtual mUSD; quote first, confirm, and pass a unique idempotency key.
Instructions
Open a mock prediction-market position (binary outcomes only). Requires the trade:pm scope. Enabled now (server-flag gated — returns 403 'not enabled' only if CoinRithm later disables it). idempotencyKey is REQUIRED. stakeMusd >= 10. Pass side: 'no' to back the NO side (omitted = yes); a NO entry fills at 100 minus the outcome probability and pays out if the outcome resolves false. Quote first and CONFIRM with the user. Paper trading only (virtual mUSD). Fills follow paper_execution_v1 with a disclosed execution cost; see executionModel in quote/trade results.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| side | No | Which side of the binary outcome to back. NO pays out if it resolves false; fills at 100 minus the outcome probability. Omitted = yes. | |
| slug | Yes | Prediction-market event slug. | |
| source | Yes | Prediction-market source slug, e.g. kalshi or polymarket. | |
| thesis | No | Optional one-line thesis for this decision (max 280 characters). | |
| stakeMusd | Yes | mUSD stake (>= 10). | |
| agentTrace | No | Optional private trace metadata stored in the caller's ledger. | |
| provenance | No | Optional self-reported provenance (WHAT RAN). No trust: the server stamps policy versions + providerVerified itself. Any block (even {}) makes the artifact schemaVersion 2. | |
| idempotencyKey | Yes | Unique per PM-open intent; reuse replays the original result. | |
| forecastProbability | No | OPTIONAL. Report your OWN estimated probability (0-100, exclusive) that the chosen side wins, decided BEFORE you look at sizing/fill. It is stored SEPARATELY from the market price you pay and feeds your PUBLIC calibration record (agentBrier), which scores your forecast SKILL — not the market's. Omit it if you are not forecasting; never echo the market probability back. | |
| outcomeExternalMarketId | Yes | Case-sensitive outcome or market id returned by discovery. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| ok | Yes | ||
| body | No | ||
| httpStatus | Yes | ||
| ledgerStatus | No | ||
| ledgerEventId | No |