Prediction markets, resolved onchain.
Prophecy is Somnia’s stack for prediction markets. Your venue lists yes/no event contracts on Somnia Markets, the Somnia Oracle answers each market’s question from the public sources it names, and winners redeem in USDso. You bring the brand, the users and the questions.
Market and question lifecycle
Somnia Markets
- Venue lists marketBound to one oracle question
- Trading YES / NOPrices read as probabilities
- Locked at expiryOrders stop; cancels stay open
- Resolved or voidedOutcome set by the answerAnswer resolves the market
- Holders redeemWinning share pays 1 USDso, less venue fee
Somnia Oracle
- Question + sources1 to 20 named public sources
- Waits onchainNothing runs before resolution time
- Reactivity wakes itNo keeper bot to run
- Answer postedMedian or majority; final once posted
- Receipts publicEvery source, every agent step
The oracle answers the question · The market settles the money
Four related names. Four different jobs.
This page describes the stack an operator uses to run real-money event markets. The other three names are a general-purpose oracle, a free-to-play game and a product that has not launched yet.
- Build today on Markets SDK
Prophecy, the stack
Somnia services composed for prediction markets: your venue, event contracts, the Somnia Oracle, Somnia Agents, Reactivity and USDso.
Not:a hosted exchange or a single contract.
- Live on mainnet
Somnia Oracle
A general-purpose question oracle. Prediction markets are one consumer; sports results, elections, economic releases and weather are others.
Not:a price feed or a market.
- Live · free-to-play
Prophecy Social
A prediction game on Somnia. Players stake PST, a soulbound play-money token, and agents resolve every market with public receipts.
Not:real-money trading. PST has no real-world value.
- Coming soon
Prophecy Pulse
Prediction markets on Somnia. Its markets will be binary event contracts on the shared books, resolved by the Somnia Oracle and settled in USDso.
Not:live yet. Details to come.
Seven layers. One of them is yours.
Everything below the venue is shared Somnia infrastructure. Your venue decides which markets to list, who can trade and what it charges; the layers underneath behave the same for every venue.
Your branded venue
Your front end, fee and user policy, registered under your operator in Somnia Markets.
Somnia Markets event contracts
YES and NO shares on onchain order books. Matching, escrow and settlement run in public contracts.
Somnia Oracle
Reads the sources each question names and posts one final answer that any contract can read.
Somnia Agents
Validator subcommittees that read websites and APIs for the oracle, each with a signed receipt.
Somnia Reactivity
Wakes the oracle at each question’s resolution time, so no keeper bot has to stay online.
USDso
The settlement stablecoin, issued by Frax on frxUSD infrastructure. Winning shares redeem in it.
Somnia Global L1
The EVM network under every layer: 100 ms blocks and finality under 500 ms.
Native gas sponsorship is coming soon. Until it ships, a venue can pay for its users’ Somnia Account transactions from its own address.
Minutes, not days. And the working is public.
The Somnia Oracle reads every source once, at the resolution time. Committees of Somnia Agents read each named website or API, contract sources are read directly, and the oracle aggregates one answer any contract can read.
- 01
Submit
Question text, 1 to 20 named sources, the valid answers and a resolution time, paid per question in SOMI.
- 02
Review
In the same transaction, agent committees moderate the question and write its display name. Both are advisory.
- 03
Wake
At the resolution time, Reactivity triggers the oracle. If a trigger is ever missed, anyone can fire it.
- 04
Read
Each website or JSON source goes to its own subcommittee: 3 agents by default, 2 of which must agree.
- 05
Answer
The median for numbers, the majority for labels. Too little agreement voids the question, with a reason.
Receipts for every source
Each answer carries a receipt for every source that was read, and each agent’s step-by-step execution log is public in the Somnia Explorer.
No dispute window
Answers are final once posted and never change. A venue that wants an appeals process builds it on top of the oracle.
Questions that resolve cleanly
Name the instant, the unit and the exact thing. Three independent sources with two required to agree means one broken page cannot void the question.
The oracle answers. The market pays.
Each event market is bound to one oracle question. When the answer is posted the market resolves and holders redeem; when the question voids, the market voids with it.
- Before resolutionTrading
- Complete set
- 1 YES + 1 NO mints from, and merges back to, 1 USDso
- Prices
- Read as the probability of each outcome
- After expiry
- No new orders; cancels stay open
- ResolvedAnswer posted
- Winning share
- 1 USDso, less the venue’s settlement fee
- Losing share
- Nothing
- Fee rates
- Frozen when the market was created
- VoidedNo clean answer
- Every share
- Refunds 0.5 USDso
- Common causes
- Too few sources respond, labels tie or no interval matches
- Oracle fee
- Not refunded
Your venue, your rules. Written onchain.
Every venue setting is a public transaction. Somnia’s protocols charge nothing on top of the fee your venue sets.
Your running costs are network gas and the oracle fee on each question, both paid in SOMI.
- Markets
- Any yes/no outcome a public source can confirm
- Fee
- Your rates and recipient; each market keeps the fee it was created with
- Market creation
- Open to everyone or gated, by venue policy
- Users
- Open, or limited to an allow-list
- Gas
- Pay for users’ Somnia Account transactions today; native sponsorship coming soon
- Liquidity
- Shared order books: your own desk, independent makers or Somnia’s market-making service
- Front end
- Your brand, built on the Markets SDK and its GraphQL indexer
Four steps to launch. Testnet first.
Everything a prediction venue needs already exists onchain, behind the Markets SDK. The Venue Kit, a front-end template with CLI commands, is coming soon.
- 01
Register an operator
One call makes your address an operator in Somnia Markets, with a default fee recipient.
- 02
Create a binary venue
Its market type, first fee and policy are fixed when you create it.
- 03
List well-formed questions
Bind each market to an oracle question with a clear instant, unit and independent sources.
- 04
Ship the front end
Build on the Markets SDK, test on the Somnia testnet, then go live on mainnet.
Launch a prediction market on Somnia.
Talk to the team about your markets, your users and liquidity from the first trade, or start building on testnet today.