chapters· No keepers
23 · The autonomous LP

Compounding without keepers

The fee-to-liquidity loop with no keeper network, no vault, no performance fee — volume is the only operator.

Concentrated liquidity had a famous gap: V3-style positions earn fees, but never reinvest them — someone must collect, rebalance the amounts, and re-mint. A whole industry of keepers and auto-compounding vaults grew inside that gap, each adding a fee and a trust assumption. The hook closes the gap where it opened: in the pool itself — no keeper, no vault, no performance fee, no one to pay for growth.

The gap, and the industry it spawned

An LP position's fees sit outside the position. Left alone they are idle inventory — earning nothing, compounding nothing. The classical fixes all import an operator:

fixwho operates itwhat it costs
do it yourselfyou, on a schedulegas per round trip, attention forever, and every missed week is growth foregone
keeper networksbots paid a bounty per executionthe bounty — plus the job simply not running when it isn't profitable for the keeper
auto-compounding vaultsa protocol wrapping your positiontypically a performance fee on your yield, a new contract to trust, often a new token to hold

Note the shape: in every case the compounding is someone's business. It happens when it pays them, and it costs a margin that comes out of your growth.

The hook's answer: compounding as a side effect

The program's position compounds because trading happens — full stop. The auto-harvest fires inside a swap once pending fees pass the minimums; the compound share of both sides becomes the LP budget; the engine re-mints that budget into the position at the pool's live price, in the same transaction. Nobody is paid to do this, because nobody does it.

swap — fees cross minMain / minSecondary
auto-harvest fires inside the swap, under a hard gas budget
compoundShare of both sides → the LP budget
engine mints max liquidity the two-sided constraint allows, at the live tick
what doesn't fit → the carry, first in line for the next round· nothing leaks
deeper position → more fees per unit of volume → back to the top

Two details make this keeperless loop actually safe. The gas budget: an auto-run that would be too heavy reverts atomically — fees stay pending, the swap completes untouched, and the pool gravitates to the (optional, full-gas) manual harvest(key). The carry: minting needs both tokens in the ratio the current tick dictates, so the unmatched remainder is never sold, never donated to the market as slippage — it waits, and it compounds next round. The exact math lives in The compounding math.

No arbitrageur in the loop

This matters more than it looks. Vault-style compounders often swap the fee inventory to rebalance it before minting — and every swap pays the fee tier and crosses the spread, leaking a slice of your yield to the market (and to whoever arbitrages the vault's predictable flow). The hook's engine never swaps to rebalance: it mints what the budget allows at the live price and carries the rest. Growth costs zero spread, zero arbitrage leakage, zero rebalancing fee — the only thing between the fee and the position is a floor division.

0
keeper bounties
0%
performance fee
0
rebalancing swaps
100%
of the budget mints or carries

Growth that survives everyone

Because the loop's only input is volume, it inherits volume's indifference to the project's org chart. A live operator can tune compoundShareWad up and down as strategy changes (see Compound strategies); a surrendered program compounds at the frozen share forever. Either way, the position's growth is geometric in cumulative volume — each harvest deepens the liquidity that earns the next harvest — and no one's continued employment is a term in that equation.

the LP that owns itself

Combine this chapter with the last one and the full picture appears: a position that harvests its own fees, deepens its own liquidity, fuels its own buyback pot and burns its own supply — owned, in the surrendered limit, by nobody at all. Not a product that manages your LP: an LP that manages itself.

Keep reading

FAQ

How is this different from an auto-compounding vault?+

A vault is a wrapper: a new contract you deposit into, usually charging a performance fee, run by a protocol that must keep operating. Here compounding is native to the pool's own program — no wrapper, no deposit, no fee on your growth, and no protocol whose shutdown ends the service.

Why doesn't the engine swap fees to rebalance them before minting?+

Rebalancing swaps pay the fee tier and cross the spread — a permanent leak from your yield, and a predictable flow for others to trade against. The engine instead mints the maximum the two-sided constraint allows at the live price and carries the remainder, so growth costs zero spread.

What exactly is the carry and is it ever lost?+

Minting needs both tokens in the ratio the current tick dictates; whatever doesn't fit that ratio is the carry. It stays credited to the program, is first in line at the next compound, and appears in the views — nothing is ever sold off, donated to the market, or orphaned.

What if a compound would be too gas-heavy inside a swap?+

The auto-run operates under a hard gas budget in its own frame: if it would exceed it, it reverts atomically — fees stay pending, nothing half-executes, and the carrying swap completes untouched. The manual harvest(key) path with full caller gas picks it up.

Does compounding stop if the operator surrenders?+

No — surrender freezes the compoundShare at its current value and the loop keeps running on those terms forever. Volume remains the only input; the org chart was never part of the equation.