Build with Signal
Signal v4 pools
Signal v4 is the launch every new token on Signal uses today. One transaction creates the token, opens its pool on the canonical Uniswap v4 PoolManager on HyperEVM (chain 999), places the whole supply in that pool and makes the launcher's optional first buy. Every swap in the pool runs through Signal's hook, which holds the launch's rules.
This section is for trading terminals, wallets, aggregators and indexers. It describes release 4.2, the factory open for new launches as observed on 12 October 2026, and the two earlier releases whose pools still trade. It does not imply a completed partnership or integration with any named product.
What is the same on every Signal v4 pool
| Property | Value |
|---|---|
| Pool | A Uniswap v4 pool. The pool has an id (bytes32), not an address |
| Pool key | currency0 and currency1 are the launched token and its pair asset in address order, fee = 0, tickSpacing = 200, hooks = the release's hook |
| Pair asset | An ERC-20 the factory admits. A HYPE pair uses WHYPE 0x5555555555555555555555555555555555555555 |
| Token | 1,000,000,000 supply, 18 decimals, minted once. No owner, no mint, no pause, no transfer tax |
| Liquidity | The whole supply is placed at launch, one-sided, in bands above the start price. No outside party can add, remove or donate liquidity afterwards. The hook itself adds fee-funded bids, and nothing removes any |
| Fee | The pool's own LP fee is 0. The hook charges the fee in the pair asset on every swap |
| Terms | Read from the hook: terms(poolId). Rates and rules are fixed at launch |
How the hook charges a swap
- A buy (pair asset in, token out) pays its fee from the input, before the pool trades the rest.
- A sale (token in, pair asset out) pays its fee from the output, after the pool has traded.
- The fee stays in the PoolManager as the hook's claim. Anyone can call
flush(poolId)to divide what has collected among the recipients the launch named. - Wallet-to-wallet transfers of the token are never charged.
The rate a swap pays is not one number. It is the pool fee, plus that side's tax, plus an opening fee while the launch's opening window runs, plus a size extra and a deviation extra where the launch switched them on. See fees and rules.
Eight things an integration must respect
- Exact input only. The hook refuses exact-output swaps (
ExactOutputUnsupported). - A buy fills whole or reverts. A buy stopped early by a price limit or the end of the book reverts with
PartialFill. Protect a buy with a minimum output, not with a price limit. - Opening rules can refuse a buy. While a launch's own windows run, a buy can revert:
Gated(it did not come through a router the factory approved),WhaleCap(its recipient would end above the wallet cap, or it came through a router that is not approved and so named no recipient), orOverBudget(this block's token budget is spent; this applies to every router, Signal's included). A sale is never gated, capped or budgeted. - The opening fee applies to sales too. A launch can open at up to 99% and fall in a straight line to its base rate over up to 90 minutes. Show the current rate before a user buys or sells inside that window.
- Read the rate at the moment of the trade. Use
feeRates,sizeRateanddevRate, or simulate the exact call. A stored rate goes stale in seconds during an opening. - Key a token by its address. On releases 4.1 and 4.2 the launcher can change the token's name and ticker (see identity). The address and the pool id never change.
- Some pair assets tax their own transfers. A pool paired with such an asset trades through Signal's taxed-pair router. See quote and trade.
- A pot is won only through an approved router. Where a launch has a pot, the Nth buy wins it only if it came through a router the factory approved. A buy through any other router takes the number and wins nothing.
Reading path
| Task | Page |
|---|---|
| Contract identities and ABIs | v4 deployments |
| Find pools and confirm they are Signal's | Discover v4 pools |
| What a trade pays, and when a buy is refused | Fees and rules |
| Quote, build and send a trade | Quote and trade |
| Index trades, fees and payouts | Events and accounting |
| Run a read against the chain | v4 read-only example |
| Indexed context and a ready-made event feed | Public data API and DexScreener adapter |
| Who can change what | Security and permissions |
Signal's earlier launch types (bonding curves and Classic pools) are documented in the pages that follow these. They use different contracts and a different ABI.