Maturity modulation
From Internet Computer Wiki
Background and goal
- Maturity is an attribute of a neuron; it is not a tradable asset. The decentralized governance of the Internet Computer can change the treatment of maturity at any time.
- To generate income from maturity, a user needs to trigger a non-deterministic process:
- NNS: Burn maturity to create new ICP via spawning a neuron.
- SNS: Disburse maturity to create new SNS tokens.
- The maturity modulation function introduces uncertainty in the creation of tokens from maturity. This article explains how the maturity modulation function works.
- Please note: The maturity modulation applies both to NNS neurons and SNS neurons. In both scenarios, the function of maturity modulation will be influenced by the ICP/cycles conversion rate.
Spawning maturity via the maturity modulation function
- The user triggers spawn maturity. A new neuron will be immediately spawned; however, this newly spawned neuron will have no ICP at start, only maturity.
- Spawned neurons will have a dissolve delay of 7 days and will be set to dissolving at the time of spawning.
- After 7 days when the neuron is dissolved, the amount of ICP, modulated by the function introduced below, will be minted from the neuron's maturity and be available to the user.
Description of the maturity modulation function
- At the day of modulation, for each of the last 29 days determine the 30-day moving average ICP/Cycles conversion rate, which is displayed on the Internet Computer dashboard. Label these a1 through a29, where a1 denotes the average rate on the previous day, a2 denotes the rate two days ago and so on. The 30-day moving average conversion rates are used because they exhibit less variance than day-to-day conversion rates.
- Compute the relative 7-day return for each of the last four weeks. Thus,
- w1 = (a1 - a8) / a8,
- w2 = (a8 - a15) / a15,
- w3 = (a15 - a22) / a22,
- w4 = (a22 - a29) / a29.
- The values w1, w2, w3and w4 are bounded from -0.05 to 0.05 by clipping values to the limits of this range, i.e., capping by 0.05 and flooring by -0.05.
- Take the average w = (w1 + w2 + w3 + w4) / 4.
- The resulting value w is a number between -5% and 5% that determines modulation.
- The maturity amount x is converted to x * (1+w) units of ICP.
- The maturity modulation function is updated once a day.
Example
- On Feb 1, 2022, the modulation function is 0.73% which is the average of the relative weekly returns w1 = -4.59%, w2 =-0.63%, w3=5.00%, w4 = 3.13%.
- If a user disburses on that day (day of transfer) 100 maturity, then this will result in 100.73 ICP.
Motivation and analysis
- Evidently, this process introduces a certain amount of uncertainty for the conversion from maturity to ICP.
- However this uncertainty is limited in two ways.
- The modulation value w is between -5% and +5%. This implies that, e.g., 100 maturity will be converted into an ICP amount in the range of 95 and 105. This kind of volatility is well in the range of daily conversion rate fluctuations of ICP.
- The modulation value w is calculated at the day of modulation as w = (w1+ w2+ w3 + w4) / 4. At the day of initiation (7 days prior), the user can already determine (w2+ w3 + w4)/4. The missing value w1 can affect the modulation value at most by 1.25% (5%/4) up or down.
- The modulation value can change by at most 2.5% from one week to the next, as one week drops out of the window and one week enters the calculation window.
- The modulation function gives an incentive for users to disburse maturity when the ICP/Cycles conversion rate has been increasing over time and to hold back when the ICP has been decreasing recently. For example if the ICP/Cycles conversion rate was monotonically increasing, then w1, w2, w3, w4 are positive and thus also w, incentivizing users to convert a maturity amount x to x * (1+w) units of ICP.