Encontrar un bloque es un evento bastante raro y que ocurre al azar. Sin embargo, el servicio del Pool necesita algún método para distribuir equitativamente el valor de un bloque encontrado entre los usuarios del grupo y pagarles en consecuencia.
Nuestro sistema de recompensas asegura que cuando se encuentra un nuevo bloque, cada usuario recibe una recompensa proporcional a su participación en el poder de minería del grupo. Los mineros más grandes reciben proporcionalmente más que los mineros más pequeños.
Tasa de puntuación de hash
La participación del usuario en la potencia minera del grupo se mide mediante la puntuación de la tasa de hash. Refleja cuánto trabajo hizo el usuario en las últimas horas. Puede entender la puntuación de la tasa de hash como un promedio móvil exponencial de la tasa de hash de todos los dispositivos de minería de usuarios conectados al grupo (consulte EMA en wikipedia). El promedio suaviza las caídas o aumentos cortos de la tasa de hash y hace que el cálculo de recompensas sea más estable y justo (la definición matemática exacta se proporciona más abajo).
Por ejemplo, si su puntuación de la tasa de hash es del 1% de todo el grupo, recibirá el 1% de las recompensas del bloque. Si posee un 0.031% de la tasa de hash, recibe 0.031% de recompensas del bloque. Es así de simple.
El pool calcula su recompensa por cada bloque encontrado de la siguiente manera:
Un valor de bloque consiste en la recompensa del bloque y las tarifas de las transacciones contenidas en el bloque.
Las tasas de hash de puntuación utilizadas para el cálculo son las tasas de hash del momento en que se encontró un bloque en particular. Reflejan algo de historia minera antes del hallazgo real del bloque.
Las tarifas del Pool para todas las monedas se enumeran en la sección Recompensas y pagos.
La siguiente gráfica muestra cómo la puntuación de tasa de hash aumenta y disminuye en el momento en que inicia o detiene la extracción (la tasa de hash efectiva es azul, la puntuación de la tasa de hash es oro):
El gráfico se parecería mucho más al siguiente con un minero real. La razón es que la tasa de hash efectiva del minero cambia con el tiempo:
Hechos importantes sobre el método
Propiedades importantes del uso de la puntuación de tasa de hash para el cálculo de recompensas:
Literalmente, puede ver y comprender en cualquier instante cómo está cambiando la tasa de hash y qué recompensa puede esperar.
Las recompensas son totalmente independientes de las rondas. Lo único importante es la puntuación de tasa de hash.
Cuando comienza a minar, toma aproximadamente 1,5 horas hasta que alcanza su tasa de hash real y luego se vuelve estable.
Es estable durante el tiempo en que sus mineros están conectados y trabajando.
Cuando dejas de extraer, la puntuación de la tasa de hash comienza a caer. De nuevo, toma aproximadamente 1,5 horas hasta que sea aproximadamente cero.
Cuando otro minero se conecta al pool, su puntuación de la tasa de hash seguirá siendo la misma, pero la tasa de hash del pool aumentará proporcionalmente. Como resultado, recibirás una parte más pequeña de los bloques encontrados como recompensa, pero con más frecuencia, porque el pool será más fuerte. Cuando algún otro minero se desconecte, sucederá lo contrario. Estadísticamente, no hay diferencia para usted a largo plazo.
Las matemáticas detrás de escenas
Comencemos con los conceptos y definiciones básicos para describir cómo se calculan exactamente las recompensas y otros valores presentados por el pool. Poco a poco, mostraremos cosas más interesantes.
Shares
Cuando un minero se conecta al pool recibe una tarea computacional que debe resolverse: calcula valores hash con ciertas propiedades. Los hash que satisfacen los requisitos de la tarea se envían de vuelta al grupo y se utilizan como prueba del trabajo del minero.. La cantidad de trabajo del minero se registra en unidades llamadas shares. Si un minero envía un hash (prueba de trabajo) con dificultad d es enviado por un minero entonces d shares se contabilizan en el pool.
Siempre que el sistema registra un nuevo share, se registra una marca de tiempo del evento y se utiliza para la valoración de shares más adelante.
Para los propósitos de este texto, tratamos cada share s como si se presentara por separado como prueba de trabajo con dificultad 1. Este enfoque conduce numéricamente a los mismos resultados, sin embargo, las fórmulas son menos complejas.
Manejo del tiempo
Sea τ" s="s una función que nos da un momento en el que se envió algún recurso compartido (o cuando se encontró un bloque b). El tiempo se mide en segundos desde algún punto estable en el tiempo (por ejemplo, el inicio de la operación del pool). El valor de tiempo solo se usa para medir cuánto tiempo ha transcurrido entre dos eventos. Por ejemplo, un tiempo entre el envío del share y algún punto en el tiempo t0, escrito como τ(s) − t0, es una parte clave de la valoración de shares.
Valoración de Shares - score (puntuación)
El valor de cada share (para el cálculo de recompensas) disminuye con el tiempo - shares más jóvenes se valoran más alto que los shares más antiguos. Esto motiva a los usuarios a minar con el pool de manera constante, sin cambiar de pool. Una vez que el usuario se desconecta del grupo, sus acciones comienzan a perder valor.
El valor exacto del share en el momento se define mediante la función de puntuación c. Calcula la puntuación de un share s en el momento t0 como
donde λ es un parámetro de sistema adimensional. λ define la rapidez con la que la puntuación asignada a un share disminuye en el tiempo. Cuanto mayor sea λ más lento perderán valor los shares antiguos en comparación con las acciones nuevos shares. Actualmente, el parámetro λ está establecido en 1200.
(Para los usuarios que estaban familiarizados con nuestro sistema de puntuación presentado hace muchos años, una de las diferencias clave ahora es que la puntuación no está relacionada con el comienzo de la ronda, sino que se define dinámicamente en relación con cualquier punto dado en el tiempo t0. por ejemplo relacionado con el tiempo cuando mira el dashboard. El cambio es sutil pero tiene consecuencias bastante significativas, porque elimina por completo el concepto de rondas del cálculo de recompensas).
Continuemos. Sea U un conjunto de todos los usuarios del pool ySu(t0) = {s0, s1, ... } sea un conjunto de todos los recursos compartidos válidos enviados por el usuario U hasta el momento t0. Escrito de manera más formal, se sostiene lo siguiente
Luego, la puntuación para algún usuario U en el momento t0 calcula como la puntuación total de todas sus shares desde el momento t0, enviada en t0 o antes:
Técnicamente, el pool calcula la puntuación de cada trabajador por separado, pero las matemáticas son análogas.
La puntuación de todo el pool C̅ es la suma de la puntuación de todos los usuarios en un tiempo determinado juntos:
Cálculo de recompensas
Cuando se encuentra un bloque b en el tiempo τ(b) y finalmente se conoce su valor - V(b), el pool puede calcular la recompensa Ru para cada usuario u de la siguiente manera (f representa una tarifa del pool):
Para aquellos que realmente aman las ecuaciones matemáticas, la fórmula completa de recompensas para el sistema de puntuación continua es:
Otros valores
Cuando mires tu Resumen de minería encontrarás otros valores calculados para ti por el pool. Se definen como sigue. La recompensa estimada para el usuario u y el tiempo t0 se calcula exactamente como si se encontrara un bloque en ese momento, pero en lugar del valor del bloque (que aún no se conoce) usamos 6.25 BTC:
La contribución del usuario al pool (en %) se define como
Y finalmente la la puntuación de la tasa de hash H por usuario u y tiempo t0 no se calcula internamente mediante el promedio de la tasa de hash, sino directamente a partir de las acciones que utilizan la función de puntuación (el resultado está en h/s):
La puntuación de la tasa de hash del Poo H̅ no se define sorprendentemente como todos los usuarios que puntúan las tasas de hash juntos: