# Designing Autonomous Markets for Stablecoin Monetary Policy | Devcon Bogotá

- Channel: [Devcon](https://streameth.org/devcon)
- Date: 2023-10-07
- Duration: 26:42
- Watch: https://streameth.org/watch/yt-3Yw2ASIBRgw
- YouTube: https://www.youtube.com/watch?v=3Yw2ASIBRgw

## Description

Visit the https://archive.devcon.org/ to gain access to the entire library of Devcon talks with the ease of filtering, playlists, personalized suggestions, decentralized access on Swarm, IPFS and more.
https://archive.devcon.org/archive/watch/6/designing-autonomous-markets-for-stablecoin-monetary-policy/

We discuss the design of primary (i.e., minting and redemption) market mechanisms for non-custodial stablecoins. We first introduce a new analytical tool, the *redemption curve*, which represents the redemption price as a function of redemption pressure. We use it to discuss historical de-peggings (e.g. in DAI, UST). We then describe a new dynamic redemption curve with desirable robustness properties and show how to implement a primary market based on this curve. The system is part of Gyroscope.

Speaker(s): Ariah Klages-Mundt, Steffen Schuldenzucker
Skill level: Advanced
Track: Cryptoeconomics
Keywords: Stablecoin Design,AMMs,Protocol Controlled Value

Follow us: https://twitter.com/efdevcon, https://twitter.com/ethereum
Learn more about devcon: https://www.devcon.org/
Learn more about ethereum: https://ethereum.org/ 

Devcon is the Ethereum conference for developers, researchers, thinkers, and makers. 
Devcon 6 was held in Bogotá, Colombia on Oct 11 - 14, 2022.
Devcon is organized and presented by the Ethereum Foundation, with the support of our sponsors. To find out more, please visit https://ethereum.foundation/

## Transcript

foreign [Music] and today I want to talk about some of the design work we did for our stable coin that's called gyroscope and there's a joint work with my co-founder Arya clagasmond so imagine you want to build a stable coin so you have a you have a cryptocurrency and you want to keep it stable and in some senses it's always going to look like this you have some kind of reserve of assets and then people can mint and redeem coins against that assets um and that's going to stabilize the price right if the price is too high they can um they can meet new coins if the price is too low they can redeem coins it's going to stabilize the market price um and we call the primary Market mechanism excuse me the primary Market mechanism the thing that grants access to these assets and that intermediates between mintus and redeemers which are basically Upchurch and the asset Reserve um now what are these assets well that depends on your design um it could be many different things in a sanyaraj shared design it could be it's basically an equity share in a sense for something like a basis design it's something like a bond and in a reserve back design at some portfolio of other assets and by the way this is a design we are using for gyroscope it's reserved backed um now there are different situations we need to look at um the kind of boring case is when the system is fully collateralized and all the assets are perfectly liquid because then this is just basically a pricing problem price the reserve assets um and the somewhat more tricky case is the system might be 100 collateralized but not all of these assets might be liquid so you cannot necessarily pay them out when people redeem um and then there's the crisis situation where the system actually becomes under collateralized and then you need to decide what to do and my talk is going to be about the design of this component that basically designs what to do in such a situation um what we are implementing for gyroscope is a reserve of only liquid assets so we are not really considering this case but it would be a maybe straightforward extension of what we're doing so let's look at some examples of this um if you look at die you have the PSM or plexibility mechanism and it basically looks like this that your reserve almost only consists of usdc and this is what people sometimes say that dye has become or is going in the direction of wrapped usdc um the the numbers are like 60 or like the PSM usdc then you have another 20 of LP shares against usdc and of course in that situation um something you need to ask is are there many risks associated with that so for usdc for example there could be some regulatory risk which may amount to counterparty risk censorship risk and so on um kind of the goal of gyroscope was to build something like a PSM 2.0 so how might you improve on this design and I think there are like two ways the first thing is you may want to diversify your reserves you may not want to hold only usdc and the second thing is to implement something like a programmatic risk control that reacts autonomously to market conditions so that that kind of can be seen in two parts the first one is if you have indicted different PSM vaults are independent um but you probably want to coordinate them somehow to react in the same way to Market strategies and the other one is um to price the stable coin depending on market conditions especially when the system should the system become under reserved and this is kind of where we're going so kind of to to build such a system there are like many different challenges and I just want to give you like the um the super quick overview um basically we want picture right so we have a reserve that consists of different asset classes that are probably structured in some way and then you need to answer several questions like which of these which assets should that be which risks are these exposed to how to structure the whole thing so that the risks are somehow contained um how do you generate details on the whole structure you probably want to price these things with oracles and so on these are all things I'm not going to talk about but questions we still had to answer for gyroscope and today I want to answer um this mechanism basically the question is someone comes to your system the system may be under reserved or illiquid to some degree they want to redeem a stable coin what is the amount of assets you offer them um and to do that we introduce a more General tool which is what we call the Redemption curve and this is a general tool to analyze any stable coil design basically um so the Redemption curve is falling curve you have two axes on one axis you have the Redemption level which is basically the amount of stable coins that are getting redeemed and on the other axis you have the Redemption price that the mechanism offers to the Redeemer and now we assume now we look at what happens when people redeem more and more in market conditions don't change for the beginning so nothing happens no prices change but people just redeem more and more and ideally of course what you want is this curve you can always redeem at the dollar because then you always stabilize your pack at exactly a dollar um and the higher your curvature here is the less you support the peg as more and more people redeem um kind of the default that is also happening for pack fiat currency is that you try to support the pack as long as possible until your reserve is empty and then you don't support it anymore and and kind of my argument will be that maybe this Redemption curve is not ideal and many other Redemption curves aren't ideal either so um we can see kind of this this type of curve or that type of behavior in the in the real world or in the Fiat world um for example the attack on the British pound in the 90s was basically um a continuous outflow um from the from the British pound basically a continuous Redemption of pounds against other assets until the central bank was no longer willing to support the peg um and then you see this this kind of drop where some people made a lot of money I think the recent crash of the pound is probably not like that I can't say anything about that um if we look at if we look at stable coins we've seen similar behaviors the Strat is a little bit outdated but there was this period in like 2021 where like many creative stable coin designs were created and many of them crashed and in a somewhat similar way very abruptly um I want to look at one like design case study which would be Fey the original design of Fae which was also not very successful in its original form um and so Faye had these direct incentives which basically means um the the more of Peck the whole system is the worse the price you're getting and that if you kind of look at it leads to a Redemption curve that is very Steep and that looks about like this which means that your pack is not going to be stabilized very long and then they removed the direct incentives and then their Redemption curve looked much much less steep um and we can see kind of the effect of these like steep Redemption curve here I hope this is kind of visible this is like the price of a after launch um and it had like a like a huge uh price drop with a lot of volatility um I should probably talk about the the elephant in the room or maybe not elephant anymore um Sunny Road shares and the way I think about Sanyo shares is essentially um that you redeem at one dollar but your backing is an endogenous asset that's basically uh very very tied into your project itself and this can lead to some negative feedback spirals [Music] um so essentially it's the same story as from the Fiat world before you provide Redemption at a dollar until the willingness of the market to buy your senior shares is exhausted and then you basically crash very rapidly and I should probably show this um right um the the Supply right here has this Supply inflation at the same moment but it doesn't really matter because people don't want to the amount of senior shares people want to buy doesn't increase of the amount of dollars people want to put into senior chairs I should say um I I should point out one thing about this particular talk this was when I gave the first version of this talk this was not without precedent we had a very similar system uh called iron you may remember which also crashed in a very similar way so here you have the stable coin that crashed at the same time the endogenous collateral crashed also um so so that that's not good and that's why we made gyroscope Reserve pact um and the basic idea of what I want to talk about today is maybe we should think about the Redemption curve as a design problem and maybe we should choose a Redemption curve that we think is useful and reasonable and then we go and Implement that in our primary Market maker um so the the basic design is going to look like this right you remember this picture and we're assuming that the assets here are exogenous so we don't need to worry about these feedback effects but what do you want to do if the system is under collateralized or illiquid um and we have like like I want to give you these results in three parts um first we thought about what are actually disadrata for a good uh Redemption curve what do we really want and then I'm going to show you one such curve that satisfies the Digital Data and then I'm gonna talk to you about how to actually Implement that because as you remember the Redemption curve assumes that no Market condition changed over time and of course that doesn't happen in reality so this step from picking a curve and then implementing is is making it Dynamic and this is going to lead to this type of dynamic bonding curve if you want to think about it like that um great let's first think about what we would ideally want of our Redemption curve um first thing I want to I want to note is that probably your collateralization should be should stay above some lower bound your Redemption shift Redemption curve should not exhaust your reserve if that's at all possible and the reason for that is to enable the system to recover later you if you exhaust your reserve you're basically destroying your your system and that's bad and then you probably also want the Redemption price to stay above a lower bound if that's possible to support the peg at least to some degree um of course this is Trivial we usually want our stable count to be stable at a dollar you probably want some kind of continuity of that curve you probably don't want these abrupt crashes and um I would say that the main reason for that is uh to prevent speculation because these kind of discontinuous crashes are something people could speculate on very easily and that could also lead to like all kinds of Market upheavals um and and then this is like a little bit of a bonus but you want your Redemption curve to be easy to use so probably what you want is um you want the execution if you redeem a certain amount of a certain amount of stable coins our stable coins can be called dials I told you for that um you probably want that to be easy and especially you don't want there to be an incentive to subdivide your redemptions and to be somehow clever about the way how people redeem um we have like a few bonus desiderata that are um with respect to like several transactions or several blocks um you probably want your the reserve exhaustion to take a long time unless of course you reserve just the scratches so the system should uh also kind of think about what what happens what happens tomorrow what happens when the system runs continuously um you should be able to regain your pack and of course you need to implement the whole thing on chain um ah yes the first math equation so before I show you how we implement this I have to introduce this nice equation we assume that the Redemption pressure is computed as a Time discounted some if you don't care about that that's totally fine and now I'm going to show you one simplified design that satisfies almost all of the desireata and this is a simplified Redemption curve we're not using this but it's good for explanation so what's a curve does is that we support a price of one dollar so people can redeem at a price of one dollar um up until a certain amount of redemption so on this axis we have redemptions um and then we are gonna drop the Redemption price so that the Redemption price is equal to the collateralization ratio and this is a sustainable way of doing it so for example if your system is 80 collateralized the Redemption price would be 80 cents and you can just do that indefinitely and redeem the rest of the money and of course this has all of the nice properties almost all of them um you don't run out of you don't run out of Reserves um you can actually configure a trade-off that exists here of course the longer you support a pack of one dollar the lower your eventual collateralization is going to be but it's something that you can choose um exactly so so we have like the long-term survivability of the system um because you might actually want to do this like this would be like the equation um but of course the problem is that this is like this ugly discontinuous jump that I mentioned before and so what we really do is that we introduce a linear segment there looks like this um where the price would first be a dollar then it would decrease as more and more is redeemed and then um if it if it has reached a point where we have a sustainable collateralization ratio it would just give you that price um and if you want to do that the mouth to do this looks like this um but it's like it's fine right it's fine they're like case distinctions and fractions but it's not that bad and one thing you you can see here is that governance can configure this using some hyper parameters so you can say what is the minimum collateralization that I want of my system um and this is something that governance would set because it's actually a meaningful parameter you can say um what is the steepness here that I'm willing to tolerate another parameter and then if you solve this equation it's going to respond autonomously to these type of parameters um now this curve is beautiful but it has a problem it's not very useful because it doesn't reflect reality because we assume there is a Redemption pressure of zero um we have some kind of initial collateralization of the system which we call an anchor rate or we could we label this like ra um and then you start from there the curve tells you what happens when you start at zero Redemption pressure at the anchor rate nothing changes in the market to implement that we need to live in a situation where the market will of course change and we can still use this curve and this is what I'm going to talk about today so the goal is make the whole thing dynamic um make it react to the current market state and I'm gonna show you how to do it hopefully in a picture and how we do it goes as follows I showed you this curve and if you know your anchor collateralization which is on this axis and you know a certain amount of redemption pressure and you can go and integrate the curve from before and it's going to tell you what your collateralization at that point is going to be and that's up here um and now if we do that for all possible sorry anchor values we get a three-dimensional surface um and what we just discussed was if you know this and this you can compute this but it turns out that you can also do it in reverse so if you know the current collateralization of the system on this axis and the current Redemption pressure here which is something that you can just observe in in real time then you can actually compute this initial collateralization ratio which of course at this point is a purely it's purely a modeling tool but it tells you if nothing had happened in the market and we are now at the state where should we have started if this model was true okay so so many complicated words here um and so basically this theorem says that you can reconstruct that it's a monotonistic argument um it's it's fine and and so then once you have the initial State we can offer Redemption prices um based on uh based on this Redemption curve as a model um and that's pretty convenient because it's a way to respond to current market conditions it's completely autonomous governance only has to set meaningful hyper parameters it doesn't have to do anything in the moment and it's it's completely predictable for other people so everyone knows what's going to happen so yeah this you have this huge transparency advantage over a system where governance would just come in and then make a vote and of course other Market participants have no idea what the outcome of this vote is going to be now I should probably talk about implementation because you might be looking at the theorem and you're like yeah this is great if you're doing pure math but we're not doing that at all and I'm going to talk a little bit about implementation and the implementation works in two steps the first like core idea is that um you saw you remember the scary slide I showed you before with like many formulas where everyone in the room gasped so that had a couple cases stations in it and if you do like the cross product of all the case distinctions you end up with a bunch of regions and you can partition your space into all of these different regions and so you may believe me that this is possible the theorem is that you can actually detect in which region you are based on only the current market state um and then it turns out that once you know in which region you are um Computing like this value on this axis is very easy it's basically solving quadratic equations then um and that brings us to the algorithm so we detect the region based on the current state we reconstruct the anchor State we take that as a model and we compute our Redemption amount which is basically integrating over this exact curve I showed you before and then when you like are being very careful and you count all the things you have to do to get this is actually very cheap you just need to do some arithmetic a little bit square root um right so this system has a number of interesting properties and I'm going to show you just just like two um one result that you get like very easily is that there's no incentive to split up redemptions and like mathematically that's because you're Computing an integral and you can always split up an integral in different parts and it doesn't matter if you compute the parts of the whole thing so mathematically it's not very interesting [Music] um you have a path efficiency result which is basically that and this is like a little bit more interesting that the protocol state is going to improve over time so if you implement the system your reserve does not crash um completely to zero um and people just come and redeem then your system is going to recapitalize itself over time and of course this is exactly what we want we want long-term survivability of the system and this is what this looks like and now I want to conclude so if you're taking away anything from this talk it's that you can design your Redemption curves when you're building a stablecon system and this is a very attractive way to get good properties of your system it's also a very useful tool to compare different stable coins and to think about if the stable coin design is actually solid I showed you a design for one desirable Redemption curve and then I showed you how to make that Dynamic and make it react to market conditions and if you want to kind of be be involved into how we actually do these things we have implemented this in gyroscopes Dynamic stability mechanism gyroscope is our new stable coin launches planned towards the end of the year um and hopefully all these properties are going to make a gyroscope very robust if you're interested in the paper and you should scan this QR code and if you want to get in touch with us you can go here or follow us here why did you guys choose a like a piecewise linear approach for example and not something that's really smooth like a sigmoid or something like that are there nice properties that you get out of the this then you would not get otherwise yeah let me just just jump back to the slide so the [Music] should I give the honest answer or the line no I'm going to get the answer so if you're honest answer is because it's easy to implement um because and like the reason is that this is linear so it's integral it's quadratic and solving quadratic equations is easy and solving anything else is is hard so I have more of a philosophical question in the last let's say two or three centuries the tenancy in the state-backed currencies has always been to leave Beijing to go toward the free voting money why do you think that in the crypto economy we are seeing a Resurgence of Peg money that seem to be quite prevalent yeah yeah that's that's a deep question I wasn't expecting that uh um why why do we have a Resurgence of packed coins um I think my intuition is that people think in USD or in some other fiat currency that is not really represented in crypto maybe at some point we have a crypto native currency um that that doesn't need a pack because it's very stable against other Fiat currencies but I think we're not there yet and that's why we need to represent some some kind of measure some kind of numerator that people are familiar with and that matters in people's lives yeah let me just add a little bit to that so uh it's a common strategy when you're kind of like developing a new economy to do something like a currency Peg and it seems to work well in those situations because people want to use a more trusted unit of account like a dollar and so I think that's has a large influence here but I also just want to note that the uh the autonomous monetary policy that we've been developing can be more General than just maintaining a a currency Peg you can choose parameters in different ways to do more arbitrary monetary policy too I would want to know how do you think about once the system gets under thrust and you you get to the Redemption price like what would be the the mechanisms or the incentive to because it's kind of a uh I think there is some loss of trust in the Market at that point how do you how do you think about how to regenerate a system and and getting back to the pack like this yeah so that the gyroscope design contains a number of other uh like lines of defense and sort of ways that uh that the reserve could replenish over time and so basically this monetary policy the idea is to buy the system time so that those other mechanisms might be able to kick in some examples of that is basically like reserve assets are deployed in Risk segregated ways but they can still potentially earn some yield and so there's sort of a tendency to increase collateralization over time because of that and then there's also sort of this idea of forward guidance from the the the monetary policy itself like basically the as the out level of outflows this like time discounted sum that Stefan was saying decreases over time then there's upward pressure on the peg from the reserve assets again kind of according to this uh this policy and then there's other mechanisms too you can check it out in our docs and happy to talk more after after this as well
