# Specify if code should be shown in export
show_code = FALSE
# Specify which network you would like to analyze. Must be "polkadot" or "kusama".
chain = "polkadot"
# Specify which session you would like to analyze. Must be >= 419 for Polkadot and >= 5994 for KSM.
session = 5391
| polkadot | |
|---|---|
| Number of active Nominators: | 19231 |
| Number of active Validators: | 297 |
| Average commission: | 63.12% |
| Number of validators with 100% commission: | 179 |
| Number of validators with <100% commission | 118 |
| Average commission for validators with <100% commission: | 7.19% |
| Average selfstake in DOT | 5794.14 |
| Median selfstake in DOT | 0 |
Notes: Number of inactive nominators is composed of nominators with insufficient minimum bond and those voting only for waiting validators.
Decentralization is an important part of the polkadot network. The following graphs illustrate how votes are distributed across the different validators. One vote corresponds to a specification in the voting scheme. That means, one nominator can have up to 16 votes. This metric is pre-election algorithm, which means that the algorithm was not applied yet and votes have not been redistributed.
Average number of votes per (elected) validator: 704.6
The following graphs plots the number of votes (pre-election-algorithm) for each (elected) validator in decreasing order. Note that the set of validators only contain those who are elected and therefore some votes (for not elected) validators are missing. The indicator line is showing a theoretical uniform distribution if all validators receive the same number of votes.
The following graph plots the total stake of the validators and sorts
them.
The minimum total stake is 1849120 in comparison to the average total stake of 2122975 which means that the minimum amount is 87.1003986% of the average.
The following graph shows a histogram of how many degrees the nominators have in their voting scheme. It can have values from 1 to 16 (as restricted by the election algorithm). The average number of degrees: 8.72 with a median of 8
In the following graph, the nominators are grouped by how many degrees they have in their voting scheme. It further shows the total amount of bond held by each group (in % with respect to the total available staked bond).
The following sankeyNetwork illustrates the current staking situation. Nominators are grouped by how much bond they allocate to their nominations. Validators are collapsed to the respective operators (if they have an identity) or to be pseudo-anonymous (if they do not have an identity). A major drawback with plotting the flow of bonds is that the total sum of bond is locked for the whole nomination scheme and the algorithm later decides how to split it. This means that a single bond can be represented 16x in the graph. A naive way to account for that is to only show nominators who have 16 nominations (which is done here).
## Warning in type.convert.default(unlist(x, use.names = FALSE)): 'as.is' should be
## specified by the caller; using TRUE
The following pie-chart illustrates the distribution of validator identities. All validators with an identity but only having one node are summarized as βIWIβ (βIndividual with Identityβ). Pseudo-anonymous nodes are aggregated to the βpsydo-aβ group. Other operators are aggregated by the first 4 letters of their identity.
| short_identity | number_nodes | self_stake_mean | commission_percent_mean | fraction | |
|---|---|---|---|---|---|
| 32 | pseudo-a. | 175 | 4021.4403 | 95.49714 | 0.589 |
| 29 | P2P. | 13 | 145.4921 | 1.00000 | 0.044 |
| 8 | BINA | 11 | 0.0000 | 100.00000 | 0.037 |
| 50 | Zug | 11 | 0.0000 | 10.00000 | 0.037 |
| 12 | Coin | 10 | 2161.4163 | 7.70000 | 0.034 |
| 31 | pos. | 10 | 0.0000 | 8.00000 | 0.034 |
| 10 | Bloc | 8 | 0.0000 | 3.00000 | 0.027 |
| 22 | Jaco | 6 | 500.0000 | 1.00000 | 0.020 |
| 41 | Stak | 5 | 1200.6124 | 9.80000 | 0.017 |
| 17 | Figm | 3 | 0.0000 | 10.00000 | 0.010 |
| 7 | bina | 2 | 0.0000 | 100.00000 | 0.007 |
| 15 | DARK | 2 | 4393.3655 | 8.00000 | 0.007 |
| 18 | Gene | 2 | 8215.0824 | 5.00000 | 0.007 |
| 35 | Rock | 2 | 19606.3693 | 6.50000 | 0.007 |
| 44 | sync | 2 | 0.0000 | 100.00000 | 0.007 |
| 1 | π de | 1 | 6248.5934 | 5.00000 | 0.003 |
| 2 | πYel | 1 | 2029.2642 | 1.00000 | 0.003 |
| 3 | π ST | 1 | 0.0000 | 4.00000 | 0.003 |
| 4 | πsta | 1 | 0.0000 | 5.00000 | 0.003 |
| 5 | πΈ Zo | 1 | 1109.0324 | 5.00000 | 0.003 |
| 6 | Amfo | 1 | 10177.8393 | 3.00000 | 0.003 |
| 9 | bLd | 1 | 505.0000 | 3.00000 | 0.003 |
| 11 | Chri | 1 | 5108.8440 | 5.00000 | 0.003 |
| 13 | CP28 | 1 | 105005.0983 | 3.00000 | 0.003 |
| 14 | Curr | 1 | 0.0000 | 1.00000 | 0.003 |
| 16 | DotS | 1 | 5029.7531 | 1.00000 | 0.003 |
| 19 | HYPE | 1 | 1109.9882 | 2.00000 | 0.003 |
| 20 | ilgi | 1 | 10622.6292 | 5.00000 | 0.003 |
| 21 | IOSG | 1 | 4231.1494 | 3.00000 | 0.003 |
| 23 | Joe | 1 | 8568.6689 | 1.90000 | 0.003 |
| 24 | Luck | 1 | 6606.9922 | 5.00000 | 0.003 |
| 25 | lux8 | 1 | 5026.3861 | 0.00000 | 0.003 |
| 26 | Math | 1 | 0.0000 | 5.00000 | 0.003 |
| 27 | MC | | 1 | 0.0000 | 2.00000 | 0.003 |
| 28 | Noda | 1 | 5121.3390 | 1.00000 | 0.003 |
| 30 | Polk | 1 | 668443.0559 | 1.00000 | 0.003 |
| 33 | Pure | 1 | 24702.6663 | 3.00000 | 0.003 |
| 34 | RADI | 1 | 5771.1847 | 3.00000 | 0.003 |
| 36 | Ryab | 1 | 442.3102 | 2.00000 | 0.003 |
| 37 | Sens | 1 | 5918.2473 | 3.00000 | 0.003 |
| 38 | Sik | 1 | 1524.5630 | 1.00000 | 0.003 |
| 39 | Sio3 | 1 | 5888.5943 | 3.00000 | 0.003 |
| 40 | SNZP | 1 | 0.0000 | 1.00000 | 0.003 |
| 42 | STAK | 1 | 5290.1576 | 0.00000 | 0.003 |
| 43 | Swis | 1 | 10277.6347 | 1.00000 | 0.003 |
| 45 | T-Sy | 1 | 0.0000 | 9.00000 | 0.003 |
| 46 | Tita | 1 | 5156.5279 | 5.00000 | 0.003 |
| 47 | Wate | 1 | 5098.3949 | 5.00000 | 0.003 |
| 48 | www. | 1 | 5156.8018 | 2.00000 | 0.003 |
| 49 | ZKVa | 1 | 0.0000 | 8.00000 | 0.003 |
The following linear regression predicts the number of stakers per validator by whether the validator has an identity, the percentage of commission and the amount of self-stake. Validators with \(100\)% commission are excluded as they probably are self-electing and do not contribute to a meaningful analysis.
##
## Call:
## glm(formula = num_voters ~ commission_percent + identity + self_stake,
## family = gaussian(link = "identity"), data = validators_regression)
##
## Deviance Residuals:
## Min 1Q Median 3Q Max
## -1748.0 -902.7 158.0 666.8 3919.1
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 932.107465 537.648403 1.734 0.085679 .
## commission_percent -26.484558 15.246801 -1.737 0.085078 .
## identity 988.235454 488.731036 2.022 0.045513 *
## self_stake 0.006145 0.001581 3.888 0.000171 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## (Dispersion parameter for gaussian family taken to be 1122536)
##
## Null deviance: 177078360 on 117 degrees of freedom
## Residual deviance: 127969093 on 114 degrees of freedom
## AIC: 1984.7
##
## Number of Fisher Scoring iterations: 2