⚠ INTERNAL — Operator UX mock · Design preview of V2 development path · demo-wired ≠ production-live · back to dev guide
Polytraders/How this works
Polygon · pUSD 10
📓 Developer Guide 📋 Reason Codes 📈 Shadow Mode
JD John Doe · Admin

Start here · read in about four minutes

How this works

Polytraders lets you trade prediction markets with rules you write yourself, without handing over your money. This page explains the whole thing three times: first in ordinary words, then with the real screens, then with everything underneath. Read as far as you need and stop.

level 1

In plain words

Everything that happens between having an opinion about an election and having an order filled. No terms you don't already know. If you only read one section, read this one.

1

You find a question worth an opinion

Prediction markets are made of yes/no questions. Will the Fed cut rates in September? Will this candidate win? People buy and sell the answers, and the price tells you what the crowd currently thinks the odds are. A price of 62¢ means the crowd thinks it is about 62% likely.

2

You write down your rules

Instead of clicking buy and sell yourself, you write down exactly when you would. If the price drops below 40¢ and the news is quiet, buy 500. Never hold more than $5,000 of this. If I'm down $1,000 on the day, stop. That written-down set of rules is your bot. It is yours — you wrote it, you own it, you can change it or delete it.

3

Your bot has to earn its way up before it is allowed near money

A new bot does not get to trade. It has to climb five rungs first, and every rung is a real gate that something has to happen to pass:

1
Written down, not running we call it: frozen

The rules exist and have been checked, but nothing is switched on.

2
Running on fake money we call it: demo-wired

It trades a made-up account against real market data. You can watch it be wrong for free.

3
Watching real markets, placing nothing we call it: shadow-ready

It runs beside the live system for a full day and says out loud what it would have done, while doing nothing. If it would have done something stupid, you find out here and nobody loses anything.

4
Placing real orders, from a wallet with no real money in it we call it: runtime-live

Now it actually presses the button, but the wallet behind it is empty. This proves the plumbing works before anything is at stake.

5
Live, real money we call it: production-live

Somebody signs off, a spending cap goes on, and it is allowed to place real orders.

Nothing skips a rung. Most bots are still on the first one, and that is the point — the ladder is slow on purpose.

4

Our safety bots check every request against your own limits

When your bot asks to buy something, the request does not go to the exchange. It goes to us first. We run a stack of checks that you cannot switch off: is the market still open and behaving normally, would this put you over the limit you set for this market, over your limit for the day, over your limit across everything that moves together? Any one of those says no, and the answer is no — with a plain reason attached so you know which one it was.

5

AI helps you decide, but never decides

Three places you get help. Working out what is worth trading — here is what changed in the news, here is what it might mean, here is how sure we are. Working out how to place it — all at once or in pieces, how much you will lose to the spread. And watching what you already own — these two positions are secretly the same bet, this one has drifted from what you meant. All three write suggestions. None of them can place an order. A suggestion has to go through the same gate as everything else, and it always shows its working.

6

We sign and send it. Your money never leaves your wallet

This is the part that makes us different from an exchange. We never hold your money. There is no account you deposit into. Your funds sit in your own wallet the whole time, and you give us a narrow, revocable permission to place orders on your behalf — and only to place orders. We cannot move your money somewhere else. Not because we promise not to, but because the permission you gave us does not include it. Take the permission away and we stop instantly.

7

The order lands, or it doesn't, and you find out either way

An order that reaches the exchange still might not get what you asked for. Somebody else might take the price first. You might get half of it. It might sit there unmatched until it expires. Every one of those outcomes gets written down with a timestamp, and the money is checked against what the exchange says you actually have. If those two numbers ever disagree, the system stops trading rather than guess which one is right.

8

You watch it, and it tells you when it needs you

The floor is the screen you leave open. It shows what you own, what you have made or lost today, and what needs a human. The last part matters most. Rather than making you go looking, anything that needs attention comes to you in one list, worst first — a limit nearly hit, a market gone quiet, an order stuck. Each one says what happened and what you can do about it.

The whole thing in one sentence

You write the rules, your bot asks rather than buys, our checks decide whether the ask is allowed, we sign and send it while your money stays in your own wallet, and the floor tells you what happened.

Now the same thing with the real screens →
level 2

The same eight steps, with the real screens

Identical order, identical story — now with the words we actually use on screen. Each one is defined the first time it appears, and each step links to where it happens in the product.

step 1

Pick your market from the registry

Every question we will trade has to be in the market registry first — the approved list. Being on it means we have checked the question is real, that it settles on something we can verify, and that there is enough money moving through it to get in and out. Markets are grouped into clusters (all the US election markets together, all the rate markets together) because things in the same cluster tend to move together.

MarketOne yes/no question you can buy or sell an answer to.
RegistryThe approved list. If a market isn't on it, nothing can trade it.
ClusterA group of markets that move together, so we can cap them as one.
step 2

Your rules become a strategy

In v1 the rules are a file you fill in rather than code you write, so there is no way to write a rule that breaks the system. Later there will be a code path for people who want one, and it will run in a locked box with a time and memory budget. Either way the same thing is true: your bot never buys anything. It only ever says what it would like to do. The part that says what it would like to do is called a proposal.

StrategyYour rules, saved and versioned. Same thing as your bot.
ProposalYour bot saying “I'd like to buy 500 of this.” It is a request, not a trade.
step 3

The promotion ladder is a gate, not a status label

Each transition has an owner and a condition. Frozen → demo-wired needs a complete spec and a passing test pack. Demo-wired → shadow needs 24 hours of clean running with no unexpected reason codes — the short machine-readable labels the system attaches to everything it refuses or flags. Shadow → runtime needs a real venue adapter and a paper wallet. Runtime → production needs an explicit human approval, a per-bot cap, and somebody on call.

Reason codeA short label like RISK_EXPOSURE_CAP_HIT explaining exactly why something was refused.
ShadowRunning for real, deciding for real, placing nothing. The dress rehearsal.
Paper walletA real wallet with no real money in it.
step 4

Everything goes through one gate

There is exactly one piece of code allowed to talk to the exchange, and it is ours. Your bot cannot reach the venue even if it tries. The gate runs the hard checks first, then your own limits — your envelope, the box you drew around what this bot is allowed to do — then it may shrink an order to fit rather than reject it outright. You choose the numbers inside the envelope. You cannot remove the envelope, and you cannot reorder the checks.

EnvelopeThe limits you set for one bot: biggest order, biggest position, worst day you'll accept.
GuardrailA check that runs on every order and cannot be turned off.
Kill switchThe stop-everything button. Cancels open orders, blocks new ones.
step 5

Three advisory surfaces, none with trade authority

Anything a model produces arrives as a suggestion with mandatory evidence attached, a market id checked against the registry, a confidence number that has been calibrated against how often it was actually right, and the exact model version pinned. Suggestions can be wrong and are expected to be. The interesting failures are the quiet ones: a model that drifts, a model that is confidently wrong, or a market description written specifically to manipulate whatever is reading it.

SuggestionModel output. Advisory. Goes through the same gate as anything else.
CalibratedWhen it says 70% sure, it turns out to be right about 70% of the time.
EvidenceThe specific things the model looked at. No evidence, no suggestion.
step 6

A scoped session key, not custody

You grant a session key with an explicit whitelist: place order, cancel order. Transfer and unbounded approval are not on the list and never will be. The grant has an expiry and a spending cap, and revoking it takes effect immediately. One deliberate choice worth knowing: revoking does not close your open positions. Closing them would mean us moving your money, which is the exact thing we just said we cannot do.

Non-custodialWe never hold your funds. There is no account balance with us.
Session keyA narrow, expiring permission to place orders. Nothing else.
RevokeWithdraw that permission. Takes effect at once.
step 7

Fills, partials, and reconciliation

Filled, partially filled, rejected, expired — each is a distinct state with its own reason code. Behind it a reconciler runs continuously against the venue's own numbers. A mismatch freezes the system; it does not get papered over. Reserving funds for an order and placing it happen as one atomic step, so the same money can never be committed twice.

FillYour order actually got matched. Partial means only some of it did.
ReconcileComparing our numbers to the exchange's, constantly.
ReserveMoney set aside for an order in flight so it can't be spent twice.
step 8

Trader Home and the attention queue

The floor breaks your profit into three parts so you can tell luck from skill: was the forecast right, was the order placed well, was the position sized well. Alongside it the attention queue collects everything the guardrails and monitors raised, sorted by severity, each carrying its reason code, each acknowledgeable without leaving the page.

The floorYour main screen. Positions, profit, and anything needing a human.
Attention queueOne list of everything that needs you, worst first.
Edge attributionSplitting profit into: good forecast, good fill, good sizing.
level 3

Everything underneath

For people building it rather than using it. These leave the mock and go into the dev guide.

Everything on this mock is synthetic. The numbers are made up to show the shape of the screens — none of it is a forecast, a track record, or advice.
Polytraders Operator UX Mock · INTERNAL · demo-wired ≠ production-live · how this works · words we use · the plan · reason codes · shadow-mode pipeline
⚙ Page Configuration
Current page settings
Loading configuration…