Metis v8: Solving The Quotation-Execution Drift
Hey everyone, meow here.
We just shipped Metis V8, a major update to our routing engine ($2T+ in lifetime volume), which aims to holistically solve the biggest issue in onchain trading today: what we call the quotation execution drift.
In past simpler days, routing used to be about one thing - find the best quote at the point of the snapshot of the chain at the point of request. But times have changed dramatically, and what we observe is that the biggest impact to users is not merely on finding the quote (tho obviously we work super hard on it), but instead in the difference between quotation and execution.
By the time your trade executes, the chain has moved — other trades fill, MMs update, pools rebalance. So the price you saw and the price that lands aren't the same. That gap is the Quotation-Execution Drift (QE Drift).
The easy thing would've been to just keep showing users the "best" quote and call it a day. But that quote isn't real if it's not what lands in your wallet. So instead we went after the actual hard problem — solving QE Drift holistically, from 4 angles:
- Slippage Penalties — Some AMMs quote tight then slip on execution. We track historical slippage on every market and penalize the ones that don't deliver. Our quote may look different from other aggregators, but on execution it's closest to what actually lands in your wallet.
- JIT Onchain Finalization — Instead of locking the route early, V8 carries multiple candidates into execution and finalizes the splits onchain at the last possible moment. What lands reflects the best price at execution, not 400ms ago.
- Sub-2 Slot Latency — JIT routing is only as good as the state it routes on. gRPC streaming + our own validator shreds (3rd largest on Solana) give us sub-2-slot state freshness. Beam, our own txn infra, delivers straight to validator leaders at p95 0-1 slot landing. Quote against fresh state, land before it moves.
- Rapid Quotation Mode — Chasing the last few bps takes time, and on volatile tokens that's time the price keeps moving. So we expose the choice: a quote in <100ms that skips marginal optimization, for trades where landing fast beats squeezing bps.
Feel free to ask anything you want - will check back later.
There is a lot more to come - both on the metis router side, and also on the ultra execution side. Also probably overdue to write something on the history of metis too!
Link: https://x.com/JupiterExchange/status/2057037276295864734?s=20