Note: This is based off of my current understanding of the StableCredit system and could be completely wrong. I have to thank @marcandu for many of the insights as he provided much of the explanation on how stablecredit works. The sole intention of this thread is to begin a discussion and to brainstorm as a community
I have been very intrigued by the StableCredit Protocol that was posted by Andre Cronje last week. I am not yet sure if it’s going to work, in fact I’m thinking that it wont, but it’s a very interesting system regardless. Perhaps the most interesting aspect of the system is that it exposes an under-served market – AMM liquidity providers. While credit systems like MakerDAO serve traditional borrowers that are seeking liquidity on their assets very well, the community has perhaps overlooked whether it is properly serving those who borrow with the intent of providing liquidity themselves. I believe Andre’s system has both strengths and weaknesses, and that the Maker Protocol can be the solution to those weaknesses.
Overview of the StableCredit Protocol - as I understand it
As I understand it, the StableCredit Protocol functions as follows:
Step 1: User deposits a token (e.g. $100 of ETH)
Step 2: The protocol deposits the ETH and 100 scUSD into a Uniswap pool
Step 3: The user is able to draw up to an additional 75 scUSD against this position
The net effect of these three steps is:
- ETH/scUSD Uniswap LP Shares
- 75 scUSD in debt
First, let’s address the 75 scUSD. We can view this as a loan against the ETH/scUSD LP Shares (a 133% collateralization ratio, to be precise). As for the 100 scUSD in the Uniswap pool, it would be tempting to view this as “unbacked,” but it has not actually entered the circulating supply. It will only enter the market if someone deposits more ETH into the Uniswap pool, which in effect would make it “backed” at that moment in time, but then it becomes dependent on positive market movement to remain that way. Importantly, it enters the circulating supply in a predictable way.
The weakness in this system, in my opinion, is that it it offers no incentive to destroy scUSD if the price of the collateral drops (in aggregate). This may cause people to abandon their positions and result in inflation, as unbacked scUSD enters the circulating supply.
How can MakerDAO offer a better solution?
There is a reason I outlined the specific sequential steps that a user can take when interacting with the StableCredit protocol even though they technically happen concurrently. If we focus the outcome of interacting with the Protocol, we can see that it is ultimately a 133% over-collateralized position against Uniswap LP Shares.
So why doesn’t Maker just onboard AMM LP shares? In short, capital efficiency. In Andre’s system, the user only needs to deposit $100 of ETH. If Maker were to onboard the “vanilla” version of AMM LP shares, the user would need to deposit $100 of ETH and $100 of Dai in the pool, making this 50% as capital efficient as StableCredit, and offering only 50% of the upside that the liquidity provider may have on their ETH.
In order to remedy this, MakerDAO can potentially offer a special Vault (let’s call it ETH-AMM) that uses an adapter which does the following steps (concurrently):
- User deposits $100 of ETH
- Vault mints 100 Dai and deposits both the ETH and Dai into the AMM, making the Vault collateral the LP shares
- The user is now able to generate Dai based on the value of the LP shares in their vault (with a catch)
Please note that in order for the newly minted Dai sitting in the AMM to hit the market, traders will be indirectly depositing ETH into the Vault. As an example, let’s say that the AMM LP Shares in the Vault have $100 of ETH and 100 Dai in the pool. A trader takes 10 of the Dai out of the pool and has to pay in $10 of ETH. The LP shares now have $110 of ETH and 90 Dai – the Dai is (currently) backed.
Why is this better?
As I mentioned above, in Andre’s initial design, there is no incentive not to walk away from a bad position and no prevention of “unbacked” scUSD leaking onto the market [unless I’m missing something, which is very possible]. I also believe there will need to be a thorough governance layer to stop malicious collateral from entering the system. These are two problems that a Maker Vault implicitly solves. In MakerDAO, if the value of the LP shares goes below the Vault’s collateralization ratio, the Vault will be liquidated. This properly aligns incentives, serves the market of AMM LPs, and allows Maker Governance to do the heavy lifting when it comes to system parameters.
There’s a catch
As I alluded to above, I don’t think the StableCredit system is going to work in its current form. Every time the price of an asset drops, the amount of outstanding scUSD increases and is likely no longer a claim on $1 of underlying collateral. I think this can be remedied by having the oracles price the LP shares in a way that accounts for the unbacked Dai that has been added or removed from the market, meaning that the Dai leaving the LP pool would effectively be added to the debt of the Vault user. @marcandu has done a more detailed calculation to simulate this, he can put it in the comments if he’d like.
Thanks for reading, I am looking forward to hearing others opinions. I also want to apologize in advance if my understanding of the StableCredit system is incorrect - I am here to learn!