diff --git a/docs/learn/dapp-staking/dapp-staking-protocol.md b/docs/learn/dapp-staking/dapp-staking-protocol.md index f17e4de4129..0f0caf2bac7 100644 --- a/docs/learn/dapp-staking/dapp-staking-protocol.md +++ b/docs/learn/dapp-staking/dapp-staking-protocol.md @@ -273,7 +273,7 @@ Since number of slots is dynamic, so has to be the threshold to allow for more r It's not fair to define the same threshold for entering a tier if there are 50 slots or 500 slots since the staked amount will be more diluted between various dApps. -The formula for adjusting tier entry threshold: +The formula for adjusting tier entry threshold with dApps slot changes: $\Delta\%_{threshold} = (\frac{100\%}{100\% + \Delta\%_{dApps}} - 1) * 100\%$ @@ -282,16 +282,20 @@ The comparison is always done between the _baseline_ number of slots and the new $new\_threshold = base\_threshold * (1 + \Delta\%_{threshold})$ -At the moment, there are two types of tier entry thresholds: +There are now two types of tier entry thresholds: -* `Dynamic` - adjusts the threshold based on the aforementioned formula. -* `Fixed` - defines a static, fixed threshold which doesn't adapt. +* `Dynamic` - A percentage of the total issuance as staked funds that can change between periods. It includes a minimum percentage that the threshold cannot fall below. This type is used for _higher_ tiers. +* `Fixed` - A constant percentage of the total issuance as staked funds, which does not change between periods. Used for the _lowest_ tier, and defines a static value. -The `Dynamic` threshold is used for _higher_ tiers, and also defines the minimum amount to which the threshold can fall. -E.g. a threshold might define _current_ value as **1,000,000 ASTR**. Since this can be decreased if number of slots goes up, -it also defines a minimum amount the threshold can take, e.g. **500,000 ASTR**. +These percentages are calculated based on a total issuance of **8.4 billion ASTR** tokens when dApp Staking V3 was launched. As the total issuance changes (e.g. burn events), the dynamic thresholds will adjust accordingly, ensuring a fair and adaptive staking environment. -The `Fixed` threshold is used for the _lowest tier_, and defines a static value. +For example, suppose the total issuance is **8.4 billion** ASTR tokens. For **Tier 1**, the dynamic threshold percentage is set at **3.57%** (*approximately 299,880,000 ASTR*), with a minimum required percentage of **2.38%** (*approximately 199,920,000 ASTR*). If the total issuance decreases due to a burn event, the threshold adjusts accordingly. For example, if the total issuance drops to **8.0 billion** ASTR, the **Tier 1** threshold adjusts to: + +$new\_threshold = 3.57\% * 8.0 billion = 285,600,000\ ASTR$ + +If the number of slots changes, the threshold is further adjusted based on the delta percentage formula. + +*Refer to the [dApp staking parameters](/docs/learn/dapp-staking/protocol-parameters#network-values) page to find out more about the percentage values for each network.* #### Tier Rewards diff --git a/docs/learn/dapp-staking/protocol-parameters.md b/docs/learn/dapp-staking/protocol-parameters.md index e95272d86bc..b4e218c28bd 100644 --- a/docs/learn/dapp-staking/protocol-parameters.md +++ b/docs/learn/dapp-staking/protocol-parameters.md @@ -65,11 +65,11 @@ E.g. `[5%, 15%, 20%, 60%]` means that `5%` of the total slots are assigned for * ### Tier Thresholds -The threshold that dApp has to satisfy, essentially the total staked amount, in order to be eligible to enter a tier. -There are two types of thresholds: +The threshold a dApp must meet, based on a percentage of the total issuance staked, to enter a tier. +There are two types of threshold percentages: -* `Fixed` - threshold has a fixed value and doesn't change -* `Dynamic` - threshold has an initial value, which changes dynamically as the number of slots change, but also has a minimum allowed value. +* `Fixed` - A percentage of the total issuance as staked funds. +* `Dynamic` - A percentage of the total issuance as staked funds. This variant includes an additional adjustment in later calculations with a delta based on changes in the number of slots for each era. The threshold amount derived cannot drop below a defined minimum percentage, *minimum_required_percentage*. ### Price Aggregation Duration @@ -81,22 +81,22 @@ Length of the circular buffer used to implement the _moving-average_ solution. ## Network Values -| Parameter name | Astar | Shiden | Shibuya | -| ------------------------------ | --------------------- | --------------------- | -------------------- | -| Era Reward Span Length | 16 | 16 | 16 | -| Reward Retention In Periods | 4 | 3 | 2 | -| Max Number Of Contracts | 500 | 500 | 500 | -| Max Unlocking Chunks | 8 | 8 | 8 | -| Minimum Locked Amount | 500 ASTR | 50 SDN | 5 SBY | -| Unlocking Period | 9 | 4 | 4 | -| Max Number Of Staked Contracts | 16 | 16 | 8 | -| Minimum Stake Amount | 500 ASTR | 50 SDN | 5 SBY | -| Number Of Tiers | 4 | 4 | 4 | -| Reward Distribution | [25%, 47%, 25%, 3%] | [25%, 47%, 25%, 3%] | [40%, 30%, 20%, 10%] | -| Slot Portions | [5%, 20%, 30%, 45%] | [5%, 20%, 30%, 45%] | [10%, 20%, 30%, 40%] | -| Tier 1 Threshold | Dynamic(300M/200M ASTR) | Dynamic(3M/2M SDN) | Dynamic(3000/2500 SBY) | -| Tier 2 Threshold | Dynamic(75M/50M ASTR) | Dynamic(750k/500k SDN)| Dynamic(2000/1500 SBY) | -| Tier 3 Threshold | Dynamic(20M/15M ASTR) | Dynamic(200k/150k SDN)| Dynamic(800/500 SBY) | -| Tier 4 Threshold | Fixed(1.5M ASTR) | Fixed(50k SDN) | Fixed(200 SBY) | -| Price Aggregation Duration | 7200 blocks | 7200 blocks | 7200 blocks | -| Circular Buffer Length | 7 | 7 | 7 | +| Parameter name | Astar | Shiden | Shibuya | +| ----------------------------------- | ---------------------- | ---------------------- | -------------------------- | +| Era Reward Span Length | 16 | 16 | 16 | +| Reward Retention In Periods | 4 | 3 | 2 | +| Max Number Of Contracts | 500 | 500 | 500 | +| Max Unlocking Chunks | 8 | 8 | 8 | +| Minimum Locked Amount | 500 ASTR | 50 SDN | 5 SBY | +| Unlocking Period | 9 | 4 | 4 | +| Max Number Of Staked Contracts | 16 | 16 | 8 | +| Minimum Stake Amount | 500 ASTR | 50 SDN | 5 SBY | +| Number Of Tiers | 4 | 4 | 4 | +| Reward Distribution | [25%, 47%, 25%, 3%] | [25%, 47%, 25%, 3%] | [40%, 30%, 20%, 10%] | +| Slot Portions | [5%, 20%, 30%, 45%] | [5%, 20%, 30%, 45%] | [10%, 20%, 30%, 40%] | +| Tier 1 Threshold (total issuance %) | Dynamic(3.57%/2.38%) | Dynamic(3.57%/2.38%) | Dynamic(0.0020%/0.0017%) | +| Tier 2 Threshold (total issuance %) | Dynamic(0.89%/0.6%) | Dynamic(0.89%/0.6%) | Dynamic(0.0013%/0.0010%) | +| Tier 3 Threshold (total issuance %) | Dynamic(0.238%/0.179%) | Dynamic(0.238%/0.179%) | Dynamic(0.00054%/0.00034%) | +| Tier 4 Threshold (total issuance %) | Fixed(0.02%) | Fixed(0.06%) | Fixed(0.00014%) | +| Price Aggregation Duration | 7200 blocks | 7200 blocks | 7200 blocks | +| Circular Buffer Length | 7 | 7 | 7 |