Replies: 4 comments 1 reply
-
Yes please lol, its a pain when you're tryna send a bundle totally unrelated to somebody elses and they get included and kicks you out. |
Beta Was this translation helpful? Give feedback.
-
How would the final miner payment logic look like for a multi-bundle? Would it still be 'pay miner via block.coinbase if all the preceding TXs from all searchers in the bundle succeeds"? And if one Tx fail, the entire bundle fails? If so, hoping we can have some meaningful ways of troubleshooting who's the culprit so we don't have to needlessly pull apart our own code thinking it's reverting due to something on our end. Having said that, the most likely culprit to cause the whole bundle to revert will probably be me... |
Beta Was this translation helpful? Give feedback.
-
v0.2 proposalIn v0.1, at most a single bundle was included in a block. In v0.2 we implement bundle merging whereby many bundles can coexist in a block. The merging of bundles is done at the MEV-geth level, using the following algorithm. What this procedure does is, after sorting the bundles by their "raw" scores as obtained when applied at the head of the block, applies the most profitable one and checks whether the "corrected" score after this application for the following one is above a certain threshold. It includes it as the next bundle if it is, discards it if it isn't, and continues with the iteration. This finally produces a candidate block, which is filled up with regular transactions according to their gas price. As in v0.1, the candidate Flashbots block is ultimately compared with the vanilla geth block for miner profitability. The chosen threshold is taken as Finally, we note that for |
Beta Was this translation helpful? Give feedback.
-
I think you'll get a much bigger win at much lower cost by simply fixing the bundle profitability algorithm. By having an incentive compatible profitability algorithm you will incentivize searchers to actually bundle themselves rather than the current optimal strategy which is to submit multiple bundles, one for each opportunity the searcher fines. The current profitability algorithm not only discourages submitting multiple bundles, but it also discourages devoting R&D into actually finding second tier opportunities because it is more valuable to get my best opportunity included (optimize that code path) than to find lesser opportunities that will just be beat out by my own primary opportunity. MVP ProposalFor each submitted bundle, build and execute a full block, filling it from the pending pool like normal. Compare the total coinbase balance at the end of each simulated block to determine which bundle is most profitable. If you also want to add bundle merging, you can use the output of this profitability algorithm as the input for the aforementioned merged block construction. v2 ProposalYou could further offload this work to searchers by having them submit their bundle with some additional metadata and a bond:
The bundle merger can then spot check or lazily check (not inline) that searchers are not lying about the |
Beta Was this translation helpful? Give feedback.
-
In the current implementation there can only be one bundle included per block.
This means bundles that need to be at the top of a block compete with bundles that do not need to be at the top of a block.
Merging multiple bundles per block could significantly increase searcher hit rate and miner profitability.
A simple proposal would be to add a boolean field in the flashbots bundle request that specifies if the bundle can be merged / included after other bundles.
Beta Was this translation helpful? Give feedback.
All reactions