How it works, precisely.
A factual description of what the protocol does. For information only, not an offer, recommendation, or promise of any outcome. Fear & Greed is an autonomous on-chain protocol on Robinhood Chain, launched through Long.
The mechanic
$FNG launches on Long with the MSTR stock token as its numeraire: buyers pay in MSTR, and the pool's Uniswap v4 hook (Doppler's rehype hook) takes its fee from each trade in the currency that trade brings. Buy-side fees are therefore MSTR; sell-side fees are $FNG. The token itself is a plain ERC-20 with no transfer tax.
FNGDistributor is the pool's configured fee receiver. Anyone can call harvest(), which calls the hook's collectFees for $FNG; released MSTR is counted by balance delta, so MSTR sent to the contract directly counts too. Any $FNG that lands in the distributor (the sell-side fee) is sent to 0x…dEaD by burnFng(), which anyone can call.
Every 10 minutes the keeper reads every $FNG balance and token-age from the transfer log, computes each eligible wallet's weight, splits the epoch's newly harvested MSTR pro-rata, adds it to each wallet's lifetime cumulative, builds a Merkle tree over (address, cumulative), publishes the snapshot, and posts the root and the snapshot hash on-chain.
The keeper submits the claims itself and pays the gas, every epoch, for every holder. claim(account, cumulative, proof) pays cumulative minus whatever that account has already received, straight to that account, and anyone may submit it, so the allocation survives the keeper. Nothing is ever sent to the caller. Amounts under 0.0005 MSTR would cost more gas than they move, so they roll into the next epoch. This site never connects a wallet.
The formula
At epoch time T, for every wallet with balance b ≥ 10,000 and token-age start s:
multiplier = 1 + min(T − s, 30 days) / 30 days // 1.0× → 2.0× weight = b × multiplier share = weight / Σ weight × epoch budget // integer math, dust carries over cumulative = previous cumulative + share
Token-age is conserved. When a wallet receives Δ tokens, its age start becomes the balance-weighted average (s·b + s′·Δ) / (b + Δ) where s′ is the sender’s age start, or T for tokens coming from the pool, the distributor or a mint. The sender’s age is unchanged. This makes age impossible to farm with a fresh buy, neutral under splitting or merging wallets, and proportional under partial sells.
Excluded from every epoch: the zero address, 0x…dEaD, the distributor, the Uniswap v4 PoolManager, and any address the keeper publishes in the snapshot’s excluded list.
See how your share works
Every epoch is split by balance × how long the tokens have been held. Longer holders carry more weight. This shows the formula, not a forecast.
You’d carry 1.50× the weight of a same-size holder who just bought in.
Illustration of the pro-rata formula on a hypothetical epoch allocating 1 MSTR. It is not a prediction, quote, or promise. Real epochs depend on trading volume and can be zero.
The numbers
Epoch length, eligibility and the excluded list are keeper parameters published in every snapshot. The 9-minute minimum, the allocation cap and the claim rules are enforced by the contract.
Contracts
The $FNG token, the distributor, the keeper and the reward token are published here at launch, each linked to the explorer and resolved by address rather than by symbol.
Published at launchFNGDistributor is a single, non-upgradeable contract: no proxy, no pause, no owner withdraw. Its test suite includes a fuzzed invariant that the sum of every claim never exceeds what was harvested and that the contract balance always equals harvested minus claimed.
Security & risk
The contract prevents the keeper from allocating MSTR that does not exist and from replacing a root faster than every 9 minutes. It cannot prevent a wrong allocation inside those bounds. The mitigation is publicity: every snapshot is reproducible from public data, and a wrong one is provable.
MSTR is a tokenised debt security issued by Robinhood Assets (Jersey) Limited. The issuer can pause it, block addresses, adjust its multiplier for corporate actions and burn balances under its terms. If the distributor or your wallet is blocked, claims fail until unblocked.
Amounts depend entirely on third-party trading volume through the Long pool and can vary or be zero. There is no APR and nothing is guaranteed.
The pool, its fee hook and the share of fees that reach the distributor are Long’s and Doppler’s. Anyone can create another pool for an ERC-20, and trades routed elsewhere pay no fee to this protocol.
Token prices can move materially and pool depth can be limited. You may lose the entire value of your holdings.
If the keeper stops, allocation pauses until it resumes; fees keep accruing in the distributor and nothing already claimable is affected. The ledger shows the age of the last root.
Robinhood stock tokens are not offered to US persons. Restricted persons may not participate. Counsel has not yet reviewed this structure.
Smart contracts and keepers can contain bugs. Do not interact with more than you can afford to lose.
Informational only. Not financial, legal, tax, or investment advice, and not a solicitation to buy any asset. $FNG is a token for interacting with an autonomous on-chain protocol; it is not a security, share, deposit, fund interest, or a claim on any entity or its profits. Distributions are protocol-executed allocations of a third-party token, carry no voting rights and no dividend or income entitlement, depend on third-party trading activity, and can be zero. MSTR stock tokens are issued by Robinhood Assets (Jersey) Limited and are not shares of Strategy Inc. Token prices and distributions can move materially and you may lose the entire value of your holdings. Restricted persons (incl. US persons) may not participate.