New Ethereum talks, every Monday. The week's conference uploads by event, in your inbox.

Loading player…

Fantastic Extractable Value and Where to Not Find It - Tom Schmidt

ETHGlobalSat, Oct 9, 2021, 12:00 AM

Tom Schmidt of Dragonfly Capital talks about turning MEV into something to be harnessed, rather than it being a problem necessary to be removed. ---------------------------------------------------- Follow us: https://twitter.com/ETHGlobal​ Check us out: https://ethglobal.co​ Email us at: hello@ethglobal.co

Transcript

yes cool does this look good all right great uh hi everyone uh i'm tom schmidt i'm a partner at dragonfly capital we're a crypto adventure fund and uh this is fantastic extractable value and where to not find it uh which which may be a little different than the title that was given um just to be totally self-contained i'm gonna give a very brief overview of mev uh generally speaking you know smart contract platforms or blockchains they they specify transaction correctness but they don't release ordering um so there's sort of a you know assumption that hey within a block um transactions should be ordered by gas price right it should be ordered by people who want to pay the most people who want to pay the lease it's an auction but it's not actually mandatory it's not specified and even within there it's difficult to know hey if two people want to do the same transaction and how do we know you know which transaction was broadcast first the globe the mempool is sort of global it's really hard to know you know how should transaction ordering be done fairly and normally this isn't really a big deal right with something like bitcoin um if we're just sending money back and forth um you know i don't really care that much if you send your bitcoin before i send my bitcoin um for for most purposes but on a smart contract platform you know these transactions have economic value um where maybe there's a really good trade opportunity and i want to get it before you do or maybe there's an arbitrage or maybe there's a liquidation and i want to get it before you can get access to it and so um there's actually really large amounts of value being held in the ability to sort of arbitrarily reorder or exclude transactions from a block um and so med sort of refers to this idea which is there's value in transaction ordering um specifically when there's economic activity occurring um and so a lot of the problem space that we explore sort of discusses around well how do you minimize mev how do you redistribute mev who should actually get access to that value um because it continues to grow the more sort of economic activity actually occurs on these platforms um so a couple different you know very more specific flavors of how that what that looks like um when we talk about liquidations most lending platforms today um compound ave maker when alone becomes under collateralized or under the the required ltd threshold um anybody can step in and basically recapitalize the loan um and penalize the the initial uh borrower with a with a small penalty so i can come in and you basically top up your underwater loan and and get money for it and um you know for most designs right now it's a first-come first-served scheme where uh the first person to actually go in and and recapitalize the loan gets that you know five percent bonus or 13 bonus or whatever it happens to be and so there's this massive race to actually win that money and we sort of see this in the chart on the right which is uh dx liquidations over time which slowly and slowly get more competitive this is uh every new color is a new address and you can see they're all sort of competing each with each other to design new strategies and be the first one um to get that that very limited set of opportunities so liquidations are only a very small percentage of the total med space but they're very competitive um another sort of you know segment and chunk that we talked about is sort of around decentralized exchange um and there's a couple different flavors again within here um front running again pretty straightforward if you see someone who's about to get a good trade deal their transactions are sort of floating in the mempool um maybe you should go and get it before then and and you can sort of uh get a really you know cheap cheap asset before somebody else has a chance to buy it um back running is is similar but a little bit different where uh you know with an amm um if i make a trade and maybe i introduced too much slippage so the the mid price of the amm moves dramatically off of market um an arb opportunity pops up where someone else can come in and basically sell that really overpriced asset back to the back to the lps back to the amm um and lock in a nice profit that way um sandwiching is is sort of a combination of the two where um if i see you about to go and make a large trade i can uh make it i can buy that asset before you so sort of move up the price that your your trade is going to get executed at um you're now going to buy at a higher price and get a worse execution uh and then i'm going to then come back and sell that really marked up asset back to the lps um and so i'm sort of profiting both ways um so there's more even more flavors um like that within the deck space but at a high level overview these give you so maybe some more concrete ideas of you know what does mev mean when it comes to um being in d5 um and why are we even talking about this you know this sounds kind of esoteric well it's actually a pretty big deal um millions of dollars a day um get getting made by reordering transactions and and uh you know extracting this ndv by winning these liquidations winning these arbitrages and um there doesn't really just be any sign that that it's slowing down it just continues to grow day over day month over month um and i think you know a kind of bigger point beyond just the monetary angle is your med doesn't exist in the vacuum um when med gets really large um you can really degrade the user experience um people really want clean deterministic experiences when they use a blockchain they don't want their transaction to fail when they want to make a trade because someone's front running them people want good executions right people don't want to get you know their faces totally ripped off and so um you know if experience of using a blockchain or using something like ethereum continues to do great that can be really bad and sort of stop us from from achieving the vision and the mission that we have um additionally you know i mean he kind of must be extracted for chain security which is the point film it in his blog post which i tend to agree with um which is basically you want everybody to be making as much money as possible if they're a minor um because if you don't you have sort of adverse selection right the people who can make more money mining are going to mine more often and that might centralize control of the chain within within their within their purview right if i have really cheap electricity i might be able to mine more than someone has uh you know inexpensive electricity um and the same thing happens with any view or if i'm able to make more money per unit by extracting this mev i'm going to be mining more than you will and that obviously it checks ufx chain security um and and so we've sort of seen you know mmd is a big thing um it's important for reasons beyond sort of the clear monetary reasons um and and so i think the analogy i sort of think of is uh when there's high gas prices uh devs start to optimize for low gas uses right they start to gas off their contracts to you know uh drop down the natural gas price of executing they look at other chains they look at roll-ups they try to do things to minimize gas usage uh i think right now we're in sort of a high energy environment so you know what do what are devs doing basically um to serve uh in response to sort of this change in the ecosystem and i think sort of one way to think about it it's sort of like any ecosystem um where you know when there's outside pressure there's outside influence um it's going to change things are not static um so this is the tawny fox or sorry tiny owl it's an owl in sort of northern scandinavia it generally comes in sort of one or two colors sort of this brown color on the left which obviously blends in better with the woods um and then the sort of gray white color on the right which bends and blends in better with the snow uh and basically as a result of climate change you know winter is getting warmer there's less snow and so uh basically this brown uh variant of the owl sort of been out competing and uh winning out over this uh uh white version of the owl um and i think of medium sort of a similar sort of evolutionary pressure we have this new predator this new thing that's entering the ecosystem and you have to figure out what you're going to do you have to basically adapt or die um and i think that's sort of the most interesting area of exploration for for me right now within d5 uh so what do but you know specifically what do if you're a developer uh well one option is you can just sort of roll over and die um and so this is just uh some random block that i pulled off of the polygon explorer but you know this is it's pretty endemic and i think most people who you know use polygon on a regular basis will sort of you know relate to this in some way where um uh you know getting a failed transaction getting front run uh having someone else you know scoop in front of your your trade uh it's a pretty common pretty common feature and so i think you know if you don't do anything people of course you know profit profit motivated individuals will go and find ways to to go extract any v um and that could really ruin the user experience um if you're a protocol dev um or if you're an application dev um another sort of thing teams are doing is basically embracing it and saying hey med is going to happen but we should at least benefit from it right like uh someone's going to get screwed either way so let's find some way to actually like you know capture some of that for ourselves um and as we sort of discussed in the past few panels uh you know a lot of l2s are looking this way where they're like hey you know we should actually be able to get some of the med that's going to occur in our roll-up um because we don't want to give it a potential business source and and you know i'd rather have the internal than have it be sort of externalized given away to some you know random bot um and i think there's maybe even even a path forward where maybe uh you know dapps take their own mvv and they give it a token holders or they hold it in the treasury um and and so to a certain extent you know um all users are equal but maybe some users are more equal than others and and maybe some people deserve the mev uh uh more so than you know some some random bot or some random minor somewhere i think the third option is kind of the most most interesting and more likely most likely um which is you can prevent it by adapting um and so you know i think about what's the problem here like look what are sort of the constraints that we can play with the main issue basically or the main sort of problem is that um transactions on ethereum right they are they can most of the time be made by any arbitrary address um and the transactions are all the information within the transaction is public and while the transactions waiting to get mined it's sitting in a public mempool so anyone can come in they can see exactly what you're doing um and they can they can see your your actual transaction while it's waiting in that in that public mempool um so you're just sort of a sitting goose or you know sitting duck while you're while you're just waiting there um uh you know waiting for your transaction to get mined um so we sort of have this our bot deployer um on on the right just absolutely uh copying this this random user trying to you know make a nice little trade so i think when we think about the design space it's like well how can we change some of these assumptions right how can we make it so maybe it's not any arbitrary address how can we make it so it's not a public med pool how can we make it so it's a public mempool but maybe the transaction contents aren't public and that's sort of the place that i would say those devs are sort of sort of playing with so you want to prevent mev what do you do well one option is just hide it um and with hiding it again takes a couple different forms um one of the more popular forms especially for application devs um is to get rid of that that public mempool that we just talked about and instead just send the transaction right to a minor um right the mempool is not required i can just give pay a miner directly to my transaction um and then i avoid the whole med issue entirely so um one inch has this integrated arch swap has integrated where i can check a box and they will send my transaction not to a mempool but they'll send it directly to flashbots or tai chi network and then a miner will just mine it um it's great because my transaction is not going to fail um and i'm not going to get front run and so um we see more and more devs moving this way and i suspect that like um this will also be an increasingly popular option as becomes more easy more easy to integrate um so you again you just sort of get rid of this this public mempool issue uh unfortunately you also do have to trust the person that you're working with in order to do it right that give you good you could send this to tai chi network and then they could go and front run you but uh so probably not an optimal long-term um um solution but certainly it's feasible right now another option is is sort of playing with like a semi-private or semi-public command pool um so it's it's not quite the same as the private transaction but it sort of achieves the same effect with with no trust so you know keeper dao's hiding book is sort of like this where it's only really accessible to white listed bots so people can see it but they can't really get access to it um so i can submit a transaction and you can submit a transaction it's sort of hiding in this sort of pseudo-public mempool um these white-listed bots can come along see our transactions mine them for us and then they can send that med back to users so it's not it's it's a kind of a public transaction but it's kind of not a public transaction um but in any scenario that anybody is still sent back to us at the end of the day um and then the last sort of solution here is again it's it's not a these are public transactions in the public mempool but the contents of the transaction are not public um so one of the yeah again sort of throwback one of the popular ways people used to do this i think micro actually you know covered a lot of this in her talk is um using list submarine or submarine sense which is a commit reveal scheme where users basically send transactions send first transaction um that has the content of their transaction and sort of the the value that they want to send um but it's obviously all encrypted and then at a later transaction maybe even in a later block um then they send the reveal which actually executes the transaction and so obviously there's a lot of ux overhead um and it's not ideal for all scenarios but um you're still going through a public mempool um right and you're still sort of uh you're having a minor mind you um but because the actual transaction contents are are encrypted until a later date um you you're kind of safe for the most part from from from uh you know flashback or uh bot coming in and totally ripping your face off and and sandwiching you or arbitraging your whatever it might actually be so uh there's a couple different scenarios people use to uh hide mev either by sort of isolating themselves from the men pool or sort of encrypting the transaction contents um but another sort of scenario or another sort of solution that some people are employing is just unionized um so instead of hiding the med um let's at least you know take it for ourselves instead of just litting anybody else like let a minor little bot take it um so b protocol is an example of this where uh b protocol holds on to you know users compound positions um and then co-invest so um in reality your liquidation buffer is actually a little bit better than it would normally be um because they sort of you know co-deposit alongside you and so that means that you know if you fall below that that new liquidation buffer from the from what the protocol is invested alongside you um you're not actually liquidatable on compound because you still have this the buffer on compound itself but you're liquidatable on on b protocol right they say hey actually you're below our liquidation buffer but you're not below the liquidation buffer on the compound and that means that white listed addresses within the protocol can liberate you um and and sort of you know re-collateralize the system but those those profits are then redistributed back to yourself so hey maybe you get liquidated but you get account of that of that of that fee and so in reality you know it's a little bit better than just sort of being raw and being exposed on something like compound um and again going back to an earlier slide um keeper dao and the hiding game they have sort of a generalized version of this but they have a very directly applicable version with k compound sort of the exact same idea where um hey let's create our own little sort of like pseudo little network or sort of pseudo ecosystem um within something like compound or with this and within something like maker and then um when it's only accessible to whitelisted addresses and then when people do those liquidations we distribute the fees amongst all the users as opposed to uh having some random compound bot come in and sort of you know uh knife you in with the liquidation um another but they're all sort of you know co-op model right where it's like hey you know some of these go back to without treasury or some of these go back to token holders uh but this is also possible on an individual level so um blocks rap has made this this service called background me where um if you're gonna make a trade on an a m such as uniswap or sushi swap um they will then see if you're introducing a back running opportunity between arbitrage like how are you are you moving the the mid market price too much and they will come in and they will basically create a bundle they will background you on your behalf and give you a cut back of the arbitrage that you introduced so instead of having it be sort of co-opified you know you sort of have this hand trick agreement with with blocks route where they just give you back a cut of the arbitrage of the slippage that you're introducing so um you know it's it's again sort of unionized but but not in sort of this token holder dao style way it's just uh someone's providing a really nice service for you um d5 savers are doing the same thing with wikipedia protocol as well where the d5 saver will just go and you know sort of save your your position for you but they won't um uh they won't actually sort of distribute it to some sort of dow or something like that uh and so you know ultimately there's maybe a little bit of a risk here you don't want the the pinkerton you know miners to come in and you know bust the faces off of a bunch of you know d5 d-gen traders there's definitely risk to unionizing and so you know maybe the answer is instead of unionizing maybe we should just evolve maybe maybe we should change um and i think this is definitely a possibility where some protocols might just be too enviable to be salvaged it's like it's like trying to make a faster course um and you see this a little bit with you know a lot of sort of the on-chain order books in the early days like oasis or you know arguably kyber was sort of the reserve model where it's like okay or maybe even earlier version of synthetics where just like there was just too much background and there's too much front running it's just too easy to get mvv'd and so this maybe isn't really a feasible model for uh the stage of ethereum that it's at today um and so maybe we should use something to do something different and i would argue that sort of the rise of rfqs um in the last you know a few months or so are are sort of representative of this where um this graph on the right is um one-inch volumes by protocol um and excluding dota which i think had sort of a weird uh sort of you know fluke or uh sort of spike um over the past month or so um rfq is when you look at the one just native rfq um 0x um cash flow um all those rfqs combined um now they're their second largest source of liquidity second largest source of volume behind unisoft v3 so they're larger than curve larger than unity two larger larger than sushi uh these these are rfq models don't have mev um when you make a model uh or with rfq when you make an order you specify a specific taker address so again you don't have this arbitrary address issue where some random bot can come in and sort of fill your order your order is made for you specifically made for your address and so um you know it can only be filled by you and if it's not then no no enos can come in and take it um and so um it's actually like a sort of novel approach to sort of old school sort of novel approach to how to get around med and you know get around some of these gas issues um and i think maybe phil was mentioning this earlier but you know again this is all maybe even a little bit of throwback to sort of centralized coordinator slash matching engines um on some of the early order book dexes like paradox or gydx where um you know we all can sort of sign our intents to trade we have one trustworthy entity um that actually does all the executions so there's no arbitrary address no one else can come in and fill and it's in their business interest to fill correctly right like if you're the matching engine on ftx um or you know on dydx you don't want to be ripping off your users because if they if you are they will see it and they'll move and they'll go somewhere else and so you want to be as fair as possible when it comes to actually doing doing execution um cow swap is is i would say sort of the the closest analog today uh where they use sort of a decentralized um network of participants that basically act as a matching engine where people different people sign their intents to trade again sort of like a uh uh data or an ass order and then when they overlap um they have this sort of decentralized uh group of bots actually do the matching so um you know when you limit the number of addresses that can actually interact and you sort of you know delegate it to them um you can actually get rid of a lot of any of that that exists um and sometimes you don't even actually have to modify the the protocol that much maker is a great example where maker liquidations v1 where again was sort of in this classic style of um uh lending liquidations whereas first come first serve massive bonus to whoever could come in and recapitalize the protocol but in reality that sometimes that was way too punitive when you know volatility was low uh maybe it was not punitive enough when volatility was super high and so uh maker has moved to using dutch auctions in v2 where uh basically the the uh people can enter and do the liquidation at the price that they think is fair as opposed to having one fixed price at happening but everybody sort of rushed to to enter and so um euler is working sort of a similar thing where uh basically the liquidation penalty increases by the amount that uh the loan is under water and so having these sort of scalar um um compensation uh systems as opposed to having some one fixed compensation and having everybody sort of rush in the door to sort of fit in um it's sort of a way to get around me because everyone sort of choose to price it can choose the price that they think is fair as opposed to having one fixed price and having everyone sort of try to outbid each other uh so you know a couple different options you have as a developer right now um but what is this going to look like like you know the space is evolving so quickly it's kind of incredible um where do you think the future is going to go uh you know one possible scenario is uh everyone's just constantly getting their their face ripped off um uh forever and and that's just it just kind of sucks to use ethereum but you gotta use it um but i think you know maybe another potential scenario is sort of more galification um where you know maybe you have to be part of a particular dow and a dow can take many different forms it can be uh holding a token it can be holding an nft or whatever maybe you have to be part of this dow in order to you know trade on a particular ammo or use a particular protocol um if you're a bad actor or you're uh you know sandwiching people your robot then you get kicked out um and you're you know you could don't actually get access to this thing or maybe use products like um archex or know your farmer to look at people's past on chain activity as sort of a civil resistance mechanism so hey if you haven't you know traded on unispot in the past six months um maybe you're a bot and and you're if you if you try to you know trade on our exchange we're gonna gonna ban you and so again you're sort of getting around this sort of arbitrary address issue and certainly you know you could say hey maybe this is exclusionary but it's only exclusionary to sort of bots and people who may be civil attacked by spinning up a bunch of addresses if you're a normal human there's plenty of ways to get access to these things so maybe that's sort of what the future looks like is we don't allow just any random address to interact but we have some sort of minimum bar that people have to get over in order to use these things um i think yeah i'm assuming applications also even experiment with running their own um sort of application specific role right like if i'm unifor if i'm compound um why do i want my mev going to uh you know spark pool or clean base or random box like that should be going back to uniswap and the treasury and uni token holders so maybe i run my own chain i extract that muv and then that goes back to uni token holders or uni treasury so uh you know again it's for going back to that sort of unionized co-applified model but taking even even a step further where um you know we were sort of circling the wagons um i also think just that any space can use to get more competitive um compressing margins on immediate bots and maybe clearing houses and miners uh mining down being a great example of this where they sort of take what flashbacks is doing it but but doing it sort of all on on chain and so uh you know again it's the more transparent the more accessible you make these things um yeah splashbox is obviously done with with with uh med overall um sort of the more you just compress margins because you have more players with more information um additionally mining right now is sort of very specialized and accessible the vast majority of people don't mind but what happens when you know anybody can be a minor with pos right there's gonna be way more people running nodes or using a node mining service um maybe in that case uh you know uh extracting md is a lot more uh palatable a lot more accessible right like uh maybe the steak finishes and the steaks and the lighters of the world maybe they end up offering generalized running as a service and they have to sort of offer that um to users because the overlap between ethereum users and miners becomes a lot tighter than it is today and maybe uh you know this is this is just a sort of temporary blip in the history of ethereum um i think for the the jury still out when it comes to what happens in a proof-of-stake world i suspect a lot of large mining pools or large a lot of those staking pools such as coinbase or finance or lido um might refuse to participate in mev just simply do the negative optics right if i'm coinbase i'm a public company i'm not going to be known for uh you know ripping users faces off by participating in med i'm just going to allow the pga to happen or whatever i'm not going to actually participate in it or maybe i introduce some sort of other fair ordering mechanism but um i think a lot of a lot of these people are not necessarily maximally profit motivated and so um they might have a lot of issues with actually like extracting nad um and i think uh you know generalized ending in roll-ups might just take any for them for themselves which sort of excludes searchers so um optimism just you know does it themselves and you know searchers sort of sort of get excluded um or maybe protocols sort of enforce using uh verifiable delay functions in order to you know randomize transaction ordering so again all these are sort of potential ways that we might see uh sort of the mev uh market space sort of declined over time where people refuse to play ball people refuse to participate in this transaction ordering game or just becomes not even feasible to participate at all um so thank you these are all sort of just thoughts and ideas that i've had but um i think any space is obviously super interesting and very much evolving so i look forward to continue investing and researching with you all

Automatic transcript — names and jargon may be misspelled.