proof

Everything nopps shows you is either read off Robinhood Chain or computed from it with the formulas below. This page exists so you can check rather than trust.

what is actually on chain

Your bond is an ERC-721 on Robinhood Chain (chain id 4663). The contract stores which nopp you chose and the timestamp you chose it. That timestamp is your streak — we do not keep it in a database, and anyone can read it without asking us.

Bonds are transferable, and a transfer does not reset the timestamp, so an aged bond keeps its streak. Rebonding does reset it, and costs gas.

0x5FbDB2315678afecb367f032d93F642f64180aa3 on Blockscout →

what is computed, not on chain

The yield figure. It is a simulated return on a fixed 1,000 USDG farm weight that every bond gets equally. There is no pot, no deposit, no claim and no withdraw, because nopps never takes custody of anything.

farm weight   = 1000 USDG, identical for every bond
multiplier    = min(1 + 0.1 × streakDays, 3)     // 20 days to the cap
accrued      += weight × (apr / 100)
                × (secondsSinceLastSettle / secondsPerYear)
                × multiplierAtStartOfWindow

The multiplier used is the one you held at the start of each settlement window, never the one you reach by the end of it, so the number is never flattered.

where the APR comes from

feeApr = (volume24hUsd × feeRate) / tvlUsd × 365 × 100
farmApr = min(feeApr, 500)

Pool figures come from the public GeckoTerminal index of Robinhood Chain, refreshed at most once a minute. Two honest caveats:

  • The APR is capped at 500%. Real observed fee APR on a small pool doing enormous volume can exceed 100,000%, which is arithmetically true and completely meaningless. Both the raw and the capped figure are shown.
  • Pools with non-positive reported depth are excluded entirely. The index really does report negative reserves for some pools, and dividing by those would invent enormous yields.
  • — Fee tiers are read from the pool name where present, and otherwise fall back to the dex's published rate.

how a nopp gets its pool

No pool address is hardcoded. Each nopp is a rule, re-resolved against the live index. Seats claim in order of how narrow their rule is, and a claimed pool is withdrawn from the pool available to later seats, so no two nopps ever share one. A rule that matches nothing leaves its nopp asleep rather than showing an invented pool.

noppruleresolved todepth
DRIFTthe deepest pool on the chainasleep
CHURNthe most traded pool in 24 hoursasleep
SPROUTthe newest pool holding at least $5,000asleep
BLAZEthe biggest 24 hour gainasleep
HUSKthe biggest 24 hour lossasleep
GRINDthe best fee yield for its depthasleep
ANCHORthe USDG/WETH majorasleep
PONSthe newest pair launched on Ponsasleep
SWARMthe most unique traders in 24 hoursasleep
GHOSTthe quietest pool still holding $25,000asleep

chain details

chain · Robinhood Chain (4663 / 0x1237)
rpc · https://rpc.mainnet.chain.robinhood.com
usdg · 0x5fc5360d0400a0fd4f2af552add042d716f1d168