Wiki ZooBC
Économie et gouvernance

Les votes de prix

Quelques prix de ZooBC ne sont pas fixés pour toujours : les sièges du registre des nœuds les votent. À partir de la version 0.5.8, une seule règle couvre tous les prix modifiables par vote. Une fois par cycle d’instantané, 30 jours sur le mainnet, chaque prix passe à la moyenne sur les sièges comptés, un siège silencieux comptant au prix en vigueur, après que chaque vote a été limité à au plus 20 % au-dessus du prix en vigueur et à au moins la moitié de celui-ci. Tout le reste, du calendrier d’émission aux soldes, est hors de portée de tout vote.

Ce qui peut être voté

PrixValeur de départ sur le mainnetBornes
frais de transfert (l’échelle de frais)1,0, écrit 0,01 ZBC dans le voted’une unité atomique à 1 ZBC, soit jusqu’à 100 fois la valeur de départ
loyer de compte0,01 ZBC par périoded’une unité atomique à 10 ZBC par période
entretien des jetons0,1 ZBC par périoded’une unité atomique à 10 ZBC par période
prix de stockage des jeux de données0,05 ZBC par Mio et par périodeà partir d’une unité atomique
multiplicateur de stockage1,0ses propres bornes
mise de passerelle10 ZBCà partir d’une unité atomique
coût de création de marché50 ZBCà partir d’une unité atomique
frais de preneur du marché0,1 %de 1 à 100 points de base
minimum de la file d’attente100 ZBCd’une unité atomique à 250 ZBC

Les frais de transfert multiplient les frais d’action de base de 0,025 ZBC dans le plancher de chaque transaction (frais). Le minimum de la file d’attente est la plus petite mise avec laquelle un nœud peut entrer dans la file (enregistrer un nœud). Les autres prix sont expliqués avec les fonctions qu’ils concernent : loyer de compte, entretien des jetons, jeux de données, passerelles et marchés et ordres.

Comment un prix évolue

Chaque siège enregistré qui n’est pas suspendu dispose d’une voix ; ce sont les sièges comptés. Pendant un cycle, un siège peut voter aussi souvent qu’il le souhaite, et c’est son dernier vote qui compte. À la fin du cycle :

  1. Chaque vote est limité : au plus 20 % au-dessus du prix en vigueur, au moins la moitié de celui-ci, et toujours à l’intérieur du plancher et du plafond du prix.
  2. Le nouveau prix est la moyenne sur tous les sièges comptés, chaque siège silencieux comptant au prix en vigueur.

Si personne ne vote, rien ne change. Ni une médiane des votes exprimés, ni un accord exact des deux tiers, ni le vote le plus élevé ne décident quoi que ce soit.

Dix sièges : deux votent 120 et huit sièges silencieux comptent comme s’ils conservaient 100 ; 240 + 800 = 1 040, divisé par 10, donne un nouveau prix de 104.
Dix sièges : deux votent 120 et huit sièges silencieux comptent comme s’ils conservaient 100 ; 240 + 800 = 1 040, divisé par 10, donne un nouveau prix de 104.

Exemples chiffrés

Dix sièges comptés, et un prix en vigueur de 100 :

VotesChaque vote compte pourNouveau prix
deux sièges votent 120, huit sont silencieux120, 120, et 100 pour chaque siège silencieux(2 × 120 + 8 × 100) ÷ 10 = 104
un siège vote 10 000, neuf sont silencieux120(120 + 9 × 100) ÷ 10 = 102
un siège vote 0, neuf sont silencieux50(50 + 9 × 100) ÷ 10 = 95

Sans la limite, le vote de 10 000 donnerait une moyenne simple de 1 090. Avec la limite appliquée d’abord, un siège déplace le prix d’au plus un dixième du pas complet sur un registre de dix sièges, et de 0,2 % sur un registre de 100.

Un vote de 10 000 passe par la limite (de la moitié à +20 %) et compte pour 120 ; avec neuf sièges silencieux à 100, la moyenne est (120 + 9 × 100) ÷ 10 = 102.
Un vote de 10 000 passe par la limite (de la moitié à +20 %) et compte pour 120 ; avec neuf sièges silencieux à 100, la moyenne est (120 + 9 × 100) ÷ 10 = 102.

À quelle vitesse les prix peuvent évoluer

Même lorsque chaque siège vote le pas complet, un prix augmente d’au plus 20 % par cycle et baisse au plus de moitié. Une multiplication par dix prend environ 13 cycles, une division par dix environ 4.

Chaque prix exprimé en ZBC peut être abaissé par vote jusqu’à une unité atomique (0,00000001 ZBC). Si le ZBC prend beaucoup de valeur, ces prix peuvent le suivre vers le bas, de sorte que conserver un compte ou un jeu de données ne devienne pas absurdement cher en termes réels. À partir des 0,01 ZBC du loyer de compte, atteindre une unité prend environ 20 divisions par deux, donc au moins 20 cycles. Rien ne devient gratuit : chaque charge calculée est arrondie vers le haut à au moins une unité atomique.

Émettre un vote

Les votes sont des transactions de devoir sans frais, signées avec la clé de nœud du siège (clés d’un nœud). Tous les prix sauf les frais de transfert sont votés avec SetConsensusParam (type 51).

Les frais de transfert sont le seul prix dont le vote se fait en deux étapes :

  • dans la première moitié du cycle, un siège envoie un FeeVoteCommitment (type 7) qui ne porte qu’un hachage de 32 octets de son vote, de sorte que la valeur reste cachée ;
  • dans la seconde moitié, il envoie un FeeVoteReveal (type 263) avec la valeur.

Une révélation ne compte que si son hachage correspond à un engagement que le même siège a pris dans le même cycle, et c’est le dernier vote valide d’un siège qui est retenu. Les nouveaux frais sont ensuite calculés comme pour tout autre prix.

Garde-fous

  • Plancher du registre. Aucune décision à l’échelle du registre n’aboutit tant que le registre compte moins de max(3, son minimum de genèse) sièges ou comptes propriétaires distincts, soit 7 sur le mainnet. Deux sièges d’un même opérateur ne comptent que pour une voix dans ce décompte.
  • Une fois par cycle. Un paramètre change au plus une fois par cycle, et reste toujours dans ses bornes.
  • L’argent reste aux sièges. Ce que ces prix font payer revient aux nœuds enregistrés : les loyers par le fonds de longévité, les frais par la loterie (fonds, loterie coinbase).

Ce qu’aucun vote ne peut changer

Le calendrier d’émission, par rapport auquel chaque nœud vérifie la coinbase de chaque bloc (offre et l’émission) ; le solde de n’importe quel compte ; les règles de consensus et les hauteurs auxquelles elles s’appliquent ; et la genèse. Ces éléments viennent avec la genèse et le logiciel du nœud, et aucun vote ni aucune clé ne les modifie (ZooBC Foundation). Les sièges disposent d’un autre vote en dehors des prix : les deux tiers d’entre eux peuvent opposer leur veto à une version du logiciel (versions et mises à jour).

Voir aussi