Skip to content
Live on Polygon Mainnet

The House
Is Yours

Magistery is the permissionless prediction-market protocol on Polygon. No company. No admin keys. No kill switch. Anyone creates markets, anyone builds on top, anyone earns — and the protocol fee is 0.1%, hardcoded forever.

Polygon|USDC settlement|No governance|No token|No KYC
Live on Polygon — subgraph v3.0.0
655
Tests passing
unit + fork — protocol repo
0
Admin keys
ever — no owner, no pause
0.1%
Protocol fee
hardcoded forever
// 01 — Everything ships in the open

The Magistery Stack

Contracts are Layer 0. Everything above them is built so you never ask permission: typed SDK, decentralized indexer, deployable bots, whitelabel frontend. No closed gates. No company deciding who gets to build.

Immutable

8 contracts on Polygon: permissionless MarketFactory, fully on-chain OrderBook with USDC escrow, NegRiskAdapter for multi-outcome markets, and pluggable resolvers. Deployed once, run forever.

Explore
On npm

@magistery/sdk — full TypeScript client built on viem. Typed contract interactions, fee math, safety checks, position tracking.

Explore
v3.0.0

Decentralized indexer on The Graph. Instant GraphQL queries for markets, orders, positions, and order-book depth. No server. The stats above come straight from it.

Explore
Production

Open-source Telegram bot: on-chain trading, copy trading, AI assistant, automated settlement. Platform-templated core — the Discord adapter is built and launching. Operators deploy their own instance and set their own fee.

Explore
In progress

A full web trading frontend you can fork, brand, and deploy. Until it ships, the frontend guide covers everything needed to build your own.

Explore
// 02 — Resolution is a module, not a monopoly

Pluggable Truth

Every market chooses its oracle at creation — welded in at the contract level, forever. No committee decides outcomes after the fact. Pick the resolution mechanism that fits the question, or deploy your own.

UMA Optimistic Oracle

Bonded assertions

Anyone asserts the outcome by posting a USDC bond. If no one disputes within the 2-hour liveness window, it settles; disputes escalate to UMA’s decentralized voter set. Battle-tested truth for open-ended questions.

0x802Bf2742414804A

Kalshi Mirror

Exchange mirror

Link a market to a Kalshi event at creation and resolution mirrors the regulated exchange’s official settlement. Their outcome feed, running on permissionless rails.

0x624BbE0034E5dBAf

Polymarket Mirror

CTF mirror

Resolves by reading the linked Polymarket condition directly from the Conditional Tokens Framework on Polygon. No API, no trust in us — the chain reports the answer.

0x4A2e70cBfcD44A0d

OperatorResolver

EIP-712 programmatic

Deploy your own resolver from the factory and settle markets with signed messages — flight landed, rate printed, match ended. The same data that creates the market resolves it.

0x395a50AA2A322b6A
// 03 — The economics

0.1% Forever.
Yours On Top.

0.1%

Every matched trade pays 0.1% — hardcoded, immutable, on-chain. No hidden spreads. No arbitrary pricing. No one can change it. Whatever you charge above it is yours: your frontend, your bot, your fee. Drag the sliders and see what that means.

Run the numbers
$500k
1.00%
Your monthly revenue
$5,000
Where the trader's 1.10% goes
Your fee 1.00% — $5,000Protocol 0.1% — $500
Protocol keeps 0.1% — $500Trader pays 1.10%

No rev-share. No API agreement. No one can revoke your access. Charge 1%, 2%, a flat fee, a subscription — the contracts don't know or care.

// 04 — Them vs. the protocol

No Masters.
Just Markets.

They keep admin keys. We ship immutable contracts. They decide what is allowed. We let anyone create. They depend on centralized control. We run on code no one can switch off.

Feature
Magistery
Polymarket
Kalshi
Anyone creates markets
No KYC
No admin keys
Immutable contracts
Contract source verifiable on-chain
Transparent fees
Censorship resistant
Survives if company dies
Charge your own fees
Natural language trading
Telegram trading bot
Self-hosted interfaces
// 05 — Fully on-chain, end to end

Create. Trade.
Resolve. Redeem.

Four calls. No backend rulers, no accounts to approve, no intermediaries taking custody of the market.

01Create a Market

One function call. Question, outcomes, deadline, resolver. The factory registers a condition on the CTF and the market exists on-chain instantly. No approval queue.

// Anyone can create a market
factory.createMarket(
"Will ETH hit $10k?",
2, // outcomes
1_798_761_600, // deadline (2027-01-01)
umaResolver // resolver
);

02Trade

Place limit orders on any outcome. When opposing orders match, USDC goes into escrow and both sides get ERC-1155 outcome tokens. Fully on-chain order book.

// Place a limit order on outcome 0
orderBook.placeBuyOrder(
conditionId,
0, // outcome index
650_000, // price ($0.65)
100e6 // $100 USDC
);

03Resolve

After deadline, the resolver determines the outcome. UMA uses optimistic assertion with disputes. Kalshi and Polymarket resolvers mirror external results automatically.

// Assert the winning outcome
umaResolver.assertOutcome(
conditionId, 0 // YES wins
);
// After 2hr liveness, settle
umaResolver.settleAssertion(
assertionId
);

04Redeem

Winners redeem outcome tokens for USDC via the CTF. Losers get nothing. Treasury already collected 0.1% on every matched trade. Clean, final, irreversible.

// Winners redeem tokens for USDC
ctf.redeemPositions(
USDC, // collateral
bytes32(0), // parent
conditionId,
[1] // winning index
);
// 06 — Distribution, ready to deploy

Own The Interface

Reference apps you can run under your own brand, charging the fee you choose. The protocol doesn't care which door your traders walk through.

Telegram Bot

Shipping

A full trading venue inside Telegram: create markets, trade, resolve, redeem. Custodial wallets, natural-language assistant, automated settlement keeper.

Bot docs

Discord Bot

Built — launching

The same trading core on Discord slash commands: ephemeral replies, native polls for community resolution, gas top-ups. One codebase, every platform.

Bot docs

Whitelabel Frontend

Template — in progress

A full web trading app you fork, brand, and deploy: order book, portfolio, market creation. No backend — your wallet is the account, the subgraph is the database.

Frontend guide
// 08 — Enforced by code, not promises

Hard Guarantees

0.1%
0.1% fee, hardcoded
Transparent, on-chain, permanent. No hidden spreads, no arbitrary pricing.
Immutable contracts
No upgrades, no proxies, no admin keys. The rules cannot be changed by anyone.
Permissionless
Anyone creates markets, anyone trades. No approval queue, no gatekeeper.
Your fees on top
Charge whatever you want above the protocol fee. Your platform, your revenue.
Fully on-chain
No backend, no servers, no downtime. If Polygon is up, Magistery is up.
Pluggable resolution
Use UMA, Kalshi, or Polymarket resolvers — or deploy your own.
Verified source
Every contract auditable on Polygonscan, byte for byte.
// 09 — Straight answers

Fair Questions

No third-party audit yet — we say that plainly. What exists instead: every contract is immutable and source-verified on Polygonscan byte for byte, and the protocol carries a 655-test suite including fork tests, 50,000-run fuzzing, and stateful invariant checks. Immutability cuts both ways: no admin can rug you, and no admin can hotfix a bug. Size your positions accordingly.

No one, by design. There is no company, no foundation, no multisig with upgrade powers. The contracts were deployed once with zero admin keys and now run themselves. If every person who ever touched the project disappeared, the protocol would keep working exactly as it does today.

Creating a market costs only Polygon gas — typically under a cent. Trading costs 0.1% per matched fill, hardcoded in the OrderBook contract forever. There are no listing fees, no withdrawal fees, and no hidden spreads. Platforms built on top may add their own fee — that is their revenue, disclosed by them.

Each market picks its resolver at creation, immutably: UMA’s optimistic oracle (bonded assertions, open disputes), a Kalshi or Polymarket mirror, or an OperatorResolver you deploy yourself for programmatic resolution. No single party decides every outcome — resolution is a module, not a monopoly.

Funds cannot be stranded. Any market with no pending resolution 90 days after its deadline can be force-voided by anyone, and 180 days works as an unconditional valve. A void pays out both outcome tokens equally, so traders recover their collateral.

Yes. The contracts don’t know your platform exists — they just settle trades. Your frontend, bot, or API wrapper can add any fee on top of the 0.1% protocol fee: a percentage, a flat fee, a subscription. No rev-share agreement, no API key, nothing anyone can revoke.

No. Settlement is native USDC and there is no governance token. Because the contracts are immutable, one cannot be retrofitted into the protocol later — there is nothing to farm and no one to farm it from.

Not on-chain. Markets live in immutable contracts on Polygon — no one can pause trading, seize escrow, or delete a market. Individual interfaces may choose what they display, but anyone can build another interface, and the protocol itself cannot discriminate.

magistery /ˈmadʒɪst(ə)ri/ — n., alchemy: an agent of transmutation; a means of turning base matter into gold.

Permissionless • Immutable • 0.1% Forever •Permissionless • Immutable • 0.1% Forever •Permissionless • Immutable • 0.1% Forever •Permissionless • Immutable • 0.1% Forever •Permissionless • Immutable • 0.1% Forever •Permissionless • Immutable • 0.1% Forever •

Take The
Other Side

Prediction markets should not answer to platforms, founders, or policy teams. Build on contracts no company can lock, censor, sell, or shut down.

Read the Docs