Dashboard

Every swap, every block, live.

The HyperCore price moves, the Aven fee answers in the same block, and arbitrage pays LPs instead of the bot. All measured from the live Arena.

Block

—

Block time

—

Arena saw it

—

Feed

polling

Bot

—

Last trade

—

Oracle

—

Your wallet

Connect a wallet to see your own swaps here, straight from the chain.Portfolio →

LPs kept more on Aven than on the plain 0.30% pool

—

Waiting for Arena stats.

Arena /stats · arb (bot) trades · $ at the HyperCore oracle

LP fee income · Aven

—

Arena /stats

LP fee income · plain 0.30%

—

Arena /stats

Aven fees that match §6.3 exactly

—

0 of 0 Aven swaps

recomputed here from each trade's inputs

Verified on chain (A + B)

—

0 of 0 checked by the Arena

FeeComputed vs formula · PoolManager Swap event

Window0 blocks · 0 swaps · 0 moves

Latency

The fee moves in the same block as the market.

Watch a price move block by block: when the oracle moves, when each fee answers, when each arb lands.

Aven fee reprices after a price move

—

Waiting for a price move or a shock.

measured on this stream

Plain 0.30% pool reprices

never

a static fee can't see the market

pool key fee 3000

A 60 s-delayed oracle reprices

60 s

the delayed design in the replay

Replay engine design (avenDelayed)

Settlement latency the hook adds

0 blocks

Aven and plain swaps land in the same block cadence; the hook costs gas, not time

see gas in the swap inspector

Price moves and shocks

none yet in this window
Move the price or fire a shock (operator controls below), then watch it here block by block.

Price move → first arb mined, per episode

Arena clock, ms. Each pair is one price move or shock. The fee itself answers in 0 blocks every time (above).

Plain 0.30%Aven
00.20.40.60.81

Market

Prices, gaps and fees, per block.

Eventsnone in this window

Pool prices vs the HyperCore oracle

One sample per block from the Arena stream. A price move opens a gap; arbitrage closes it.

Collecting blocks…

Gap vs the oracle

bp, signed: below 0 = the pool is under the oracle (stale low).

Collecting blocks…

Fee a swap would pay now

AvenHook.previewFee per direction (I6: equal to what beforeSwap charges) vs the static 0.30%.

Collecting blocks…

On chain

Every swap, from the chain itself.

Read from HyperEVM logs, not the Arena: what each swap met, the oracle and perp mark the hook read in that block, and the proof. The time window doesn't apply here: it's the whole history.

Waiting for the deployment config…

Swaps on chain · Aven

—

PoolManager Swap events

Aven swaps verified in this browser

—

@aven/core verifyLogs on each tx's logs

Price bumps answered

—

Aven swaps that met a new HyperCore oracle and priced it in their own block

FeeComputed.oracleRaw, swap to swap

Perp mark inside Hyperliquid's 1-min range

—

loading Hyperliquid candles…

FeeComputed.markRaw vs candleSnapshot 1m

What each Aven swap met, block by block

From the chain: the pool price before the swap and the HyperCore oracle and perp mark the hook read in that block. Plus Hyperliquid's own API, the 1-minute close at that block's time (interpolated between the first and last block's timestamps).

Needs two Aven swaps in the scanned range.
eth_getLogs (Swap, FeeComputed) · api.hyperliquid.xyz candleSnapshot
No swaps in the scanned range yet.

Gap = (price − oracle) / oracle. Every swap on both pools, by anyone: the Arena bot, shocks, and wallets swapping on the site.

Swap inspector

One swap: before, during, after.

Pick any Aven swap: the stale price it met, how the hook priced it, what it left behind.

No Aven swaps yet. Fire a shock or move the price; the first swap appears here.

No extra fee

Every pip above the base is the market's.

Each fee is checked against its inputs and against the chain.

Checks over every Aven swap in this window

  • —Fee = base + gap·50 + premium·50 + stress·20, clamped to [0.05%, 1.00%], on each swap's own inputs (0/0). Every pip above the base comes from a live market term.
  • —Swaps with no live term paid exactly the base 0.05% (0/0). That's 6× cheaper than the plain pool, so there's no hidden surcharge.
  • —On-chain verify: the FeeComputed inputs reproduce the fee (A) and the PoolManager charged that fee (B) (0/0).
  • 0/0After a price move, the retail-side fee went back to the base in —. Any lingering stress decays with the 60 s mark anchor.

Right now

Waiting for a live quote…

Fee charged vs the gap it was charged for

Each dot is a swap. Aven dots sit on the formula line (base + 50·gap, capped); dots above it also carry premium or stress. Retail-side swaps pay no gap term, so they sit at 0 on the base. The plain pool charges 0.30% whatever the gap.

Aven · gap onlyAven · + premium or stressPlain 0.30%§6.3 formula (gap only)
0.00%0.20%0.40%0.60%0.80%1.00%0 bp50 bp100 bp150 bp200 bpgap charged (Aven) · gap before the swap (plain) →fee

Where fees go

What LPs were paid for.

What Aven LPs were paid for

Fee $ by term, over every Aven swap in this window.

—

LP fees, Aven

  • Gap: the stale price$0.00—
  • Perp premium$0.00—
  • Base 0.05%$0.00—
  • Mark stress$0.00—

How each Aven fee was set

Swaps by regime. Fallback means a precompile read failed, and the swap still went through (I1).

—

Aven swaps

  • Priced by live terms0—
  • Hit the 1.00% cap0—
  • Base only (no surcharge)0—
  • Fallback 0.30%0—

Fee per swap

Swaps per fee band. Plain always lands in 0.3%; Aven spreads with the market.

Plain 0.30%Aven
0001110.05%0.05–0.2%0.2–0.3%0.3%0.3–0.6%0.6–1%1% cap

Throughput

What flowed in and out.

Volume through each pool

$ of swap input per 40 s, valued at the oracle. Arb and retail swaps.

Plain 0.30%Aven
$0$0.2$0.4$0.6$0.8$123:50:0023:51:2023:52:4023:54:0023:55:2023:56:4023:58:0023:59:20

LP fee income, running total

Arb trades, in order. $ at the oracle.

Needs two arb trades.

Arbitrage bot profit, running total

What the stale price paid out to the bot. Lower is better for LPs.

Needs two arb trades.
In and out of each pool
PoolSwapsarb / retailaUSD inaUSD outaETH inaETH outVolumeFees
Aven00 / 00000$0$0.00
Plain 0.30%00 / 00000$0$0.00

Amounts from each swap's PoolManager Swap event. In = paid into the pool by the swapper.

Bulk run

Many shocks, block by block.

Bulk run

Each round shocks both pools by the same swap (alternating buy and sell), then the bot arbs them back in a later block. Real swaps on HyperEVM (999), paid in HYPE gas by the Arena's wallet.

Starting a run needs the admin token (Operator controls below). Anyone can watch a run here.

No bulk run yet. An operator can start one above; it shows here for everyone.
Arena GET /burst · every swap is also on the trade tape below and verifiable on /verify/<tx>

Live feed

Every trade, as it lands.

Trade tape

Arena bot log + receipts (FeeComputed) · newest first · click a row for the fee proof

$ figures are valued at the HyperCore oracle price.

Operator controls (Arena admin)+

Controls

Admin only. The bot and shock wallets belong to the Arena service.

Bot idle·last block #—·last trade —
or open the page with ?admin=<token>. Kept in this tab only.

Shock both pools: the same swap on each, from the shock wallet

Tip: buying aETH pushes both pools above fair, so the bot's arb is a sell and shows the pure gap fee.

Bot and counters