The Target Rate Feedback Mechanism (TRFM) has been mentioned a few times in recent memory, for example during governance calls or in forum posts like this one. However, the TRFM is not widely understood, so I’m making this post to provide the community with an easy introduction to the concept. There’s no intent here to suggest implementing this mechanism; rather, I merely want to clearly explain what the TRFM is so that everyone can understand and participate in any discussions into which it enters.
The TRFM can be thought of (roughly) as an alternative to the DAI Savings Rate (DSR) that has more flexibility in terms of applying directional pressure to the DAI price. It has been discussed since the early days of the Maker project, although work on it was stopped some time ago. This steemit post describes the mechanism and some of the early research that was done, and is still a good reference. A recent Medium article describes the same idea and is also recommended reading for those wanting to dig deeper. Here, I’ll explain only the most basic ideas needed to understand the TRFM.
An asset the system uses to measure value. This is currently the United States Dollar (USD). Oracle prices must be reported in units of this asset.
Market Price (MP)
The value, according to the market, of one DAI against the reference asset. This is measured through, for example, DEX trades, and can be seen on sites like https://dai.stablecoin.science/.
Target Price (TP)
This is the value, in the reference asset, that the system targets for one DAI. I.e., if the system is in equilibrium, the target price and market price are equal. This value is also called the “redemption price”. It affects how much DAI can be drawn against a fixed value of collateral, and also how much collateral is received per-DAI during Emergency Shutdown. The target price has been fixed at $1 since the system launched. It is stored in the
par variable of the Spotter smart contract. An example: at a 150% collateralization ratio and a $1 target price, 100 DAI can be drawn against $150 of ETH collateral. If the target price is changed to $2, only 50 DAI can be drawn against the same $150 of ETH.
Target Rate (TR)
The rate at which the target price is changing, usually thought of and expressed as a yearly percentage. Currently, the Target Rate is zero and the system does not track a value for it.
Target Rate Feedback Mechanism (TRFM)
A feedback mechanism that adjusts the target rate in order to equalize the target price and the market price. The rest of this post will discuss this in more detail, but the diagram below gives a basic illustration.
Implications of the TRFM
The TRFM involves a major conceptual shift. The entire world thinks of DAI as being a dollar-pegged stablecoin, but if the TRFM is implemented, then DAI no longer has a fixed peg. It still has a peg (the target price) at any given time, but this peg changes based on the target rate. DAI with a TRFM could instead be thought of as a “volatility smoothed” or “semi-stable” coin (the term “reflex bond” has recently come to be associated with such an asset). Here’s a hypothetical example of how this could play out in practice: suppose DAI initially has a TP and MP of $1, and a TR of 0%/year. Then, an extreme market event causes the MP to drop to $0.90. The TRFM activates and sets the target rate to 10%/year to incentivize supply contraction and demand to hold DAI. Suppose that after 8 months, the TP and MP are equal again, so the TR returns to zero; now the target price (and also the market price, since we said they were the same) will be ~$1.0656.
Another important feature of the TRFM is that it can be negative as well as positive. This means that it can deal equally well with DAI prices that are above and below the target price. This contrasts with the present situation in which the DSR is at 0% and cannot be lowered further, despite DAI remaining above peg. In fact, if DAI had a TRFM, having the DSR as well would be of questionable value (and very confusing for users). Further, stability fees could remain at non-zero values regardless of the sign of the target rate, ensuring that the system can still earn risk-premium income while the market overall is driven to resolve the discrepancy between the target and market prices.
The ways in which the TRFM creates incentives to equalize the target and market prices are somewhat subtle and worth examining in more detail.
Market Price < Target Price
If DAI is trading below its target, the target rate will be set to a positive value. This implies an increasing target price.
Vault user viewpoint
As the target price increases, Vault collateralization levels decrease (roughly, the system is viewing DAI as being “worth more” and hence each Vault’s dollar-valued debt is increasing). This incentivizes Vault holders to either buy DAI to repay debt (a good deal, since DAI is trading low) or to add collateral. Only the former will impact the price of DAI and thus the target rate (which a Vault holder would like to see reduced), hence at a high enough target rate this becomes the preferred option and creates demand for DAI, driving up the price.
DAI holder viewpoint
The rising target price represents and effective savings rate on DAI, incentivizing the holding and acquisition of DAI. Generally, this comes about because the price Vault holders are willing to pay will increase over time (to avoid loss of collateral), and because one DAI will be able to claim a greater quantity of collateral should Emergency Shutdown occur.
Market Price > Target Price
If DAI is trading above its target, the target rate will be set to a negative value. This implies a decreasing target price.
Vault user viewpoint
As the target price decreases, Vault collateralization levels increase (i.e. the same amount of DAI debt is regarded as a lesser dollar amount by the system). This frees up Vault holders to mint more DAI without increasing their liquidation risk, incentivizing a DAI supply increase, which should lower the market price. This is functionally similar to a negative stability fee, but note that the system can still collect non-zero fees (albeit in an inflating currency) even with a negative target rate.
DAI holder viewpoint
Since Vault holders will be willing to accept progressively lower maximum prices for DAI in the future as the target price decreases, DAI holders are incentivized to sell their DAI to lock in the benefits of the current high market price, and those thinking of holding DAI as a store of value are likely to reconsider. There is also the fact that the amount of collateral DAI will be able to claim during ES is decreasing, weakening the potential payoff of holding DAI if ES occurs.
Implementing the TRFM
Note: this section is intended to address curiosities around how the TRFM might be implemented, and does not represent a proposal for actually doing so–that would require a proper technical design document presented as part of a MIP.
At a minimum, three new components would be required to fully implement an automated TRFM in the present DAI Credit System:
- a DAIUSD price oracle
- a target price calculator
- a target rate controller
The DAI price oracle could be spun up using the existing oracle infrastructure; the target price calculator (which takes the target rate as an input) would be a trivial contract similar to the Pot or Jug (in fact, simpler than either of them). The target rate controller is more involved, as it must specify an algorithm for calculating the target rate.
The options for implementing the algorithm that controls the target rate are quite nearly limitless. However, a PID controller is a simple and widely-used process control algorithm that has been explored previously and could be implemented fairly easily on-chain. The purple paper even sets a naming precedent for some of the parameters that would be involved.
Alternatively, governance could set the target rate or even the target price directly, reducing the need for smart contract implementations. The downside of this is of course the introduction of the delays and caprices of human decision-making into the process, but something along these lines could serve as a temporary bridge to a fully-automated TRFM (which would likely need some tuning of parameters, at least initially). A trustless, unalterable (or at least predictably alterable) TRFM would be a much more reliable guide to market participants, as it eliminates uncertainty from the choices they must make.