The mechanism · Algorithm 1, Ko 2026

λ is the share of the reserves arbitrage can reach in a block. Move it and the iceberg sinks or rises, and the real 21 Sep replay re-runs in your browser with the keeper's own model.

above water · activebelow · frozen, earning
λ
50%

λ: how much is reachable

The keeper's floor is 40%, so ordinary traders always find deep liquidity. Try 100% to get a plain AMM.

pool fee
reachable this block
50%
frozen + earning
50%
LP loss vs plain
−17.5%

Replay 21 Sep 2026

1,440 real Coinbase 1-minute closes. ETH +6.24%.

ETH/USD $2612–$2800cumulative LP loss, $ per $100k05.110.200:0006:0012:0018:0024h
plain AMM: $10.21Iceberg λ 50%: $8.43

The keeper's search

Every λ from 100% to the floor on the same day at 5 bps. Green is the λ the keeper would publish. Click a bar to try it.

Best: λ 40%, 19.1% less loss. On 7 days of real prices, the best λ at 30 bps is 100%: partial activity only pays at low fees.

One block, step by step

Two seconds in the life of the pool.

Scroll →

STEP 01

A block opens.

Base mints a block every 2 seconds. Until someone trades, the pool holds R: its total reserves, on both venues.

R · 100%
STEP 02

The first trade splits R.

λ·R becomes the active side. (1 − λ)·R is frozen for the rest of the block: it is not in the curve, so nothing in this block can touch it.

λ·R 50%
frozen 50%
STEP 03

Arbitrage sees only the tip.

Every trade in the block, the arbitrageur's included, is priced by x·y = k on the active reserves, with a 5 bps fee. Quotes never write storage, so quote == swap.

reachable
out of reach

the arbitrageur's reach stops at λ

STEP 04

The frozen part earns.

Idle reserves sit in Morpho vaults and are pulled out mid-swap only if a trade needs them. Next block, the reserves re-split at the keeper's current λ.

active
in Morpho ↑ yield
Inside one block

ETH reserveUSDC reservewhole pool · kactive · λ²k

What the arbitrageur can take

Within a block and before fees, trading reserves (x, y) to a new price p₁ yields (√(p₁x) − √y)². Only λ·R is in the curve, so the prize scales by λ.

whole pool exposed0.0336 units
Iceberg at λ 50%0.0168 units
kept from arbitrage this block50%

The paper's closed form

λ*(γ) = (1 + √(1+2γ)) / (1 + γ + √(1+2γ))

The on-chain kernel matches this to within 1e-16. The paper assumes zero fees; the keeper measures the fee instead.

Partially Active AMM (Ko 2026, arXiv 2602.09887) on 1inch Aqua & Uniswap v4 · Base mainnetBuilt at ETHGlobal Tokyo 2026 · GitHub ↗