MochiYieldHook · live on Uniswap v4
TRADE YIELD.KEEP PRINCIPAL.
A Uniswap v4 hook that prices liquidity by time to maturity — fees scale with risk, implied rates stay sane, and PT/YT parity stays honest.
Market Overview
LiveTotal Value Locked
0.00%Active Markets
2
Vault Deposits
0.00 wstETH
Welcome back,
Trader
Overview
Total Value Locked
0.00 wstETH
0.00%
Implied APY
0.00%
PT @ 0.0000 ETH
Pool Fee
0.00%
0d to maturity
Parity Drift
100.00%
PT + YT vs underlying
Portfolio Performance
Last 30 days
Watchlist
wstETH PT
0.0000 ETH
wstETH YT
0.0000 ETH
THE PREMISE
In yield markets, risk isn't constant — it decays toward maturity. Flat-fee AMMs ignore that. So LPs get overpaid early, underpaid late, and nobody watches whether PT and YT still add up.
Yield liquidity is mispriced by default.
Flat fees sit on a position whose risk changes every single day as it approaches redemption.
PT and YT can silently drift apart.
Two pools, one underlying truth, and no referee making sure they still reconcile.
mochiyeild makes the hook the referee.
Every swap: re-price the fee by maturity, bound the implied rate, check parity, and emit an event Reactive can act on.
PT / YT CONVERGENCE
From now to maturity.
Split one yield-bearing asset into two. PT climbs toward 1.0 and redeems for principal at maturity. YT carries the yield and decays toward 0as it's earned. Together they always reconcile to the underlying — that's the parity the hook watches.
Illustrative — normalized to underlying = 1.0. Shaded band marks yield earned so far.
THE HOOK DOES FOUR THINGS
Four checks, one swap.
Maturity fee
calculateFeeForMaturity()~1% far out → ~0.05% near expiry
Implied-rate guard
beforeSwap()rejects economically irrational PT prices
Parity monitor
afterSwap()emits ParityDriftDetected across PT/YT
Reactive trigger
keeper react()cross-chain callback to realign
MATURITY FEE CURVE
Fees scale with risk.
~1% far from maturity, decaying to ~0.05% near redemption. Volatility falls as PT approaches par, so LP compensation tracks the risk that's actually there — not a flat number that overpays early and underpays late.
Far (>90d)
1.00%
Near (<7d)
0.05%
BEFORE / AFTER
What the hook changes for LPs.
- Flat fee, regardless of risk
- No implied-rate sanity check
- Parity left unmonitored
- LP eats impermanent loss blind
- Maturity-scaled fee
- Bounded, sane implied rate
- PT/YT parity watched every swap
- Drift triggers a Reactive callback
ARCHITECTURE
What's live, and what's honest about being next.
The hook and vault run on Uniswap v4 today. The cross-chain loop is wired and tested on testnet — here's exactly where each layer stands.
Hook
beforeSwap / afterSwap
YieldVault
PT / YT mint + redeem
Markets UI + live hook events
on-chain event feed
ArbitrageRouter.restoreParity
records drift; full arb next
Reactive Keeper E2E
Lasna; not on local Anvil
PROOF
Live numbers, straight from the hook.
TVL
0.00 wstETH
Current fee
0.00%
Days to maturity
0
Parity drift
100.00%
BUILD STATUS
What ships today, what ships next.
Live
- MochiYieldHook (beforeSwap / afterSwap)
- YieldVault PT/YT mint + redeem
- Markets UI + analytics feed
- Live on-chain hook events
Next
- Full ArbitrageRouter parity arbitrage
- Mainnet Reactive keeper loop