Limit orders hook on Arbitrum

Uniswap v4 Hook Contract 0xe6c4c2367bc7b015cb895c6ef892c97b721d60cc on Arbitrum · Limit orders

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

What it does

Appears to be a swap-time hook that intercepts trades on a pool and settles amounts itself, plausibly for limit-order style execution, based only on decoded bytecode.

How it works step by step

  • Records the pool key and initial price when the pool is initialized via beforeInitialize
  • Runs custom logic in beforeSwap that can set a return delta to alter the swap's settled amounts
  • Runs custom logic in afterSwap that can set a return delta for post-swap settlement
  • Calls take on the pool manager to move currency to a recipient
  • Reverts with PartialFillUnsupported when a swap cannot be fully filled
  • Restricts callbacks to the pool manager with OnlyPoolManager
Swap behaviour
beforeSwap and afterSwap run custom logic, and return deltas let the hook change the amounts settled with the pool manager.
Liquidity behaviour
No liquidity callbacks.
Fee behaviour
Uses the pool's static fee.
Owner & admin controls
No admin controls found.

Enabled Uniswap v4 callbacks

beforeInitialize, beforeSwap, afterSwap, beforeSwapReturnDelta, afterSwapReturnDelta

beforeInitialize stores pool key and initial price; beforeSwap and afterSwap run swap logic and may settle currency via take and return deltas; beforeSwapReturnDelta and afterSwapReturnDelta let the hook alter the amounts the pool settles.

Security & trust assessment

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

Who controls it: No privileged role identified in the decoded selectors; centralization cannot be fully assessed without source.

Risk to user funds: The hook can move currency via take and adjust swap deltas, so it can hold or redirect swap amounts for the pool, but the absence of source limits certainty about how funds are handled.

Security findings

  • [medium] Return-delta swap settlement: Hook uses beforeSwapReturnDelta and afterSwapReturnDelta and calls take, so it can take or supply tokens during swaps and alter settlement amounts.
  • [info] Partial fills unsupported: Bytecode includes a PartialFillUnsupported error, indicating the swap path rejects partial fills, which can cause swaps to revert under some conditions.
  • [info] Caller restricted to PoolManager: Only a poolManager restriction selector is present, so swaps are gated to the pool manager and not to arbitrary callers.

Contract details

Verified source
No
Bytecode size
3,772 bytes
Upgradeable proxy
No
Detected patterns
moves-currency, return-delta

Pools using Limit orders hook