Motivation
- Gas prices are unpredictable
- Users don’t know how much they are going to pay
- Miners don’t know how much revenue they can expect
- MEV has exploded over the past year and we need better ways to capture it
Existing solutions
- Oiler
- Viable as a price hedge, but not when actual delivery is desired
- Physical futures are more foundational
- Relies on oracles
- Flashbots
- Does not solve the unpredictable gas price problem
- Does not avoid over-bidding either since competition is ingrained at all levels
- searchers compete with each other
- mempool transactions still compete with bundles
- bundles from other solutions like flashbots compete
- Relies on SGX to maintain privacy
- Vulnerable to transaction bundles getting exposed in uncle blocks
- Vulnerable to spam/DoS since failed bundles don’t cost anything
- Restricted to payments to coinbase as a means of paying for bundles, does not fit all use cases as is
Components
- Futures contract
- Supply-side listing
- Demand-side buying
- Trading
- Dispute resolution
- High block frequency chain for timestamping
- Initially, centralized server
- Delivery
- ?? Mining software is an unknown here
We can write our own, but miners aren’t gonna use it
- mev-geth indicates we can write our own and still get adoption
- Have to research what’s in use currently and how we can integrate
Futures specification
- Miner M
- Block range [B_start, B_end]
- Initially, fixed ranges of 1000 blocks (~4 hours)
- Position + Gas limit L
- Initially, fixed chunks of 21k gas
- Allow any position as a possibility
- Minimum block production guarantee B_rate
- Serves as maximum number of tx allowable against this future
- Gas price G
- Premium P
Supply side
- Miner provisions futures supply in contract