馃嚜馃嚫 驴C贸mo se calculan las recompensas de un Stake Pool?

:cuba: :es: Traducci贸n de How are the stake pool rewards calculated? publicado por Lincon Vidal operador del Pool Every Block Studio (EBS).

Palabras y frases claves del art铆culo relacionadas con el ecosistema Cardano que ser谩n respetadas en el idioma ingl茅s, dado su continuo uso en el foro, art铆culos de sitios web, y redes sociales.

Stake Pool: Entidad de la red que, entre otras cosas, se encarga de producir y validar bloques. Puede actuar individualmente, o como tercero en nombre de varios usuarios de la red que lo elijan para ello.

Epoch: Unidad de tiempo dentro de la red Cardano que dura 5 d铆as.

Slot: Unidad de tiempo de la red Cardano que dura un segundo, dentro de cada Slot puede existir la posibilidad de crear un bloque.

Stake: Cantidad de ADA delegada a un Stake Pool que controla un usuario, o cantidad de ADA que controla un Stake Pool.

Staking: Proceso en el cual se delegan los recursos ADA.

Pledge: Se explica en el propio art铆culo.


Si has revisado nuestro contenido previo en Infoblock sobre La Historia de las Recompensas, entonces ya sabes de qu茅 est谩 compuesto el contenedor, y cu谩les son las fuentes de recompensas que se distribuyen a los operadores. Podemos concluir que el mecanismo de incentivo es la maquinaria principal de una Blockchain p煤blica, ya que a trav茅s de esto los operadores son recompensados por el servicio y son exhortados a actuar en favor del protocolo. Redes como Bitcoin, Ethereum, Tron y Tezos pagan una recompensas fija por cada bloque producido, lo cual conlleva a que los m谩s curiosos se pregunten, cu谩ntas recompensas paga Cardano por bloque.

tabela

En la Blockchain Cardano, el mecanismo de recompensas es uno de los componentes de seguridad m谩s importante del protocolo Ouroboros, desarrollado a trav茅s de una extensiva investigaci贸n cient铆fica para asegurar que el mecanismo conduce a largo plazo a una descentralizaci贸n de la red. Una de las diferencias en comparaci贸n con el mecanismo de otras Blockchains, es que la distribuci贸n de recompensas no es fija por cada bloque. En cambio las recompensas distribuidas para los Stake Pools y sus delegantes envuelven: (1) La participaci贸n total de un Stake Pool y (2) su rendimiento.

Recompensas y Staking.

Para comprender el mecanismo de recompensas, podemos dar un vistazo en detalle a los componentes que son usados para el c谩lculo y c贸mo cada uno influye en las recompensas. Consideraremos primero c贸mo las recompensas de un Stake Pool es calculada en funci贸n de su Stake y entonces, c贸mo el rendimiento da peso al valor final de las recompensas.

Imaginemos que f es una funci贸n que calcula las recompensas de cada entidad en la red bas谩ndose en dos factores de los Stake Pools: s, el Pledge del Stake Pool; y , el Stake total de dicho Stake Pool.

Ambos valores son relativos al total de ADA en circulaci贸n, esto significa que ellos representan una fracci贸n (o porcentaje) de la cantidad que el Stake Pool controla de la monedas existentes. La fracci贸n referente al Pledge, la cual llamamos s, representa el Stake delegado por el propio operador del Pool, mientras representa el Stake total, incluyendo el Pledge y el Stake de los delegantes.

Si hubiese solo un Stake Pool, podr铆amos distribuir totalmente las recompensas R del contenedor solamente para 茅l, independientemente de otros factores. Asumamos que el contenedor contiene un total de 200 mil ADA

Para dividir el contenedor en proporci贸n al Stake relativo de cada entidad, necesitamos considerar el par谩metro multiplicando el total de recompensas en el contenedor.

De esta forma, e ignorando el Pledge por ahora, si un Stake Pool tiene un 1% de todas las ADA en circulaci贸n ( = 0.01), 茅l recibir谩 un 1% del contenedor. En otras palabras f(s, 蟽) = 200000 * 0.01 = 2000. El problema que surge cuando se asocian las recompensas de un modo directamente proporcional, es que entonces los Stake Pools con mayores Stake siempre recibir谩n la mayor铆a de las recompensas, siendo cada m谩s grandes, y posiblemente centralizando la red a trav茅s de grandes entidades.

Para controlar el crecimiento de las recompensas de un solo Stake Pool, en la Blockchain Cardano hay un concepto de, punto de saturaci贸n, que limita la ganancia de recompensas, lo llamaremos z_0, que tambi茅n representa un valor relativo al total de monedas en circulaci贸n. Actualmente el punto de saturaci贸n corresponde a aproximadamente 0.2% del total, el equivalente a 64 millones de ADA. A trav茅s de este par谩metro, limitamos la cantidad de Stake considerado en el c谩lculo de las recompensas hasta un m谩ximo de 0.2% del total de ADA. Pondremos una l铆nea (蟽鈥 en vez de 蟽) para denotar que la participaci贸n estar谩 limitada por el punto de saturaci贸n z_0.

Entonces, en nuestro previo ejemplo, un Stake Pool estar铆a limitado a recibir un m谩ximo de f(s, 蟽) = 200000 * 0.002 = 400. Sin embargo, no estamos considerando a煤n c贸mo el Pledge influye en el c谩lculo de las recompensas. El prop贸sito del Pledge es proteger la red de Ataques Sybil suministrando mayores recompensas para los operadores que comprometen y delegan sus propios fondos en su Stake Pool y desalentando la creaci贸n de muchos Pools con poco Stake. El protocolo Ouroboros implementa el par谩metro a_0 como el factor de influencia del Pledge, actualmente establecido en a_0 = 0.3. Obviemos el punto de saturaci贸n por ahora para intentar mantener simple el c谩lculo de la funci贸n de las recompensas, incluyendo el factor de influencia del Pledge (a_0) y el Pledge del Stake Pool.

Los 煤ltimo cambios que necesitamos hacer a la f贸rmula, est谩n relacionados al punto de saturaci贸n z_0, el cual tambi茅n necesita estar incluido en el c谩lculo. Limitamos el Pledge hacia el punto de saturaci贸n del mismo modo que lo hicimos con el Stake total, denotando este valor limitado con s鈥 en vez de s, multiplicando un t茅rmino m谩s para obtener finalmente la forma final de la funci贸n de las recompensas.

Note que, si el factor de influencia del Pledge es cero, ejemplo a_0 = 0, obtendremos la forma reducida R * 蟽鈥.

Factor rendimiento

Ya que las recompensas de un Stake Pool son calculadas con la funci贸n descrita, el valor obtenido es ajustado por un factor de rendimiento que pondera las recompensas en relaci贸n al n煤mero de bloques producidos.

Este factor es calculado por 尾/蟽, donde , es la fracci贸n de bloques producidos por el Pool en un Epoch, representando una fracci贸n en la forma de bloques producidos / 21600, es otra vez, la fracci贸n del Stake relativo controlado por el Pool, Note que, y son fracciones que deben obtener el mismo valor durante el tiempo, para que la fracci贸n de bloques generados sea proporcional al Stake controlado. Dado que la asignaci贸n de Slots para definir las entidades que producir谩n bloques funciona como una loter铆a, a veces un Pool puede producir muchos o pocos bloques de lo esperado, pero en promedio el factor de rendimiento debe ser igual a 1 para los grupos con un rendimiento ideal.

En resumen:

Generar muchos o pocos bloques hace una diferencia en las recompensas, pero no hay un valor fijo de recompensas como en otras Blockchains. a largo plazo, las recompensas son proporcionales al Stake controlado por el Stake Pool.

Nos vemos en el pr贸ximo Epoch.

驴Todav铆a tienes dificultades para comprender c贸mo las recompensas de los Stake Pools se calculan en la Blockchain Cardano ? Hicimos esta historia interactiva para ayudarte a comprender f谩cilmente. 隆Compru茅balo aqu铆 en pantalla completa!

Muchas Gracias!!

3 Likes

Es la mejor explicaci贸n que he encontrado hasta ahora. La verdad es que se explica paso a paso y se entiende muy bien. Sin embargo, hay un punto donde me atasco y es en relaci贸n al c谩lculo del l铆mite del Pledge hacia el punto de saturaci贸n ya que no s茅 contra qu茅 valor debemos compararlo. En el caso que sea el total de ADA existente en el sistema, nunca podr谩 superar siquiera el valor de z_0 que es 0,2. Por lo tanto, 驴contra qu茅 valor debemos calcular el facto de influencia del pledge? 驴contra las recompensas totales?

Un saludo.