Limit orders hook on Base

Uniswap v4 Hook Contract 0x6d4020e4b52ef3f14be09e319b73af3d896c00c0 on Base · Limit orders

Volume (24h)
$2.49
Value locked (TVL)
$0
All-time volume
$2.49
Pools using this hook
4
Swaps (24h)
1 (1 traders)
Total swaps
1

What it does

This hook charges an owner-tuned dynamic swap fee that steps up or down, possibly with different rates for approved quoters, and manages user bid positions that fill after swaps, while normal LPs can always withdraw freely.

How it works step by step

  • Sets a dynamic swap fee in beforeSwap from owner-set fee values, with special fee handling for approved quoter addresses.
  • Has a step-up and step-down fee mechanism with a fee floor, apparently adjusting fees based on recent fill activity.
  • Lets users place payable bids (range or limit-style liquidity positions) that the hook adds to the pool through its own PoolManager unlock, and lets users cancel them.
  • After swaps, it may check bids and close (fill) them automatically when price crosses, with an owner toggle for auto-close.
Swap behaviour
Before each swap the hook picks a fee, which may differ for whitelisted quoters and may step up or down over time. After the swap it may fill or close pending bids, but it cannot take tokens from the swap itself because return deltas are disabled.
Liquidity behaviour
No liquidity callbacks; LPs can add and withdraw freely through the pool. Bids placed through the hook are held as hook-owned positions and are returned by the hook's own cancel or fill logic.
Fee behaviour
Uses a dynamic LP fee set by the owner through setFees and adjusted between a floor and stepped levels. The exact maximum cannot be confirmed from bytecode, though a BadFee check suggests some validation. Fees go to LPs as normal pool fees.
Owner & admin controls
The owner can set fee values and step parameters, approve or remove quoter addresses, and toggle auto-close and other flags. Exact fee caps are not verifiable from bytecode.

Enabled Uniswap v4 callbacks

beforeSwap, afterSwap

beforeSwap: chooses the dynamic fee for each swap; afterSwap: records fills and may close or settle crossed bids.

Security & trust assessment

Risk level: medium, estimated (decoded bytecode, low confidence).

Who controls it: A single owner controls fee settings, quoter approvals and the auto-close flag. The worst case is raising swap fees within whatever unverified bound the code enforces.

Risk to user funds: The hook cannot deduct swap tokens or block normal LP withdrawals. Funds placed as bids sit in hook-managed positions, and the fee range cannot be confirmed.

Security findings

  • [medium] Owner-set dynamic fees: The owner can change the swap fee values and stepping. A BadFee check exists, but the actual cap is unknown from bytecode.
  • [low] Hook holds bid funds: Payable bids are turned into hook-owned positions, so users rely on the hook's cancel and fill logic to get their funds back.
  • [info] LP withdrawals unrestricted: Remove-liquidity callbacks and return deltas are disabled, so normal LPs cannot be blocked and swaps cannot be skimmed.

Contract details

Verified source
No
Bytecode size
11,160 bytes
Upgradeable proxy
No
Detected patterns
dynamic-fee, erc20, moves-currency, ownable, self-unlock

Pools using Limit orders hook