PropStock

Rulebook

How the challenge works

PropStock is a prop-trading challenge on Robinhood Chain (chain id 4663). You mint an account NFT paid in $ECS, trade a virtual account against Chainlink stock feeds under FTMO-style rules, and graduates split a cbBTC prize pool every week. The rules below are calibrated on real market data to a pass rate of roughly 11%.

The account

Every account NFT carries a virtual $5,000 per tier. The money is not real: profit and loss are tracked in USD with 8 decimals of fixed point by the rule engine. What is real is the cbBTC you claim if you graduate.

Two phases

Phase 1 ends when equity reaches +10% of the phase base (a $5,000 account must reach $5,500). Phase 2 then requires +5% of the new base ($5,500 to $5,775 on a tier-1 account). Pass both and the account is Graduated: it stops trading and enters that week's payout.

Trailing drawdown

Equity may never fall more than 8% below its high-water mark. The floor trails upward as you set new equity highs, but never rises above the phase base. Touch the floor and the account is blown: Dead, permanently.

Daily loss lock

Losing 5% versus the day-start equity closes your positions and locks the account until the next UTC day. The account survives, the trading day does not.

Fees and leverage

A virtual taker fee of 2.5 bps (0.025%) of notional per side applies to every fill, so a round trip costs 5 bps of notional. Leverage runs up to 100x. At 100x a round trip costs 5% of the whole account, which is exactly the point: fees paid feed the leaderboard weight, and reckless churn feeds the floor.

Expiry

The clock starts at your first accepted order and runs 30 calendar days. An account that has not graduated by then is Expired.

Oracle gating and next-tick fills

Stocks are tradable only while the Chainlink oracle is fresh and the market is open (NYSE regular hours). Orders never fill at the price you see: every order fills at the next oracle tick after placement. There is nothing to snipe.

Tiers and merging

One NFT is tier 1, a $5,000 account. Locking 2 to 5 fresh tier-1 NFTs burns them and mints one merged account of tier N, worth N x $5,000, up to the hard cap of tier 5 ($25,000). Only never-traded (Fresh) tier-1 NFTs can merge. The cap is not arbitrary: each account's total weekly payout is capped at 10% of the pool, so beyond $25,000 extra size buys nothing.

The payout formula

Every week is an epoch. The prize pool accrues cbBTC from the coin's creator fees: 50% of fees are swapped to cbBTC and sent to the PrizePool contract, hourly.

  • 60% of the week's pool is split equally among every account that graduated that epoch.
  • 40% is split by leaderboard weight w = sqrt(profit x feesPaid) (both in USD 1e8). Profit alone is not enough; you must have actually traded.
  • Each account's total payout (equal share plus leaderboard share) is capped at 10% of the whole epoch pool. Overflow and rounding dust roll into the next epoch. A lone graduate receives exactly pool/10.

The invariant is simple: the sum of payouts never exceeds the pool, and no PnL is ever owed. Winnings are posted as a merkle root on the PrizePool contract and claimed on-chain, once per epoch per address.

Where the money comes from

Payouts come only from the fee pool. Tickets never fund payouts. Mint payments go straight to the treasury and never touch the PrizePool; the PrizePool contract has no owner withdrawal path for cbBTC at all. The only way prize money leaves the pool is a winner's claim against a posted merkle root.

Account lifecycle

StatusMeaning
FreshMinted, never traded. Can merge.
ActiveFirst order accepted; the 30-day clock is running.
GraduatedPassed both phases. Enters the weekly payout. Terminal.
BlownHit the trailing drawdown floor. Terminal.
ExpiredRan out the 30 days without graduating. Terminal.

Markets

v1 trades three symbols against Chainlink aggregators on Robinhood Chain: NVDA, TSLA and SPY.

Rules enforced by the engine acting as the on-chain referee. Constants calibrated and locked; payout formula locked 2026-09-01.