Today Flashbots is releasing v0.4 and introducing mega bundles to the Flashbots Network
Mega bundles will let us innovate faster, support more bundles and will lead to new searcher strategies and more miner revenue
A thread on mega bundles 🧵👇🏻
Flashbots is an open MEV marketplace. On 1 side of the market users submit "bundles" of txs. On the other miners run an auction & place the highest gas price bundles at the top of blocks.
This allows miners of any size to extract MEV, which is important for economic security.
In the early days of Flashbots only 1 bundle could be included in a block. That greatly limited our impact.
Our v0.2 release introduced multiple bundles per block through a merging process & gave miners control the number bundles they wanted to include
Merging bundles is very computationally intensive.
First, every bundle is simulated to figure out what its gas price is.
Then we place the highest gas price bundle at the top of a block.
Next we try to merge the 2nd highest gas price bundle by simulating the top bundle and 2nd bundle together.
If the 2nd bundle reverts then it clashes with the first (e.g. targets the same opportunity) and is discarded.
If the bundle does not revert then we repeat this process by attempting to merge the 3rd, 4th ... Nth bundle.
Most miners stop at 2 or 3 bundles because merging gets exponentially more difficult with more bundles.
MEV-geth, our software for miners, manages this process by parallelizing it & choosing the most profitable combination / # of bundles.
But there are limitations to what can be done at the MEV-geth level, and beyond a threshold it doesn’t scale.
A last note before turning to mega bundles.
To date bundles have been ranked according to gas price, not profitability. That meant that gas intensive MEV (e.g. liquidations) is at a disadvantage compared to less gas intensive MEV (e.g. arbs).
However, the most profitable thing for miners isn't always to sort bundles by gas price. Some MEV can be left on the table.
But, sorting by gas price was the most feasible thing to do due to the limitations of merging at MEV-Geth. So we made that tradeoff.
Today Flashbots is taking a big step forward by releasing mega bundles.
Mega bundles are bundles that are merged *before* being sent to miners.
Miners can, if they wish, move the problem of merging and ordering bundles upstream, including but not limited to the Flashbots Relay.
Moving the merging & ordering problem upstream enables specialization.
At Flashbots we have exciting plans for scaling bundle merging by orders of magnitude. We also have ideas for new ways of ranking bundles to support new strategies & improve revenue for searchers and miners.
Mega bundles also enable faster product iteration. Previously shipping features meant coordinating updates to MEV-geth across miners accounting for ~85% of ETH hash rate. Not easy.
Now, in many cases, we can simply update our relay’s mega bundle code.
We’re building a whole team of superstars that will tackle just this problem.
If bundle merging, EVM optimization, or new transaction optimization features interests you please reach out :).
Mega bundles are an important step towards full block proposals. As we laid out in On The Design of MEV Marketplaces, separating block builders and block proposers is integral to ensuring MEV is long term aligned with crypto.
Contrary to Multicoin's claims, minimizing MEV is core to Flashbots' mission & products.
That shows from our funding of fairness and ethics research, work on MEV aware dApps, & 100s of users that have used Flashbots to skip the mempool & protect themselves from frontrunning.
More importantly, Multicoin is lying about Eden: it is not permissionless OR transparent.
Eden is a permissioned system with a multisig that has exclusive control over MEV payouts to miners. The Eden team alone decides whether miners are mining "Eden blocks" and should be paid.
Dropping what is probably the most alpha packed thing I've written so far: an in-depth writeup of my strategy for a highly competitive MEV opportunity, the Synthetix Ether Collateral Liquidations, along with code
Blog post contains:
- My process from start the finish
- Explanation of why I made the design decisions I did
- How I sped up data collection
- A few gas optimizations
- Explanation of my economic strategy
- My novel bundle submission strategy
- Code snippets
- Many links
Repo contains:
- The only (I think?) open source example of how to backrun transactions
- Monitoring tools I made
- Contracts used for execution, including dydx flashloan
- Contract for data collection
- my somewhat embarrassing messy Hardhat testing env
The beating heart of every blockchain is how space is allocated within a block.
With major changes to how Ethereum's blockspace market works in the near and medium term we'd like to share how Flashbots thinks about designing MEV marketplaces.
2nd: attest to this with a proof-of-work and propagate it to the network.
Prior to widespread MEV extraction, the 1st job was mainly ordering txs by their gas price, with optimization at the network lvl.
However, since MEV extraction is widespread now, the the job of miners has changed. Now to produce the most profitable block miners must find the optimal ordering of transactions within a block.
This is exponentially more difficult than sorting by gas price.
Fatal flaws in a bot, a sort of on-chain virus, a trojan horse token, and arbitrage gone wrong
Join me in looking at the latest MEV bot exploit in this thread 👇🏻
The victim today tried to arbitrage the CHUM token (!) for ~0.01 ETH in profit, but in the process had 30 WETH transferred out of their wallet.
They only interacted with Uniswap v2 pools, how did this happen!?
Searchers optimize their contracts to the extreme to do very specific things very efficiently.
However, occasionally they have a need to do random things & add in functions that can be used for to execute basically any arbitrary transaction in a contract