Litepaper · v1, November 2026

A world model made of fills.

What Thorios⁹⁰ reads, how it turns fills into a model of the stock-token market on Robinhood Chain, and what it does not do.

Overview

Robinhood stock tokens trade around the clock in Uniswap v3 pools on Robinhood Chain, an Arbitrum Orbit chain (id 4663). Tens of thousands of fills land there every hour. Each one is a small, public experiment: a price was asked, a size was taken, a pool moved.

Thorios⁹⁰ reads those fills as they land and keeps one live model of the market: what each stock token costs, how deep each pool is, how far the pools disagree, and which route returns the most for the next trade. Every figure links back to the chain. Thorios holds no funds, runs no contract and asks for no account.

Data

The universe is 46 stock tokens with two or more live pools, 128 pools in all, quoted in USDG or WETH. A fill is one Swap event from one of those pools, read with eth_getLogs. From each event Thorios keeps the block, log index, transaction, the pool's two signed amounts and the post-trade price. The side is read from the taker's view: a buy when the pool paid out the stock.

Pool state comes from slot0, liquidity and the two real token balances, read in one Multicall3 call per refresh.

Pricing

A fill's USD notional is its quote side. USDG counts at face value. WETH is converted at the WETH/USDG 0.01% pool's price at the moment the fill was read. No outside price feed is used, so a figure on this site can always be rebuilt from the chain alone.

Consensus

Each pool's mid is its slot0 price. A pool counts as live when both of its real balances are worth at least $200 and liquidity is active at the current price. A stock token's consensus price is the depth-weighted mid of its live pools; its pool spread is the gap between the highest and lowest live mid, in basis points of the consensus.

The hour

The rolling window is one hour of blocks, measured from the chain's own pace over the last 100,000 blocks (about 0.1 seconds a block). It is read in slices of 5,000 blocks; closed slices are kept in memory so only the newest slice is reread. The API returns the first and last block of the window and their timestamps.

Route probes

Three fixed probes (1,000 USDG into TSLA, 0.25 ETH into NVDA, 2 SPY out to USDG) are priced on Uniswap's QuoterV2 every 30 seconds across every candidate venue: each direct pool, and each two-hop route through the WETH/USDG pool. The selected route is the one that returns the most. Cost against mid compares the output with the consensus price, so it includes the pool fee and the price impact.

Swap Gateway

The Swap Gateway runs the same routing for your own trade. It quotes every venue for your pair and amount, then your wallet signs one multicall(deadline, ...) straight to Uniswap's SwapRouter02. ETH in is sent as the transaction's value; ETH out is unwrapped to your wallet in the same call. A token you pay with is approved for the exact amount, never more. The swap reverts if it would return less than the quote minus your slippage, and it is dry-run against the chain before your wallet is asked to sign.

Your fill is evidence too. Once it lands, it appears in the World Model stream like any other.

Limits

  • Thorios is a read model, not a trained machine-learning model. It does not predict prices.
  • Only the 46 stock tokens with two or more live pools are in the universe. Single-pool tokens and other venues are not read.
  • The window is one hour. There is no lifetime total: a full history would need an indexer this site does not run.
  • WETH fills are priced at the moment they are read, not at the block they landed, so a fast ETH move shifts their USD value slightly.
  • Recipients are pool-level recipients (often routers or bots), not people.
  • Robinhood stock tokens are issued by Robinhood under its own terms. Nothing here is investment advice.

The name

Thorium is element 90: Th⁹⁰. It is slow, dense and very long-lived, with a half-life of about fourteen billion years. Evidence on a public chain is the same: once a fill lands, it stays.