The Future of 0x - Will Warren
ETHGlobal·Fri, Oct 9, 2020, 12:00 AM
The Future of 0x with Will Warren from 0x
Transcript
nice thanks for coming to the talk I'm excited too yeah sure there's a lot of a lot of different stuff I've kind of tried to take a bunch of big ideas that we've been working on and compress it down so that we can cover a lot of content quickly but I'm excited to share it with you hopefully we're able to get through most of it so yeah if you're not already a member of our community we welcome you we have yeah we have all the kind of standard social medias and feel free to follow one-one link I would call out specifically is like our YouTube channel so Brent put in a lot of work to creating like explanatory kind of videos that break down our smart contract architecture from like a very high level and then like going into specific smart contracts in our pipeline and explaining how they work and so it's a really good learning resource and I would recommend you check it out if you're interested and then we're hiring so we're looking to hire an engineering manager a financial analyst and workplace experience slash culture teammate so if this sounds like a good fit or you know someone that might be he'll let us know okay so I'm going to start out just by just laying out our vision for what we want to achieve with zero X and what we think the world would look like in the future then we'll just kind of review what 0 X you know 0 X is so far like to date what what does our ecosystem look like and then we'll talk about kind of the different stages of evolution that 0x might go down in the future and a lot of this a lot of the the content towards the end of the presentation is like me just like you know putting out ideas where I think the project could go in the future but the future is unknown and things change very quickly in this space so there's a good chance that things will change in the future and in our kind of roadmap might diverge in a different direction okay so instead of explaining the vision for 0x and you know what we want to achieve with it on my own I feel like this video does a much better job of it and it's like a minute and a half long so I'm just gonna show it to you rather than rather than try and do do it myself I have something you want and you have something I want we should make a deal the table belongs to someone else so controls the process altar valuables and charges us a lot of money it's risky and slow and expensive what would it look like if this were just a table but a network and network that no one owns and the trade directly with each other without anyone in the middle enter zero X zero X is a decentralized exchange protocol it's a set of rules that businesses and developers use to create a network of exchange that no one controls 0x anyone can come to the table this means that if I want to trade my grantee for your currency without anyone else I could do that or if I wanted to trade my currency for some real estate I can do that too ISIL treat anything for anything anyone c0x isn't just about the charts and order books it's about the exchange of value developers can use 0x to create marketplaces in the entire world of assets all the new they can create markets today money in your favorite games like storage or computing the 0x protocol is open-source and governed by its users it will be possible thanks to 0s come to the table yeah there's no way I could explain things like with that level of video I guess so yeah you can you can probably take away from from that video that we envision all forms of value being tokenized on public blockchains like aetherium and that you know through this tokenization we can democratize access to different types of assets and financial services in the same way that the internet democratized access to information so it's like it's a pretty big vision to be pretty amazing if we were able to achieve it and we're working as hard as we can to take small steps in that direction okay so so far what does heroic so far like what what does the ecosystem look like today and up until now so Xerox is a system of smart contracts that processes these off chain orders that specify the details of a trade and different people can create custom marketplaces that allow different people to exchange all these different types of assets and we launched the first version of 0x about two years ago and we were really surprised actually by the amount of adoption that we saw like we were we were thinking we'd really have to try and like convince like beg developers to build something cool and like it turned out that there are a number of teams that started building like awesome marketplace interfaces on top of 0x called real ayres and so and and we've over time we've started to see these real ayres kind of focus in on more and more specific niche markets which is really cool because it it's starting to kind of we're starting to see like there's a vision of different types of assets being tokenized we're starting to see that vision kind of takes shape and it's very early but we're starting to see it and so yeah these third-party developers they create user interfaces that are built on top of 0x protocol and 0x protocol is responsible for settling trades and in the last two years there there's yeah there's been like a pretty good amount of usage we've seen over a million trades settled on the etherion main net and over a billion dollars in volume has gone through the smart contracts okay but where do we see Xerox going in the future how do we see 0x evolving and so with you know today 0x is the smart contracts it's this message format and people just kind of use the message format and the smart contracts to build their own products but one of the things that we've really we've kind of dreamt of building since the very beginning and we actually mentioned in the original white paper was the idea of instead of having these these off chain orders that represent trades instead of having them sit in a centralized database and being served through a centralized server what if we could like move these orders into a peer-to-peer network that is distributed and censorship resistant and just couldn't be taken down by like a government and so you know it was kind of like the North Star that we would go and build that at some point but it didn't really make sense for us to try and do everything at once and we weren't sure if it was even necessary so maybe real ayres would uh you know kind of fill this gap and we wouldn't need the the decentralized version of the of the order book to exist at all but you know we've been working with a variety of projects one of them is auger and auger is building prediction markets so prediction markets are like markets that allow you to bet on the outcome of specific future events so say you want to bet on who is going to win a political election or who's going to win a sports event auger you know allows you to do that and it is important it is critically important for auger to be fully decentralized at every single layer of their technology stack and the reason is because prediction markets are legal in some jurisdictions and they're they're regulated in others and it's really kind of a hodgepodge depending upon which country are based in and so augur has this vision of allowing anyone in the world with an internet connection to participate in these markets with no limits no no barriers and in order to do that they have to have they have to have a system that won't go down that can't be censored and so they you know they were interested in using 0x because of this you know efficient architecture that the Xerox offers where orders are living off of chain and the etherium blockchain is only you know is only hit when value is being transferred between counterparties but otherwise we're not touching the ethereum blockchain the problem is that today those orders had to live in a centralized database so working with augur really motivated us to build out 0x mesh which is this peer-to-peer network for sharing orders propagating 0x orders and so you know one of the very first stages of evolution for 0x that i think is going to become increasingly important in the future is the kind of transition from strictly relying on you know third parties to host servers and databases for order books and instead also having the option of having orders living in this censorship resistant peer-to-peer network and so I'll talk a little bit about it it's a peer-to-peer network so different people run a nodes and these nodes connect with peers and they're you know the peers are able to inject orders and propagate them through the network to anyone that is listening and one of the really exciting things about 0x mesh is that it's going to be the first peer-to-peer network ever to be able to run in the browser and so you'll be able to browse to a website one you open it up that website will load a mesh node in in your browser behind the scenes and it will connect to the network and start pulling in orders that are relevant to you know the market that you're looking at and so this will you know instead of having to download this sort of this node software and run it on your laptop and you know like the etherium node you can actually just connect the ad hoc when you go to a website and so we think that this will like massively increase the reach and distribution of mesh and so mesh is live it's in beta it's actually just and we're just finishing beta like right this week or next week and so it's been running for a few months and over the last 30 days there have been over a hundred different nodes joining the network not all of them necessarily at the same time but like joining or leaving a network and over two million 0x orders have moved through the network over the last 30 days so it's it's alive and it's it's starting to yeah it's starting to kind of do what we want it to do it's and it's going to be out of beta very very soon so 0x mesh represents kind of the first stage of evolution for 0x as a project but there are more steps what comes next okay so next how do we take 0x from kind of being a tool that the core team is developing and you know all you know we're kind of responsible in many ways for deciding which features to build and you know we have kind of like a pretty centralized structure in terms of decision making how do we how do we shift from the - being a self-governing network so the people that are using 0x the developers that are building marketplaces the market makers the people that are consuming the liquidity how do we make them the people that control how 0x evolves over time and and when I say evolves I mean like how did the smart contracts actually change and add new features and functionality and so today 0x we do have a governance process for upgrades to the smart contracts and we've we've gone through four for formal governance processes to date and actually tomorrow is the last day for ZRX token holders to vote on the 0x version three upgrade and so butBut what is this what does this governance process look like today right now it's it's basically trusted so people are cryptographically signing these votes off chain and they're sending them to us through this website and we're tallying up the votes and we're looking at the vote breakdown locked to a specific block number and so you know the community does have you know decision-making power over these proposals but it isn't enforced on chain it isn't binding on chain so you know one of the steps that we're going to be taking in the near term is actually giving the community of people that are using the protocol the ability to make decisions in a way that is binding on chain and that we cannot censor and so yeah you know we have 0x mesh we have these orders living in there the orders are fed into this this system of smart contracts so it's called a pipeline because it really looks like a pipeline of different smart contracts that are linked together and we're wrapping this pipeline in a on chain governance process yes good question so the mesh network does not have any sort of consensus it is it's purely like a gossip protocol and so what that means is that depending upon which node you are in the network you might see an order book that looks slightly different depending upon where you are and the orders will hit your node at different times and we think that this is like the right trade-off to make because you know consensus is by design extremely inefficient we want to make sure that nobody can manipulate the data that we're you know building consensus around and that means we have to have you know if we were to have the order book on the blockchain we have to have like 10,000 nodes all over the world storing the order book in perpetuity till the end of time and like that's not a very good use of the blockchain it bloats the blockchain it's also really expensive to maintain that order book so we don't need consensus what we do need is the ability to just propagate your orders as widely as possible as quickly as possible yeah so every single node in the network will yeah it there are a number of different security measures that prevent DDoS attacks and that ensure that orders are only propagated if they are verified and like can actually be filled yeah and I'm happy to go into more detail later on in the in the Q&A right so we have mesh and then we want to move to this self-governing Network so the the people that own ZRX tokens are making the decisions but who are the people that own these tokens do we really want these people making decisions I think that's like very questionable and probably something we need to we need to be sure that they have the best interest of the ecosystem in mind so okay so I'm just gonna run through what is governance mean like more mechanically like what what is happening on the blockchain when a you know 0x governance is taking place okay and why do we need governance at all like what if we just have like one smart contract that has all of these 0x exchange business logic in it and like every time we want to upgrade it we can just deploy a brand new smart contract and tell everyone to start using that instead why do we have to have this governance process in the first place well so if we were to use a single smart contract for 0x and tell people to move to the new the new one every time there's an upgrade we end up we basically end up you know telling every single person that is using the smart contract to withdraw their funds deposit them into a new smart contract which is expensive and we need you know a number you know we need everyone to do it and so that leads to churn some people just won't upgrade they'll just kind of continue using well they just won't upgrade they'll just drop out of the ecosystem completely yeah or they'll be fragmentation right so some people will upgrade to the newest version of the protocol some people will lag behind for a variety of reasons and it leads to this fragmentation and and so exchange markets are extremely dependent upon network effects so there need to be as many buyers and sellers on either side of the market as possible for that market to be efficient and and to allow for the best prices and so if we have people churning out of the ecosystem if we have people you know fragmenting across different versions of the protocol we lose all these valuable network effects around liquidity so we need to have an upgradeable smart contract system and so that's exactly what we have here so we have some traders these traders feed these off chain 0x orders into the exchange contract the exchange contract calls into a variety of other smart contracts within the pipeline and that the opposite end of the pipeline the the you know 0x smart contracts are actually moving value between counterparties and so how can we do the upgrades without causing churn by basically putting in a new exchange contract plugging it into the existing pipeline and allowing people to migrate from the first version to the second version and then having a cutoff date for when the first version is deprecated okay so so this begs the question back when we were first designing 0x we knew that you know we knew that we needed our system of our contracts to be upgradable and actually when we started out building 0x we weren't actually building it to be an open protocol for anyone to use a mirror and I were actually designing our own kind of for-profit proprietary exchange and so the question of who gets to decide on on upgrades was very simple it was like well we built it it we owned it we're charging fees we'll just upgrade it when we want and you know there's a whole separate story around why we decided to build a proprietary Dex and and move to an open protocol that allows anyone to build on top of it but the takeaway from from this transition was that okay now we have this upgradable system of smart contracts there are people building businesses on top of it and you know many people relying on it maybe even billions of dollars flowing through it every day if we're successful well upgrades are a huge deal and how do we who decides on these upgrades and so you know we thought through a lot of different options but basically we need to have some sort of governance system and the only way to really come to consensus is to have a you know having votes assigning people votes and and the only way that made sense to us at the time was we need to have a governance token where if you own the token you are entitled to a vote and the important part here is that for governance to be effective those tokens have to be in the hands of users the people that are using the protocol and building businesses on top of it okay so how did that work out well initially it didn't work out very well we you know created this governance token we put it out into the world and you know the initial use for the token was to pay fees to access 0ex liquidity turns out people don't really like to interact or deal with with tokens that they're not interested in trading directly so if you're a if you're a trader or someone that wants to just buy a thousand dollars of dye you don't really care which decks you use you'll kind of go anywhere and you definitely don't want to be you know having to go and buy another token in order to do get your trade done and so the result of that was that after a year and a half of 0x protocol being alive we found that you know there was very little overlap between the people that were actually using the protocol and the people that were owning the took that owned the tokens and we're responsible for making governance decisions and so that's not very good we needed you know in order to ensure that governance decisions are being made in the best interest of the ecosystem and the protocol what we have to do is maximize this overlap we want to we want that overlap to be as large as possible and so how did we do you know how do we achieve this so this this is achieved actually in in version 3 of the protocol which is currently being voted on we we designed it took a really long time it took like a year a year and a half of Rd we designed a new incentive system within the protocol and with the explicit goal of maximizing the overlap between these two groups and I'm not going to go too deep into it I'm just going to explain it at a high level and if you want to learn more there's a bunch of resources online but we added an incentive into the protocol and with the explicit goal of moving tokens into the hands of users and not into the hands of any user in it we actually want the tokens in the hands of a very specific user so in zero X there are you know three main categories of users we have makers market makers that are providing liquidity we have real ayres that are that are establishing these marketplaces for marketplaces for buyers and sellers to meet and then we have takers these are the people that are just coming to consume liquidity from the marketplace and so when we first designed you know the incentives into the protocol we didn't really have a strong hypothesis around which category of user was most important we just thought like you know they're all important so we just want all of them to own tokens but over the last two years we've learned a ton about our ecosystem and the people within it and we've actually identified market makers as the most important user within our ecosystem when it comes to making governance decisions and so the reason is because again as I mentioned before takers these are people that are just consuming liquidity they don't have a strong preference for which decks they use they'll use whatever has the best price they don't really care so you know they probably aren't going to be making governance decisions in the best interest of the ecosystem because they just don't care real ayres real ayres they have some alignment with you know our goals for the ecosystem they want it to grow because they make money from trading volume but real ayres also have an interest in maintaining a competitive advantage and there's a natural tendency for real ayers and marketplace or marketplaces to form into monopolies or oligopolies and so if a relayer is you know you know responsible for making governance decisions and and they you know grow into one of the biggest players in the ecosystem you know their incentive will be to create to you know pass proposals that are anti-competitive that you know make it harder for people to compete with them and they also have an incentive to own the user relationship so they might you know kind of eat the entire ecosystem and then they might even decide to just kind of work off and bring their users with them and most importantly real ayres you know this is kind of like the classic platform technology platform or marketplace play is you build these network effects you build this monopoly and then you crank up fees so people can't leave there's nowhere else for them to go and they have to pay heavy heavy heavy fees so that's not what we want long term we want exchange to be global permissionless and is low-friction as possible and so therefore we can't be creating a monopoly market makers however they make money from trading volume so they want the ecosystem to grow and that's the only way they make money they don't make money from fees or anything like that they just make money by moving inventory and so and and there also isn't this natural tendency for market makers to form into monopolies or oligopolies and this is because there's so many different types of markets and and usually market makers kind of focus in and specialize in a specific type of market and so it creates this natural fragmentation and so the incentive system we've built into 0x it basically it adds a small fee to every single trade denominated in ether and that ether is paid back out to market makers that create these staking pools and the staking pool and the payout is determined by two things how much liquidity that market maker is contributing to the ecosystem and how much how many ZRX tokens are staked within their staking pool and and so you can dig deeper into that reward function but the basic idea is that if a market maker is doing 10% of all volume on zero X and they're staking pool they're staking pool should kind of converge on having 10 percent of all ZRX within it and you know market makers are they basically inherit 50% of all voting power associated with the tokens in their in their staking pool so we've created this financial incentive to push the zr x tokens into staking pools that are owned by market makers and then the market makers are are inheriting this voting power and so they have a lot of influence over the governance process and again if you want to dig into a deeper there's a lot more materials online so yeah to achieve our goal of having a binding on chain governance system to allow the ecosystem to be self governed we have to have the tokens in the in the hands of our of the right users those users are market makers and with version 3 of 0x we've created an incentive to move the tokens into the hands of the market makers the take they could I mean yeah we can dig into it after but basically like the people that are providing liquidity they're the ones that are receiving these rewards that are paid out in an ether you know every kind of time interval which we're calling an epoch so you know every trade there's a small fee and ether these kind of accumulate over time and at the end of this fixed period of time called an epoch that entire pool of ether is paid out to these market makers taking pools and yeah we could go into it in more detail okay so now we have zero X with this peer-to-peer network for propagating orders we have an on chain governance system so the people that are providing liquidity to the network are the ones that are making governance decisions or at least they have a lot of influence over that process what's the logical next step next we need the ecosystem to be able to fund itself so how do we how do we take care if we look at zero X like the smart contracts and the tooling built on top of it if we view this as a public good that exists for everyone's benefit rather than a for-profit venture there needs to be some source of funding that allows us to maintain and upgrade this system over time and so yeah we presented it at Def Con for a little over a year ago our proposal for how this self funding mechanism will work or at least how funding will be paid out but the at a high level the way that this works is that we have these incent built-in to you know create the ideal governance outcome we want part of those the part of that ether that is being paid out to market makers a small amount of that will be diverted into a community Treasury and you can think of this as like an ecosystem tax and and so every epoch a small amount of this ether will be going into a community Treasury and that community Treasury will be governed by the token holders and so they'll be able to allocate that funding for you know developing a Python library on top of 0 X version 5 or whatever it may be they'll have a way to continue funding and evolving the protocol to meet their needs and so the the governance structure that we proposed for allocating that capital is a it's a committee based approach so VXR token holders the you know these market making staking pools they elect a small committee that is responsible for allocating the community funds and the committee is accountable to the token holders and they can be you know impeached more or less if they do something that is not in the best interest of the ecosystem and you know ideally since the token holders are ones electing that committee the committee members will be you know vetted and and they will have the the best interests of the ecosystem in mind and yeah if you want you can dig into this more later but it's basically how the the kind of sequence of steps that determine how committee members are elected or removed and how capital is allocated by that committee and so we want all of this to live within a smart contract and this smart contract will have control over the community Treasury contract so all of this is living within a smart contract so now 0x we have this you know distributed peer-to-peer network for propagating orders we have you know market makers driving the governance process and we also have this pool of communal resources that is continually accumulating ether and that can be allocated by a committee that the market makers elect okay what next so now we're getting into an area that is like much more majors kind of guessing what's gonna happen and a lot of this depends upon you know aetherium 2.0 coming out so in a world where you know aetherium 2.0 comes out and there are like a thousand shards or you know a hundred shards I'm not sure what the number is the latest number is you know people have talked about the issue of all of the different gaps and in protocols wanting to co-locate on a single shard and that's because you get composability and you get many users already have their assets parked there so you know that shard will gain Network effects and and those network effects will dissin sent building on you know other shards well you know there needs to be a way to prevent this and you know the design pattern that I think will end up being adopted by most you know projects that are building like kind of kind of basic building blocks or public infrastructure will be to have copies of that system of smart contracts deployed to every single shard and so if you you know are using auger on shard a and you're trading those augur assets you're going to be using zero bucks to do that if you're trading Ummah markets on shard B then you're going to be using hopefully 0x to do that and the idea is that we have this technical standard it works the same exact way regardless of which shard you're on and the important part here is that we need all of these copies to remain synchronized and and to change in the same way so we don't want the 0x system on shard a to change and there's you know 0x system on shard V to remain the same or change a different way we need to have a unified governance process that pushes out upgrades to all of these copies in a synchronized manner and so I'm not going to get too deep into it but I gave a presentation at Eric on that just got discusses how like a cross shard governance system works and specifically how you know if this this is aetherium 2.0 we have this beacon chain and we have all these shards that are dropping down off of it instead of having like a separate governance system on each shard we need to have one governance system one governance token and we need to have a way for that governance system to push these upgrades out to every single shard in a way that is you know maintains kind of the same behavior across shards and so if you're interested in learning more about that I can share out this deck and I'll include a link to the Eric on presentation stay good yeah so it definitely requires like some technical explanation but the idea is that there's this meta model and so each one of these Shamar each one of these shards is homogeneous so they behave you know it's not like you have to have a custom system of smart contracts for every shard so we create this meta model and this meta model describes how the system of smart contracts fits together and what those pieces are order their interconnections and then there's a dispatcher smart contract on every single shard that basically pulls pulls updates from the Met and translates those updates into the context of the local chard that it's based on but if you want to learn more all share the link and so yeah who knows one aetherium 2.0 is going to ship it could be a year could be five years but if it does and what it does you know I think that this will probably be the design pattern that many different daps follow where there is a single governance process for upgrades and then there's a copy of that building block on every single shard okay and then so sharding is exciting because it increases scalability but people have talked about you know the downsides of sharding being you lose composability in some senses if you know if we don't have the pattern that is described here where you have the same building blocks on every single shard and you have like different building blocks on different shards you lose that composability that makes aetherium 1.
0 so interesting exciting to build on and you also lose the ability to have kind of synchronous trades across shards and so if you want to trade an asset on shard a for an asset on shard be the you know designing a decentralized exchange system that allows you to do that is very challenging and there are a number of ways that trades can go wrong and so that's you know I'm not optimistic that we'll find a suitable solution for asynchronous for synchronous cross shard communication for the use case of Dex's so what we need is we need a scalable sidechain that plugs into each shard and that allows people on each shard to deposit their assets and on this side chain within the context of the sidechain you can do cross synchronous cross shard exchange yeah it's like a hub and and it's a hub where you can deposit assets or withdraw assets from from whatever shard your your local assets are based based on and so yeah there are three main components that are needed for this to happen we need a way to order order trades that are occurring off chain on this side chain so how do we arrange these different trades in kind of like a first you know you know in a way where the you know trades are ordered according to when they arrive within the network or when they kind of like saturate the network we need a way to take you know you know a batch maybe there's like 10,000 of these trades that have been ordered correctly we need a way to take those 10,000 trades push them into a more or less like a zero knowledge proof based compression or like a approver node that will take those trades and it will generate a succinct proof that you know shows the beginning balances and the ending balances you know the the transition between the the starting and ending balances is was done correctly and according to a set of rules that you know are known ahead of time and then we need a way to move that succinct proof that you know captures all of that information associated with those 10,000 trades we need a way to like transport that succinct proof into the blockchain and into a smart contract that verifies the proof and and and kind of settles the settles the trades on chain you know in a way that can't be reversed and so the idea here is that if you if you have trades between assets that are co-located on the same shard and you want composability and you know you want kind of the interesting use cases that you have today on a theory in 1.0 then you can use the local version of Xerox pipeline on so here you know this is one shard on aetherium you have the 0x pipeline here if you want to trade with someone else who's also located on that same shard or if you want to like interact with other smart contracts on that same shard you can do that locally using the 0x pipeline if you want to trade for assets that are on other shards or potentially even other block chains you can move to this side chain and you can do your trading there and then you can withdraw back on whichever shard or block chain that you're your new asset is located on and this entire system here you know this this verifier contract and this local copy of the zero x pipe line are both wrapped within you know this on chain governance process allowing for upgrades and so that's yeah that's kind of like the ideal outcome and kind of like the ideal evolutionary path for 0x whether or not this will be the path that we end up taking not really sure but it's interesting to think about and yeah that's all I have so I'm happy to take any questions yep yeah so we actually use the reward function is actually it's this it's it's called the cobb-douglas production function and it's basically a way of weighting two different weighting two different kind of factors or parameters and so the two parameters that drive the reward payout for each market maker yeah is is first it's the like out of all you know trading volume that went through the protocol during this fixed period of time what percentage of that volume was driven by this specific market maker and then the second parameter is what percentage of staked tokens are located within this specific market makers staking pool and so the the nice thing about this reward function is that it if you don't stake anything then you get zero payout if you have a bunch of tokens to end your staking them but you don't provide any liquidity you get zero payout and as you as you increase the amount of liquidity that you provide your payout increases and as the size of your staking pool increases so does your payout and there's kind of this like this optimal this optimal value where you're maximizing the the rewards that you're getting paid out and and that's when you know the portion of liquidity or providing is equal to the proportion of tokens stake within your pool and so to be clear as a market maker you don't necessarily have to own ZRX tokens to put them in your staking pool you can you can choose to accept tokens delegated by other people and in exchange for a percent your payout and that percentage is is driven by market forces yep oh thank you thank you so I'll address the second part first who gets to provide liquidity and get payouts so anyone can so so anyone can establish a staking pool and you know at the end of each epoch the reward payout for that staking pool will be calculated it might be zero if you're not doing if you're not providing any liquidity yeah so so there are market makers that are creating these orders off chain and these these orders propagate you know they somehow they find their way to a counterparty that wants to fill that order that taker when they go to fill the order they're gonna pay a small fee in the in that's denominated in either and it's equal in value to the gas cost to fill one order so it might be like 10 cents it might be like $1 depending upon how quickly they want their trade to be mined into a book and that small fee goes into this liquidity reward pool that you know accumulates all of these fees from all of the different trades and every single you know every single fee within that pool is attributed to the specific market maker that generated that order okay so yeah if you're if you so as a taker every single order doesn't matter which one you fill you're gonna have to pay a fee that's equal in value to the gas price into the gas cost of your transaction and since as a taker you choose the gas price you get to choose you know how much am I willing to pay to fill this order it might be ten cents it might be you know if you're in our bot and you're trying to front-run someone it might be 50 dollars but at the end of the day that fee gets diverted into a pool and the that fee is attributed to the person that created the order not the person that filled it so I guess right now if you're a market maker a professional market maker and you want to get as money as many orders filled as possible then you're going to want to propagate your orders as widely as possible and so yeah you don't necessarily have an incentive to share other orders that aren't your own necessarily if you're a taker then you want to get as many orders as possible from every single source and so you'll want to connect to as many nodes as possible if you're a taker or if you're if you're not a professional market maker and you want to broadcast in order to the network but you don't want to run a node then you might go through a relay er and the relay er could could pin your order to their node and they can charge a fee when it's filled but I think that yeah I think that yeah I I think that that's right okay so if the the network topology will change over time so you want a node first connects to the network it will just connect to you know some random set of nodes and over time it will it'll start to kind of only maintain connections with the nodes that are sharing as much information as possible and the nodes that aren't propagating orders as quickly or is or selectively propagating orders will slowly drop out and so not only will you you know as a selfish note not only will you you know not be sharing orders as efficiently but you'll also not be receiving orders as efficiently and quickly because people aren't maintaining their connection - yeah that's right and I'm actually I'm not the you can probably tell I'm not like the expert on this specific question that would be wagering who is specifically focused on like the incentives within the network and he would probably be able to provide you a much more nuanced answer than I can right now but yeah I think the answer is that if you're being selfish then you'll naturally kind of the network will naturally not like favor you as much if that makes sense there isn't I wouldn't call it a reputation system but yeah I guess there is like I mean maybe it is called a reputation but there is a there is a system that each node uses to make decisions around which nodes that maintains a connection with and it'll boot nodes that are you know yeah but I do think that to start out like just leaving beta I think like it's it's basically like an MVP like the core functionality is in there and like if there is like a malicious node in the network that's very clearly malicious it's not going to be able to maintain connections but I I imagine that in the future over time as we're the network is supporting more orders and more nodes will probably have to like come up with better ways of like efficiently propagating orders yeah cool all right any more questions can take one more otherwise thank you for coming all right thank you [Applause]
Automatic transcript — names and jargon may be misspelled.