Skip to main content
Combinatorial positions let traders express a single view across multiple Polymarket outcomes. Instead of trading one market at a time, a combinatorial position combines existing outcome tokens into one new YES/NO pair.

What They Represent

A combinatorial YES position represents a conjunction of legs:
YES(
  YES(Market A) and YES(Market B) and NO(Market C)
)
It pays out when every leg in the combination pays out — in above example, if Market A resolves YES AND Market B resolves YES AND Market C resolves NO. The matching combinatorial NO position is the complement:
NO(
  YES(Market A) and YES(Market B) and NO(Market C)
)
It pays out when the full conjunction does not pay out. In this example, it will pay out if Market A resolves NO OR Market B resolves NO OR Market C resolves YES.

How Tokens Work

A combinatorial condition represents a conjuction of legs, but not a side. The combinatorial condition from above would be:
YES(Market A) and YES(Market B) and NO(Market C)
Each combinatorial condition has two combinatorial positions, the YES and the NO, which each have their own ERC 1155 token ID:
PositionMeaning
YESThe full combination pays out
NOThe full combination does not pay out
Like standard CTF positions, the YES and NO pair is fully collateralized. Splitting collateral creates matching YES and NO combinatorial tokens, and merging a matching pair returns collateral. However, these positions are not on the Conditional Tokens Framework. These positions exist on a new framework called the Positions Framework.

Resolution

For normal binary outcomes, a combinatorial YES position pays out only if every leg wins. If any leg loses, the corresponding combinatorial NO position pays out. If some legs are already resolved and others remain open, the position can be compressed into a simpler position that keeps only the unresolved legs and realizes any resolved collateral value.

CTF Overview

Minimal overview of Conditional Tokens

Split Tokens

Create YES and NO token pairs

RFQ Overview

Quote combinatorial positions through RFQ