Comment on page

Detailed Version

Borrow - Kokoa CDP (aka Kokoa Vault)

Users can open a new CDP by depositing Klay as collateral. After opening a CDP, users will be able to borrow KSD from it. When users borrow KSD from their CDP, it mints new KSD out of thin air. The KSD minted is accounted as 'debt.' The debt must not exceed the value of the provided collaterals. Specifically, we track LTV(Loan-to-value) ratio to manage the risk levels of each CDP. Initially, the maximum LTV ratio under which users can mint KSD will be limited to 45%, and if the ratio exceeds 60%, the CDP will get liquidated.

Managing Debt

Users may borrow more KSD from their existing CDPs as long as the LTV ratio does not exceed the limit. Of course, they may repay part of their debt too. Borrowers are always responsible for borrowing and repaying activities.


When a CDP's LTV ratio exceeds the liquidation threshold, it is subject to liquidation. During liquidation, collateral assets in the CDPs are sold through a dutch auction to cover their KSD debt. The remaining collaterals will be returned to the user. Please be aware that there is a penalty for liquidation, which means that you will have to repay more than your actual KSD debt. The liquidation penalty rates are as below:
  • Volatile Assets (KLAY, BTC, KLAY-USDT LP, ... ): 10%
  • Stablecoins (USDT, USDT-DAI LP, ... ): 2%
Liquidation Auction is publicly accessible. To participate in the liquidation auction, please refer to this GitHub repository

Why do we need a Dutch auction?

Selling collaterals using DEX directly from the vault contract may leave users vulnerable to various attacks. Attackers can, with a fixed liquidation target in mind, first distort the DEX price beforehand with a large sell order, wait for the automated liquidation to sell the collateral at the low price, and repurchase the collateral right after. In this way, the target asset can be acquired by the attacker much more cheaply. In such attack, the “collateral damage” stretches to the protocol’s soundness also. Borrow vault’s KSD debt that was not repaid even after the full liquidation process, due to excessively low price created by the attack, gives rise to ‘Unbacked KSD.’ This seriously damages the stability and reliability of the KSD monetary system.

Why is the liquidation penalty necessary?

The liquidation penalty is a device to incentivize vault users to monitor their debt status responsibly. The stability of the KSD monetary system may be compromised if the debt status is not well managed, opening up possibilities of dangerous, serial liquidation. It is also a safeguard against ‘unbacked KSD’ that may occur in extreme situations. In extreme market environments(e.g. when the collateral value plummets, or when some vaults experience bankruptcy--being unable to repay KSD debt even after liquidation--due to serial liquidation), the system burns the accumulated liquidation penalties that are normally reserved as KSD. In this way bankrupt vaults become solvent, ensuring a healthy monetary system.

Managing Collateral

To keep their collateral assets safe from the risk of liquidation and also to manage the capital efficiency of their portfolio, users may add more collaterals into their existing CDP or withdraw part of the collaterals from it. Users may do so as long as the LTV ratio is kept under the limit. One thing to note is that withdrawing KLAY from a CDP requires an unstaking period of 7 days.

Calculation of LTV Ratio

The price of KSD is always considered as 1$ when calculating the LTV ratio. For example, suppose a user deposited $1,000 worth of KLAY in a CDP and borrowed 400 KSD from it. In this case, the LTV ratio of your CDP is 40%, even if the market price of KSD is higher or lower than $1. This is why the aforementioned 'arbitrage' can happen when the price of KSD deviates from its peg.

Price Stability of KSD

Due to the nature of the over-collateralized stablecoin model itself, users should not worry too much about the KSD price falling under its peg because each KSD is always backed by collateral worth more than $1. Users who have borrowed KSD have strong incentives to repurchase it in such cases because they must repay their debt to withdraw their collateral from their CDPs. With that in mind, users only need to worry about 'upside' volatility.
Additionally, the price cannot stay over 1 * (1/MAX_LTV) dollar for a meaningful period because in such cases, anyone can deposit Klay into CDP and mint KSD, the value of which is equal to or larger than the deposited collateral. For example, suppose the LTV limit is 45%, and KSD is traded at $2.5. By depositing $1,000 worth of Klay into the CDP, one can mint 450 KSD and exchange it for a $1,125 value of KLAY, redeposit those Klay and mint 506 KSD and sell it to 1265$ value of Klay;... Users can do this until the price of KSD returns to its peg - this is basically a money-printing opportunity for everyone.
So the instances users should focus on are the ones in which the KSD price stays above $1 and below $(1*(1/MAX_LTV)), and since the initial MAX_LTV would be 45%, that becomes $2.22.
Under most circumstances, users will be incentivized to borrow more KSD when it is being traded at a premium because that's an opportunity to sell a dollar for more than a dollar. At the same time, they will also be disincentivized to purchase KSD or repay the debt because they need to pay more USD value than they borrowed. With these two combined, the natural market forces will adjust the price towards its peg.
If KSD is somehow still traded at a premium for a meaningful amount of time nevertheless, Kokoa DAO can adjust protocol variables in order to bring the price back to its peg. One of them is the KSD Savings Rate. By adjusting this rate, the system can manage the market demand for KSD. Another one is the (negative) Borrowing Rate for the CDPs. The Borrowing Rate is set to 0% in most situations. However, if the system needs to increase the supply of KSD, it may provide a negative interest rate to the CDPs. As the name suggests, users who borrow KSD from Kokoa CDP will 'receive,' not pay, interest as a reward for minting KSD. This way, we can manage both supply-side and demand-side market pressure. In addition, there will be many other levers that will be implemented in Kokoa for stability management, so please stay tuned!

PSM(Price Stability Module)

Although in the long term, the natural market forces will push the price of KSD back to its peg price when it rises, it does not necessarily mean that it will ‘always’ keep it at $1. The price of KSD can still stay above its peg in the short term. This can be inconvenient — or even unreliable — not only for the users who want to use KSD as a medium of exchange but also for those who want to borrow KSD from CDP — because the KSD price might rise when they want to repay their debt.
Usually, in a more mature market, arbitragers fill this gap between the long-term price and the short-term price using advanced financial instruments such as margin, futures, options, and so on. Our team also aims to build such an ecosystem around Kokoa.
Nevertheless, we still need a somewhat more direct device to manage the mid-short-term price deviance. This is the primary purpose of PSM(Price Stability Module).
When KSD is traded at a premium, PSM can mint KSD against other stablecoins such as USDT, DAI, or USDC. When KSD is under-pegged, PSM will buy back and burn KSD with its assets.