NVDA240.66down2.63%TSLA381.32up3.48%AAPL332.51up3.56%MSFT534.09up4.44%AMZN255.63up5.00%GOOGL347.43down0.04%META744.49up0.05%AMD657.21down2.60%PLTR191.93down1.78%TSM483.65up1.94%COIN188.42up2.77%SPCX173.38down1.82%ASML1842.06up4.61%MU1065.55up2.92%ORCL146.10up4.64%INTC113.95up1.92%MSTR164.88down0.24%CRCL84.50up2.72%BABA108.49up0.02%DELL577.07down1.51%SNDK1673.74down2.86%NBIS253.18up4.90%BTC84209.58up0.17%ETH2610.07up2.05%
Rules

How the league works

Plain rules, the same ones the contract and the settlement code follow.

A round

Rounds run every week on the US stock market’s clock (New York time). Entries open as soon as the last round is settled on Friday after the close, and close on Monday at 9:30am, the open: that’s when the start prices are taken. The round ends on Friday at 4pm, the close: the end prices are taken, the ETFs are ranked by return, winners are paid and baskets go back to their owners. Then the next week’s entries open.

Prices come from Robinhood Chain’s Chainlink feeds, one per Stock Token, readable on-chain by anyone. A feed quotes one token’s value, which includes reinvested dividends, so returns are total returns. Several samples are averaged at the start and at the end, so one odd tick can’t decide a round. A stale feed, a paused oracle (a corporate action in progress) or a stalled chain voids the round and refunds everyone. Short demo rounds may use Robinhood’s own quote API instead; the round’s published inputs say which.

Creators

  • Pick at least 3 stocks or funds (up to 10 assets in all), none above 50%, worth at least $10 in total.
  • Only tokens with a Chainlink feed on Robinhood Chain can be picked: 35 Robinhood Stock Tokens, plus BTC (as WBTC) and ETH (as WETH).
  • Crypto is a side slice: BTC and ETH together can be at most 20% of the basket, and they don’t count toward the 3 stocks.
  • Lock the basket in the league contract with a $5 USDG ticket, and give the ETF a name.
  • The basket comes back to you when the round ends, win or lose. Only the ticket is at stake.
  • Same stocks at the same weights (to 1%) as an existing ETF? You join that team. The first creator is its captain.
  • Everyone can be a creator.

Backers

  • Back the team: a $5 ticket on someone’s ETF. It wins or loses with that ETF. The creator keeps 10% of what their backers win.
  • Buy the ETF: buy the same basket through 0x, straight into your wallet. The creator earns the buy fee they set (0–2%), paid by the swap. Nothing is locked; it’s your portfolio.
  • Do either, or both. One entry per wallet per round.

Who wins

ETFs are ranked by return. Every round has a ghost team, MEDIAN (like Fantasy Premier League’s AVERAGE team, but it really is the median): its return is the median return of the round (the middle ETF, or halfway between the two middle ones).

  • Above MEDIAN: you win a share of the pot.
  • On MEDIAN: a draw. Your ticket comes back, no gain, no loss. In a round with an odd number of ETFs, the middle one always draws.
  • Below MEDIAN: your ticket goes into the pot.

Why the median and not the mean: one wild ETF can drag a mean up or down and decide everyone’s result; the median only moves if half the league moves. If at least half the ETFs tie for the best return, they all win. A round needs at least 4 ETFs; otherwise everyone is refunded.

How the pot is split

The losing tickets form the pot. 10% is taken: 5% for the platform, 5% for the season pot (which tops up thin rounds). While the round runs, all its tickets sit in a savings vault (Robinhood Earn on mainnet) and the interest is added to the pot. The rest goes to the winning teams, by team size × accuracy. Accuracy is how close an ETF came to the best return: the best ETF scores 1, and it drops steeply with distance. Inside a team, every ticket gets the same share, and the creator takes 10% of their backers’ winnings. A team can win at most 100× what it staked.

Example: 5 ETFs, each with its creator and 3 backers ($20 per team, $100 in tickets). MEDIAN is +1.0%, ETF C’s return.

ETFReturnResultAccuracyCreator getsEach backer gets
A+3.0%wins1.00$15.76$12.45
B+2.0%wins0.09$5.94$5.65
C+1.0%draw (on MEDIAN)—$5.00$5.00
D−1.0%loses—$0$0
E−2.0%loses—$0$0

The $40 of losing tickets: $4 taken ($2 platform, $2 season pot), $36 shared (plus any ticket interest). Amounts include the $5 ticket back. Every creator also gets their basket back.

Settlement you can check

A keeper takes the prices and runs the open-source settlement. It publishes every input (prices, entries, payouts) and writes their hash on-chain with the payouts. The contract checks that the money adds up and that no payout is out of bounds. Anyone can re-run the maths with scripts/verify.mts or on each round’s results page.

Prices keep moving between your entry and the round start, so the check at the start allows a little drift: weights within 5 points of what you declared and a basket of at least $9.50. Beyond that, the entry is refunded.

If a round isn’t settled within 3 days of its end, anyone can bring the tickets back from the savings vault and void it, and everyone is refunded. If a stock token is paused when you claim, your other tokens and your payout still arrive, and you can retry the paused one later.

Risks

  • “ETF” here means an on-chain basket of tokenized stocks, not a regulated fund.
  • Stock prices move: your basket can lose value while it’s locked, and a losing ticket is lost.
  • Robinhood Stock Tokens are issued by Robinhood as tokenized debt securities that track the stock (not shares), and follow Robinhood’s rules, including where they’re available. Not available in restricted regions, including the US.
  • Parked tickets sit in a third-party savings vault while the round runs. A loss there is covered by the season pot first.
  • Smart contracts can have bugs. Play with money you can afford to lose.

Profit Markets by Kickoff, on Robinhood Chain. “ETF” means an on-chain basket of tokenized stocks, not a regulated fund. Not investment advice.