BondsMovingAverageSet

Event Re-added v101 → v127, v133 → v219, v233 → v265, v273 → v277, v290 → current #24

Emitted when bonds moving average parameter is changed.

View events on chain
Useful for: validatorssubnet ownersanalyticsdevelopers

The Big Picture

Bonds represent the accumulated relationship between validators and miners - validators 'bond' with miners they consistently weight highly. The moving average parameter controls how quickly bonds respond to changes in validator weights. Higher values mean bonds are more 'sticky' - they change slowly, rewarding long-term consistency. Lower values mean bonds respond quickly to recent weights, rewarding current performance over history. This affects how much historical performance matters vs recent performance.

Why This Matters

Bonds affect emission distribution based on validator-miner relationships. High moving average means your past performance carries weight - good for established miners with track records. Low moving average means recent performance dominates - good for improving miners who want quick recognition.

Example Scenario

Subnet 11 wants to reward consistency over time. The owner increases BondsMovingAverage. BondsMovingAverageSet fires. Now bonds change more slowly - a miner who was good for months retains their bond even through a brief performance dip. Conversely, a new high-performer needs sustained excellence to build strong bonds.

Common Questions

How do bonds affect my rewards?
Bonds influence emission distribution. Miners with strong bonds to high-stake validators earn more. The moving average determines how historical weights vs recent weights contribute to bond strength.
Can I see my current bonds?
Yes, query the Bonds storage for the subnet. It shows bond values between all validator-miner pairs. Higher bonds mean stronger historical relationships.
What's a typical BondsMovingAverage value?
Values vary by subnet. Higher values (e.g., 0.9) mean bonds are very sticky (90% history, 10% recent). Lower values (e.g., 0.1) mean bonds are responsive (10% history, 90% recent).

Use Cases

  • Tune bond stability for subnet
  • Monitor bond mechanism changes
  • Analyze validator-miner relationship dynamics
  • Model bond evolution under different smoothing factors

How to Use This Event

  • Monitor bond smoothing on subnets you operate
  • Track changes to understand bond dynamics
  • Model bond evolution for validator strategy

From Chain Metadata

bonds moving average is set for a subnet.

Triggers

Preconditions

  • Caller has admin/sudo privileges
  • New value is within valid range

Effects

Postconditions

  • BondsMovingAverage updated for subnet
  • Future bond calculations use new smoothing factor

Side Effects

  • Affects bond value smoothing over time
  • Changes how quickly bond values respond to weight changes

Event Data

#NameTypeDescription
0
arg0
u16 Event field #0 (u16)
1
arg1
u64 Event field #1 (u64)

Code Examples

import { ApiPromise, WsProvider } from "@polkadot/api";
import { stringCamelCase } from "@polkadot/util";

const provider = new WsProvider("wss://entrypoint-finney.opentensor.ai:443");
const api = await ApiPromise.create({ provider });

// Subscribe to BondsMovingAverageSet events
api.query.system.events((events) => {
  events
    .filter(({ event }) =>
      event.section === stringCamelCase("SubtensorModule") &&
      event.method === "BondsMovingAverageSet"
    )
    .forEach(({ event }) => {
      console.log("BondsMovingAverageSet:", event.data.toHuman());
    });
});

Version History

v101 block 1 2 args
v133 block 1,404,224 2 args
v233 block 4,920,350 2 args
v273 block 5,659,032 2 args
v290 block 5,947,548 2 args Current

Runtime Info

View Source
Pallet Index
7
Event Index
24
First Version
v101
Current Version
v393