Quotient documentation
Quotient is a PropAMM venue on Elysium, Kinetiq's L2 for Hyperliquid. Professional market makers keep
inventory in the venue and refresh one packed quote per pool every block or two. Traders and routers fill
against the best quote through ordinary Uniswap v4 swap paths: the Universal Router, the V4Quoter, or any
router that can call PoolManager.swap.
We are the venue, not the market maker. The contracts enforce the rules makers choose (expiry, decay, size caps, strict freshness) and never take a view on price.
Start here
- Market makers: Maker onboarding walks from registration to a live quote, then the quote encoding spec defines every bit of the slot you push.
- Routers and aggregators: Aggregator integration covers pool discovery, quoting that matches execution to the wei, and executing through the Universal Router.
- Developers: the SDK reference and the contract interfaces.
- Everyone: the security model states who can do what, and what you must trust.
How a swap works
- Elysium produces a block about every 100–150 ms. Makers refresh quotes with
updateQuotes, one transaction covering all their pools. - A taker calls
PoolManager.swapthrough a router. Our hook'sbeforeSwapruns instead of v4's curve. - The hook scans the pool's makers, drops any that are paused, expired, stale (in strict mode), out of inventory or over their per-block cap, prices the trade against each remaining quote, and fills from the best one.
- Inventory moves as ERC-6909 claims inside the PoolManager, so no token transfers happen inside the
swap. The hook emits
Filledand accrues the protocol fee (1 bp by default, hard-capped at 10 bp).
Network
| Elysium mainnet | Elysium testnet | |
|---|---|---|
| Chain ID | 99901 | 99801 |
| Public RPC | https://rpc.elysium.kinetiq.xyz | https://testnet-rpc.elysium.kinetiq.xyz |
| Explorer | https://elysium.kinetiq.xyz/explorer | https://elysium.kinetiq.xyz/testnet-explorer |
| Gas token | HYPE (18 decimals) | HYPE (18 decimals) |
| Block time | ~100–150 ms, real canonical blocks | same |
| Ordering | by priority fee within a block, single sequencer, no public mempool | same |
The public RPCs are shared and rate-limited; use a provider endpoint for production traffic.
Mainnet contracts
Deployed 9 November 2026. Elysium has no official Uniswap v4 deployment yet, so the venue runs on its own copy built from the pinned v4 commits (byte-for-byte; the canonical Permit2 is reused). Launch caps are on: each maker can hold at most $1,000 of inventory per pool, and each pool at most $1,000 in total. The contracts are not audited yet.
| Contract | Address |
|---|---|
| PropHook (quotes, inventory, swaps) | 0xa093ff06394cC4A3F8fe77f407963B333AF72888 |
| PropFactory | 0x6e6ffd672af58d7183e77ac61b932f8bee63aaa4 |
| SimpleRouter | 0xe5cc33506b8893a981200387976f8e235595659b |
| HYPE/USDC pool ID | 0xc38b79f541cf767a470519f16022491d49992ec2d5a9b0888831e0f37ec9e35d |
| PoolManager (Uniswap v4) | 0xce39f2fc6dd2923d814fa5fb2fdf53ac80bd3c9b |
| V4Quoter | 0x7c072bc437d9c0917f8874a765c5741c7cb4a4b1 |
| StateView | 0x8e928ae74a1cf26ef063d5772eb78af0cad76ecc |
| Universal Router | 0xa575a5c97da14c34d8d7f5b2c9a09c580d4e6a3d |
| Permit2 (canonical) | 0x000000000022D473030F116dDEE9F6B43aC78BA3 |
| USDC (canonical) | 0xb47c4C8F73F009CC0C0d3f92B388d13E293F0B65 |
| WHYPE (canonical) | 0xbA876237B0F021A6c6D852d6c26E107997cC5E81 |
The HYPE/USDC pool key is native HYPE (address(0)) / USDC, fee 0, tick spacing 1, hooks = PropHook.
Market makers who want to quote it: start with maker onboarding and get in touch.
Testnet addresses are in the SDK (getDeployment(99801)) and on the contract interfaces page.