You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/btcli.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -686,7 +686,7 @@ btcli wallet transfer [OPTIONS]
686
686
|`--destination`, `--dest`, `-d`| TEXT | Destination address (ss58) of the wallet (coldkey). |
687
687
|`--amount`, `-a`| FLOAT | Amount (in TAO) to transfer. |
688
688
|`--all`|| Transfer all available balance. |
689
-
|`--all`, `-a`|| Whether to display the balances for all the wallets. |
689
+
|`--all`|| Whether to display the balances for all the wallets. |
690
690
|`--period`, `-era`| INTEGER | Length (in blocks) for which the transaction should be valid. |
691
691
|`--wallet-name`, `--name`, `--wallet_name`, `--wallet.name`| TEXT | Name of the wallet. |
692
692
|`-p`, `--wallet-path`, `--wallet_path`, `--wallet.path`| TEXT | Path where the wallets are located. For example: `/Users/btuser/.bittensor/wallets`. |
Tokens (TAO and subnet-specific alpha) can be 'removed from circulation', meaning these tokens exist in neither wallet nor liquidity pool, and cannot be transacted. This can happen in two ways:
@@ -473,15 +480,18 @@ Tokens (TAO and subnet-specific alpha) can be 'removed from circulation', meanin
473
480
474
481
- In contrast, when tokens are **burned** they exist in no wallet and no pool and can no longer be transacted; however they are still included in the record of token issuance, so they will not be re-emitted, and in effect will forever remain as a quantity of *missing* tokens, a difference between issuance and the effective quantity in circulation.
475
482
483
+
476
484
#### Recycling
477
485
478
486
Tokens are recycled in several cases in Bittensor operations:
479
487
488
+
480
489
-**All transaction fees are recycled**: When transaction fees are collected, they are deducted from `TotalIssuance`, effectively recycling them back into the system for future emission. See [Transaction Fees in Bittensor](./fees)
481
490
-**Subnet Creation fees**: When a new subnet is created, the cost is recycled, except for one TAO, which is used to initialize the subnet's TAO liquidity pool.
482
491
-**Neuron Registration fees**: When a user registers a hotkey on a subnet to participate as a miner or validator, they are charged a registration fee in TAO. Alpha tokens worth the current swap value of the fee are taken from the subnet's alpha liquidity pool and recycled.
483
492
-**Extrinsic transaction**: Users can manually recycle alpha tokens using the `recycle_alpha` extrinsic, which reduces both the user's stake and the subnet's `SubnetAlphaOut` tracker.
484
493
494
+
485
495
#### Burning
486
496
487
497
Subnet-specific alpha tokens are burned in several contexts:
@@ -503,6 +513,7 @@ The process of registering keys with a subnet and purchasing a UID slot.
503
513
504
514
**See also:**[Subnet Miners](./miners/), [Subnet Validators](./validators/), [Working with Subnets](./subnets/working-with-subnets.md)
505
515
516
+
506
517
### Root Subnet/Subnet Zero
507
518
508
519
Subnet Zero a.k.a. the root subnet is a special subnet. No miners can register on subnet zero, and no validation work is performed. However validators can register, and $\tau$-holders can stake to those validators, as with any other subnet. This offers a mechanism for $\tau$-holders to stake $\tau$ into validators in a subnet-agnostic way. This works because the weight of a validator in a subnet includes both their share of that subnet's $\alpha$ and their share of staked TAO in Subnet Zero.
@@ -744,7 +755,6 @@ The relationship between these metrics creates a feedback loop: consensus determ
744
755
A position occupied by a subnet miner or subnet validator within a subnet, identified by a unique UID. The UID is assigned to a hotkey when it is registered in a subnet, allowing the hotkey to participate as a subnet validator or subnet miner.
745
756
746
757
**See also:**[Subnet Miners](./miners/), [Subnet Validators](./validators/), [Working with Subnets](./subnets/working-with-subnets.md)
747
-
748
758
### Unstaking
749
759
750
760
The process of detaching TAO from a validator hotkey.
@@ -871,6 +881,7 @@ Where $\alpha$ is the EMA smoothing factor (see [Exponential Moving Average](#ex
871
881
- Bonds are stored as sparse matrices in blockchain state
872
882
873
883
**Bond Decay:**
884
+
874
885
- Bonds decay over time using [EMA](#exponential-moving-average-ema) with the `bonds_moving_avg` parameter
875
886
- Higher decay rates (larger α) make bonds more responsive to recent performance
The exponential moving average (EMA) is a [mathematical technique](https://en.wikipedia.org/wiki/Exponential_smoothing) for tracking a dynamic quantity, such as a token price, over time. Specifically, EMA is a weighted moving average that exponentially decreases the weight of older data point. This extracts a signal reflecting where the value has spent *most* of its time *most recently*, stabilizing or 'smoothing' the constant noise of rapid, largely random fluctuations.
7
+
The exponential moving average (EMA) is a [mathematical technique](https://en.wikipedia.org/wiki/Exponential_smoothing) for tracking a dynamic quantity, such as a token price, over time. Specifically, EMA is a weighted moving average that exponentially decreases the weight of older data point. This extracts a signal reflecting where the value has spent _most_ of its time _most recently_, stabilizing or 'smoothing' the constant noise of rapid, largely random fluctuations.
7
8
8
9
Bittensor uses EMAs to smooth two critical dynamical values during the emission process:
9
10
10
11
- Emissions to each subnet are determined by an EMA-smoothed representation of subnet price each tempo. This protects emissions from price volatility or intentional manipulation.
11
12
12
-
- Emissions to participants of each subnet are determined by EMAs of instantaneous validator-miner bond-strengths. This plays an important roll in ensuring that validators and miners are fairly rewarded for innovation, as measured by eventual consensus (rather than immediate consensus) about miner weights.
13
+
- Emissions to participants of each subnet are determined by EMAs of instantaneous validator-miner bond-strengths. This plays an important role in ensuring that validators and miners are fairly rewarded for innovation, as measured by eventual consensus (rather than immediate consensus) about miner weights.
13
14
14
15
## Mathematical definition
15
16
16
-
17
17
The EMA of a changing value at a given time is determined by weighted average of the current value and the EMA at the last time step. The parameter factor, or 'smoothing factor' is called $\alpha$.
18
18
19
19
$$
@@ -30,14 +30,12 @@ The alpha parameter controls how quickly the EMA responds to changes:
30
30
Note that this alpha parameter is distinct from and unrelated to the usage of 'alpha' to refer to subnet-specific currencies.
31
31
:::
32
32
33
-
34
-
35
33
## Subnet Price Emission Smoothing
36
34
37
35
This use of EMA smoothing protects the network's economic model from price manipulation by making emissions extremely slow to respond to price changes.
38
36
39
37
**How It Works**:
40
-
The price EMA uses a sophisticated dynamic alpha calculation to ensures that new subnets have even slower price adaptation than mature ones.
38
+
The price EMA uses a sophisticated dynamic alpha calculation to ensure that new subnets have even slower price adaptation than mature ones.
-[Default alpha value for subnet price smoothing](https://github.com/opentensor/subtensor/blob/main/pallets/subtensor/src/lib.rs#L828)
53
52
@@ -56,20 +55,24 @@ See:
56
55
This smoothing function ensures that relationships between validators and miners evolve gradually, preventing sudden manipulation while rewarding validators who discover promising miners early.
57
56
58
57
### Basic Bond EMA (Liquid Alpha Disabled)
58
+
59
59
**Default Mode**: Single $\alpha$ for all validator-miner pairs
60
+
60
61
-**Default $\alpha$**: ~0.1 (10%)
61
62
-**Response Time**: 7-22 blocks for significant changes (~1-4 minutes)
62
63
-**Formula**
63
-
The EMA of the bond (BondEMA)of a validator i for a miner j, at time t, is the $\alpha$-weighted average of the instantaneous bond and the previous timestep's BondEMA:
The EMA of the bond (BondEMA)of a validator i for a miner j, at time t, is the $\alpha$-weighted average of the instantaneous bond and the previous timestep's BondEMA:
0 commit comments