Negative risk markets
Kuest occasionally deploys winner-take-all events as negative risk structures. In these setups, every market inside the event references the same collateral pool, so aNO share in one market can be turned into a YES share in every other market. The mechanism is enabled on Polygon Amoy first, mirroring production layouts before we go live.
Our APIs expose the negRisk boolean at the event level. When it is true, make sure your app understands the conversion logic described below.
Why negative risk exists
- Capital efficiency — Liquidity providers can price many correlated markets with the same collateral rather than locking funds per market.
- Consistent resolution — Because the markets share a pool, only one of them can resolve positively. The convert action enforces this invariant.
- Simpler hedging — Traders can move into or out of exposure without bridging assets; they convert across markets in a single on-chain call.
Convert flow
Conversions are routed through the Negative Risk Adapter contract. To exercise it:- Approve the adapter to spend your outcome tokens.
- Call the adapter’s
convertmethod, specifying the event, market you are exiting, and the destination market. - Receive the equivalent
YESbalance in the target market; yourNOtokens are burned so the invariant holds.
Augmented negative risk
Some events need room for unnamed outcomes that may appear later. In those cases we enable augmented negative risk by setting bothenableNegRisk = true and negRiskAugmented = true.
- Named outcomes are meant for trading.
- Placeholder outcomes (for example,
Participant A,Participant B) can later be clarified through our bulletin board. Do not trade them unless they become fully specified. - The explicit
Otheroutcome only resolves if the winning scenario was never given a dedicated market.
Detecting support through APIs
- Data API — The
negRiskandnegRiskAugmentedflags are present on event payloads. - Subgraphs — Query the metadata entity for
enableNegRiskto show conversion controls. - Relayer — Convert transactions can be sent through the relayer like any other Safe call if your user lacks gas on Amoy.
conditionId.