Back to Blog
Just-in-Time APY for Lending Markets on HyperEVM

Just-in-Time APY for Lending Markets on HyperEVM

Rosetta Research Team
Sep 1, 2025

TL;DR

Most lending dashboards only update when transactions fire. That hides the real picture: debt is accruing and rates are shifting every block, even when markets look quiet starting with @felixprotocol and @0xHyperBeat vaults.

Go to https://www.rosetta.sh to see it in action. If you're running a vault or allocator, reach out to integrate block-level rate feeds directly into your strategies and vault logic.

Most dashboards update only on protocol events (supply, borrow, repay, withdraw). That flattens the line between events and misses continuous interest accrual, which subtly raises utilization and reprices IRMs even when markets are "quiet."

Our system recomputes borrow/supply rates every block, applies protocol math deterministically, and gates reallocations by all-in switching costs. This is the foundation behind Rosetta's yield surface and execution path.

USDT0 vault
USDT0 vault

If you're allocating stablecoins across vaults, stale rates are your enemy. Even with no transactions:

Event-based dashboards only refresh when someone supplies, borrows, repays or withdraws. Between those events, they show a flat line. But the reality is different:

  • Borrowers accrue interest every block → utilization creeps up higher
  • Utilization feeds into the interest rate model → borrow and supply rates reprice.
  • Allocators see spreads that look profitable on paper but vanish once costs and true accrual are factored in.

Stale snapshots lead to false signals, bad rotations and wasted gas.

Our Approach: Make the Block the Unit of Truth

Rosetta's indexer treats each block as the atomic unit of truth:

  1. Accrue borrows forward: even in "empty" blocks, debt grows deterministically.
  2. Recompute utilization + rates: every block, with the protocol's own math.
  3. Apply config changes exactly: reserve factors or new IRM parameters take effect at the block they're set, not later.
  4. Roll up to vaults: multi-market vault yields update continuously, not just when something happens.

The result: a clean per-block time series that matches protocol economics, not just protocol events.

Block Level Indexing

Why now (Hyperliquid makes it practical)

Hyperliquid's (@hyperliquidx) architecture is well-suited to block-cadence indexing and programmatic execution:

On HyperEVM today

  • Near-second blocks → 1-sec granularity for accrual ticks.
  • Consistent block cadence → less variance in sampling windows.
  • Direct state access → reliable vault and market discovery.
  • Hypercore execution → programmatic routing with firm order controls and cost checks.

Why It Matters

With block-level rates, allocators and strategies can:

  • See the real curve – no more flat-line lies between events.
  • Rotate intelligently – switch vaults only when spreads clear all-in costs.
  • Backtest with confidence – historical rates reflect what actually happened block by block.
  • Monitor vaults continuously – yields update even when underlying markets look "quiet."

What's next - Reach out

Parabol Labs is rolling this indexer into @rosetta_hl data backbone.

This indexer is only the foundation. By wiring it into Rosetta's backbone, we're setting the stage for something larger:

  • Smarter allocators that don't just observe rates, but act on them the moment spreads justify it.
  • A unified yield map across stablecoins, perps, and vaults — revealing surfaces that no event-based system can.

If this resonates whether you're running capital, building vaults, or exploring yield primitives — reach out. The next releases won't be public by default, and early partners will shape where this goes.

If you'd like to use it via API or integrate it into your application, DM us and let's connect.

Rosetta | Yield infrastructure for Hyperliquid