[Economic Model Suggestion] Volatility Stable, Not Price Stable


The Problem

The current economic proposal has an inherent problem, which is that many people will be discouraged from buying XRD during stage 1. The reason being that at stage 2, it is very likely that genesis holders may choose to sell at a market price of far less than the target $1, with very little downside protection due to lack of reserves. This inevitable drop in price, along with the large range between Pmin and Pmax, may result in the price simply fluctuating within Pmin and Pmax indefinitely, resulting in poor stability.

In addition to this, the model does not provide any price inflation, only supply inflation, which limits the ROI significantly and naturally deters buyers from buying close to Pmax.


I propose that rather than trying to keep XRD within a discrete price range ($0.9-$1.1), the system instead tries to limit the volatility within a certain time period (for example, 24 hours). This model would allow the price to rise and fall at the mercy of the market, but as the system matures, can be tightened to an increasingly smaller range of daily volatility.


Stage 1
Pmin = 0
Pmax = $1.1
Initial Price = $1
Genesis Supply = 79M XRD

From the start of stage 1, tokens can either be purchased from the genesis holders at market price, or at Pmax ($1.1) from the DEX (if the demand exceeds supply). At this stage, there is no downside protection but the price can rise by up to 10% (in each 24 hour period).

If demand drives the price above Pmax ($1.1), the DEX will mint XRD and the proceeds from these sales will go into the reserves and start to build Pmin. Note: there is no distribution at this stage.

Perhaps more realistically, with insufficient demand to hold the price at Pmax, the price will naturally fall (potentially close to 0).

At the end of 24 hours, the DEX will re-set Pmax to the current market price +10%. For example, assuming at the end of day 1, the price of XRD is now trading at $0.50, Pmax for day 2 will become $0.55. As before, the price is free to float within Pmin and Pmax, with any proceeds from XRD minted by the DEX, further increasing the reserves and the Pmin value. Note: still no distribution at this stage.

This model continues with Pmax being reset every 24 hours. As the Pmin floor increases, once it reaches a defined value, for example Pmin = P-10%, stage 2 can begin.

Stage 2
Pmin = P-10%
Pmax = P+10%

During stage 2, the market will have naturally discovered a price for XRD and has become more mature with daily volatility reduced to +/- 10%. There are now sufficient reserves to purchase all XRD in circulation at a price of Pmin. As demand increases, any XRD purchased at Pmax will provide a profit to the DEX (Pmax - Pmin), with 50% of these proceeds being distributed to holders, and 50% being used to further increase the reserves:

R = Rm(Pmax - Pmin)/2
where, Rm = number of new XRD minted
and, R = redistribution amount to holders and reserves.

If demand falls and the price drops to Pmin, the DEX will step-in to purchase XRD at Pmin and burn these tokens.

During stage 2, half of the redistribution goes to increasing reserves, and thus Pmin will continue to rise. During periods of high demand, holders will be rewarded with an increase in price, as well as increased supply from distribution.

During periods of low demand, XRD will benefit from limited daily volatility of 20%.

Stage 2 continues with Pmax being reset every 24 hours and until Pmin reaches a mature value of, for example P-1%. At this point, stage 3 begins.

Stage 3
Pmin = P-1%
Pmax = P+1%

At stage 3, the volatility has been significantly reduced to +/-1% per day and could be tightened further to provide increased stability. At stage 3, any XRD that is minted will result in a profit to the DEX (Pmax-Pmin) which will be redistributed 100% to holders.


Note: The values shown are for example only. The volatility range for each stage could vary, along with the time period for recalculating Pmax.

In theory, this system rewards early adopters with both price and supply inflation (at the risk of higher volatility) and as adoption increases and the system matures, ultimately results in stability (of volatility, rather than price).

[Economic Model Suggestion] Soft thresholding through probabilistic matching

As a note, the DEX cannot be live in stage 1 (e.g. Technical Go-Live), it will only be live in Stage 2 (Economic Go Live). This is a technical delivery limitation, not because we don’t want it there. A Stage 1 proposal that works without the DEX is necessary.

Stage 2 onwards, there is some neat concepts here - thank you @Faraz.

Some questions:

  1. What triggers a rise in Pmax? How do you prevent it being gamed? E.g. can I make it raise 10% with 1 trade at Pmax daily, even though everything else trades below?

  2. What triggers a fall in Pmax? How close to Pmin can it fall before it stops?

  3. Why 50% increase in Pmin, 50% rM? Is that arbitrary or is there a reason behind it?

  4. What triggers a tightening of the traded range (e.g. from 10% to 1%)? Just the increase in Pmin from the 50% during the +/- 10% traded range?


Thanks for taking the time to feedback on my concepts @Piers :slightly_smiling_face:

Some responses to your questions below:


Ok - I don’t think it is a good idea to have an arbitrarily rising Pmin. In the current model, Pmin = R/M, meaning that it can rise, but should not fall.

This is because R/M = the price at which the algorithm can purchase all Rads in circulation. As it purchases them back, it burns the Rads, meaning that the R/M ratio stays the same.

If you increase Pmin with Pmax, then you can quickly reach a situation where you can break the Reserve, because you move away from R/M, potentially a long way away from it.

For example:

R/M = 0.5 (e.g. Pmin should actually be this price)

Pmax = 4
Pmin = 3.6 (-10% of Pmax)

At this Pmin, you need 13.8% of total currency supply to sell at Pmin to break Pmin.

If 6.9% sold at Pmin, you will have halved the Reserves. This makes Pmin increasingly fragile.

An alternative would be to have no Pmax target, but a Pmin target - e.g. it is trying to get to R/M = 0.9. The Pmax can still increase/decrease every 24 hours, but can only ever get within 10% of Pmin. Pmin stops rising at 0.9.


Fixing the volatility is a good idea, but you need to address several issues:

  1. The system can’t match XRD sell orders above Pmin. R/M (=Pmin) is the maximal value at which the system can buy XRD in return for XRI. So Pmin_effective=min(P-1%, R/M) - (unless I missed something and this is ensured mathematically by design).
  2. Resetting every 24 hour isn’t very stable, I would just use a moving average over the previous 24 hours. This is easier to synchronize and P is less volatile in this scenario.
  3. Even if the volatility is limited to 1% daily, the price can go to 0 (asymptotically). Which as I understand from @Piers is an issue for businesses (no idea why) since they need to know they can buy at 1.1X and are ensured to get at least 0.9X (or something pre-defined and known).


You’re right @Piers , that is a big problem with this model as it stands.

Perhaps Pmax could be more dynamic, in that if the DEX calculates that the Reserve has dropped to below 90%, it temporarily sets Pmax to P+0% until the reserve has caught up? I think that would prevent the situation where Pmin continues to move away from R/M.

*edit - I think that’s basically what you’re describing here…

An alternative would be to have no Pmax target, but a Pmin target - e.g. it is trying to get to R/M = 0.9. The Pmax can still increase/decrease every 24 hours, but can only ever get within 10% of Pmin. Pmin stops rising at 0.9.


Thanks @tesslerc for commenting. All good points.

The 24 hour suggestion was fairly arbitrary when I considered it. I like the idea of a moving average, as long as it can’t be gamed by placing large buys or sells to skew the average. Perhaps the moving average could be weighted to factor in the standard deviation too.

As for the price going to 0, I think @Piers suggestion for improving the model by targeting Pmin instead of Pmax addresses this.


Pmax = supply certainty at known price (e.g. predictable cost)
Pmin = revenue certainty for Node Runners (e.g. cover fixed + variable costs of being Node Runner)

Pmax makes the cost of using Radix is predictable; meaning I can decide to put key parts of my company infrastructure onto a platform without worrying that I am going to get screwed by the market.

Pmin makes sure a minimum level of service is always present from Node Runners (e.g. designed to keep the network running, even during bear runs etc).


Thanks @Piers for that explanation of the benefit of Pmax. I think you tried to say that multiple times elsewhere, but I only understood it just now. I can see why it helps businesses to know that Pmax will never exceed 1.1 * XRI – they’ll always be able to buy at that price or lower. This allows them to predict their costs better.

That said, I think that it’s okay for the ECA to sell at a lower “soft” max during Stage 1 and Stage 2. We should not call that “soft” value Pmax. Perhaps Psell is a better name to avoid confusion with the “hard” Pmax value of 1.1. The price of Psell would always be above Pmin and over time will trend toward Pmax.