Yield that stays a token.
Fees accrue in the share price, not a reward contract. The position stays a plain ERC-20 — so it earns here while it works somewhere else.
We would lose a yield comparison.
So we are not having one.
Yield here is a commodity — set by the pool, not by us, and quoted next to a hundred alternatives with longer track records.
- Our APY is higher than the vault you are already in.
- Points, boosts and emissions make the headline number work.
- Trust the backtest.
Rate claims are comparable, refreshed daily, and decided by whoever subsidises hardest.
- The yield-bearing thing is an ordinary ERC-20.
- Accounting is unmodified ERC-4626 — no rebase, no claim, no epoch.
- So the same capital can be earning here and posted as collateral there.
Verifiable from the interface, and it does not decay when rates move.
Four calls, and none of them are unusual.
The whole lifecycle is the ERC-4626 interface as written. Every non-standard addition is custom code somebody else has to write.
Deposit
deposit(assets, receiver)
You send the pool asset. The vault mints shares at the current rate, rounding down in its own favour.
Earn
harvest()
Swap fees land in totalAssets. No new shares are minted, so every existing share is worth more.
Hold, or go use it
transfer(to, amount)
Post it, sell it, LP it, wrap it. The vault does not care where the token sits — the claim travels with it.
Redeem
redeem(shares, receiver, owner)
Burn shares, take the underlying at that block’s rate. No epoch, no queue, no cooldown, no exit fee.
One deposit, indexed to 100
Illustrative, 11.4% fee APR. Your share count never changes; the value of each one does.
Hover the plot to read a day.
Not what the vault does, but what it does that will surprise your accounting.
- No rebase
- Every cached balanceOf stays correct.
- No claim step
- No second token, so yield cannot be stranded.
- No epochs
- Everything settles in the block it is sent.
- No withdrawal queue
- Exit liquidity is the vault position itself.
- No receipt NFT
- Fungible, so it is poolable and priceable.
- No transfer hooks
- Nothing fires when a market takes custody.
One deposit. Two jobs. At the same time.
Elsewhere, capital that is earning is capital that is parked. Here the share is a plain ERC-20, so it can do both at once.
redemption value after 180 days
borrowable against the same shares
Read this honestly. The left column is the vault’s own accounting, simulated at the inputs above. The right is what the form permits — no market has listed the share, so the borrow figure describes the design, not a position you can open.
Most yield receipts are expensive to accept.
Risk teams rarely decline on the yield. They decline because the receipt needs custom code, a new oracle path, and an untested liquidation route.
This is about integration cost, not safety. Given equal diligence, this shape costs the least to accept — an audited rebasing token is still the better risk.
The whole integration is two view calls.
No adapter, no keeper, no reward stream. If you support any 4626 vault, the marginal work is a config entry and a risk review.
- Price sourceconvertToAssets(1e18) × your existing feed. No new feed to commission.
- Liquidation pathredeem() to underlying in the same transaction. No queue, no cooldown.
- Supply capSet one. Conservative beats not at all.
- Reward handlingNone. There is no second token to route.
- UpgradeabilitySee the status section rather than taking our word here.
- What we provideAddresses, ABIs, a fork-test harness, and an engineer on a shared channel.
The parts a risk team will actually ask about.
The pricing story has to survive review, so here it is including the parts that do not flatter us.
What moves the share price
What cannot move it
Where the risk actually is
The unflattering version, because you will find it anyway.
The design is composable today. Listings, liquidity and the audit are not.
Deployed to Robinhood Chain mainnet (4663). Vault 0x7e92f269…2D055A77, WETH 0x82e92fD4…8723c56C. Read it with the row below — this code can hold real deposits and has not been audited.
Not started, and the contracts are already live. Asking a market to list the share is asking them to underwrite unaudited code. Size exposure accordingly until the report exists.
Full interface, virtual-offset inflation guard, property tests against the standard’s rounding.
Zero. Every capital-efficiency claim here describes what the design permits, not a live position.
None. Redemption through the vault is currently the only exit.
There is none. No owner, no pause, no upgrade path, no setter — harvest() is permissionless and takes no arguments.
Not a listing today — a design review while the audit runs, so the day the report lands there is already a risk team that understands the mechanic. The technical work is done. The trust work is the whole job.