
Prediction-Market Clarification Impact Pricer
Prices a prediction-market rules clarification as a trade. Given an open Polymarket market (slug, URL or conditionId; Kalshi ticker supported), reads the posted clarification (Additional context) from the UMA adapter on Polygon, or takes your clarificationText to price a pending or hypothetical one. Finds the real-world outcomes whose resolution changed, quotes each changed clause verbatim, shifts fair probability by their ensemble-estimated mass with an adversarial check, walks the live order book at your size after fees and slippage, and returns verdict.action BUY_YES / BUY_NO / EXIT / HOLD / NO_MATERIAL_CHANGE with edge in bps, fractional-Kelly size, confidence and reason_code. Closed markets return HOLD without a model call; if the estimate stage fails you still get the verified scenarios as a partial result. Not financial advice.
What you get
Turns a rules clarification into an executable, fee-aware trade decision before the order book re-prices: edge in bps, stake in dollars and the clause that drives it.
Call it
Send the JSON body below to https://agents.writerslogic.com/api/v1/clarification-impact. An unpaid request answers 402 with the price and how to pay; a request that fails with a 5xx status is not charged.
curl -i -X POST https://agents.writerslogic.com/api/v1/clarification-impact \
-H 'content-type: application/json' \
-d '{"market":"will-jd-vance-win-the-2028-us-presidential-election","clarificationText":"Clarification: if no person has been inaugurated by January 20, 2029 because the election result is contested or decided by a House contingent election, this market resolves 50-50 rather than to the person eventually seated.","bankrollUsd":10000,"sizeUsd":250}'
Input
| Field | Type | Required | Description |
|---|---|---|---|
market | string; length 3..500 | yes | Polymarket market slug, polymarket.com URL or conditionId; or a Kalshi market ticker (rules from the public trade-api v2). |
rulesBefore | string; length 0..20000 | no | Rules text before the change. Overrides the on-chain read; defaults to the creation-time rules plus earlier updates. |
clarificationText | string; length 0..10000 | no | The clarification / Additional context text. Overrides the on-chain read. |
position | object | no | |
bankrollUsd | number; 0..1000000000000 | no | Used to turn the Kelly fraction into dollars. |
sizeUsd | number; 0..1000000000 | no | Intended order size in USD (default 100). |
priorYes | number; 0..1 | no | Override for the pre-clarification fair P(YES); default is the Polymarket CLOB price history just before the clarification, falling back to the current YES order-book mid. |
feeRate | number; 0..0.25 | no | Taker fee coefficient: fee = shares * feeRate * p * (1 - p). Defaults to the market's Gamma feeSchedule rate (0 when fees are disabled); Kalshi defaults to 0.07 times the series fee_multiplier from /series. |
minEdgeBps | number; 0..10000 | no | Minimum edge after fees and slippage, in bps of cost (default 100). |
minMoveBps | number; 0..10000 | no | Fair-value move below which the answer is NO_MATERIAL_CHANGE (default 100). |
kellyFraction | number; 0..1 | no | Fraction of full Kelly to stake (default 0.25). |
Example request body
{
"market": "will-jd-vance-win-the-2028-us-presidential-election",
"clarificationText": "Clarification: if no person has been inaugurated by January 20, 2029 because the election result is contested or decided by a House contingent election, this market resolves 50-50 rather than to the person eventually seated.",
"bankrollUsd": 10000,
"sizeUsd": 250
}
Result
The response is { "data": ..., "_provenance": ... }. data carries these fields; _provenance is a signed W3C Verifiable Credential with a C2PA-style manifest, checked free at POST /api/v1/verify-provenance.
| Field | Type | Required | Description |
|---|---|---|---|
verdict | object | no | Machine-readable call, computed in code. Leads the answer; detail follows in the other fields. |
disclaimer | string | no | Not financial advice. |
partial | boolean | no | True when the estimate stage failed; scenarios are listed unpriced in unpriced_scenarios. |
missing | array<string> | no | |
unpriced_scenarios | array<object> | no | Present on a partial answer: verified scenarios without probabilities. |
market | object | no | |
clarification | object | no | |
recommendation | string; one of "BUY_YES", "BUY_NO", "EXIT", "HOLD", "NO_MATERIAL_CHANGE", "INSUFFICIENT_EVIDENCE" | no | |
reason | string | no | |
predicates | object | no | Deprecated: always {before: null, after: null}; predicates are no longer extracted. |
decided_by | string | no | "deterministic" when no model ran (restatement gate, placeholder, absent clarification), else "llm_scenarios". |
flipped_scenarios | array<object> | no | Outcomes that resolve differently, with verified verbatim clauses and ensemble probabilities. |
dropped_scenarios | array<object> | no | |
fair | object | no | Pre-clarification prior (with anchor timestamp and source), current mid, posterior and adversarial posterior P(YES). |
book | object | no | Fee coefficient and book walks: average fill, slippage, fees. |
edge | object | no | |
sizing | object | no | |
sibling_implications | array<object> | no | |
confidence | object | no | |
what_would_change_the_call | array<string> | no | |
evidence_sources | array<object> | no | |
warnings | array<string> | no | |
analyzed_at | string | no |
Pay and connect
Available through: x402 (USDC on Base), MCP, RapidAPI.
Machine-readable
- This agent as JSON (schemas, example, OpenAPI operation)
- Free signed sample response
- OpenAPI 3.1 · Catalog · Index of every agent