Disclaimer: The full version of the CTSI Macroeconomy must be referenced for complete accuracy, legality, and any questions. This Medium version is not to be taken as the complete version under any circumstances. For more information and CTSI Macroeconomy complete version: https://cartesi.io/CTSI_Macroeconomy.pdf
1. The Staking Problem
All decentralized systems need a consensus protocol that governs the network whilst trying to achieve security, decentralization and scalability. One of the defining characteristics of such systems is how they implement an algorithm that balances the tradeoffs between those three desirable properties.
Proof-of-Stake (PoS) systems achieve consensus by asking users to stake their funds into the platform in exchange for the rights to perform tasks on the network. The stakes are locked as collateral and can be lost in case of malicious behaviour. Moreover, most PoS algorithms are only guaranteed to work under the assumption that no malicious user holds more than 50% (or 33%) of the total amount of tokens available. In other words, it is crucial that tokens are well distributed among the members of the community who participate in the consensus.
As PoS needs user engagement to work, projects have the need to carefully plan rewards systems to achieve a target participation rate. From the perspective of the user, staking is a problem of opportunity cost: "does the benefit of staking outweigh the risks and covers the time-value of my money?"
A popular solution to reward users for staking is to mint new tokens and distribute them among stakers. Besides the obvious incentive to gain extra tokens, the inflation created penalizes those who choose not to participate. The challenge is how to measure the opportunity costs of users and how to choose the appropriate minting amount to achieve a target participation rate, while avoiding exceedingly high inflation rates.
Some projects have a fixed emission rate while others have a dynamic inflation function, which is higher when the participation is below desired and lower otherwise. There are three key problems with these methods:
- You need strong assumptions about users' risk preferences to tailor the parameters of the function;
- Users have little information about the mining income they will get as it depends on the number of total staked funds.
- The methods don't allow for differentiation between players with different risk preferences;
- It is hard to determine a balanced inflation target.
As a countermeasure to these three issues, Cartesi will provide a staking system based on a novel mechanism called staking rights, detailed in the sections below.
2. The Mechanism of Staking Rights
TL;DR: Cartesi Side Chain node operators can stake cartesi tokens by buying staking rights. These staking rights keep CTSI locked until the end of a staking cycle after which it pays the owner the locked principal plus a reward in CTSI. Staking rights are acquired through periodic Dutch auctions and give the owner the rights to execute rewarded mining tasks until their expiration date.
Staking rights give node operators the right to participate in staking. Without the rights, operators cannot be selected in the lottery that chooses the node that will generate the next block.
Rights are transitory. At the end of each staking cycle, a set of rights expires and ceases to exist. Conversely, new rights are created and made available for purchase through an auction.
Staking rights always have a final value of 1 CTSI, which is delivered to the account that purchased it at the precise time of their expiry. When users buy a staking right for a price of less than 1 CTSI, the difference between the price paid and the unit value is proportional to their perceived opportunity of the staking right. In that case, the difference is minted and locked in staking together with the price paid, totalizing 1 CTSI staked per right sold.
While this is an inflationary solution, we offer methods to maintain inflation under control in a later section.
Here is an example. Suppose that the desired staking participation rate is 50% of the circulating supply of 1 thousand tokens. In this case, the system creates and auctions 500 staking rights, each scheduled to pay 1 token at the end of the cycle.
- Circulating supply: 1000
- Target participation: 500 (50%)
- Staking rights issued: 500
- Auction price = 0.97
Assume that each staking right is sold for 0.97 in the auction, thereby generating 0.03 new tokens. The staking rights buyer at the end of the staking cycle would be rewarded 1 token obtaining a 3.09% mining income (0.03/0.97). The total inflation generated for the network would be 15 tokens (0.03 per right * 500 rights) or 1.5%.
Note that the price paid during the auction will certainly return to the bidder after the staking period. However, other sources (mine reserve tokens, minted tokens, and fees) will only be paid in case of correct execution of the staking tasks.
With this system, the user knows exactly how much mining income they will get for their staked tokens, independent of how many rights are sold or how many other stakers exist. There are also no assumptions about risk preferences, buyers will state them through bidding. This method also allows for bigger differentiation between users: instead of asking for a binary decision (stake or not to stake), we allow users to signal at what price they would be willing to stake.
The system will offer staking rights with different staking cycle periods: 2 weeks, 1 month, and 3 months. This achieves two objectives (1) differentiate between users who are willing to stake long term from short term players and, mainly, (2) decrease volatility in token emission. After all, if all staking cycles end at the same time, all new staking rights will be subjected to the same market conditions that may not represent the average behaviour of stakers.
With different staking periods, in each cycle only a small number of staking rights will need to be created to replace the expired ones. This is because in each cycle there is going to be a mix of active staking rights bought at different points in time.
User risk preferences can be stated in the form of a discount rate, the rate used to convert future values (promises of payouts) to the present. The discount rate is the mining income that makes one indifferent between gaining money in the present or in the future. For example, with a discount rate of 10% a year, one would be indifferent between receiving 100 dollars today or 110 dollars a year from now.
The discount rate of a user can be translated to a staking right value in CTSI using it to compute the present value of all incentives that can be paid by staking the right.
Cartesi staking rights give the owner three sources of incentives, provided that the owner remained active within the network:
- Staking right's unit CTSI value (paid at the end of the cycle)
- Mine reserve rewards
- The fees, paid by network users when they use the Cartesi Side Chain
Calculation:
Given a staking right in a staking cycle of 12 weeks that pays rewards every 2 weeks
MRi the expected mine reward for time i,
NFi the expected network fees for time i
UV the staking right unit value
i the 2-week mining income expected by the user
The price P will be calculated as:
Mine reserve rewards will come from a fixed reserve of tokens that will be made available for workers on a decreasing rate schedule. Its purpose is to help kickstart the project while there are fewer jobs to be done within the network. For every staking cycle, a fixed percentage of the tokens remaining in the mine will be made available for stakers who run our reference software.
We designed our macroeconomy in such a way that, in the long run, mine rewards will be close to zero and inflation should no longer be necessary to maintain the infrastructure, since network fees become more relevant as the project evolves and the usage increases. The long term objective is to have only the mechanisms of fees to stimulate the miners to install and run our protocols.
It is possible that, with increasing usage of the network, the fees reward reaches a level that the price of a staking right will be higher than the unit value, creating a deflationary state for the network. Users may be willing to pay more than 1 CTSI to receive 1 CTSI at expiration plus the other rewards. In this case, instead of minting the difference between the face value and value paid (that would be negative), the funds paid in excess of the face value are split according to the rules:
50% is given to replenish the Mining Reserve and 50% is given to further development of the Cartesi infrastructure until the Mine Reserve achieves 25% of the total supply.
All excessive tokens are burned. By excessive tokens we mean those being distributed to the Mining and for Cartesi's infrastructure that would otherwise make the Mining Reserve go beyond 25% of the total supply.
The staking right will be sold through a closed price auction of Nth price, which means that the higher bid wins the token but will pay the price of the highest loser bid. For example, If 500 tokens are sold and the 501st highest bid was 0.98, all 500 tokens will cost 0.98. This type of auction, also known as a Vickrey auction (or Dutch auction), ensures all players bid their true valuation of the staking right, revealing their true risk preferences (demonstration below).
Demonstration:
Given user i has a valuation Bi for a staking right. He can bid (B+)>Bi or (B-)<Bi and the Nth price of the auction ends up being Bn.
If he bids B+ there are two possibilities:
- Bn < Bi
- B+ > Bn > Bi
In (1) he would get (Bi - Bn) independent of bidding B+ or Bi and in (2) he would lose (Bi - B+) that would be larger than (Bn - Bi). In neither cases he has incentive to bid B+.
If he bids B- there are two possibilities:- Bn < B-
- B- < Bn < Bi
In (3) he would get (Bi - Bn) independent of bidding B- or Bi and in (4) he would not get the token, making it better to bid Bi and have the chance to win.
In all possible cases there is no incentive to bid B+ or B-, making Bi the dominant Nash-Bayesian equilibrium.
One caveat with any inflationary solution to the staking problem is the risk of excessive inflation. Purchasers have little incentive to hold tokens if they are constantly being devalued by new minting and supply increases. The system of staking rights guarantees a maximum cap of inflation to protect users. To understand our mechanism, let us first discuss two ways to limit the total inflation:
First. Auction reserve prices: In the worst-case scenario, where all tokens are sold in the auction with a price close to zero, the inflation will be the number of tokens sold, divided by the total supply (50% in our previous example).
A reserve price means that only bids above a certain value will be considered valid. If we choose a reserve price of 0.7, the worst-case scenario in our example would be an inflation of 15%.
With a reserve price, it is possible to choose an acceptable inflation range and guarantee it will be complied with at all times, protecting purchasers and token holders.
Second. The number of issued tokens: The number of tokens directly affects the inflation. If only 100 tokens are issued (out of a total supply of one thousand), the worst-case scenario for inflation would be 10%.
In our mechanism, these two variables are controlled dynamically in order to make sure the inflation is never higher than a previously determined ceiling. The number of tokens issued will depend not only on the target participation rate but also on the value of bids from the auction. This number will be capped so that the total newly minted tokens are limited to the maximum inflation. The total newly minted tokens can be calculated as the difference between the face value and the highest bid not honored (the Dutch auction price) times the number of tokens issued.
Calculation:
Let CAP be the maximum number of minted CTSI desired
Let Nmax be the maximum number of staking rights necessary to achieve the target participation rate
Let B(i) be the i-th largest bid from the auction results
Let N be the number of staking rights issued
N will be chosen as the result of the optimization problem:
Maximize N, subject to
More precisely, suppose that we sort all the bids made during the auction in decreasing order and plot them as in the figure below.
Then N staking rights will be issued in order to preserve the maximum number of CTSI issued (CAP). Therefore, we can dynamically choose the minimum value B(N+1) such that the inflation is within our predetermined bounds.
This system also allows for deflation, if the value of the auction ends up above 1 CTSI. This would make sense if people are expecting such a high reward from the fees that they are willing to burn a certain amount of tokens in order to participate. This is depicted in the figure below:
It is important to note that there is no way around the tradeoff between participation rate and inflation, to control the later there is the need to sacrifice the former. The advantage brought by the system of staking rights auction is that we maximize participation, while limiting the inflation and allowing workers to express their economic preferences.
3. Staking Roadmap
In Q4 2020, the Cartesi team will release CTSI mining on Mainnet Ethereum. Mining becomes possible when the reference node operator software is stable and ready for distribution. The first version of the node operator will be a partial implementation of the Cartesi Side Chain that includes a functional PoS lottery system and the automatic gradual distribution of tokens from the mine reserve.
Notice that the Cartesi Side Chain itself is due only in Q3 2021. The early distribution of node operators in 2021 is intended to bootstrapping Cartesi's network of node operators, allowing the project enough time to achieve a reasonable staking participation rate and a broad adoption of node operators before the Side Chain is Mainnet-ready. With the Q4 2020 mining milestone, users interested in staking CTSI can receive mine rewards by running their own Cartesi node operators or alternatively by using mining pool services that Cartesi will partner with.
The auction system and the staking rights will be released in 2021 (more precise timeline to be announced later). That means that, in the period starting from the release of the mining on Q4 2020 until the release of the auction and staking rights, staking will be done directly with CTSI token deposits and not with staking rights. Another important aspect to emphasize is that PoS rewards will come strictly from the mine reserve during this period, which implies that there's no minting of new CTSI and therefore, no inflation.
Remember Cartesi's mine reserve holds 25% of CTSI total supply of 1 billion tokens. The mine will release CTSI according to a decaying function. Consequently, the early days of mining will be highly attractive providing the highest possible distribution rate of tokens. Additionally, due to the exponential character of the curve, the distribution of mine tokens persists throughout many years in the future.
Mining CTSI is being designed to stimulate high participation rates. A detailed account of the Q4 2020 mining release will be given later, covering aspects of the PoS lottery system, staking periods, rules, and mine reserve distribution rate.
Important Links:
Website: https://cartesi.io
Twitter: https://twitter.com/cartesiproject
Telegram: https://t.me/cartesiproject
Discord: https://discordapp.com/invite/Pt2NrnS
GitHub: https://github.com/cartesi