Pools
A Uniswap V4 pool is identified by five values, together called the pool key.
| Field | Meaning |
|---|---|
currency0, currency1 | The two tokens, ordered by address. Native ETH is the zero address, so it is always currency0. |
fee | The liquidity provider fee, in hundredths of a basis point. 3000 is 0.30%. |
tickSpacing | How fine the price grid is. |
hooks | The hook contract's address, or the zero address for no hook. |
Change any one of the five and you have a different pool. That is why a pool is tied to one hook address forever.
Fees and tick spacing
Common pairings on Robinhood Chain:
| Fee | Tick spacing | Typical use |
|---|---|---|
1% (10000) | 200 | New tokens |
0.25% (2500) | 25 | Established pairs |
0.30% (3000) | 60 | General |
0.05% (500) | 10 | Tight pairs |
0.01% (100) | 1 | Stable pairs |
| Dynamic | 200 or 8 | The hook sets the fee |
A lower tick spacing lets liquidity providers place tighter ranges, at the cost of more gas when the price crosses ticks.
Dynamic fees
A pool created with the dynamic fee flag has no fixed fee. Its hook sets the fee, either per swap or by updating it from time to time. A dynamic-fee pool must have a hook.
Starting price
A pool's starting price is set once, in the transaction that creates it. It cannot be changed afterwards. After that, the price only moves through trades.
You give SuperHooks the price the natural way, for example "3000 USDG per ETH". It sorts the tokens and converts the price for you.
Pools that already exist
Anyone can create a pool for any pool key. If the exact pool you ask for already exists on-chain, SuperHooks imports it into your dashboard as live instead of preparing a new one, and tells you its current price.
Liquidity
A new pool is empty. Nobody can trade in it until liquidity is added. SuperHooks does not add liquidity. See Limits.