FLOAT and the Money Gods
We have been asked many times how Float Protocol compares to other next-gen stablecoins. By far the most popular comparisons are RAI (Reflexer Labs) and FEI (Fei Protocol), both drawing their names from ‘stone money’ on the ancient islands of Yap 🗿.
We wanted to take some time to explain the differences between each approach. We examine this in three parts, starting with approaches to peg, before moving onto stabilisation mechanisms, then risks and trade-offs.
Approaches to peg
Let us start with the peg. This is the target price that each Protocol tries to bring the market price back towards in order to maintain stability.
FEI is pegged to $1.00. The benefit of this is that users are very familiar with the concept of a stablecoin that is worth a single dollar.
On account of being Dollar-pegged, FEI suffers similar problems to other crypto stablecoins. First, from a symbolic point of view, the Dollar is the currency of the very traditional financial system which crypto is trying to revolutionise. Second, because the Dollar is such an important financial asset, $1 crypto stablecoins face increasing regulatory scrutiny (see here). Third, $1 stablecoins are, necessarily, US-centric. This might be less appealing to those from other parts of the world where the Dollar does not dominate. Fourth, and most importantly, the Dollar is being constantly eroded by hugely expansionary and loose monetary policy (“the money printer goes brrr”). This means that if the purchasing power of the Dollar were to decrease, so will that of Dollar-pegged stablecoin holders (even if crypto is growing).
In contrast to FEI, RAI is a non-pegged stablecoin. The starting “redemption price” (which they call their target price) of RAI was $3.14 (i.e. Pi, decided by a twitter poll).
The redemption price is inversely correlated with the demand for RAI (it goes down as demand for RAI increases) and positively correlated with the demand for ETH leverage (i.e. it should be loosely positively correlated with the price of ETH). In short, if there is a lot of demand for RAI as a currency and store of value, the price of RAI goes down. If there is a lot of demand for ETH leverage, the price of RAI goes up. This is oversimplified but these are two primary forces that drive the long-term price of RAI.
Furthermore, based on the parameters of the “PID controller” Reflexer uses (this just means the feedback-loop mechanism Reflexer uses to control the price), RAI should be somewhat volatile in the short-term but fairly stable in the long-term. It should also be able to largely ignore price movements of the underlying collateral (currently just ETH). During their initial test with ProtoRAI, the ETH price increased by 350% while PRAI’s redemption price fluctuated less than 4%.
Like Reflexer, FLOAT is a non-pegged stablecoin. The starting price of FLOAT will be $1.618 (the golden ratio in Mathematics). In contrast to RAI, the target price of FLOAT is positively correlated with increased demand for FLOAT and, like RAI, positively correlated with the price of ETH.
In comparison to RAI, FLOAT will be stable in the short-run (since the on-demand auction mechanism will be very efficient in correcting the market price) but its value will change more in the long-run. Specifically, FLOAT will be more sensitive to changes in the price of its collateral (just ETH in V1). We purposely designed FLOAT this way to protect the long-term purchasing powers of users. This means it should change in value more aggressively than RAI, but with a smoothness and low-volatility.
However, since there is no free lunch, this does mean that in the case of a prolonged drawdown of crypto prices and an extended lack of demand for stablecoins (specifically FLOAT), the target price of FLOAT will trend downwards (in a less volatile and dampened way) with its collateral.
Next, let’s look at stabilisation i.e. how each protocol brings the market price back to its target.
Fei is a partly collateralised system where the starting collateral is ETH. This collateral is not “user-owned”. Instead, they have coined a term called PCV (protocol controlled value). This means that there is no direct way for users to arbitrage the collateral out of the system. Instead, the system proactively manages this collateral to control the peg (which in case of FEI is $1).
The way the system works is that it starts with a certain % collateral that is backing the system (which is based on how much FEI is minted during the initial sale). The system then uses the entire collateral (ETH) to add liquidity to the ETH/FEI Uniswap pool (it mints the extra FEI from nothing).
Expansions in Fei
Should the value of FEI exceed $1, the protocol allows users to mint new FEI directly from the system (in exchange for an equal $ amount of ETH as collateral). For example, if the market price of FEI is $1.50, anyone can mint new FEI at $1.01 and sell it on the market until the arbitrage opportunity is closed.
Contractions in Fei
Should there be a lack of demand for FEI and the price falls below $1, the system has two main methods of correcting the price:
The first one is something they call “direct-incentives.” These are basically penalties implemented on sellers if the price is below peg. These penalties are given as rewards to incentivise buyers to purchase FEI. In substance, these direct incentives are similar to bonds as they incentivise speculators to support the price when it is below peg.
If direct incentives fail to fully correct the price, the second mechanism for price corrections kicks in. These are referred to as “Peg reweights.” In this case, the protocol will withdraw liquidity from the Uniswap pool. The ETH collateral that has been withdrawn will be used to buy FEI on the open market and bring it back to peg. The remaining ETH will be resupplied on Uniswap. The end result should be that the price returns to peg, albeit the protocol now has less collateral backing it.
Reflexer is an over-collateralised debt system. It is essentially a fork of MakerDao’s Multi-Collateral DAI except they replace the stability fee with a change in the redemption price (the target price in RAI’s system) thus allowing for negative interest rates and, in turn, allowing the target price of RAI to change over time
Expansions in Reflexer
If there is excess demand for RAI and the market price is above the redemption price, the system moves the redemption price further down. This means that someone can mint new RAI at the redemption price and sell it back for ETH, enjoying a nice return for going long ETH.
Contractions in Reflexer
If there is a lack of demand for RAI and the market price is below the redemption price, the system moves the redemption price further up thus making borrowing more expansive. This incentivises people to return their loans and reduce the supply of RAI on the market which should, all things being equal, increase the price of RAI.
Float is a two-token partly collateralised system. It uses collateral (just ETH in V1) which it stores in what we call the “Basket”. Similar to FEI, users cannot directly arbitrage collateral out of the Basket. Rather, the protocol uses the Basket to bring the price back to target through Dutch Auctions (these are auctions where bids start at the highest possible price and descend downwards towards the minimum (reserve) price). One of the main goals of the system is to ensure there is always a target amount of collateral relative to the target price of FLOAT, which we call the “Basket Factor” (initially 100%).
Expansions in Float
If the price of FLOAT is above its target price, any user can start an auction (initially it can only be started if a minimum of 24h has passed but that requirement will be lowered and then completely removed as participants become more comfortable with how the system works).
Once an auction starts, the system mints and sells new FLOAT, starting at market price + some premium (an undesirable trade in most cases) and slowly lowers the offer price in steps towards that of the target price.
At every step where there is an active arbitrage opportunity (where the price offered in the auction is below the market price), arbitrageurs will buy FLOAT from the protocol and sell it on the market for a small profit. In buying FLOAT from the protocol, arbitragers pay a blend of ETH and BANK (the second token in the Float system).
For example, let’s assume the target price was $2, the market price was $4 and the Basket Factor was 200%. Let’s say that one of the offered price steps in the auction was $3.90 (so there is a clear arbitrage opportunity of $0.10). $2 of the $3.90 would be paid in ETH and $1.90 paid in BANK. The BANK given to the protocol would be permanently burned by the protocol. By doing this, the protocol is ‘storing’ the extra volatility into the BANK token. BANK can be actively used in contractions if the Basket Factor is below 100%. We can also see that after the expansion, the Basket Factor will be lower and slowly edge towards the target.
Contractions in FLOAT
If the market price of FLOAT is below its target price, the protocol offers to buy FLOAT from the market in the form of a “Reverse Dutch Auction.” This is where the seller (in this case the protocol) tells the buyers what bids it would accept in increasing steps.
The starting step is the market price minus some discount. This is slowly increased by the protocol in steps until the price researches the target price. If the Basket Factor is below 100% (i.e. the value of the collateral in the system is below the value of FLOAT in circulation), the Protocol will buy FLOAT from the market with a mix of ETH from the Basket and freshly minted BANK. This is the inverse of what happens in an expansion. In this instance, the cost of ‘refilling’ the Basket Factor is covered by the BANK holders. The FLOAT bought is instantly burned.
One of the cool things about the protocol is that the process of a contraction always increases the Basket Factor (the amount of collateral we have relative to the amount of FLOAT on the market). This is because in a contraction, FLOAT is bought from the market below its target price
(As a side note, in v1 there are few incentives for speculators to get involved when the price is below peg. However, we plan to introduce a bond-like system in future releases. Equally, in order to balance protecting purchasing power with price volatility, we plan to introduce an interest-based system to increase/lower demand for FLOAT in a more granular way.)
Risks & Trade-offs
Finally, let us look at the vulnerabilities of each system and the compromises each has made to achieve their goals.
One risk of Fei is a negative spiral brought on by a sharp drop in the price of its collateral. This is an unavoidable risk since it is trying to defend a fixed $1 peg backed by volatile collateral. Should the price drop in its collateral be large enough, the long-term ability of the system to hold its peg may be questioned and a “bank-run” could be initiated.
In this scenario, as we have seen with non-backed stablecoins, the speculators supporting the price would disappear very fast (meaning direct incentives would not be enough to hold peg). Further, the system would need to protect the peg through its “peg reweights”. However, due to impermanent loss and the fact that reweights are essentially using collateral to support the price on the open market, a negative feedback loop may ensue. Collateral sold to support the price means there is less collateral to support the price later, creating a lack of confidence that weakens the price and causes more collateral to be sold. This situation could continue until a full-death spiral is achieved.
One of the backstops to this death-spiral which Fei mention is that TRIBE (the governance token of the system) could be used to re-collateralise the system. However, this is something that would need to be an emergency vote-type- decision to work. Should it ever need to be used, the question would be whether the protocol could recover for fear of the situation arising again.
Regardless of this, a positive aspect of Fei is that it is more capital efficient than over-collateralised stablecoins and invariably more robust than the 1st generation of purely algorithmic stablecoins.
Given Reflexer is based on Multi-Collateral DAI, it has the advantage of being battle tested against the 2018–2019 bear market. This means black-swan risk is fairly minimal (though this is true for any over-collateralised system). There is a slight oracle risk as there is a slight price delay in the system due to the way oracles work. In theory, the price could drop very fast and loans which should have been marked for liquidation would not be correctly marked. The result would be that users have some time to save their deposits and leave the system under-collateralised.
One trade-off RAI makes is the system is less capital efficient than a partly collateralised one. A quirk of the system is that should demand for RAI significantly outpace the price increase in ETH, the long term dollar price of RAI could trend downwards. This is because the redemption price (RAI’s target price) moves downwards if there is excess demand for RAI. This could reduce the purchasing power of holders in real world terms.
Another risk worth noting is that on-chain PID controllers are complex and it might prove difficult to find the right balance to maintain a stable system. Reflexer provides a nice overview of PID risks here.
Similar to FEI, one of the major risks for FLOAT is a collateral-value-drop induced “bank-run”. In this instance, if the price of ETH were to decrease a lot, the protocol would adjust by moving the target price down slowly over time (how fast depends on how the market price behaves relative to the target price). Contractions would be paid for by the Basket, supported by BANK.
Funnily enough, a big and sudden sell-off of FLOAT would actually be beneficial for the protocol. It allows the protocol to quickly boost its Basket Factor. This is because with every contraction auction, the protocol ends up with a higher % Basket Factor (since the protocol buys FLOAT off the market below the target price for which it aims to have 100% collateral, leaving excess collateral in the Basket which that can go towards supporting the rest of the FLOAT in circulation if future contractions arise).
However the risk with FLOAT is that, should the price movements be severe enough for a prolonged period, liquidity and speculative demand for BANK could disappear. This would mean the protocol would struggle to fully correct the price back to target (eventually the protocol would not have enough in the Basket or through newly minted BANK to support the FLOAT price). Instead, the protocol would rely on target price movements to absorb all the pressure over time. Unlike Fei, Float would still function as designed except the target price decline would be larger than ideal.
One nice feature about the Float design is that as the protocol gets more usage and there is more stability and market acceptance for BANK, the Basket Factor can be voted down (by governance) to less than 100%. This would make the protocol more capital efficient and close to a truly independent digital currency.
A note on Distribution and Launch Style
As a side note, this article does not cover distribution and launch styles (particularly the difference between the VC funding model and the “Fair Launch” approach which FLOAT chose). You can read that article here or the TLDR below.
TLDR, the VC approach is a great signal of a project’s quality and offers a strong promotional aspect. However, this tends to centralise a project away from its core user base at an early stage (this can be a good thing, but not always). We went for a “Democratic Launch” where we distributed a large proportion of our BANK governance token to active governance participants in other platforms. We did this by way of a cap on deposits of $30k and a whitelist. The result has been around 4,000 addresses buying or farming BANK so far.
Overall, we have tried to survey the differences between each approach. Importantly, the system designs may not be perfect. Real world experience will reveal everything we need to know and it will be the teams who are most adaptable and able to iterate that succeed, perhaps borrowing ideas from each other.
We truly believe that an eclectic variety of approaches is only a good thing for stablecoin evolution. DeFi needs its own sense of stability that is not TradFi linked, we are confident that current and future evolutions will achieve this.
For more on each protocol, see:
Float Protocol socials
Twitter — https://twitter.com/FloatProtocol
Telegram — https://t.me/officialfloatprotocol
Medium — https://medium.com/@floatprotocol
Github — https://github.com/FloatProtocol/
Discord — https://discord.gg/nVCZacJJqM
Scattershot (fork of Snapshot) — https://scattershot.page/#/snapshot.floatprotocol.eth
Forum — https://forum.floatprotocol.com