MultiHookHost on Robinhood Chain
Uniswap v4 Hook Contract 0x83d6fa59bef503112887b16277cf559fdc93e0c4 on Robinhood Chain · MEV protection · Verified contract
- Volume (24h)
- $0
- Value locked (TVL)
- $8.77
- All-time volume
- $0.02
- Pools using this hook
- 3
- Swaps (24h)
- 0 (0 traders)
- Total swaps
- 2
What it does
Takes a fixed fee of up to 30 percent of swap output (split between platform and launch creator) and an optional anti-sniper trading delay and buyback-burn for newly launched pools.
How it works step by step
- Takes a fixed platform and creator fee from the unspecified side of every swap, accrued in owed[] balances.
- Enforces an optional anti-sniper gate that reverts swaps until a set number of blocks after launch.
- Optionally burns a slice of token buy output to the dead address on exact-input buys.
- Freezes per-pool config and creator at beforeInitialize and emits a canonical PoolPolicy event.
- Restricts pool initialization and per-pool config setters to one wired initializer address set once by the deployer.
- Swap behaviour
- On every swap, afterSwap takes platformBps + creatorBps of the unspecified-side amount into owed balances for the platform and the pool creator. Exact-input buys with buybackBurnBps set also send an extra slice to 0x...dEaD. beforeSwap blocks swaps before launchBlock + antiSniperBlocks and rejects exact-output buys when burn is enabled.
- Liquidity behaviour
- No liquidity callbacks.
- Fee behaviour
- On each swap, afterSwap takes platformBps + creatorBps (max 30 percent total, constructor-set immutables) of the unspecified-side amount and accrues it to owed[] for the platform and the per-pool creator (fallback to constructor creator). Fee applies to both exact-input and exact-output swaps. On exact-input buys with buybackBurnBps set, an extra slice up to 20 percent is sent to the dead address. Fee is settled via poolManager.take and claimed later via claim or pushOwed.
- Owner & admin controls
- Deployer can call setInitializer exactly once to wire the authorized Graduator; after that deployer has no authority. Only the initializer can call setPoolConfig and setCreator, and only before a pool launches (frozen at beforeInitialize). No owner, pause, or upgrade functions found; the contract is not a proxy. Creator and platform addresses and bps are immutable.
Enabled Uniswap v4 callbacks
beforeInitialize, beforeSwap, afterSwap, afterSwapReturnDelta
beforeInitialize: stamps launchBlock and a canonical PoolPolicy per pool, and rejects any initializer other than the wired one. beforeSwap: enforces anti-sniper window (swaps revert until launchBlock plus antiSniperBlocks) and rejects exact-output buys when buyback-burn is enabled. afterSwap: takes fee and burn amounts from the unspecified currency and returns them as hook delta. afterSwapReturnDelta: lets the hook take a share of swap output, which is the core fee mechanism.
Security & trust assessment
Risk level: medium (verified source, high confidence).
Who controls it: The deployer key has only a one-time power to set the initializer; after that no privileged key exists. The initializer (Graduator) can set per-pool config only before launch. A compromised or buggy initializer could set antiSniperBlocks up to 7200 and buybackBurnBps up to 20 percent for newly launched pools, but cannot change them after launch or alter fee bps.
Risk to user funds: The hook takes tokens or ETH from swap output via poolManager.take and holds them until claim. It can block swaps through the anti-sniper gate, and it can burn a share of buy output. It cannot move LP principal or pull funds from users beyond the fee and burn amounts. Owed balances can be claimed by the recorded recipients only.
Security findings
- [medium] High immutable fee take on every swap: afterSwap takes up to 30 percent of the unspecified-side amount plus up to 20 percent burn on exact-input buys. Fee bps are immutable, so the rate is fixed at deployment, but it is high relative to typical v4 fees and is paid by traders.
- [medium] Anti-sniper gate can block trading for up to 7200 blocks: beforeSwap reverts all swaps on a pool until launchBlock plus antiSniperBlocks, which can be up to 7200 blocks (about one day on mainnet). Trading on a fresh launch can be blocked for that window by config set at launch.
- [low] Hook custodies accrued fees before claim: The contract holds fee tokens and ETH in its balance until claimed, and burn transfers go to 0x...dEaD. Unclaimed owed balances sit in the hook with no expiry or withdrawal for an unreachable recipient.
- [info] Swap-direction-dependent accounting: Exact-output buys revert when buyback-burn is enabled, and the burn logic depends on the sign of amountSpecified and zeroForOne. Edge cases in unspecified-side accounting (int128 min handling) are clamped but add complexity.
Contract details
- Verified source
- Yes (MultiHookHost)
- Compiler
- solc 0.8.26+commit.8a97fa7a
- Bytecode size
- 7,700 bytes
- Upgradeable proxy
- No
- Detected patterns
- mev-protection, return-delta
Pools using MultiHookHost
- ETH / PFT (0.30% fee) — 24h volume $0, TVL $2.63, 0 swaps today
- ETH / CLF2 (0.30% fee) — 24h volume $0, TVL $2.60, 0 swaps today
- ETH / V3TC (0.30% fee) — 24h volume $0, TVL $3.54, 0 swaps today