YieldETF
Explore vaults

Contracts

Small contracts, no owner, no upgrade path. Deployed on Robinhood Chain mainnet.

Addresses

ContractAddress
GRAD10 vault0x8e775C4e621684e7DB8e491BE69445512bD8b4b1
RWAX vault0x1C683a8b5092553956D97338819b5877184C0Ce9
YLD1 vault0x8DC9D5a13235824D1B1533b9DC64472A8217358F
GraduationRegistry0x1F1b30651689a11BF7816F65cAB826965826209C
BootstrapExecutor0x93EaDB7bc0d9F985F4871eb8835Eaa7897C68C9C
Pons v2 factory (upstream)0xA5aAb3F0c6EeadF30Ef1D3Eb997108E976351feB

The machine-readable list is at /api/contracts.

Architecture

IPonsV2

graduation facts, locked pool ids, depth

GraduationRegistry

permissionless listing, eligibility rules

YieldETFVault ×3

ERC-4626 shares, NAV, epoch rebalance

reads flow left to right; each vault delegates swaps and fee collection to its executor module

Sources are published and verifiable on Blockscout. The vault core is deliberately small enough to read in one sitting; swap execution and Uniswap v4 fee collection live behind an executor module set once at deployment.

GraduationRegistry

FunctionWhoWhat
register(token)anyonelists a Pons v2 graduate, snapshots its pool
refreshSnapshot(token)anyoneupdates the depth used for weighting
isEligible(token)viewlisted, 7+ days old, 25+ ETH deep

YieldETFVault

FunctionWhoWhat
deposit()anyone, payablemints shares at NAV for the sent ETH
redeem(shares)holderburns shares, pays ETH at NAV from idle balance
rebalance()anyone, once per epochharvests fees, recaps weights, pays the 0.002 ETH tip
totalAssets()viewidle ETH plus the executor's position mark

The vault has no owner functions at all: no pause, no allowlist, no parameter setters. The constants (15% cap, 24h epoch, 0.002 ETH tip) are compiled in.