
secondary title
01.Project Outline|Abstract
Acala - the world's first decentralized open financial alliance, Polkadot Ecological Finance Center, aims to create an open financial framework in conjunction with the Polkadot ecosystem, bringing financial stability, liquidity and accessibility to global encrypted assets. At present, core Layer 1 modules such as cross-chain multi-asset mortgage lending agreement, release of Staking asset liquidity agreement, and DEX have been launched. In addition, Acala has also added an EVM-compatible smart contract module, allowing Solidity developers to use minimal Migration costs enter the Polkadot ecosystem.
At present, Acala has received official financial support from the Web3 Foundation, and has received investment from several world-renowned institutions including Polychain, Pantera, ParaFi, Hypersphere, Digital Currency Group, CoinFund, 1confirmation, HashKey, and Coinbase Ventures.
# Introduction
Established
Established
October 2019
time online
Pioneer Network
Karura
secondary title
02. Technology|Web3 Infrastructure
Acala is built based on the Substrate framework and will be used as a parallel link to enter the Polkadot ecosystem. The operation of the parallel chain is to access the Polkadot network through slots. The specific method is as follows:
Parachain (parallel chain): It has its own independent state and business logic, and shares the security provided by the relay chain.
node
node
Validator: Responsible for generating blocks in the relay chain, verifying proofs from collectors, and conducting consensus voting with other validators.
Fishermen: Monitor validators and collectors, check for invalid candidate receipts, either validators or collectors can act as fishers.
network
network
Polkadot currently has three different networks, the Rococo test network, the Kusama experimental pilot network, and the Polkadot main network. Each network has its own meaning. Acala also has three different networks according to the online process of the Polkadot network:
1) Mandala Testnet: The TC6 version of the testnet has been launched so far. All testnet assets are only used to experience the Acala network functions and have no real value, and will be cleared after the testnet is updated;
2) Karura Pioneer Network: It will participate in Kusama’s parachain slot auction. The asset name is KAR. It will be launched first and test Acala’s related DeFi functions in an environment with certain economic value. Its positioning is to become a decentralized finance on Kusama center;
3) Acala mainnet: It will participate in Polkadot's parachain slot auction, and all related functions will be launched one after another after the stable operation of Karura's first network, and it is committed to becoming a decentralized financial center on Polkadot.
Parachain slot auction
Parachain slots (Parachain Slots) are the interface between the relay chain and the parachain. If you want to share the security of the Polkadot network and interact with other parachains, you must use slots. There are two types of slots: Community Beta Slots and Commercial Slots. 20% of the slots are reserved for deployment by the Web3 Foundation as a community beta parachain to promote the entire Polkadot ecosystem. development, the remaining 80% are commercial slots. Because the number of slots is limited (approximately 100), they will be distributed fairly through auctions.
The auction of parachain slots takes place every 6 months, and only one slot is released each time. The lease period of the slot is based on 6 months, divided into 6 months, 12 months, 18 months, and 24 months. Only the items participating in the auction can bid freely, bidding for a single or adjacent multiple lease periods , the highest price wins. The winning bidder needs to lock its DOT (KSM will be locked in Kusama) during the corresponding period, and the DOT will be unlocked at the end of the parachain lease period. The longer the lease period, the more stable it is for the network. The bidding module is officially provided by Polkadot.
According to Gavin Wood’s previous introduction, after the Rococo V1 test network is running stably, the parachain slot auction will be launched on Kusama, the leading network of Polkadot, and the winning parachain will be launched on Kusama, and then this process will be copied to Polkadot mainnet.
When Acala designed the network, it also designed three different networks according to the launch process of the Polkadot main network. Therefore, the Acala pioneer network Karura will first participate in the slot auction of the Polkadot pioneer network Kusama. After the online launch, continue to participate in the slot auction of the main network.
Karura Slots Auction Scheme
The Acala team will first access the Acala Pioneer Network Karura on Kusama, and currently plans to allocate 11% of the total Karura (100 million pieces) to KSM holders, mainly to motivate KSM holders to help Karura participate in slot auctions. Assuming that the team plans to bid for Kusama’s 12-month slot usage period, if users are willing to lock their KSM for one year, they will get at least 12 KAR for each locked KSM, but only 30% will be released immediately, and the remaining 70% will be released at 12 Released linearly over a month. The KSM locked by the user has not passed through the project party, and all KSM participating in the auction are still locked in the original chain address. In addition, there are recommender mechanism (5%+5%), 6/8-6/11 early bird reward (10%), 6/15-6/17 auction start reward (5%).
The online process of Karura is divided into the following 7 steps:
① Connect to the Polkadot parachain test network Rococo V1 for relevant tests;
② Parachain-related codes will be deployed to Kusama after testing;
③ Announce the schedule for the first parachain slot auction;
④ Kusama will open the crowdfunding module of slot auction, users can choose Karura in the Crowloan module and lock their own KSM;
⑤ Slot Candle Auction; (June 17th at this stage)
⑦ Distribute KAR.
secondary title
03. Products|DeFi Hub of Polkadot
As the underlying infrastructure of the Polkadot DeFi ecosystem, Acala will join the Polkadot ecosystem as a parallel link, sharing the security and interoperability provided by Polkadot. At the same time, various decentralized financial applications have been built for users, such as over-collateralized lending agreements, DEX and other core infrastructure, to create a better user experience; in addition, developers are also provided with a set of Ethereum-compatible The smart contract module can directly interact with the Runtime layer, helping developers build various types of decentralized financial applications (such as NFT, prediction markets, etc.) on the Acala application layer, and helping the prosperity and development of the Acala ecosystem.
Overcollateralized Lending Agreement
The over-collateralized lending agreement maintains the operation of the stable asset system in the Acala network. The stable asset aUSD is generated by over-mortgaging multiple assets, with a target price of $1. The existence of stable assets can ensure low price volatility, thereby realizing circulation value. It can provide infrastructure services for the entire Polkadot ecosystem.
The loan agreement is mainly divided into CDP module, auction module, price feeding module and governance module, as shown in the figure. Before introducing the role of these modules, we need to understand the following points first.
stabilization mechanism
1) Adjust the stable fee rate: The main means to maintain aUSD price stability is to control the supply and demand of aUSD in the market, and the key factor affecting supply and demand is the borrowing rate. When the borrowing rate rises and the interest is higher, the demand for aUSD loans will decrease. Otherwise, it will rise. Therefore, the primary way to maintain price stability is to adjust the borrowing rate, which is called a stable rate in the Acala network
2) Emergency Shutdown (Emergency Shutdown): The last resort to ensure the aUSD price can be redeemed, divided into single asset liquidation and global liquidation.
Single asset liquidation: When a certain mortgage asset reaches the debt limit, liquidation will be triggered. The liquidation process is:
① Stop accepting the asset as collateral;
② Increase the liquidation rate and gradually close positions;
③ Forced liquidation after a certain period of time.
Global liquidation: When the system is maliciously attacked or the network is upgraded, the global liquidation will be triggered. The liquidation process is:
① The latest price feed snapshot;
② Stop accepting any assets as collateral and adjust positions;
③ Liquidation system debts and profits;
④ aUSD holders redeem collateral in proportion.
aUSD Generation Process
aUSD uses the U.S. dollar as a value anchor, and each aUSD will be supported by assets with a value greater than 1 U.S. dollar. For example, if the market reference price of 1 DOT is 30 USD, if user A wants to obtain an aUSD loan, mortgage 1 DOT DOT can only obtain a maximum of 20 aUSD, and the asset mortgage rate is 150%. However, the market price fluctuates greatly. In order to ensure the safety of the collateral, it is necessary to control the mortgage rate above 150%. The higher the mortgage rate, the higher the asset security.
The process of obtaining aUSD loan is the process of creating a CDP (Collateralized Debt Position), the specific process is as follows:
1) Deposit and create a CDP: User A connects to the wallet, deposits 1 DOT into the agreement through the portal, and 1 DOT will be locked in the CDP as collateral;
2) Create stable currency: Based on the value of DOT, users can obtain a certain value of aUSD from CDP, assuming 20 aUSD;
3) Close the CDP: User A can repay the loaned 20 aUSD at any time and pay the stability fee during this period;
4) Withdrawal: 20 aUSD will be destroyed, and the collateral will be unlocked and withdrawn;
5) CDP auction: When the value of collateral drops, that is, the current market value of 1 DOT drops from 30 USD to 25 USD, and user A lends 20 aUSD, and the mortgage rate at this time is lower than 150%, then the When the liquidation is triggered, the system will automatically liquidate and auction the collateral, and the liquidated CDP needs to pay an additional operation fee, which we call the liquidation penalty (the Mandala testnet liquidation penalty is set at 3%).
CDP module
The CDP module is used to create, manage and store CDPs. The CDP module creates a stable asset (aUSD) linked to the US dollar by mortgaging a certain asset. The collateral will be locked in the CDP, and the value of the stable asset created is usually less than the value of the collateral. When closing the CDP, the user needs to repay the amount of stable assets borrowed + the interest that needs to be paid. At this time, the collateral can be retrieved.
The liquidator will monitor the ratio of the collateral value of each CDP to the debt value. If the collateral price drops too much, the collateral in the CDP will be transferred to the auction module and sold at auction to recover assets and pay off debts to ensure the health of the system run. In addition to repaying debt and stability fees, the liquidated CDP also needs to pay an additional liquidation penalty.
Price feed module
This module will include a set of whitelist oracles, and each block will store the fair price provided by the oracle, which will be fed back to the CDP module and the auction module.
The oracle needs to feed the price to the CDP module to determine the amount of generated aUSD; feed the price to the CDP liquidation part, so as to transfer the collateral in the CDP with a low mortgage rate to the auction module in time; feed the price to the auction module to To ensure the maximum benefit of the creators of the system and CDP.
The key risk parameters in the main management system, such as the annual interest rate of the stability fee, liquidation rate, liquidation penalty, debt ceiling, etc., after multiple assets are launched in the future, the mortgage rate, liquidation value and other parameters of different mortgage assets will be different. The person who decides these risk parameters is the ACA holder. After the parameters are determined, they will be set in the governance module, and other modules will cooperate according to the parameters set by the governance module.
to liquidate
to liquidate
The purpose of designing liquidation is to motivate borrowers to maintain solvency, and a perfect liquidation mechanism can avoid debts and transfers on lending platforms. The 312/519 black swan incident was a big test for the entire DeFi industry. The platform generated bad debts worth nearly tens of millions of dollars. There are two main reasons for so many bad debts. One is the underlying Ethereum network. Due to the congestion, the liquidation work cannot be carried out normally; the second is that the liquidation efficiency is insufficient. In response to these problems, the Acala protocol has made the following improvements:
① To solve the problem of transaction congestion, the transactions under the Substrate framework used by the Acala network are divided into two types: Normal and Operational. About 20% of the space in each block is reserved for operational transactions as a priority channel for important system transactions (for example: quotation oracle, risk parameter adjustment, automatic liquidation).
② During the liquidation process, there is a triple protection mechanism. First, Acala plans to sell collateral through DEX to pay outstanding debts after the liquidation is triggered, and then conduct an auction if it fails. If there is a winner in the collateral auction, the winning bid price is compared to the exchange price at the end of the auction to ensure the collateral is sold at the best liquidation price. This design can liquidate risky positions more efficiently. Small positions can be liquidated directly on DEX, while large positions can be split into multiple small positions and sold, or liquidated through auctions. Second, use the high-quality surplus assets in the Acala Treasury as a safety reserve; third, use the ACA auction to cover the bottom line.
DEX overview
DEX (Decentralized Exchange) is to remove all traditional centralization links that can be removed, including matching and liquidation. The DEX solution that removes the market maker is called AMM (Automated Market Maker).
The reason why AMM's algorithm can provide market prices is the existence of arbitrageurs (Arbitragers) in the market. The price provided by AMM is higher or lower than the market, and arbitrageurs come here to trade, get the price difference from the market price in return, and bring the price of the AMM pool back to the market price.
algorithm
algorithm
x*y=K
The DEX in the Acala network adopts a constant product market maker model, the model is very simple, the formula is
x and y represent the number of different cryptocurrencies, the product of the two is k, k is a constant, and the value of k is determined by the first injection of liquidity: 1) Anyone can create a new transaction pair; 2) regardless of the value of k The initial setting is why, because there are arbitrageurs in the market, the value of k will eventually adapt to the market price.
Take DOT-aUSD as an example to illustrate the DEX transaction process. Assuming the initial price is 1 DOT=30 aUSD, the DOT reserve in the trading pool is 10, and aUSD is 300, then the value of k is 3,000. The process for a user to purchase aUSD with 1 DOT is (in the case of ignoring the transaction fee):
1) The user sends 1 DOT to the DEX Pallet;
2) The number of DOTs in the transaction pool is updated to 10+1=11;
3) The amount of aUSD in the trading pool is updated to 3,000/11=272.73;
4) The amount of aUSD received by the user is 300- 272.73=27.27, that is, the price for the user to purchase aUSD with DOT is 1 DOT = 27.27 aUSD;
5) At this point, the new k value is 11*272.73=3,000.03.
The existence of the constant k is to calculate the exchange rate, that is, how much aUSD needs to be given to the user, that is, when x*y=k, where x changes, only when k remains unchanged can y be calculated, and the accounting is done before a transaction occurs. Calculate this constant, and calculate the number of assets that can be swapped out according to the different amounts of new injections. After each exchange, a new flow pool (new x, y) will be generated, and new constants will also be generated.
The problem with AMM is that when an asset pool with low liquidity is faced with a large order, slippage (Slippage) will occur. Slippage refers to the gap between the price of the order and the price of the final transaction. Slippage depends on algorithm, order size and liquidity. The larger the order amount, the greater the slippage, and the greater the liquidity, the smaller the slippage. The better the algorithm, the smaller the slippage under the same order amount and liquidity pool size. Acala currently chooses to set a slippage limit for users. The smaller the slippage is, the less can be swapped out, but the cost is the lowest. Conversely, the larger the slippage, the more can be swapped out, but the cost will be higher .
Liquidity Release Agreement
The liquidity release solution for Polkadot is to create a staking pool (Staking Pool), aggregate the DOTs provided by each user, and then select multiple reliable validators from the Acala network (in terms of technical strength, operation and maintenance capabilities, and whether to provide guarantee services, etc.) Multi-dimensional evaluation) for pledge. At the same time, L-DOT will be issued to users as a pledge certificate at a ratio of 1:1. Therefore, in essence, DOT is still in a locked state, and L-DOT is liquid, which can be bought and sold in the secondary market, or participate in other DeFi agreements, for example, mortgage to generate aUSD to obtain additional liquidity.
exchange
Users can use L-DOT to redeem the underlying DOT at any time, because part of the pledged assets will be retained in the agreement. When the user redeems DOT, there will be a 28-day unbonding period, and the exchange fee will be paid in ACA. The agreement is the actual executor of DOT mortgage and unbond on the Polkadot network, responsible for the generation of L-DOT and the redemption of DOT. L-DOT is an asset combination of pledged principal + pledged income (block rewards). When users redeem, the system will give a real-time exchange rate, that is, exchange rate = (principal + income)/L-DOT quantity, all The principal and income are distributed uniformly.
secondary title
The Acala network is governed by the General Council and the Specialized Council. The Specialized Council manages specific areas of the network, and the General Council exercises supervisory powers to ensure the overall healthy operation of the Acala network. For example, the Liquidity Release Agreement Council is dedicated to managing the liquidity agreement. L-DOT holders and ACA holders have the right to vote on proposals related to the liquidity agreement. The proposals include exchange rate models, fee structures, compound interest strategies, etc. .
secondary title
Acala plans to build a decentralized, open oracle system designed to allow anyone to contribute price data, and entities that need data can freely choose the data they prefer. The system maintains a whitelist of price feeds, and each oracle service provider needs to be approved by governance to enter the whitelist. Currently, the system is operated by multiple nodes built by Acala and accepts multiple node data sources. These data sources will be aggregated into a fair price feed based on the Default Oracle Pallet, thereby providing off-chain data for the network and evaluating on-chain Capabilities and systems to clear risk.
secondary title
06. Smart contract|Acala EVM
There are currently three ways to become a Polkadot ecosystem: deploy as a parachain, parathread, or become a Dapp on a parachain or parathread. Acala plans to become a Polkadot parachain. For those projects that want to access the Polkadot ecosystem but do not want to bear too much cost, they can be deployed on Acala and become a Dapp on Acala. Acala currently provides a series of out-of-the-box DeFi ecological components, such as an over-collateralized lending system, a protocol for releasing the liquidity of pledged assets, and a decentralized exchange. In addition, it has also built smart contracts related to the application layer module to help other projects deploy on Acala.
Because many project contracts are currently deployed on Ethereum, the Acala smart contract module also considers the compatibility with Ethereum, but it hopes to provide a completely different experience from Ethereum, so it has developed a set of solutions Bodhi. This solution is not compatible with Ethereum RPC (Remote Procedure Call), but a JavaScript SDK that simulates a Web3 provider and can package Polkadot Extension into an extension similar to MetaMask, so that existing Ethereum Dapps can also use Polkadot Extension Interact with Acala EVM to directly use Acala's DeFi product basic components, cross-chain bridges, etc., or build other more interesting DeFi applications at the application layer, such as synthetic assets, etc., making full use of the composability of DeFi products to create more Rich Acala ecology.
The goals to be achieved by the Acala smart contract module:
1) Allow users to interact with Substrate's runtime, EVM contract or WASM contract with only one wallet;
3) Allow developers to obtain out-of-the-box tool support (such as DEX, stable currency, etc.) when developing and deploying decentralized financial applications.
07.Acala Treasury
secondary title
Acala will actually create multiple on-chain councils, which are divided into two types: the general council and the special council. The members of the general council are elected by ACA holders, and they can vote and rotate the members of the general council to manage Acala Treasury . The assets in the fund are controlled by an account on the chain, and there are three sources of income: ① CDP stability fee; ② liquidation penalty; ③ L-DOT agreement fee (that is, the handling fee when redeeming DOT).
Once Acala Treasury has enough ability to independently support slot leasing, Acala Treasury will consider using the surplus income to purchase other valuable assets, enrich the platform income structure and reserve asset types, thereby strengthening the risk resistance ability.
secondary title
08. Cross-chain messaging|xTokens
The cross-chain asset standard "xTokens" launched by the Acala team has been delivered to the 5th Grant of the Web3 Foundation. The proposal of this standard will provide a unified cross-chain messaging solution for all Polkadot and Kusama parallel chains. In simple terms, XCM and xTokens are the fundamental components of a cross-chain ecosystem and realizing the vision of Polkadot and Kusama. The Cross-Chain Message Format (XCM) is a very flexible but loosely defined general-purpose message format. Therefore, we need a use case implementation that allows cross-chain transfers, i.e. crossing assets from one chain to another, as well as sending and receiving fungible assets between the relay chain and another chain.