$BACK
Staking y cobro de recompensas
Pon el token en staking y gana una parte de los ingresos del protocolo en USDC. Entrar y salir del staking se aplica al instante: sin período de espera ni bloqueo.
Staking
Pon en staking desde la app con una firma de tu billetera; desde ese momento participas en cada distribución. Sin vesting ni bloqueo.
La app envía tu mensaje firmado Stake al relayer, que lo envía como stakeBySig; las llamadas directas al contrato de staking están desactivadas. El token permite que el contrato de staking lo mueva sin aprobación, así que no hay una transacción de aprobación aparte. Una clave de sesión no puede firmar acciones de staking.
Retiro del staking
Retira del staking de la misma forma, con una firma de tu billetera (unstakeBySig). Tus BACK vuelven a tu billetera al instante y dejan de generar recompensas, y las recompensas ya acreditadas se pueden seguir cobrando. No hay período de espera.
Cobros
Las recompensas se acumulan por token en staking a través de un acumulador global. Cobra cuando quieras (claimBySig): el cobro mueve tus recompensas, en USDC, del saldo del contrato de staking en el Exchange al tuyo, desde donde puedes operar con ellas o retirarlas.
Para ver tus recompensas sin cobrar sin hacer una transacción, lee pendingReward(address) en el contrato de staking. Solo incluye recompensas que ya se distribuyeron.
Cómo llegan las recompensas
Las recompensas llegan a los stakers en dos pasos:
- El Exchange reúne la parte de los stakers de cada comisión. Solo el contrato de staking puede llamar a
pushStakerFeesen él, que reenvía esa parte, más cualquier valor del LP por encima de $500,000, al saldo del contrato de staking. - Después, una distribución reparte entre todo el staking actual lo que el contrato de staking recibió de nuevo. Distribuir está reservado a la llamada
distributedel keeper distribuidor y a las solicitudes firmadasDistributeenviadas a través del relayer; siempre empuja primero las comisiones.
Nuestro keeper distribuye cada 30 segundos cuando hay al menos $100 esperando, así que nadie tiene que estar pendiente. Mientras el total en staking sea menor que 1 BACK, las nuevas recompensas esperan hasta que haya suficiente staking para repartirlas.
Las matemáticas
Cada distribución reparte los USDC recién recibidos entre los stakers en proporción a lo que cada uno tiene en staking en ese momento: sin multiplicadores, sin niveles, sin bonos por bloqueo. El contrato guarda un solo número, las recompensas por token en staking desde el inicio, escaladas por 10^36; cada cuenta guarda su staking y una deuda de recompensa. Cuando una cuenta entra o sale del staking o cobra, la diferencia se suma a sus recompensas acreditadas, redondeando hacia abajo, así que el total acreditado nunca supera lo distribuido.