MICROMARKETS FIELD MANUAL

A prediction market
that grows up.

Born in a group chat. Funded one USDC at a time. If the crowd shows up, it graduates — from a shared participation pool into a live, tradable market. This page explains every step, and every number on it is computed with the exact integer arithmetic the on-chain contract uses. It is read-only: participate, trade, claim, and refund through Telegram.

Participate in Telegram Skip to the simulator ↓

01

Your deposit address is the contract

When you tap Participate in Telegram, the bot doesn't ask you to connect a wallet or sign anything. It shows you a personal deposit address and you send plain USDC to it. That's the whole interaction.

The trick is in how that address is made. It is derived — before any money moves — from your market, your side, and crucially your payout wallet, all baked immutably into the address itself. There is no database row deciding where your money can go. Not the bot, not an admin, not a hacker with the bot's keys can ever point your funds anywhere except back to you or into the market you chose.

A market only goes on-chain once both sides have at least $1. Until then your USDC just waits in escrow. If the gate is never met, anyone can trigger your refund — and "anyone" is safe, because the refund can only ever pay your wallet.

YOU
send USDC
$ $ $
ESCROW
0x4f…e2a1 · yours alone
YES
≥ $1
NO
≥ $1
⚡ both sides funded — market deploys
The gate: nothing deploys, no gas is spent, until both sides are real.
02

The pool: everyone against everyone

A young market is pari-mutuel — the system racetracks have used for 150 years. You don't trade against a price. You put money on a side, and when the market resolves, the winners split the entire pot in proportion to their stakes (minus a 2% fee).

That means the "odds" you see are live, not locked. Every new entry on your side dilutes your share of the pot; every entry against you fattens it. Your final terms are set by the pool ratio at the moment the market locks — not when you participate.

payout = your stakewinning pool × (total pot − 2% fee)

Try it. Drag the pools and watch what a $100 YES entry would pay — computed with the contract's own floor-rounded pro-rata math.

YES pool $600
NO pool $400
implied YES price0.600
$100 on YES pays*$181.81
pot after 2% fee$980.00

*if the pools froze right now, exact contract math, fee included.

Pari-mutuel: a price that is really just a ratio of money.
03

Graduation: the pot becomes a market

If the pool reaches $1,000 while the implied price sits between 10¢ and 90¢, the market graduates — in place, in one atomic transaction. Three things happen at the frozen clearing price p = YES pool ÷ total:

85% — converted to YES/NO shares, owned by the participants
15% φ — protocol-owned liquidity (a loan)
THE FROZEN POT · $1,000

Your stake → shares

YES staker: s ÷ p shares-worth
NO staker: s ÷ (1−p) shares-worth

Worth exactly what your participation was worth the moment the pot froze. Nobody gains or loses at graduation itself.

The φ carve seeds the curve

x · y = k, opened at price p

15% of the pot becomes the market's own liquidity. It is not taken — it returns to participants at resolution through the waterfall.

The carve. Participants collectively lend φ to the curve so there is something to trade against.

The honest trade-off: graduation crystallizes your odds at the clearing price. Money that arrives later can no longer dilute you — but it can no longer fatten your payout either. You swap exposure to future flow for the ability to sell your position any time before close. That trade-off is the product.

04

The curve: x·y=k until close

After graduation the market quotes a real price from a constant-product market maker — the same mechanism behind Uniswap, specialized for YES/NO shares that each redeem at $1 if right, $0 if wrong.

Buying YES pushes the YES price up along the curve; every trade pays a 2% fee, and half of every fee flows back to the original participants — compensation for the φ they lent to the pool.

Be honest with yourself about depth: a curve seeded with $150 is thin. The simulator below shows the real slippage — a $100 market order visibly moves the price. The price bound on your deposit card is what protects you: a fill can never execute worse than the bound printed into your deposit address.

Sells are signed by your wallet only. The bot cannot sell, shrink, or move your position — it never could, at any stage.

spot 0.6000 last fill impact
A live curve seeded exactly as the contract seeds it: $1,000 pool at p=0.60, φ=15%.
05

Settlement & the waterfall

When the verdict lands, every winning share redeems for exactly $1. Then the loan comes home: the market's own liquidity (the φ carve, plus the participants' half of all trade fees) is cashed out at outcome value and poured into the waterfall pot, which is split among the winning side's original participants, pro-rata by their graduation stakes.

This winner-weighting has a beautiful consequence, verified to the cent: a graduated market where nobody traded pays winners exactly what the pari-mutuel pot would have paid (gross of fee). Graduation is economically invisible unless someone actually used the curve.

The INVALID case is different. If the market can't be resolved, every share — YES or NO — redeems at $0.50, plus a stake-weighted waterfall slice. On a lopsided market this is not a refund: at p = 0.60, a $300 YES participant gets back ~$257.50 and a $250 NO participant ~$303.13 — value moves from the majority to the minority side. Before graduation, INVALID refunds stakes in full. After it, you hold shares, and shares is what gets valued.

POL redeems
at outcome value
½ of all
trade fees
WATERFALL POT
winner A
winner B
winner C

split pro-rata by graduation stake — the loan returns to the lenders

The φ carve was never a fee. It comes back.
06

If the bot disappears tomorrow

The bot moves the market through its life — it locks, graduates, settles. But it is deliberately built with no power over destinations, and every stage has a public escape hatch on a timer that anyone can pull:

OPEN withdraw any time; if the window closes and the bot is silent, anyone cancels 48 h later → full refunds
LOCKED no verdict within 24 h of locking → anyone forces the refund path
TRADING market closes, bot silent for 48–72 h (by market type) → anyone forces settlement at $0.50/share + waterfall
SETTLED pull your payout forever — anyone can trigger it, it can only pay your wallet

What the operator can never do, by construction

  • send your money to any address that isn't yours or the market's
  • change your payout wallet after your deposit address exists
  • sell, shrink, or transfer your position
  • fill your deposit-card buy at a worse price than the bound printed into the address
  • keep your funds after death — every state has a public exit

What you do trust the operator for: declaring the outcome honestly and on time. The hatches bound a dead bot, not a lying one — that's the residual trust in this design, and you should know it. The hatch delays are per-market parameters sealed into the market's commitment at birth — the values above are the current defaults, and the contract caps every trading window at 400 days.

SIM

The simulator

A whole market life in your hands. Runs the contract's exact integer math — same rounding, same guards, same dust. Differentially tested against the real Solidity contract: 436 on-chain assertions across 20 replayed lifecycles, all exact.

scenarios:
YES NO

ledger

participants

whoinpositionoutP&L