# Vault Liquidity Pools v1
## Introduction
The Maker Protocol mints the stablecoin Dai and backs its value using collateral such as ETH through overcollateralized vaults. In this document, we present an alternative design for Dai that uses special liquidity pools -- known as Vault Liquidity Pools (VLPs) -- to improve the design of the Maker Protocol.
For ease of conceptual understanding, we make the following assumptions:
- Assume that there is only one type of collateral (ETH).
- Assume no OSM delay in liquidations.
- Assume that when a vault is liquidated, all the collateral in the vault is sold and the user gets nothing.
All these assumptions can easily be relaxed to keep the design closer to the current one. They are made just for ease of explanation.
## Vault Liquidity Pool (VLP)
A VLP is a Uniswap v2 pool consisting of ETH and Dai but with additional permissions that allow certain users to deposit and withdraw a single token, depending on their permission level and the collateralization status of the vaults.
A key role of the VLP is that it negates the need for oracles. The price of ETH in Dai is given by the ratio of ETH to Dai in the VLP and we call this the VLP price.
### Vault owner interactions with the VLP
The process of depositing ETH, minting Dai, repaying Dai debt and being liquidated remain indistinguishable from the current system to the user interacting with any frontend. However, the collateral is now managed differently by the protocol.
The user's ETH is deposited into the ETH-Dai VLP in the same ratio as the amount of Dai minted and the maximum allowed mint amount. Any remaining collateral is stored in the Pause Proxy.
The user may mint Dai subject to standard overcollateralization requirements. When the user wishes to repay their debt, the Dai is burned and any stability fees are sent to the Maker Surplus Buffer. The user's ETH amount is withdrawn from the Pause Proxy and returned to them.
The user always has permission to withdraw excess collateral from the Pause Proxy.
VLP collateralization management is the process by which ETH is moved between the VLP and the Pause Proxy. It requires one transaction and is based on the collective collateralization ratio for all ETH vaults. VLP collateralization management must be regularly done to avoid potential Vault Owner losses during Emergency Shutdown.
### Arbitrage interactions with the VLP
Any user may use the VLP to trade ETH for Dai and vice-versa. This ensures that deviations in the VLP from the true ETH-Dai ratio are removed through arbitrage.
### Keeper interactions with the VLP
VLP collateralization management must be done permissionlessly by keepers. They should be paid by the protocol to do this when the ratio of the value of ETH in the VLP to value of Dai minted deviates from 1.
Recall the assumption that liquidated users get no collateral back. The VLP has a permissionless function that allows anyone to perform liquidations. If a user drops below the minimum collateralization ratio (as determined by the VLP price), the outstanding Dai debt of that user should be withdrawn from the VLP and burned as part of the liquidation. Multiple vaults can be liquidated at once this way.
### Emergency Shutdown
After Emergency Shutdown has been triggered, the VLP is usable in one direction - to convert Dai to ETH. Dai holders are given a pro-rated amount of the remaining ETH in the VLP. All Dai in the VLP can never be removed. This replicates the locked-in price behaviour of Dai during Emergency Shutdown under the current design.
Vault Owners may withdraw excess ETH from the Pause Proxy.
## Advantages and disadvantages of the VLP design
Advantages:
- No need for a price oracle. The VLP automatically tells us the price of ETH in Dai.
- Instant liquidation auctions. By taking Dai from the VLP and burning it during liquidations, we avoid the need to auction collateral. This makes it far less likely that the protocol has bad debt.
- Collective liquidations since all undercollateralized vaults can be liquidated in one transaction.
- In addition to normal trades, vault interactions will unbalance the VLP. Users are more incentivized to provide liquidity to the VLP than to a Uniswap ETH-Dai pool.
Disadvantages:
- Slippage in the VLP collateral management transactions and liquidations should be monitored as they can lead to incorrect VLP prices.
- The VLP locks in around half of the total Dai supply by design. This causes difficulty in scaling Dai supply, if it is purely based on VLP vaults.
## Current issues
1. Arbitrage removes value from the VLP over time.
2. Need to separate LP tokens' claim on the pool and vault owners' claim on the pool.
## FAQs
Is Dai always fully backed?
Yes. The collateral in the VLP always equals the value of Dai outside the VLP. Excess collateral is in the Pause Proxy. Note that the Dai in the VLP does not count towards this backing.
Do things look different for users?
No, the user experience can be virtually identical to the current user experience.
Isn't scaling a big issue?
We already know that Dai cannot scale with only decentralized collateral. For decentralized collateral, this tradeoff makes scaling even harder but reduces the protocol complexity significantly.
What about illiquid collateral?
This design should not be used with illiquid collateral. That would almost certainly lead to incorrect VLP prices and hence, erroneous liquidations.