[Signal Request] Quantitative easing to fix the peg (aka Manual PSM)

Some very good points in your discussion , I will try to address some.

MakerDAO doesn’t have any power in any statement it can make currently. There is no “whatever it takes” possible because leadership is decentralized in people no one knows. WBTC to capped by a debt ceiling for weeks before it gets raised. We have this issue for months now and we have tried 2-3 new policies, not even one per week. Moreover, the subject is very complex and we don’t have the manpower to do proper research on the topic.

I would argue that the Fed isn’t stealth. I’ve not seen any research on a spike in volatility on Fed meetings. The market and the economy dictate the Fed action more than the opposite.

Making power statement is powerful, and most of the time, the market front run the Fed so the Fed has almost nothing to do. The last example I have is buying corporate bonds ETF. The announcement was enough to get price in check. For government bonds you know exactly what they will buy each week.

It could be that having a USDC-M vault capped at 100M is 10x less effective than having a vault capped at 100 billions and it require less minting the later case.

The way I see it, the peg is taking most of our governance bandwidth. We let others fires burning. We lose momentum. I want to fix the peg because it should be easy to do (in this direction at least) so we can focus on others problems.

In my view, on this side of the PEG we should have:

  • inside the range $1.0 < DAI < $1.005 the market should be able to fluctuate and market maker do the job to absorb small imbalance of supply and demand.
  • at $1.005 the PSM should absorb a medium imbalance automatically with a buffer. It’s the outside spread from the money view so arbitrageurs have support.
  • over $1.005 manual intervention should take place. It can be lowering the rates (subsidize the borrowing) or stuff like quantitative easing.

For the tax implications, that’s already here with earnings in the surplus buffer. At some point we may probably have to pay taxes. That’s not a near term problem. I would be disappointed if the first project being a government target is not Maker. That’s a success metric.

By design quantitative easing can be unlimited (let say billions of dollars), I don’t see how someone can go against. Most likely, we will stop before, but that’s a governance call. It’s the same problem with the PSM.


Just adding.

While I think increasing the DAi minted and adding more collateral will help. I believe that having open market operations to manage DAI supply are important but I am conviced there is a better way is using something like the PSM that acts differently and doesn’t require manual intervention.

What I really want to see is a serious and well thought out as well as complete discussion regarding the topic of long term Maker goals against the constraints as I still do not have a clear feeling what the community (ala governance) sees in this regard. I am beginning to think that we are going after tons of different issues and no-one is really putting together a long term plan for Maker that has a vision as well as an approach to achieving that vision.

At some point I may post a new thread - Long term Vision for Maker where anyone and everyone is enouraged to submit their visions, discuss them civilly ofc, so that the community might come to grips with what our long term goals are and then work on determining the metrics for achievement of those goals.

Put simply I think we are using a pea shooter to deal with issues when if we can look at the entire Maker system globally with all participants from a vision perspective perhaps this will elicit more concrete long term plans to solve the issues we are dealing with repeatedly almost on a weekly basis now.


I think this is a good idea! At least worth trying on a small scale with, e.g., the current surplus available.

Ideally, it should be done in just 1 transaction (flash loans) etc, but I really like that we can try it “by hand” quickly with the surplus, without requiring much additional complexity/smart contracts, etc.

My impression is that having SF=0% is simply not a sufficient mechanism to keep the peg at 1:1.

People in the forum suggested that RWA will solve the problem, or additional YFI liquidity, etc. But for the moment (today) this is not available/working.

So I am totally inclined to experiment with your idea, on a small scale first.

1 Like

One more comment.

We all expect that, eventually, the peg will be stable at 1:1, because once the market players truly trust that MakerDAO can keep the peg, they will sell DAI whenever 1DAI>1USD and buy day whenever 1DAI < 1USD.

The idea proposed here basically amouts to let MakerDAO itself play the role of the player trusting the the peg will be reached.

This can be powered either by flash loans or, in a more conservative way, with the surplus. In the latter case, the MakerDAO is simply choosing to invest its money in this arbitrage activity (between DAI and USDC, for example) rather than burning MKR.

It all seem pretty healthy to me if only surplus money is used.

1 Like

Hi Guys, checked back this post again to run through the process, although I stated that I´m willing to give it a shot, how exactly does the unwinding work?

  1. Create a USDC-M vault that only some wallet can use (i.e. only Maker) with no SF and LR @ 100%. No limit or a 100M USDC limit.
  2. Borrow 100K DAI with a flash loan ( as an alternative to take 100k DAI from the surplus buffer)
  3. Sell the DAI to get USDC (around 101k USDC at first iteration, more later)
  4. Use USDC as collateral in the USDC-M vault to generate 101k DAI.
  5. Pay back 100k DAI of the loan, use the 1k DAI remaining to get ETH for transactions costs
  6. Repeat from 3 until the DAI don’t sell at 1.005 USDC/DAI.
  7. Unwind if 1 DAI <= 1 USDC

The moment that we unwind position probably the impact will be neutralized therefore we will be stuck with USDC until intrinsic demand = intrinsic supply or am I missing something here?

1 Like

You are right. We may decide to unwind before reaching the peg but the USDC selling price should be lower than the buying price or we take a loss (and it’s not even possible with flash loan and no capital).

The overall idea is to have this supply of DAI as long as needed (until 1 DAI < 1 USDC). The discussion shift from how to solve the peg with existing tools (which takes a disproportionate amount of governance bandwidth) to developing those tools (onboarding RWA for instance).

It may also be the case that such tool will impact the market behavior and anchor the price 1 DAI = 1 USD for market participant. This is still not a given as the peg was broken for so long.

It seems that TUSD will available as well soon and domain teams are working on cDAI and PAX. I especially like cDAI as it would be like having a Maker vault for Compound borrowers yielding 3-4% SF (excluding COMP farming).

I would personally prioritize the increase of stability fees (up to competitive levels) over unwinding those facilities. I want to highlight that when we add RWA, the SF will be less effective to reduce DAI supply (because RWA will have a quite low SF ceiling it seems). We might need to have some ways to tighten the DAI supply soon.

Overall I see the unwinding risk lower than using consumer vault doing the same. MKR take the same risk but Maker can manage its own vault more easily than customer vaults (swapping the collateral for instance).

Currently DAI Utilization is approximately 59.4% and the peg is 1.014196 DAIUSDC at 12:24 UTC. Can we agree that an abundance of DAI is also Not going to fix the Peg?

Also, if we do implement QE, or the PSM–I believe it will have a lot of short-term Tax consequences in the U.S./EU–therefore we will need to form a separate LAO/Corp. and appoint/elect Board Members. This is one of the reasons why the Maker Foundation could not help the community w/the PSM, in my opinion. I hope we are ready to organize as ONE, and make things happen. Honestly, we don’t have much of a choice.

1 Like

Seems unlikely that we could sell USDC at a price above $1… so I would say this point guarantees a purchase of USDC means a small loss when unwinding, or at least a 0% return.

Yes, definitely, basically it’s the same as the usdc vault (not contemplating capital efficency) with the difference that we absorb the profit and we may decide to absorb usdc risk by increasing our exposure till dai is below one when a rational trader would perhaps take the profit. There will be a trade off between SF revenue from USDC vaults and this idea (still I want to give it a shot).

The unwinding should be done at a lesser speed while other assets are onboarded or Yeth vault on the short run is again implemented.

Short note on RWA, they will definitely help the peg much more that crypto assets since the dai is probably offloaded, the dai miniting through RWA to impact the peg should be less than crypto leverage/farming exposure (no numbers in, just a general feeling).


@ElProgreso The exchange rate is defined by something that like the amount of DAI generated times the DAI velocity. Currently most DAI generation doesn’t have a high velocity or even no velocity at all. So creating more DAI help a bit (used to provide liquidity in Curve, …) or almost nothing (Uniswap LP, Comp leveraged farming). RWA should have an higher velocity.

The tax consequence exists since the first DAI hit the surplus buffer. QE or the PSM don’t add much to this problem. This is a discussion we should have but I’m not sure now is the time. You are too ahead for me :slight_smile:

@befitsandpiper the idea is to bring the peg at 1. The expected behavior is not to sell above 1.005 and not to buy below 1.005 (if we agree that’s the good limit, can be 1.000 as well). QE is a temporary and flexible measure to give us the time to ship collaterals that will supply DAI while having a good product in the meantime. This way we can work on the supply and the demand side at the same time and get stability fees.

1 Like

IMO it depends on how dai is used

Thanks for bringing this up, didn´t think of that, in my microworld of Uruguay crypto is not taxed (yet :frowning: ). By this do you imply we should implement a separate LAO/Corp. before eventually implementing the proposed idea?

So something I probably should have contributed earlier: This sort of change might be better suited to a Declaration of Intent than a signal request. It straddles the line between being doable with the tools we currently have (Vaults) and adding new functionality (restricting a vault to be used only by Maker + requiring flash loans.)

It would be good to get input from the Smart Contracts team to weigh in on how feasible this is technically. @wil, @cmooney any thoughts?

The way I wanted this to work from the PSM was basically to have a high side DAI price that would float with how much USDC was in the facility. Say we set the high price to 1.02 when 0 USDC is in the vault. The above facility would put up a 100K DAI sell at USDC 1.02. If it is purchased then the new ask price on the next 100K USDC is like 1.021 or some variation.

Now once one has USDC in the above vault allow anyone to initiate a USDC auction for DAI starting at .99USDC/DAI and going all the way up to the average USDC/DAI price of the facility at current. If this is 1.0225 then take any bid all the way up to 1.021 or 1.022 - otherwise cancel the auction with no sales and repeat only when another keeper initiates an auction. The idea here is to use your keepers against such a facility to try to clear collateral when there is an opportunity for them and the system to profit. A keeper will know both the average facility price (i.e. the high point where the facility will sell) and they will also know that they want to buy at a lower price than what the facility is currently offering. If they can profit from this they will use it. As the facility fills up with USDC the offer price should rise and the average price of USDC for DAI in the vault should rise above the target. As the price comes down use the auction process to basically clear out the USDC from the facility.

While this won’t drive the PEG down it should put a managed cap of liquidity on the high side and then use keepers to clear the facility when the price falls. I thought a better way to deal with this was with a PSM type contract that would just have a fixed bid and ask prices based on the facility usage and hence the average price of the collateral in the facility. Then just allow keepers to trigger auctions to buy in the middle of the spread all the way up to the avg facility price - some profit percentage.

Remember here while there is an idea to have system profit off this facility, this is not the primary job. The primary job of any facility in this regard is to be able to manage the PEG with liquidity that only has a fixed fee premium without any collateral risk other than pricing risk. (i.e. a PSM contract means someone doesn’t have to deposit collateral into a vault and then withdrawal DAI to use it or repay anything 3rd tx). A PSM like contract is a one tx to swap USDC for DAI or DAI for USDC for most users.

Primary issue here is that I wanted to have a couple PSMs using different operating parameters and DC’s so we could watch the different PSM utilizations and judge market effectiveness as well as manage losely overall DC usage with a group of PSMs trying to target different PEG values with their liquidity the widest one having the largest DC ofc.

Neither the Foundation or Rune will be providing advice on the proposed solution above. The mandated Domain Team will be once they’ve worked through it internally.

It is feasible but implementation is in the hands of the community.

1 Like

Implementation is in the hands of the community? We don’t have a community led smart contract team yet, so there’s no community expertise to implement this.


This should be really straight forward to build. I believe you can just take the USDC-A adaptor and add a whitelist to it. Adjusting the LR to 100% already exists.

1 Like

@wil so if the community provide a pull request or a new USDC-A join adapter solidity code and parameters (I was thinking about that too but unsure) and this signal pass the governance + executive on chain, will it be pushed by the SC domain team?

Or is there another process we should be aware?


You would need to go through the standard MIP6 process as defined here: https://github.com/makerdao/mips/blob/master/MIP6/mip6.md

1 Like

Why bother with building extra complexity when we can just change the liquidation ratio of USDC-A?

I made the case in the first post but it’s more detailed here.

Basically liquidation will probably not work as expected (when activated) and leave a mess or a loss.

1 Like