Most people picture a straight line from order to settlement. It is seven steps across two layers — the matching engine and the chain — and the last one does not happen by itself. Leave it undone and your winnings stay a ticket rather than a balance.
| Step | Layer | Watch for | |
|---|---|---|---|
| 1 | Fund and approve | chain | the contract needs an allowance first |
| 2 | Post or take | matching | fee and fill certainty run opposite ways |
| 3 | Fill | matching → chain | minimum 5 shares; partials are normal |
| 4 | Hold | chain | sellable any time — if there is a bid |
| 5 | The event | the world | — |
| 6 | Resolution | chain | who decides and on what differs per category |
| 7 | Redeem | chain | ⚠ you must do this |
Money is a stablecoin on-chain. Beyond transferring it in there is one step people miss: the allowance — permission for the matching contract to move your funds. Most interfaces handle it; if you are writing your own client, it is the first thing that blocks you.
| Post | Take | |
|---|---|---|
| Reaching step 3 requires | someone to hit you — may never happen | nothing; immediate |
| Fee | zero | 0.07·p(1−p)·shares |
| Price certainty | you set it; fills are at that price | the book sets it — you may walk several levels |
Want more size than sits at the best offer and your fill climbs level by level, so your average is worse than the price you saw. Thinner book and larger order, worse the gap.
This is fatal in backtests: testing against a midpoint produces a result you cannot reproduce live. Measured numbers in walking the book.
Minimum 5 shares. A counter-intuitive consequence: if you want to stake "$1 every time", at a price of 0.50 that buys 2 shares and the system rounds you up to 5. Your fixed $1 has silently become a stake that drifts with price.
Partial fills. "I posted 100" and "I hold 100" are different claims. Anything automated must handle partials or the books diverge from here onward.
| Type | Mechanism | Typical use |
|---|---|---|
| Optimistic oracle | someone posts a result → assumed true → challengeable within a window → stands if unchallenged | match results, elections, did-X-happen |
| Price oracle | reads a price by a rule fixed in advance | crypto price markets |
Sports, crypto and politics use entirely different sources on the same venue. Worse, the settling number need not be the number you are watching.
I was caught by exactly that on a short-tenor series: the price my research judged on and the price the market settled on disagreed on 10.1% of all windows, with a direction — enough to manufacture a stable-looking pattern that was not there. Full account in the broken ruler.
Actionspend two minutes on the market's own resolution terms — specifically which source and which timestamp. Best-value two minutes on the venue.
After settlement your winning ticket is worth $1 — but it is a ticket, not a balance. Redeeming converts it. The losing ticket goes to zero and then quietly disappears, leaving you no record of the loss.
① The activity feed flatters you. Winners leave a record, losers do not, so summing the feed skews optimistic. I measured it and was out by 8× — first pass +$187, true figure +$23. See 589 shares evaporated.
② "Redeemable" does not mean you won. Once the book empties after close, the API may mark both sides redeemable at a midpoint price. Judging win/loss from that gives you the wrong answer outright — see the redeemable trap.
| Check | Because |
|---|---|
| Orders sent vs fills | partials and no-fills break the equality |
| Average fill vs quoted price | walking the book raises it |
| Fees paid | recompute from 0.07·p(1−p)·shares; a mismatch means a wrong basis |
| Losing legs | absent from the feed — take them from the position side |
| Settlement | read the chain, not a "redeemable" field |
| Redemption receipts | do they match the winning shares? unredeemed ones sit forever |
| Subsidy income | not in trading P&L — query separately and add |
Two things in this flow will not happen on their own: redemption needs your hand, and losing legs never announce themselves. The first strands money mid-route, the second makes your books look better than they are — and both occur after you have stopped paying attention to the trade.
5 × 0.99 = $4.95.