docs
what is this
HoodBets is a parimutuel betting pool on real stock prices, running on Robinhood Chain. Every market is one question — e.g. "GME above $22.50 at the close?" — with two sides: OVER and UNDER. You bet native ETH. When the market settles, the losing pool is paid out to the winning side, proportional to stake.
There is no order book, no counterparty, no market maker. The crowd is the odds. The percentage you see on a market is simply the share of money on each side.
how settlement works (the important part)
Settlement is done by the contract reading a Chainlink price feed — the same oracles that secure lending protocols. When a market's settle time passes, the contract accepts exactly one price: the first oracle round published at or after settle time. It verifies this on-chain — a round that came too early, too late, or isn't the first one gets rejected by the contract itself.
Nobody — not us, not anyone — can override the oracle, pick a different price, or decide the outcome. The settle() function is public: you can settle the market yourself the second the round exists.
Price above strike → OVER wins. Price at or below strike → UNDER wins.
fees
The house takes 4% of the losing pool, only on settled markets. The rake is hard-capped at 5% in the bytecode and can never be raised. Winners always get their full stake back plus their share of the remaining 96%. Refunds carry zero fee.
Gas on Robinhood Chain costs a fraction of a cent per bet.
when do I get refunded
Markets flip to refund mode — everyone withdraws 100% — when:
- the oracle produces no valid round before the settle deadline (feed paused, corporate action, outage), or
- only one side of the pool has any bets at settle time.
Refund mode is triggered permissionlessly — you don't need us alive to get your money back.
how do I get ETH on Robinhood Chain
Robinhood Chain is an Arbitrum Orbit L2. Bridge ETH from Ethereum/Arbitrum using the official bridge (see chain.robinhood.com), or if you already trade on the chain, you have ETH there already. This app auto-adds the network to your wallet on connect (chain id 4663).
trust assumptions — the honest list
- Chainlink is the judge. If the feed misreports, the market settles on the misreport. Same assumption every DeFi protocol on this chain makes.
- We choose which markets exist. Market creation is the only admin power. Every market's feed address is emitted on-chain — check it against Chainlink's official list. Example: the GME feed is
0x27C71df6A64fB476468EdF256CF72c038baB5B67. - The contract is unaudited. It is ~300 lines, verified, and fully tested — read it yourself. Pot caps are deliberately low while the contract is young. Bet what you can lose.
- Funds custody: the contract, not us. There is no withdrawal function for the house, no upgradeability, no pause. The only ETH the house ever receives is the rake at settlement.
- We seed every market. The house seeds both sides of new markets from a disclosed wallet —
0x9129D622FC8CD6Ee85d3f105E3270b1D1e0f0bee— so early bettors get real odds. Seeds are normal bets: they win and lose like everyone else's. We never disguise house money as organic volume; it's all traceable on-chain anyway.
addresses
- contract: 0xA3cD4D80B48B272f14E233D266b1103900cb42fC (verified source)
- chain: Robinhood Chain · id 4663 · rpc.mainnet.chain.robinhood.com
- explorer: robinhoodchain.blockscout.com
settle it yourself
Don't trust our bot? Call the contract directly once settle time passes:
cast send 0xA3cD4D80B48B272f14E233D266b1103900cb42fC \ "settle(uint256,uint80)" <marketId> <firstRoundIdAfterSettleTime> \ --rpc-url https://rpc.mainnet.chain.robinhood.com \ --private-key <yours>
The contract verifies your round. If it's wrong, it reverts. If it's right, you settled the casino.