Index / Vanilla swap
Vanilla swap Uniswap v4 hooks
Works with a normal swap path; no special hookData required to trade.
AllowlistSwap
Gate-controlled per-pool swap allowlist; beforeSwap reverts for unlisted traders.
AntiSandwichHook
Checkpoint top-of-block pool state and cap one swap direction to that price.
AntiSnipe
Launch guard — max buy (% supply), snipe tax on exact-input buys for N blocks after init.
AutoBurn
Burns burnBps of token output on exact-input buys via afterSwapReturnDelta.
BackGeoOracle
Geomean oracle that backruns its own pool so the recorded price is not stale.
BaseDynamicFee
Set the pool LP fee afterInitialize, then poke updateDynamicLPFee when conditions change.
BaseHook
Inherit this, declare permissions, gate callbacks with onlyPoolManager.
BaseV4Hook
Abstract base that re-implements v4 pool internals inside the hook for custom curves.
Buyback
Treasury-funded market buy when pool tick is at or below thresholdTick.
Clanker
Dynamic-fee launch hook: beforeSwap sets fee, claims, runs an MEV module, then takes protocol delta.
Constant sum
Replace xy=k with x+y=k so every swap fills exactly 1:1, using a NoOp beforeSwap.
Doppler
Whetstone bonding-curve hook: rebalance slugs before swap, migrate when proceeds cap hit.
DualPool
Uniswap ALF JIT hook: deploy multi-range LP around each swap, vault via ERC4626.
EulerSwap
Custom curve via beforeSwapReturnDelta: take input to Euler vaults, pay output, skip CLAMM math.
FeeRouter
afterSwap skims protocolBps of output to an immutable treasury address.
Full range
Force v2-style full-range LP: only the hook can modify liquidity, users mint a pool ERC20 instead.
Geomean oracle
Write a geometric-mean observation before any action that can move price or liquidity.
Iceberg
Encrypted limit orders — size and direction stay hidden until the tick is crossed.
JitVault
JIT lock blocks LP ops during swap; optional output skim accrues to vault balances.
Limit order
Rest liquidity at a tick and fill it in afterSwap when the pool trades through that price.
LimitOrderHook
Place out-of-range liquidity, fill on afterSwap tick cross, cancel or withdraw via unlock.
Liquidity bootstrapping
Linear-decay token sale via beforeSwapReturnDelta (LBP-style custom curve).
Liquidity lock
afterAddLiquidity sets unlock time; beforeRemoveLiquidity reverts until lock expires.
LiquidityPenaltyHook
Withhold JIT LP fees in afterAddLiquidity and donate a linear penalty on early remove.
LpRewards
Pull buy-side token rewards, then flush() donates pending balance to in-range LPs.
Median oracle
Ring buffer of post-swap ticks with onchain medianTick view.
MEV donate
Skim swap output to pending, then flush() donates to in-range LPs.
MevWindow
Elevated swap fee and blocked add-liquidity for mevBlocks after pool init.
NthBuyPot
Deterministic Nth-buy jackpot — potBps per buy, counter advances once per block, claim-backed.
Permissioned Pools
Per-currency allowlist enforced on swap and add-liquidity via permissions adapters.
Referral fee
abi.encode(referrer) in hookData pays refBps of swap output to the referrer.
ReHypothecationHook
Park idle LP in yield sources, JIT a hook-owned position on beforeSwap, unwind afterSwap.
Sell guard
Sell cooldown blocks rapid dumps; repeat sells in a window pay ramp fee.
SlippageFeeHook
Simulate the swap, measure the tick it would move, then price the fee off that slippage.
SniperTax
Launch LP fee decays linearly from startFee to baseFee over duration seconds.
Stop-loss
Tick-walk fill-on-cross stop loss via unlock-wrapped market sells.
SuckerPunch
Free ETH-pair buys, hold-time sell fee decay, same-block sell taxed as MEV.
SurgeFee
LP fee scales with swap size vs pool liquidity — no simulate-and-revert.
Take profits
Tick-walk fill-on-cross take profit on upward price crosses.
Trading days
Revert beforeSwap outside NY weekday cash hours (9:30–16:00 ET, fixed UTC-5).
Trailing stop
Peak-tick trailing stop with trail fee on sells after retrace.
TWAMM
Execute large orders over time by settling virtual TWAMM flow before each swap and LP change.
V2 pair hook
Run xy=k inside the hook: mint LP on the ERC20, NoOp the CLAMM swap with return-delta.
veLP
Curve-style vote-escrow on a v4 position: lock ticks, block early withdraw in beforeModifyPosition.
Volatility oracle
Require a dynamic fee on initialize, then ramp LP fee by elapsed time after deploy.
VolatilityFee
LP fee rises with |currentTick − lastTick| since the previous swap.
Volume tier
Cumulative swap notional unlocks lower dynamic fees for high-volume traders.
Zora Coin Hook
Creator coin hook: launch fee decay, LP positions on init, fee swap + reward distribution.