Skip to main content

Binary Markets Overview

Binary Markets are YES/NO prediction markets settled on Solana. A market poses a single falsifiable question; participants back one side with capital; an M-of-N oracle resolves the outcome; and the winning side is paid from the losing side's pool. They are a distinct product from MAGMA's narrative conviction markets — different programs, different pools, and a different settlement model.

Two variants ship with the same program, differing only in how the losing pool is treated at settlement:

  • CLASSIC — a pure zero-sum market. The losing pool is redistributed to winners pro-rata, minus a flat commission to the treasury.
  • YIELD — a capital-loss market. Losers forfeit a fixed fraction of their stake and keep the remainder; winners recover full principal; and the forfeited capital funds the Crucible Pool.
Status — LIVE on Solana devnet

The magma_binary_vault and magma_crucible_pool programs are deployed and operating on Solana devnet, with SOL and SPL support, backend resolution workers, and a live web creation flow. The REST /v1/binary/* surface and on-chain yield accrual are not yet live — see Program & API and the status notes below.

Classic vs Yield

Both variants are created from the same instruction set and resolved by the same oracle; the variant is fixed at market creation and determines the settlement math.

PropertyCLASSICYIELD
Settlement modelZero-sumCapital-loss
Loser pool treatmentRedistributed to winnersPartially forfeited
capital_loss_bpsn/a3500 (35%) default
Loser principal returnedNone (loser pool fully redistributed)65% of stake
Winner payoutPrincipal + pro-rata share of loser poolFull principal + yield (see below)
Protocol take2% commission to treasuryForfeiture split (see Crucible)
Funds the Crucible PoolNoYes — forfeitures only
Creation reviewAdmin review before liveInstant-live
Creation cost (native)BINARY_MARKET_FEE_SOL (~5 SOL) + seed liquidityBINARY_MARKET_FEE_SOL (~5 SOL) + seed liquidity
Creating a native market costs a fee

MAGMA-native market creation carries an anti-spam fee — BINARY_MARKET_FEE_SOL (defaults to the ~5 SOL narrative publish fee) — on top of any seed liquidity, plus a Cloudflare Turnstile + signature check. This applies to creator-seeded (seed) markets only; bot/admin/protocol-created markets and Kalshi/Polymarket imports are not MAGMA-fee-gated. See Creating Markets → the creation-fee gate.

CLASSIC settlement

A Classic market is zero-sum. At finalization the entire losing pool is distributed to the winning side pro-rata to each winner's stake, after a 2% commission is taken to the treasury. Winners receive their own principal back plus their share of the loser pool; losers receive nothing.

YIELD settlement

A Yield market is not zero-sum. The losing pool is split by capital_loss_bps (default 3500 = 35%):

  • 35% of the loser pool is forfeited. Losers keep the other 65% of their stake.
  • Winners recover their full principal — they do not capture the loser pool the way Classic winners do.
  • The forfeited 35% is routed out of the market: split 50/50 between the Crucible Pool and the treasury.
Not yet live — on-chain yield accrual

The YIELD variant is named for a planned yield-bearing mechanism (winner principal earning DeFi yield while the market is open). That accrual is a scaffold today: the deposit_to_yield / withdraw_from_yield CPIs are not wired into finalize, and total_yield is 0 at settlement on devnet. The mainnet plan routes principal into Kamino vault positions and distributes realized yield to winners off-chain. See Backing & Settlement and the Mainnet checklist.

The Crucible relationship

The Crucible Pool is funded exclusively by binary YIELD-market forfeitures — there is no other inflow. Of the forfeited capital, crucible_share_bps (default 5000 = 50%) flows to the Crucible and the remaining 50% to the treasury. The Crucible then pays out weekly, pro-rata to eligible participants (the YIELD-market backers themselves).

Separate from the conviction pools

The Crucible is not part of the Echo / Forge / Seam / Core pool system that serves MAGMA's narrative markets. There is zero crossover: Classic markets never touch the Crucible, and the conviction pools never receive binary forfeitures.

Lifecycle

A binary market moves through an on-chain oracle_status state machine. The timelock between resolution and finalization is 0 seconds on testnet and 48 hours on mainnet, during which a dispute may be raised.

oracle_statusStateMeaning
0pending / openMarket accepting backings; no verdict yet
1resolvedM-of-N verdict written; timelock + dispute window running
3disputedA dispute was opened during the window; awaiting admin
4refund_triggeredResolution failed / refunded; backers reclaim stake

The market is finalized (and payouts become claimable) once the timelock elapses with no open dispute, or once an admin upholds the outcome. Full payout math is in Backing & Settlement.

Programs

ProgramDevnet program IDRole
magma_binary_vaultHLFKqqKXmBfeh43Fiqdj1fBgGuXgpipcNq338Ve1pyd4YES/NO markets (Classic + Yield); backing, oracle resolution, dispute, claim
magma_crucible_pool8BqDJTwKAJMSkQzC652N92KvtY7WK9ghqNLfhfru9R2eWeekly pro-rata pool funded by YIELD-market forfeitures

Both support SOL and SPL assets. The on-chain account model, PDA seeds, and full instruction list are documented in Program & API.

Where to next