Checking sign-in…
Throw down
Pick how long the window runs. The server clamps anything outside 1 hour to 1 week and defaults to 24 hours — long enough that one lucky candle is not the whole story.
creating does not start the clock — accepting does
Take the seat
Got a code? Taking the seat starts the window immediately, for both of you.
six characters after the dash · never contains O, 0, I or 1, so those are dropped as you type · pasting the whole invite link works too
Your duels
How settlement works
A duel is decided from the same evidence as every other board here: your committed chain, sliced to the window. What makes a duel different is when the server is allowed to look — and that one rule is doing all the work.
The chain already kills the obvious cheat
Every paper fill is hash-committed the moment it happens, and each link commits the one before it. Delete the round that went against you and every hash after it stops matching. Submit a clean history instead and the server refuses it by name — chain-replaced — because a submission has to extend the head you already committed. There is no edit, only append.
Which leaves exactly one vector
The attack
Submit while you are up, then go quiet. You never deleted anything — you just stopped talking, so the newest copy the server holds of your chain predates the trade that ruined your afternoon.
The gate
A duel settles only from a chain submitted after the window closed. A post-close chain necessarily carries every fill made inside the window, because the chain cannot skip one. There is no version of your history where the bad round is not in it.
So silence is a forfeit, not a save
Refusing to submit after the close does not freeze your flattering snapshot — it hands the duel to the other player, and the result says forfeit out loud rather than showing a bare trophy. If neither of you submits, nobody wins: it is recorded as a no-contest.
And live standings decide nothing
While the window runs, each side shows whatever that player has submitted so far, stamped with when it arrived. That is the fun part and it is worth watching. It is also labeled everywhere it appears, and it has no bearing on the outcome:
provisional · decides nothingWindow math is shared with the weekly Sprint: a round counts only if it opened and closed inside the window, and returns are measured against your equity at the window's open — so a 10 ◎ bankroll duels a 1,000 ◎ bankroll on even terms. Full protocol: docs/LEADERBOARD.md
The five states
Created, waiting for someone to accept. Invites lapse after 48 hours.
Both players in, window running. Everything shown is provisional.
The clock stopped. Now each player submits a record from after the close.
Decided and frozen. The result and its reason never change after this.
Nobody accepted inside 48 hours, so the duel never started.
Every outcome is named
A result is never a bare trophy. The server returns one of five outcomes and a sentence explaining it, and the card prints both.
- by-return
- Both players submitted after the close. The higher window return takes it.
- by-inaction
- One side took no rounds in the window and still finished ahead. Not trading beats losing money, and this product will say so.
- forfeit
- One side never submitted a record from after the close. The player who did wins.
- draw
- Both replays produced the same return, to the last decimal.
- no-contest
- Neither side submitted after the close. Nothing to compare, so nobody won.
What's at stake: nothing
No entry fee, no pot, no token, no wallet connection — a duel is two people practising against the same clock and finding out who read the tape better. The only thing on the line is the record, and the record is the point.
Both sides are re-priced against real market history like everything else on the Arena. A record still being re-checked shows Verifying and one with gaps in the candle data shows ◐ Partial data — neither is dressed up as verified, in a duel or anywhere else.