Introduction
Shade Dark Pool
Shade is an institutional dark pool for Uniswap v4. Traders sign EIP-712 intents off-chain. A private matcher pairs complementary flow at the mid-market price. Settlement is atomic, on-chain, and only happens when both sides are filled — through a Shade hook installed on the target v4 pool.
The public mempool never sees your order. There is no AMM curve walk, no slippage band to game, and no gas spent until a match exists. The result is silent execution: size goes through at mid, or it does not go through at all.
How a private intent works
- The trader constructs an intent: token pair, size, mid-price bound, TTL, and nonce.
- The wallet signs the typed data payload. Nothing is broadcast to Robinhood Chain at this step.
- Shade’s matcher holds the intent in an encrypted order book and searches for a counterparty.
- On match, a solver submits both signatures to the Shade hook. The hook verifies, settles at mid, and emits a fill event.
What Shade is not
Shade is not a public DEX aggregator, not an RFQ-style request broadcast, and not a commit-reveal scheme that still leaks size. Unmatched intents remain off-chain until they expire or are cancelled by the signer.
Core guarantees
- Zero slippage — fills occur at the signed mid, not along a bonding curve.
- MEV resistance — hidden intents cannot be sandwiched while they wait for a match.
- Gasless placement — creating or cancelling an intent is a signature, not a transaction.
Intent {
poolId: bytes32
tokenIn: address
tokenOut: address
amountIn: uint256
midBound: uint256
nonce: uint256
deadline: uint256
signature: EIP-712
}Continue with Architecture for the matching pipeline, or Smart Contracts for hook addresses and settlement semantics.