Oracle
Every Jeets price comes from its own oracle. It decides your entry, your exit, and when a position is liquidated.
Live oracleConnecting…
- NVDA
- –
- BTC
- –
Waiting for the first price
How a price is made
- Streams, not polling. The oracle keeps live connections to several independent spot markets and receives every change to their best bid and ask as it happens.
- One mid per source. Each source’s price is the midpoint between its best bid and best ask.
- The average. The oracle price is the average of the sources’ mids, recomputed on every update from any of them, so a move on even one source moves the price. A source more than 0.05% away from the others is left out, so one wrong, slow, or briefly pushed book can’t move it.
- USDT markets. The oracle follows the BTC/USDT books, the most liquid and most watched BTC prices, so the Jeets price matches what traders see on the big exchanges. NVDA has no spot book there, so it follows the NVDA/USDT perpetual futures, which trade around the clock: the NVDA price keeps moving while the stock market is closed. Balances and payouts are in USDG, so when USDT trades away from USDG, Jeets prices move with it.
When the oracle trusts a price
- A market has a price only while at least three sources are live, each having reported within the last 3 seconds.
- A source that disconnects drops out until it’s back, and the average uses the rest.
- If too few sources are live, the price is stale: new transactions wait until it’s fresh again, so nothing fills at an old price. The trade page says so while it lasts.
The price you see and the price you fill at
| Live price | Fill price | |
|---|---|---|
| Updates | Whenever it changes, and at least once a second | The live price at the moment a transaction runs |
| Used for | The chart and the price you see | Fills, PnL at close, liquidations |
| Where | The prices WebSocket channel | Saved with every transaction, on Robinhood Chain |
Transactions run every tenth of a second, at the live price of that moment, so your fill can differ slightly from the price you saw when you clicked. Liquidations are checked at every new price before anything else runs.
Checking it yourself
- Every transaction carries the NVDA and BTC prices it ran at, and is written to Robinhood Chain with them. Open any transaction in the explorer to see it.
GET /prices/historyreturns the oracle price, recorded twice a second, over a time window; the trade chart is drawn from it. See the API.- Because each transaction carries its prices, replaying the transactions from Robinhood Chain gives the same fills and liquidations.
Limits
Leaving out sources that stray protects against one bad source, not against all of them moving together. If the wider market moves sharply, the oracle follows it, and a position can be liquidated in a fraction of a second. Which markets feed the oracle isn’t published, which makes targeting it harder. See Risks.
