ESP 0-0 BEL · fee 1.10% · 50% ESPNOR 0-0 ENG · fee 1.10% · 50% NORARG 0-0 SUI · fee 1.10% · 50% ARGESP 0-0 BEL · fee 1.10% · 50% ESPNOR 0-0 ENG · fee 1.10% · 50% NORARG 0-0 SUI · fee 1.10% · 50% ARG
Lucid · Uniswap V4 Hook

The first market where the odds are the price. Live match state, on-chain, rewriting every swap fee the moment the game moves.

Trade the swing.
Read the game.

Try it on Testnet
The Lucid oracle reads the match
The Oracle

Every price is a prediction.

Lucid reads the match as it unfolds — score, momentum, red cards — and writes it straight into the fee. The market moves the instant the game does.

Two ways to play.

The mechanic
Back an outcome.

Back an outcome.

Swap into either team's outcome token from your wallet. The price you pay tracks the live implied odds — permissionless, fully on-chain.

Trade
Ride the momentum.

Ride the momentum.

A goal rewrites the odds and the hook drops the fee to invite flow. Catch the swing early and the underdog side trades at a discount.

React

Match state in. Live fees out.

How it works
01

The oracle reads the pitch

A keeper pushes live match state — score, minute, red cards — into the on-chain MatchOracle, which derives an implied win probability for each side.

02

The hook rewrites the fee

On every swap, LucidHook.beforeSwap reads the oracle and sets a dynamic fee: it compresses on momentum swings and spikes near full-time when outcomes get volatile.

03

You trade the momentum

Swap into Team A or Team B outcome tokens. Buying the favorite costs a skew premium; catching the underdog mid-swing is cheap. Price is the game, live.

Fees that feel the game.

The Hook

⚽ Goal scored

Fee compresses

Momentum swings the odds hard. The hook drops the fee to invite flow and let the market re-price fast.

0.30 → 0.08%

⏱ 89ʹ · 1–1

Fee spikes

Tight scoreline, seconds left, maximum uncertainty. The hook widens the spread to price the volatility.

0.30 → 1.05%

🟥 Red card

Skew shifts

One side goes a man down. Directional skew makes buying the new favorite pricier and the underdog cheaper.

±35% skew

Built on X Layer.

Chain 1952
Lucid — never miss a match, built on X Layer

X Layer is an EVM-equivalent Ethereum L2 by OKX on the OP Stack — up to 20,000 TPS, 1-second blocks and negligible gas. That's the foundation a live, per-swap dynamic-fee market needs, and it's what Lucid runs on.

Outcome assetsTeam A / Team B ERC-20s
Odds sourceMatchOracle (keeper feed)
Fee logicLucidHook · beforeSwap
Gas tokenOKB
Block time~1s
SettlementFull-time result

Common questions.

FAQ

A wallet on X Layer testnet, some testnet OKB for gas (from the faucet), and $LCD to trade into outcome tokens. That's it — everything is permissionless.

On every swap, LucidHook.beforeSwap reads the current match state from the MatchOracle and computes a dynamic fee: base fee, plus late-game volatility and scoreline tension, minus momentum compression, adjusted by directional skew.

Each match is a paired market: one ERC-20 for Team A winning and one for Team B. Their price tracks implied probability and settles to 1 or 0 on the full-time result.

No. Lucid runs on X Layer testnet for the World Cup build. It's a demonstration of match-driven dynamic fees — not financial advice.

Uniswap V4 hooks let a pool override its fee per swap from arbitrary on-chain state. Lucid points that state at a live match feed, so price behaviour reacts to the game in real time.

Trade your first
match.

Try it on Testnet