Market Structure

The complete specification, in the order you will need it, written down so nobody has to argue about it later.

1.Principles

The venue is invite-only and denominated in points. It does not touch money, hold money, or know anything about your money.

Every market is a self-contained pool. It opens, takes stakes, closes, resolves, and pays out without reference to any other market on the board.

There is no market maker and no order book. The venue never quotes a price, never takes the other side of your bet, and never holds inventory. What the interface calls a price is an accounting identity — the ratio of one pool to the total, recomputed after every stake. Nobody is offering it to you. It is simply what the points already in the pool say.

2.The pool

2.1Parimutuel law

Each market has two pools: YES and NO. Staking adds points to one of them. A stake is irrevocable — it cannot be cancelled, reduced, cashed out, or transferred to another person or the other side. Once it is in, it is in until resolution.

A market has one pool per side. Often those sides are YES and NO, but a market may instead be a head-to-head between two named outcomes — one team against another — in which case the pools carry those names. The mechanics do not change: one pool per side, and YES/NO is simply the case where the two sides happen to be called yes and no.

At resolution the entire combined pool — both sides — is distributed to the winning side, pro-rata by stake.

payouti = stakei × ( total pool ÷ winning pool )
Worked example
A stakes on Yes
8
B stakes on No
16
Total pool
24
Implied odds
Yes 33% · No 67%
Settlement, either way
Yes resolves true — A receives
24
A’s profit
+16
No resolves true — B receives
24
B’s profit
+8

Note what that means. A risked 8 to make 16. B risked 16 to make 8. Your profit scales inversely with how many people agreed with you: being right in a crowd pays badly, being right alone pays well. That is not a defect in the mechanism. That is the entire point of it, and it is the reason a market is worth reading at all.

The formula needs both sides to exist. If either pool is zero at close — everybody agreed, or nobody took the other side — there is no losing stake to distribute and no ratio to distribute it by. The market is voided and all stakes are refunded in full.

3.Pricing

The implied probability of YES is the YES pool divided by the total pool, recomputed on every stake. It is displayed as a percentage and as the nearest conventional fractional odds, because a number written 15/8 is harder to mistake for a promise than a number written 34%.

implied P(Yes) = Yes pool ÷ total pool

Your own stake moves the price against you. A large stake on YES raises the implied probability of YES, so the number standing after you commit will be worse than the number that tempted you. With fifteen to twenty participants and pools in the low hundreds, this self-impact is material rather than theoretical. It is disclosed here rather than buried in a settlement screen.

There is no slippage protection, no limit order, and no fill-or-kill. There is nothing to slip against. You are not trading with a counterparty who might move before you land; you are adding points to a bucket.

4.Sealed seeding

Every market runs through three trading states. The first of them is blind.

4.1The three states

Lifecycle
Seeding
stakes accepted, nothing shown
Open
pools revealed, odds published
Closed / Resolved
no stakes, outcome run

Seeding is a fixed window that starts the moment the market is proposed. The proposer sets its length. During the window anyone may stake on either side, but no prices, pool sizes, side totals, or individual positions are displayed to anyone. A stake placed during seeding is irrevocable on the same terms as any other stake, with one difference: you may increase it before the window shuts.

Open begins when the seeding window ends. The pools are revealed, the implied odds are published as the pool ratio, and staking continues at visible odds until close exactly as specified above.

Closed and resolved are unchanged. No stakes are accepted after close, and the outcome runs at resolution.

4.2Why the window is sealed

In a venue of fifteen people, the first number anybody sees is the number everybody else reasons from. Publish an opening ratio and it anchors the entire market behind it — not because your friends are credulous, but because a posted price is evidence, and in a small group it is most of the evidence available.

Worse, an open ratio makes the first stakers pay for the privilege of being first. Under a pool, a stake moves the ratio against the person placing it. Early on there is no depth to absorb that, so the people doing the actual price discovery move the price furthest against themselves and hand the improved number to whoever arrives next. They subsidize the market.

Sealing the window collects independent priors instead of a cascade. Everyone commits against their own read of the situation rather than against each other's, and what appears at the reveal is fifteen opinions rather than one opinion and fourteen echoes.

4.3Why seed rather than wait

Because the mispricing is captured at the reveal, and after that it is gone. If you seed and the crowd lands somewhere else, the reveal moves the ratio to your advantage and you are holding stake that was placed at a price nobody else could see. If you wait, you are taking the number the seeders produced.

That is the whole trade. Seeding is when you set the price. Open is when you take it.

4.4What is visible during seeding

One number: how many participants have staked. Not which side they took, not how much, not in what order.

The proposer has no privileged view. They see the participant count and nothing else, on the same terms as everybody else, including in markets they proposed and staked in themselves. There is no administrative screen behind this — the totals are not shown to anyone because a market that can be peeked at is not sealed, it is merely inconvenient.

5.Slates

A slate is a bundle of markets the venue did not write. They are sourced from a public prediction market, they share a trip window and a leaderboard, and they are presented together. That is the whole of the relationship.

5.1The coupling is presentational

Each market on a slate keeps its own independent parimutuel pool, its own reveal, and its own settlement. Nothing multiplies across markets. Being right on six of eight does not compound — it means you were right in six separate pools and wrong in two.

This is worth stating plainly, because a slate looks like a parlay and is not one. A parlay couples at the payoff level: it pays on the joint outcome of every leg at once, so the thing being priced is a single point in the joint outcome space rather than each market on its own.

That space is the problem.

joint outcomes = 2^n
Joint outcome space by leg count
3 legs
8
5 legs
32
8 legs — a full slate
256

Fifteen people cannot populate 256 pools. A parimutuel pool with one staker on each side is not a market, it is a bet with extra steps. So the venue does not run parlay pools, and a slate is not one.

The parlay survives as the optional side pot: one n-leg parlay per person into a single shared pool, longest surviving odds takes it. One pool, one winner, no combinatorics.

5.2The trading phase

For external slates, sealed seeding is not the first phase. It is the entire trading phase. The slate locks before the trip window opens, odds reveal at lock, and no open trading follows.

The reason is that the reference prices move publicly, in real time, on a venue anybody can read. Section 4 sealed the window so nobody could follow anybody. Leaving an open phase after the reveal would hand a late staker something better than a peek at the pool — it would hand them the public price after it had already moved, which is free-riding on information that arrived only after everybody else had committed.

So for slate markets the two timestamps collapse:

reveal = close < resolution

The strict ordering in section 9 governs markets the group writes itself. Slate markets relax it to the above, and nothing else about section 9 changes.

5.3Reference prices

The consensus column on a slate is the external market’s traded price at snapshot, displayed as an implied probability.

It is information. It is not a quote. Nobody here will trade with you at that number, and the venue’s own odds remain what they have always been — the ratio of the two pools, per section 3. The external price is there to be disagreed with.

Which is the actual game. On a slate you are not trying to predict the world better than a liquid public market; you will usually lose that. You are reading which of your friends is wrong about where that market is wrong.

6.Sourcing and selection

The methodology, written down so a slate can be audited rather than trusted.

6.1Source

Polymarket’s public Gamma API, read-only and keyless. No orders are ever placed and no account exists. The external venue serves two functions and no others: price reference, and resolution oracle.

6.2The pool

Top-volume active markets, fetched in pages of one hundred and merged into a single pool shared by every slate.

Pool construction
Pages read
6 × 100 = 600
Ordering
volume, descending
Page failure
tolerated, pool degrades
Cache
revalidated hourly
Scope
one read, all slates

Per-page failure tolerance matters more than it sounds: one failed page thins the pool rather than emptying the board.

6.3Filters

Two-outcome markets only — on the source venue that means either yes/no or a head-to-head between two named sides, as described in section 2.

Probability band
National fill
5% – 95%
Regional match
3% – 97%

A market sitting at 99% leaves nothing to disagree about, and a slate of near-certainties is a reading exercise rather than a game. Regional matches get the wider band because the head-to-heads are the draw.

Near-duplicate markets are deduplicated. Public venues list price ladders — the same question at four strike prices — and without this step a slate fills up with one question wearing four hats.

6.4Regional weighting

Each trip defines a keyword set: teams, cities, and state figures for the destination. Matching runs over the question text and the outcome names, because a market titled after one side still concerns the other.

Matching uses word-boundary patterns rather than substring search. This is not fastidiousness: substring matching put a Mexican football club on a Texas slate by way of “cruz”, and put the San Francisco Giants on a New York one. A regional tag that is wrong is worse than no tag at all.

Slate composition
Regional slots
up to 4
Remainder
category round-robin
In-window resolution
preferred, not required

In-window resolution is a preference because the pool is volume-ranked and clusters in the near term; requiring it would starve a window three weeks out. Where regional coverage is thin, the slate says so on its face. It never fakes the tag.

6.5Failure, and one piece of staleness

If the source is unreachable, a static sample slate renders in its place carrying a notice that says exactly that. A slate never renders empty.

One thing this demo does not do. The displayed consensus is a snapshot and may be up to an hour stale under the cache policy above. A production slate would freeze every reference price at a single canonical lock timestamp, so that every participant is shown the same number and settlement can be audited against it. This one does not. It is a demo, and that is the first gap you would close.

7.Why there is no market maker

The obvious objection: real prediction markets run automated market makers. Why not run one here?

An automated market maker such as LMSR gives continuous two-sided quotes — you can always trade, in any size, at a posted price. This is genuinely useful and it is not free. LMSR is parameterised by a liquidity constant b that sets how far the price moves per unit traded. For a binary market the sponsor’s worst-case loss is b·ln(2), and that is real money somebody posts up front and can actually lose. A market maker is not a machine that creates liquidity. It is a machine that converts a subsidy into liquidity.

LS-LMSR, the liquidity-sensitive variant, scales b with volume so the subsidy is not fixed in advance. The trade-off is that early spreads are wide and the quoted prices sum to more than 1 — that excess is a vig, charged to the traders to fund the maker. It still requires an initial seed, and the sponsor can still lose it.

With fifteen to twenty known participants there is no anonymous order flow to attract and no reason to pay for continuous liquidity. The people who want to bet are already in the group chat, they will bet within the day, and a parimutuel pool clears all of them without anyone posting a subsidy. So the venue does not run one.

7.1Seeding mechanics, for the record

Written down in case the venue ever grows enough to need one, so nobody has to rediscover it:

If an LS-LMSR were ever seeded
Proposer posts seed
s
Initial liquidity constant
b = s ÷ ln(2)
Thereafter
b ∝ open interest
Sponsor loss
capped at s
At resolution
seed forfeited to the pool

Setting b = s ÷ ln(2) is not arbitrary: it makes the worst-case loss b·ln(2) come out to exactly s. The seed funds the worst case precisely, and nothing beyond the seed is ever at risk.

8.Considered and rejected: matched book

The alternative we looked at, and did not take: treat stakes like poker side pots. A stake pays out only to the extent it is matched by the opposing side, and anything unmatched is refunded at resolution.

Same example, run through that rule instead:

Matched-book settlement
A stakes on Yes
8
B stakes on No
16
Matched
8 v 8
B’s uncontested stake, refunded
8
Yes resolves true — A’s profit
+8

A makes 8 instead of 16. The rule is defensible and it is worse here, for three reasons:

  • Refund accounting adds states. Every stake becomes partly live and partly pending-refund, and the split changes every time somebody else stakes.
  • Displayed odds stop predicting realized payout. The screen says one thing and the settlement says another. That is the fastest available way to lose the group’s trust.
  • It penalises exactly the wrong people. The early staker on the thin side — the one actually doing the price discovery — is the one most likely to sit unmatched.

One pool, one formula, one number on the screen that means what it says.

9.Timing

Every market carries three timestamps, all fixed at proposal and none adjustable afterwards:

Fixed at proposal
Reveal
seeding ends, pools revealed
Close
no stakes accepted after
Resolution
outcome determined, payout runs

The ordering is fixed and the interface will not accept a market that violates it:

reveal < close < resolution

Close must precede the earliest moment the outcome could become knowable. The proposer sets it and common sense checks it. This matters more here than at a venue with cash-outs, because there are none: a stake placed at the last second against an outcome that is already effectively known is not a clever trade. It is a transfer out of the pockets of everyone who bet earlier and honestly.

Set the close early. If in doubt, earlier. Betting after close is impossible by construction, not by etiquette — the button is gone.

10.Resolution and disputes

The proposer writes the resolution criteria at proposal time, before any points are in. Criteria must be specific enough that a disinterested reader could apply them without asking a follow-up question.

If the criteria turn out to be ambiguous, the market is voided, not lawyered. Nobody’s evening has ever been improved by a semantic argument about what “rejected” was supposed to mean.

The clock
Proposer resolves within
48h of resolution
Dispute window
24h thereafter
Who may dispute
any bettor in the market
Effect of a dispute
payout freezes
Jury
3 participants with no stake
Standard
majority, final, no appeal

There is no appeal above the jury, because the appeal is you not proposing sloppy markets next time.

A voided market refunds every stake in full. A market is voided if the criteria are ambiguous, the event is cancelled, or the subject declines to cooperate.

10.1Slate markets resolve elsewhere

A market on a slate resolves to whatever the source market officially resolves to. The oracle is external, which takes the proposer out of adjudication entirely: there is no local judgment to make, so there is nothing to dispute and no jury path. The clock above governs markets the group writes itself.

If the source market voids, or becomes unresolvable, the corresponding pool voids with it and refunds every stake under the same void rule.

11.House rules

The subject may bet on themselves, including on their own failure. This is a feature and it is disclosed as one: the subject holds the best information and the most control over the outcome, and everyone else can see them bet and price it accordingly. A subject quietly backing their own failure is not a scandal. It is the most informative thing on the board.

Integer points only. No fractions, no dust, no rounding arguments.

No single account may hold more than 40% of a market’s total pool at close. One person with conviction and a large balance should not be able to turn every market into a bilateral bet against the rest of the group.

Proposing a market about someone carries the obligation to let them bet in it. If you are not comfortable with them seeing it, do not propose it.

12.Settlement

Points are the unit of account. The venue keeps a running net ledger per person across all resolved markets — what you are up, what you are down, measured against the group as a whole.

If the group decides to settle in cash, that happens outside the venue, between individuals, netted, on whatever terms they care to agree. The venue does not process it, hold it, escrow it, or have an opinion about it.

The venue is a scorekeeper. It is not a counterparty, not a custodian, and not a bank.