Bitcoin, cryptocurrency such as Ethereum and sprints show significant volatility. Consumers, merchants, traders, investors, miners and developers need a cryptocurrency whose value can be expected to remain roughly stable from day to day, and its operation is not dependent on unreliable third parties, such as banks.
Cryptographic currencies with automatic value-hooking mechanisms, such as NuBits and BitUSD, suffer repeated failures due to failures and lack of adoption, while companies with centralized one-to-one reserves in Tether are vulnerable to fraud or government closure.
The Kowala protocol is a new cryptocurrency that maintains a stable price while retaining other benefits of cryptocurrencies such as decentralization, security, privacy, transfer speed and low transaction costs.
Why do we believe in the need for a stable cryptocurrency
In addition to the huge benefits of most cryptocurrencies, stable coins may also offer unique benefits to many stakeholders, such as consumers, merchants, investors, traders, miners and developers. Assuming that the stable currency is widely used in theory, the beneficiaries include:
- Consumers
Avoid hidden fluctuations in the purchase of real-world products and services;
Avoid the volatility of using unstable legal tender currencies (such as Venezuela, Zimbabwe, Nigeria, etc.);
Provide stable value savings;
Obtaining a bank-like service provided by a third party (a bank account that is not easily accessible to consumers to stabilize the law).
2, the business
Avoid fluctuations in the sale of products and services;
Obtain a bank-like service provided by a third party (for merchants who are not easily able to obtain a bank account to stabilize the legal currency).
- Investors
Distribute funds in a decentralized, stable asset.
- Trader
Pursue arbitrage opportunities in new hidden markets;
a storage fund in a decentralized asset with stable value;
Trade in and out of stable assets at low cost and high speed.
5, the developer
Incorporate payment functionality into apps and websites without the need to create a merchant account;
Combine this payment function while avoiding cryptocurrency fluctuations.
What is the Kowala Agreement
The Kowala protocol defines a cryptocurrency that constructs a distributed, self-regulating, asset-tracking KCoins.
Each KCoin is designed to trade on a public exchange and maintain a nearly one-to-one value with any widely traded asset (eg, US dollar, euro, yen, etc.) or other assets. Each KCoin is identified by a symbol consisting of the letter K followed by the symbol of the underlying asset. For example, USD's kCoin is kUSD, EUR's is kEUR, and so on.
kCoins continuously collects market information from open sources and adjusts its value through three core mechanisms: casting variable quantities of currency, variable fees, and getting feedback from active and well-informed trading markets. Over time, these mechanisms always flatten the price of each kCoin with its underlying tracking assets. Conversely, because kCoin is expected to eventually return to parity, there are arbitrageurs seeking arbitrage opportunities to obtain low risk from small fluctuations in kCoin market prices.
The Ethereum Go language client code base was chosen as the baseline for the three kCoins programs to access Ethereum's powerful feature set (especially its complex smart contracts) and the collective capabilities and ongoing efforts of its development team. On this basis, each kCoin will increase the above-mentioned value stability and market observation characteristics. Finally, in order to achieve ultra-fast transaction processing performance, we replaced Ethereum's consensus mechanism with Konsensus, a PBFT implementation in Tendermint. Because every kCoin needs a robust alternate market to function properly, each kCoin is implemented as a unique, independent blockchain with its own tokens, smart contracts, mining communities, and more.
The key to the Kowala agreement
There are three stabilization mechanisms in the center of the Kowala agreement, with the aim of keeping the market price of kUSD close to $1.
Stabilization Mechanism 1: The Coin Algorithm describes how to use a variable amount of new coins to push the market price to $1 when necessary.
Stabilization Mechanism 2: Maintenance Fee, which describes a special variable fee applied to each subsequent transaction until the market price begins when the market price is less than $1 and the low amount is not enough to bring it back to $1. Rise, this variable fee is to maintain stability.
Stabilization Mechanism 3: Trading activity describes how traders are informed by the first two mechanisms and expects to participate in trading arbitrage activities in order to accelerate the market price of kUSD back to $1.
In addition to these stability mechanisms, the other major KOWALA agreement is a unique consensus agreement (see Konsensus), a system for reporting prices through a predictor (see price oracles), and holding balances for beneficiaries of the network. User rewards (see chapter Stability and stability contracts).
Stabilization Mechanism 1: Coin Algorithm
To calculate the amount of new coins to be minted, four new concepts need to be introduced.
The first concept is a dead address, which does not allow transactions to be initiated to any other address, so its balance can only be increased but not reduced.
The second concept is the supply of available currency, which is the total value of all the currencies that can be traded. Formally, this is defined by the following functions:
Where totalCoinSupply(b) is the total number of coins issued by block b, D(b) is the set of all dead addresses of block b, and balance(d,b) is the balance d of each dead address of block b. In other words, the available currency supply is the total number of coins that can be transferred.
The third concept is the casting gold cap, cap(b), which is defined as:
Where C is the fixed initial upper limit, which is applicable when the supply of available coins is very low (less than 1 million coins). Initially, we set C to 82 because this worked well in our tests, but it might change in future protocol updates. The upper limit of the foundry gold will be used to ensure that after the initial growth period, the amount of new casting will never be greater than a base point for the supply of the entire available currency.
The fourth concept is the market price of kUSD, p(b), which is determined by the oracle, which aims to achieve a reliable and reliable consensus on the value of the kUSD publicly reported on the exchange (see the price oracle section below).
With all these concepts in place, we can determine the amount of new coins to be minted, mintedAmount(b), as follows:
Where A is a block-by-block adjustment factor. Initially, we set A to 1.0001 because this worked well in our tests, but it can be modified in future protocol updates.
The calculation of mintedAmount(b) is divided into three cases: initial, high price and normal.
Set the casting amount to 42 only in the first block of the initial scene.
Next, consider the overpriced scenario where the price of kUSD exceeds $1 and is rising or flat during two consecutive blocks. In this case, the amount of casting is set to increase slightly (based on the adjustment factor) than the casting amount of the previous block. This increase depends on the upper limit of the casting gold.
It was originally assumed that when miners earned a large amount of new coins, most of these coins would enter the exchange as market sell orders and lower the price of kUSD. An agent-based detailed behavior model with multiple market scenarios supports this assumption (see gent-based modeling below). For this reason, we believe that for high-price scenarios, no further mechanism is needed to reduce the price to $1.
Finally, we consider what is a normal scenario. The official case is that the price of kUSD satisfies (a) less than or equal to 1 US dollar or (b) more than 1 US dollar and is falling. In this case, we don't want to cast extra kUSD, because this may lower the price, (if done, the best result is no effect, the worst is harmful). For this reason, the normal scene portion of the function indicates that we should gradually reduce the amount of coinage by dividing the previous casting amount by 1.01 (minimum 0.000001 kUSD).
Under normal circumstances, repeated application of this formula during long-term price declines can quickly reduce the amount of casting to near zero. For example, in this case, reducing the amount of casting from 1 kUSD to 0.000001 kUSD requires less than 1400 blocks (less than 24 minutes, assuming a block time of 1 second). However, if the increase in the amount of coins is significantly reduced during the same period, even a close to zero coinage may not be sufficient to increase the price of the coin. In the “Stability Mechanism 2: Maintenance Fees” section below, we will address this deficiency by introducing a method that substantially reduces the total supply of coins.
Stability Mechanism 2: Maintenance Fees
Like Ethereum. The Kowala Agreement requires each transaction sender to charge a fee, called a transaction fee, part of which is used to compensate the miners for the computational workload used to maintain the network. However, the transaction fee for kUSD is not only to compensate the miners' efforts. It also includes an additional fee called the maintenance fee, which is between 0% and 2% of the transaction amount. The main purpose of the maintenance fee is to increase the price of kUSD by reducing the supply of coins when the price of kUSD is less than 1 dollar. The following formula shows the two parts that make up the transaction fee:
Where computeFee(t) refers to the calculation fee (see the Calculating Expenses section below), and stabilityFee (t) refers to the maintenance fee, which will be defined later in this section.
The maintenance fee is initially set to the same value as the calculation fee. This ensures that more computing costs are imposed on the network and will take on more stability costs. Then we will increase it by a small amount (9%) on a regular basis until it reaches the maximum value (2% of the transaction amount).
In order to formally define maintenance costs and estimate stability costs, we will introduce some features.
First, we define the price change rate p '(b) as the slope of the best fit line p(b) containing the interval of block b and the first n blocks. For practical reasons, we chose to set n to 900 (15 minutes, assuming a block time of 1 second) in the initial implementation. The formula for p '(b) is as follows:
Next, we introduce the function repeat(b), which is used to track the number of times we need to increase the maintenance cost at block b:
The definition of repeat(b) means that the stabilization fee is changed every n blocks. This function uses a value of -1 to indicate that the dimensional stability cost should be zero.
By defining these new projects, we can now define the stability and estimated maintenance costs of the transaction t:
Where block(t) and amount(t) are the blocks and quantities associated with transaction t, respectively. For the definition of computeFee(t), please refer to the calculation fee below.
Once received from the sender of the transaction, the maintenance fee will be split into two equal parts; half will be destroyed (ie transferred to a dead address) and the other half will be distributed to the holder of kUSD to encourage them to remain at critical times. Increased balance. For more information on how to handle these quantities, please see the Destruction and Stabilization and Stability Contracts section below.
Our model shows that non-zero dimensional stability is not often used under expected market conditions and that the price of kUSD is effectively increased when applied (see model-based modeling below).
Stabilization Mechanism 3: Arbitrage Space
If there is enough time, the first two mechanisms above will cause the price of kUSD to return to parity (ie $1 per kUSD). We mark this trend as an effect of the Kowala agreement to flatten prices. Once market participants recognize this effect, we expect secondary and third effects to occur.
First, since the parity ability of kUSD naturally tends to move toward a fixed price, it constitutes the game theory focus (or Schelling point). [4] Based on the focus theory, we believe that the lack of perfect communication and trust between different market participants as the focus of the fixed price status increases the possibility that the kUSD price will return to parity.
Second, whenever the price and fixed price deviations do occur, they will provide short-term profit opportunities for professional arbitrageurs. The source of these opportunities is the difference between the time frame of the relative arbitrageur and the time range of other market participants, where short-term need to enter or exit kUSD exceeds concerns about these price deviations. Although arbitrageurs may use these arbitrage opportunities solely for their own benefit, their trading activities play a positive role in accelerating the return of prices to normal.
Third, as participants observe the history of this return in the market, confidence in the return to parity will be further enhanced.
All of these secondary effects depend on the sound development of the well-functioning USD/kUSD (or BTC/kUSD or ETH /USD) trading market. Since the existence of such a trading market is in line with the interests of kUSD exchanges, miners and users, it is likely that they will be generated through the self-interested activities of these groups.
For its part, Kowala plans to participate in independent, open-market, profit-seeking trading activities based on the same information publicly available to all.
In the next article, I will talk about some of the issues in the design process of the certificate.
If you have an exchange about blockchain learning, you can contact me in the following ways:
my WeChat ID:elninowang, note the note: Blockchain learning
Github: https://github.com/omnigeeker
Telegram: @elninowang
Twitter: @elninowang
Medium: https://medium.com/@elninowang_cn
Steemit: https://steemit.com/@elninowang
Zhihu: https://www.zhihu.com/people/elninowang/activities
Jianshu: https://www.jianshu.com/u/103321b574ba