Introduction
Robinhood Chain hosts tokenized real-world assets (RWAs) — equities, ETFs, ETH and other supported tokens — that trade 24/7 but sit idle while simply held. YieldHoodFi is a liquid staking protocol that puts those assets to work.
When you stake a supported asset you get:
- A liquid receipt (
yhToken) — e.g.yhTSLA. Minted 1:1 against your deposit, it represents your staking position and stays transferable and composable across DeFi. - Yield in the same asset — stake Tesla, earn Tesla. Rewards accrue continuously at the pool's target APR and are claimable any time. $YHF is the separate governance token, not a staking reward.
How it works
Stake collateral
Approve and deposit a supported asset (Tesla, Apple or SpaceX) into its pool via stake().
Hold a liquid receipt
The pool is an ERC-20; it mints your yhTSLA 1:1. Transfer it, use it as
collateral — rewards always follow the current holder.
Earn & claim yield
Yield accrues in the staked asset (Tesla) every second. Call getReward() to claim,
or exit() to withdraw your principal and rewards in one transaction.
Because the receipt token itself is the pool, every mint, burn and transfer runs through an
accounting hook that checkpoints rewards for both sides. This means even if a yhTSLA
receipt changes hands, the reward stream is redirected to its new owner — it can't be double-claimed
or gamed.
Reward model
YieldHoodFi uses the battle-tested Synthetix StakingRewards accumulator pattern —
but the reward asset is the same asset that is staked (stake Tesla, earn Tesla). The protocol
treasury funds a pool by transferring the asset in and calling notifyRewardAmount(amount).
That amount streams linearly to stakers over a reward period (rewardsDuration, default
7 days), split by each staker's share of the pool. Target rates run 5–10% APR per market.
| Term | Meaning |
|---|---|
| rewardRate | Asset distributed per second = amount / rewardsDuration. |
| rewardPerToken | Cumulative yield owed per staked token, scaled by 1e18. |
| earned(account) | Yield (in the staked asset) an address can currently claim. |
| periodFinish | Timestamp the current reward stream ends. |
Because the reward asset equals the staking asset, the solvency check in notifyRewardAmount
subtracts staked principal from the pool balance before validating the rate — so principal can never
be paid out as rewards, and emissions stay fully backed.
Contracts
All contracts are Solidity ^0.8.24, built on OpenZeppelin v5 with
ReentrancyGuard and Ownable2Step.
| Contract | Responsibility |
|---|---|
| YHFToken | Governance token. ERC-20 + Permit, hard-capped at 1,000,000,000 (1B). Not emitted as a staking reward — used for protocol governance and utility; may be issued from an external platform. |
| YieldPool | Core. A single-asset staking pool that is also its own liquid receipt token (e.g.
yhTSLA). Stake → 1:1 mint, withdraw → burn, and yield paid in the same
staked asset. |
| PoolFactory | Deploys and indexes a new YieldPool for each asset. Each pool pays yield in the
same asset it stakes (stake X, earn X). |
Deployed addresses
Live on Robinhood Chain mainnet (chainId 4663). Click an address to copy, or open it
in the Blockscout explorer.
0x5E1936196DFd1a3069f1068269458c162D67F554
Explorer ↗
0xf46d030C61739a6b66f6aB3c20f55E1a283e3537
Explorer ↗
0xA4c0De77EFEE7F06cf8fA7CA0563439bC901fef9
Explorer ↗
0x322F0929c4625eD5bAd873c95208D54E1c003b2d
Explorer ↗
0x12ED3e98F68677e58FB35ab1665c292E73349671
Explorer ↗
0x337E83f53CA8E6752bc0b9c582c00b0a689010cE
Explorer ↗
notifyRewardAmount. Apple and SpaceX use demo asset tokens until real tokenized listings
are available. New assets are added by deploying a pool through PoolFactory.
Network details
Verified from docs.robinhood.com/chain/connecting. Robinhood Chain is a permissionless, Ethereum-compatible Layer-2 built on Arbitrum Orbit, with ETH as the native gas token.
| Property | Mainnet | Testnet |
|---|---|---|
| Network name | Robinhood Chain | Robinhood Chain Testnet |
| Chain ID | 4663 | 46630 |
| Native currency | ETH | ETH |
| Public RPC | rpc.mainnet.chain.robinhood.com | rpc.testnet.chain.robinhood.com |
| Explorer | robinhoodchain.blockscout.com | explorer.testnet.chain.robinhood.com |
An Alchemy RPC endpoint (https://robinhood-mainnet.g.alchemy.com/v2/{API_KEY}) is also
available and recommended for production traffic.
Contract interface
The primary entry points on YieldPool. Staker functions are permissionless; owner
functions manage reward periods.
Staker functions
amount of the underlying asset and mint yhTSLA 1:1.
Requires prior approve() on the asset.amount of yhTSLA and return the underlying asset.
Accrued TESLA yield stays claimable.account.totalSupply()).Owner functions
Quick start with cast
Security
- Contracts are OpenZeppelin-based with
ReentrancyGuardand two-step ownership (Ownable2Step). - Reward claims follow checks-effects-interactions; balances are zeroed before transfer.
- The receipt's transfer hook checkpoints both parties, so rewards can't be double-claimed via receipt transfers.
- When the reward asset equals the staking asset, the solvency check subtracts staked principal, so rewards can never exceed the funded amount and principal is always withdrawable.
Roadmap
| Phase | Scope |
|---|---|
| v1 | Tesla, Apple and SpaceX staking with same-asset yield, live on Robinhood Chain. |
| v2 | ERC-4337 gas-sponsored transactions, veYHF governance, fee sharing, Uniswap/Rialto liquidity. |
| v3 | Multi-asset vaults, cross-chain via LayerZero, security audit + production mainnet. |