Prediction Markets
Overview
evently Markets is the platform's core product — a LMSR-based prediction market where anyone can create or trade on outcomes using USDm (the MegaETH stablecoin).
You don't bet. You trade your conviction. Information becomes a financial asset — priced by the market, settled on-chain, with instant finality on MegaETH's ~10ms blocks.
Markets cover Crypto, Politics, Fun, Technology, Business, Science, World, Entertainment, Pop Culture, and more. Many markets are sourced from Polymarket and display live Polymarket odds alongside evently's own prices for comparison.
Each outcome is represented as a tradable ERC-1155 share. One winning share redeems for exactly 1 USDm after market resolution — regardless of total volume or how many people traded the same way.
Access
Markets are structured around two independent whitelists:
Traders — during beta, access requires an invite code or waitlist approval. At public launch, trading is open to all.
Market creators — always require explicit creator whitelist approval. This applies even at public launch. Contact the evently team to apply.
To gain trader access during beta:
Invite code — redeem a code from an existing member
Waitlist — submit your wallet at evently.market/markets
Fee Structure
Creator fee
Market creator
100 bps (1%)
Treasury fee
evently protocol treasury
100 bps (1%)
Resolver pool
Resolver / staking post-TGE
50 bps (0.5%)
Total
250 bps (2.5%) — fixed
Admin markets (created by evently team): creator cut goes to treasury instead.
Pricing Mechanism — LMSR
Prices are determined by the Logarithmic Market Scoring Rule (LMSR), the same mechanism used by Polymarket. The LMSR guarantees that:
Being correct always yields a profit (unlike parimutuel)
Prices always sum to exactly 100%
The market maker (AMM) is always solvent
Cost function: C(q) = b × ln( Σ exp(q[i] / b) )
Implied probability of option i: P(i) = exp(q[i]/b) / Σ exp(q[j]/b)
b = 200 USDm controls price sensitivity. At creation all options start at equal probability (e.g. 50/50 for binary markets).
Order Matching — CLOB + AMM
Trades are routed through two layers:
CLOB (Central Limit Order Book): resting limit orders are matched first at price-time priority
LMSR AMM: any remaining budget is priced by the AMM as market maker of last resort
Buying: CLOB ask orders at or below your price are filled first. Remainder goes to the AMM.
Selling: instant sell to the AMM via sellToAMM() with mandatory slippage protection (minUsdmOut), or post a limit ask via placeOrder(SELL, ...).
Each address can hold up to 10 active resting orders per market (across all options and sides). The overall book cap remains 200 orders per (market, option, side).
Market Categories
Crypto
Price targets, DeFi TVL milestones, token launches
Politics
Elections, policy outcomes, geopolitical events
Fun
Memes, viral trends, community bets
Technology
Product launches, tech industry outcomes
Business
M&A, earnings, IPOs
Science
Research outcomes, discoveries
World
International events, macro
Entertainment
TV, film, music
Pop Culture
Awards, celebrity events, cultural moments
Market Lifecycle
1. Active
Shares can be bought and sold. Market is open until bettingDeadline.
2. BettingClosed
Deadline passed. No more trades. Waiting for resolution.
3. Resolved
Creator declares the winning option with a mandatory evidence hash (on-chain audit trail). A 24-hour dispute window opens.
4. Disputed
Any address that has traded on the market can dispute the resolution by posting 50 USDm collateral. The disputeResolver (a dedicated role, separate from admin) adjudicates with a mandatory evidence hash. The dispute window is 24 hours after resolution.
Admin disputes are free — admin can dispute any market without posting collateral (security function, not a profit mechanism). Imported Polymarket markets can be disputed under the same rules.
5. Finalized
No dispute raised (or dispute settled). Winners can redeem shares at 1 USDm each.
6. Cancelled
Markets with no trading activity can be cancelled by the creator, admin, or anyone after resolutionDeadline. Markets with any trading activity cannot be cancelled unless resolutionDeadline has passed — they must be resolved. On timeout cancellation, any accrued creator fees are confiscated to the treasury.
7. Slashed
Admin can slash a market in Active, BettingClosed, Resolved, or Disputed status. Cannot slash Finalized, Cancelled, or already-Slashed markets. Creator collateral goes to treasury; shareholders receive a pro-rata refund from the pool + subsidy.
Market Creation
Creator Whitelist
Market creation requires explicit approval on the creator whitelist — separate from the trader whitelist and always enforced. Apply via the evently team.
Community Markets (Creator-Whitelisted Users)
Requires 50 USDm collateral + LMSR subsidy (
b × ln(n)USDm)Collateral returned on honest resolution
Creator earns 1% of all volume, claimable after finalization
Must set clear
resolutionCriteria2 to 4 options; question max 300 characters; options max 100 characters each
Betting window must be at least 1 hour (prevents flash markets)
Official Markets (Admin)
Created by the evently team — no collateral required. Displayed with an Official badge. Many are sourced from Polymarket with live odds via the CLOB API.
Imported Polymarket Markets
Any creator-whitelisted user can mirror a Polymarket market by paying a 10 USDm one-time import fee (to treasury). The Polymarket conditionId must be a valid 66-character lowercase hex string starting with 0x — duplicates are blocked on-chain.
Oracle Markets
Creator-whitelisted users can create binary price-feed markets that resolve automatically. Requires exactly 2 options and a valid Redstone price feed ID (ETH, BTC, SOL, MEGA). Collateral and fees are the same as standard markets. See the Oracle Markets section below.
Trading
side: BUY or SELLpricePerShare: limit price in USDm (18 decimals), must be between 0 and 1minFill: slippage guard — reverts if total shares filled < this valueBUY orders escrow USDm upfront; SELL orders escrow shares upfront
For instant AMM sells:
minUsdmOut is required and prevents sandwich attacks against the AMM.
Dispute Rewards — Monthly VRF Lottery
When a dispute is settled in the disputer's favour (creator was wrong):
Creator loses their 50 USDm collateral. 25 USDm goes to the disputer as a reward (regular disputer also receives back their own 50 USDm collateral, totalling 75 USDm). If admin disputed, the full 50 USDm goes to treasury.
All creator accrued fees are slashed to treasury.
30% of the total net treasury gain (slashed collateral portion + slashed fees) is allocated to the current month's lottery pool.
At the end of each 30-day cycle, distributeMonthlyDisputeRewards() draws a single winner using Drand BLS12-381 VRF (MegaETH native precompile). The entire pool goes to that winner — winner-takes-all. The winner index is derived from keccak256(vrfProof) % count, verified on-chain.
This incentivises honest dispute participation without creating runaway dispute abuse, and adds provably fair randomness to the outcome.
Oracle Markets
Oracle markets are binary markets where the outcome is resolved automatically from a live price feed — no human resolver needed.
Instead of a creator calling resolveMarket(), a keeper reads the on-chain Redstone price and calls resolveMarketWithOracle(). The contract verifies the price signature on-chain (≥3 signers from redstone-primary-prod) and resolves instantly.
How it works
Price feed
The asset being tracked (ETH, BTC, SOL, MEGA)
Strike price
The price threshold in USD (8 decimal places)
Above / Below
Whether option 0 wins if price is above or below the strike
Example: "Will ETH be above $3,000 at 31 May 00:00 UTC?"
Strike =
300000000000(3000 × 10⁸)Strike Above =
trueIf the Redstone ETH/USD price ≥ $3,000 → option 0 ("Yes") wins
If below → option 1 ("No") wins
Creating an oracle market
Oracle markets require exactly 2 options and a whitelisted creator, just like regular markets. The additional fields (price feed, strike, direction) are set at creation and cannot be changed. Collateral and fees work identically to standard markets.
Resolution
Any address can trigger resolution once the betting deadline has passed and before the resolution deadline expires. Resolution is permissionless — no keeper trust required, since the price data is cryptographically signed by Redstone validators on-chain.
Lucky Trader Weekly Raffle
Every week, evently picks one active trader at random to win a USDm bonus from the protocol treasury.
How to enter
Just trade. Any call to placeOrder or sellToAMM during the current week automatically enters your address into that week's raffle. You are entered at most once per week — submitting multiple trades doesn't give more entries.
The raffle tracks up to 500 unique addresses per week.
Winner selection
At the end of the week, the admin draws the winner using Drand BLS12-381 VRF (MegaETH's native randomness precompile). The winner address is derived from keccak256(vrfProof) % traderCount — fully verifiable on-chain. The result is final and cannot be replayed.
The winner receives the full bonus in USDm, paid directly from the treasury. The LuckyTraderWinner event is emitted and displayed live in the Lucky Trader Banner on the frontend.
Frontend banner
The LuckyTraderBanner component on the markets page shows:
The current week's eligible trader count
The latest winner (address + bonus amount), flashing green when a new winner is drawn
Redeeming Winnings
After finalization:
Each winning share redeems for exactly 1 USDm. Solvency is guaranteed by the LMSR invariant: poolBalance + subsidyDeposited >= total winning shares.
Polymarket Integration
Official markets import odds and volume data from Polymarket via the Gamma API and CLOB price history API. Polymarket odds are displayed for reference — evently prices are set independently by the LMSR AMM.
Constants
Creator collateral
50 USDm
Import fee (Polymarket)
10 USDm
Dispute collateral
50 USDm (waived for admin)
Dispute window
24 hours
Finalization buffer
+1 hour
LMSR b parameter
200 USDm
Max options per market
4
Min options per market
2
Min betting window
1 hour
Min trade
0.001 shares (1e15)
Min order value
1 USDm
Max orders per book
200 per (market, option, side)
Max orders per user per market
10
Max pause duration
72 hours
Treasury withdrawal delay
24 hours
Dispute lottery share
30% of treasury gains
Dispute lottery cycle
30 days
Last updated
Was this helpful?

