VAULT0.0000 Ξ

RollaCoasta

A thirty-second market on Robinhood Chain. Every fee it earns buys real stock for $ROLLA holders.

Connecting…
Demo mode. No RollaCoasta server is reachable, so the engine is running locally in this tab and the round seed is generated in your own browser — which means the fairness proof below proves nothing here. Run the server (npm start) for the real thing, where the seed never leaves the backend until settlement.
Real stock sent to $ROLLA holders loading…
$GUH
100.00
Live
30.0s
Stake
Leverage
Your account
Balance0.5000 Ξ
NetworkNot connected
Fees contributed0.0000 Ξ
Rounds played0
Provably fair
Round#1
Commit
Client seed
Server seedsealed until settle
The tapeI/L 0.00
Ride01

What RollaCoasta is

RollaCoasta is a leveraged trading game played on synthetic tickers that live for thirty seconds. Every fee the game and the token generate is used to buy real equities, which go to $ROLLA holders. All of it.

A ticker lists at 100.00 and has half a minute to live. You go long or short at up to 100×, and you get out before it gets you — or you don’t. Then it delists and a new one lists two seconds later.

The price is not a random number generator with a chart drawn on top. It is driven by the order flow of the people trading it. Longs push it up, shorts push it down, liquidations shove it further, and funding drags it back. Squeezes and cascades are not animations — they are what the equation does when a crowd leans one way. That is what makes the tape worth reading, and it is what makes reading it an actual edge.

Underneath the game is a single, unusually short pipe. Fees go in one end, tokenised stock comes out the other, and $ROLLA holders own it. There is no cut taken along the way.

RollaCoasta
The platform. The game, the engine, the vault.
$ROLLA
The token. Hold it and the equities the vault buys accrue to you.
$GUH
The instrument. The synthetic ticker you actually trade — first of a series.
100% → equities → holders Trading fees 100% · Game fees 100% · Creator fees 100% · Team 0%
Ride02

The first instrument is called $GUH

$GUH is not a company. It is a price, generated live, that exists for thirty seconds and then stops existing.

You enter at any moment. You close whenever you want, or the clock closes you at 0:00, or the price reaches your liquidation level and closes you the hard way. There is no overnight, no thesis, no waiting for earnings. There is a bar under the chart that says your live P&L, and it is also the button that gets you out.

The name is not decoration. It is the sound a Robinhood trader made in 2019 on discovering what a box spread does, and it is the only appropriate name for the first instrument in this series.

It launches alone, deliberately: one price path to tune, one order book, and everybody concentrated in the same thirty seconds. A thin market split six ways is six dead markets. The rest of the series unlocks later — see Ride 05.

Ride03

The price is made of you

Most games like this roll dice and draw the result. RollaCoasta does something else: the order flow is an input to the price. Every open position pushes the price in its own direction. The crowd is not betting on the chart. The crowd is the chart.

Each instrument runs this same engine with its own parameters. Below is the general form; $GUH’s specific numbers are in Ride 04. This is the exact equation running in the chart above.

Price evolution over one round, per tick dt dP/P = μ(s)·dt regime drift + σ(s)·dW committed random noise + λ·sign(I)·|I/L|^1.4·dt order-flow impact ← the whole idea + κ±·J·dN± jumps (the wicks) − φ·F(I/L)·dt funding drag I net open-interest imbalance (long notional − short notional) L farm-pool depth s hidden regime: CALM · PUMP · DUMP · EUPHORIA J jump magnitude, dN± jump arrival (Poisson, asymmetric)
Table 3.1 — what each term is for
TermNameWhat it does to the chart
μ(s)·dtRegime driftA hidden state machine flips between calm, pump, dump and euphoria on its own clock. You never see which regime you are in — you infer it, late, from the tape.
σ(s)·dWFair noiseThe provably-fair component. Seeded and committed before the round opens (Ride 08). This is the only part an operator could theoretically rig, which is exactly why it is the part that gets published.
λ·sign(I)·|I/L|^1.4Flow impactNet imbalance moves the price. The 1.4 exponent makes impact superlinear, so pushing the price is possible but gets brutally expensive — whales can try, and the attempt taxes them in public.
κ±·J·dN±JumpsPoisson wicks. Rare, violent, and asymmetric — this is where an instrument gets its personality.
−φ·F(I/L)Funding dragWhen the crowd stacks one way, funding pulls against it. Without this, a one-sided round walks the price to infinity and the game ends.

The loop this creates

Because liquidations force positions closed, and closing a position changes I, liquidations feed the same term that caused them. Nobody scripts a squeeze. The squeeze is what the equation does on its own.

Traders openlong / short Net imbalanceI = L$ − S$ Price movesλ·|I/L|^1.4 Liquidationsfire forced closes re-enter I — the squeeze Pool depth L damps Funding φ opposes I
The reflexive loop. Imbalance moves price, price triggers liquidations, and liquidations are forced orders that land back in imbalance — a self-feeding cascade. Pool depth L sits in the denominator and damps every push; funding drags the crowd back toward flat.

This only works peer-to-peer. Traders are counterparty to each other. If the house took the other side of a price it also influences, flow-driven pricing would be a printing press pointed at the house. It is not, and it must never be.

Fills are batched on purpose

Every order arriving inside a 100 ms window fills at the same price. Because flow moves price, unbatched fills would hand a decisive edge to whoever sits closest to the matching engine, and the game would become a latency auction no human can enter. Batching kills that outright — and it is why the agent API in Ride 07 is a fair fight.

The farm pool is a physics constant

Pool depth L is the denominator of the impact term, so it is not a yield sticker — it sets how violent the chart is. A thin pool means every order swings it. A deep pool smooths it out.

Which creates a trap worth naming: liquidity providers want a calm chart, traders want a violent one, and growing the pool would quietly kill the game. So as L grows, λ scales down and σ scales up to hold total volatility constant. The chart stays exactly as wild, while LP risk shifts from directional and ruinous to symmetric and survivable.

Ride04

$GUH grinds up and knifes down

$GUH’s defining parameter choice is jump asymmetry: downside jumps are 2.6× larger than upside jumps and arrive more than twice as often, offset by a positive baseline drift.

The result is a chart that climbs in small, reassuring increments and then falls off a cliff without warning. It rewards patience and then punishes it. It is a machine for manufacturing the exact noise the ticker is named after.

0:000:30 κ⁻ jumpκ⁻ jump
One characteristic $GUH round. Fourteen small green steps to build a position worth holding; one red tick to remove it. Longs die to the jumps, shorts die to the grind.
Table 4.1 — GUH-PERP-30 parameter set
ParameterValueNotes
σ — calm0.9 %/√sBaseline noise floor.
σ — feral3.4 %/√sReached when open interest overwhelms pool depth.
λ — impact0.85How hard a unit of imbalance pushes.
Impact exponent1.4Superlinear. The anti-whale.
κ⁺ — up jump1.0×Upside wick scale — the baseline.
κ⁻ — down jump2.6×The signature. Down jumps hit 2.6× harder.
dN⁺ rate0.05 /sRoughly 1.5 upside wicks per round.
dN⁻ rate0.11 /sRoughly 3.3 downside wicks per round.
φ — funding0.30Mild. $GUH lets the crowd get away with it for a while.
Regimes4Markov switching, mean dwell 6.5 s.
Round length30 sPlus 2 s settlement.
Ride05

Each new ticker is a different ride

The rest of the series unlocks at vault milestones — which means the fees in Ride 06 are not only buying stock, they are buying the next instrument for everyone in the room. And each one changes a different term of the equation, so each is a genuinely different trading problem, not a reskin.

Table 5.1 — the park map
TickerStatusFormula changeHow it plays
$GUH● OPENκ⁻ = 2.6 κ⁺Grinds up, knifes down.
$COPIUM● $250K vaultφ = 0.90Funding cranked to violent. It always comes back — until the round ends first.
$TENDIES● $1M vaultμeuphoria ×3Fat upside tails and long air pockets. Vertical or nothing.
$WIFESBF● $2.5M vaultμ < 0, κ⁺ = 2.6 κ⁻$GUH inverted. Bleeds down all round, then rips your shorts off.
$0DTE● $5M vaultσ ∝ 1/(T−t)Volatility explodes as the clock runs out. The last five seconds are the game.
$MARGIN.CALL● $10M vaultλ × 2The crowd moves it twice as hard. Pure reflexivity, no shelter.

Every instrument publishes a disclosure page exactly like this one before it opens — full parameter set, committed seeds, no exceptions. An instrument whose numbers are not public does not list.

Ride06

Every fee buys stock. All of it.

100% of $ROLLA trading fees, 100% of game fees, and 100% of creator fees are used to buy real equities, which are distributed to $ROLLA holders. Not a share of them. All of them.

There is no team cut on the fee line, no treasury skim, no marketing wallet, no discretionary spend. Fees arrive, fees become shares, shares go to holders. It is the shortest path anyone has bothered to build.

$ROLLA trading feestoken buys & sells Game fees0.10% open · 0.10% close Creator feeslaunch revenue THE VAULTnon-custodial, on-chain 100% 100% 100% Tokenisedequities (RWA) buys $ROLLA holderspro rata distributed Team /treasury 0%
All three fee sources route entirely to the vault; the vault holds only equities; the equities go to $ROLLA holders. The branch every other protocol draws — the one to a team or treasury wallet — carries nothing.
Table 6.1 — fee schedule and destination
SourceRateDestinationShare
$ROLLA buys & sellsToken trading feeVault → equities → holders100%
Open position0.10% of notionalVault → equities → holders100%
Close position0.10% of notionalVault → equities → holders100%
Creator feesAll launch revenueVault → equities → holders100%
Liquidation marginResidualFarm pool (counterparty settlement)
TeamNo allocation on the fee line0%

Then how does anyone else get paid?

This is the question that should be asked of any protocol claiming a 100% number, so here it is answered plainly. Liquidity providers do not earn fees. They earn by being the counterparty to net imbalance — when the crowd stacks one way and is wrong, the pool takes the other side and keeps the difference. That is a real, separate, honest revenue stream, and it is why the fee line can stay untouched at 100%.

It also means depositing into the farm pool is not renting a fee stream. It is taking a position against consensus.

What gets bought

The vault accumulates fees continuously and executes on a schedule into tokenised equities. Every purchase is announced on the tape mid-round — the chart dims, a ticker tape crosses the screen, and the whole park watches the buy land. Losing money is one thing. Watching it become someone’s share of NVDA in real time is a different product.

A single trade, traced end to end

Round #48,201  ·  $GUH  ·  settled
Margin posted0.0800 Ξ
Leverage25×
Notional2.0000 Ξ

Entry100.00
Exit (t = 21.4s)101.60
Gross P&L+0.0320 Ξ

Open fee  0.10%−0.0020 Ξ
Close fee 0.10%−0.0020 Ξ
Returned to trader0.1080 Ξ

Fee disposition
To vault0.0040 Ξ
To team0.0000 Ξ
Round total, all traders1.6722 Ξ
→ equities purchased1.6722 Ξ

The trader made money and still paid into the vault. That is the point: winners fund it too. A player’s headline profile stat is not their P&L, it is lifetime fees contributed — which turns the losing half of the park from marks into patrons, and happens to be true.

Ride07

Agents ride too

RollaCoasta is open to automated traders on the same terms as humans: same batched fills, same fee schedule, same tape. Agents are not tolerated, they are wanted — they are the reason there is a market at four in the morning, and they pay the same 0.10% into the same vault.

# streaming WS /v1/stream ticks · imbalance I · pool depth L · liquidations · round events # state GET /v1/round round id, t, price, seed commitment, funding, I/L GET /v1/account margin, open position, realised P&L, fees contributed # trading POST /v1/position { side, leverage, size } → fills at next 100ms batch POST /v1/close { position_id } # verification GET /v1/seed/:round revealed server seed, post-settlement

Keys are per-agent and rate-limited. A paper-trading sandbox and a working reference bot ship alongside the live endpoint, because an API nobody can test against is a press release.

Machine and human leaderboards are kept separate, permanently. Agents will outperform people at a thirty-second reflexive market, and ranking them together would tell every human in the park to leave. Two divisions, two boards, one order book.

Ride08

What we can prove, and what we can’t

Before each round opens, the server publishes hash(serverSeed) — that is the Commit line in the panel beside the chart, and it is fixed before you can place a single order. After settlement it reveals serverSeed. The noise and jump terms — σ(s)·dW and κ±·J·dN± — are a pure function of (serverSeed, clientSeed, nonce), so anyone can replay the round and confirm the dice were cast before the first order arrived.

The Verify button does exactly that, in your own browser: it takes the revealed seed, re-computes SHA-256, and checks it against the commit you were shown thirty seconds earlier. If they ever disagree, the round was tampered with and you should never trade here again.

The flow term cannot be committed in advance, because it does not exist in advance. It is produced by the people trading, in the moment, and it is unknown to the operator for exactly as long as it is unknown to you. That is not a gap in the fairness proof — it is the product.

The dice are provably fairThe other traders are not