-
Notifications
You must be signed in to change notification settings - Fork 5
Expand file tree
/
Copy pathconstants.py
More file actions
65 lines (54 loc) · 3.13 KB
/
constants.py
File metadata and controls
65 lines (54 loc) · 3.13 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
# Constants for trade history
ROLLING_HISTORY_IN_DAYS = 30
# Constants for the scoring function
VOLUME_FEE = 0.01
# Price adjustment buffer for order placement
PRICE_BUFFER_ADJUSTMENT = 0.01
ROI_MIN = 0.0
VOLUME_MIN = 1
VOLUME_DECAY = 0.9
RAMP = 0.1 # originally 0.1
RHO_CAP = 0.1 # originally 0.1
KAPPA_NEXT = 0.03 # originally 0.02
KAPPA_SCALING_FACTOR = 1 # originally 6
# Build-up period constants for miner eligibility
MIN_EPOCHS_FOR_ELIGIBILITY = 0 # Must trade for X epochs
MIN_PREDICTIONS_FOR_ELIGIBILITY = 1 # Must have X predictions
# Weighting parameters
# If ENABLE_STATIC_WEIGHTING is True, we will use the static weighting parameters below.
ENABLE_STATIC_WEIGHTING = False
GENERAL_POOL_WEIGHT_PERCENTAGE = 0.5
MINER_WEIGHT_PERCENTAGE = 1 - GENERAL_POOL_WEIGHT_PERCENTAGE
# Max percent of the total possible epoch budget that can be allocated.
# This is used to give more weights (and in turn, more incentives) to the miners when we aren't using the full budget.
MAX_EPOCH_BUDGET_PERCENTAGE_FOR_BOOST = .25
# If ENABLE_STATIC_WEIGHTING is False, we will use the dynamic weighting.
# This is used to give more weights (and in turn, more incentives) to the miners when we aren't using the full budget by increasing the total miner pool budget.
# Set to 0 to disable.
MINER_POOL_BUDGET_BOOST_PERCENTAGE = 0
# Early stage incentive parameters for the miner pool
ENABLE_ES_MINER_INCENTIVES = True
# This is the multiplier of the trader's fees paid that is given to the miner if they have positive tokens (score). 1.2 == 120%.
ESM_MIN_MULTIPLIER = 1.2
# If ENABLE_ES_MINER_LOSS_COMPENSATION is True, we will give back the trader's fees paid to the miner if they have positive epoch profit but no score.
ENABLE_ES_MINER_LOSS_COMPENSATION = True
# This is the percentage of the trader's fees paid that is given back to the miner if they have positive epoch profit but no score. 1.0 == 100%.
ESM_LOSS_COMPENSATION_PERCENTAGE = 1.0
# Early stage incentive parameters for the general pool
ENABLE_ES_GP_INCENTIVES = True
# This is the multiplier of the trader's fees paid that is given to the gp trader if they have positive tokens (score). 1.2 == 120%.
ESGP_MIN_MULTIPLIER = 1.2
# If ENABLE_ES_GP_LOSS_COMPENSATION is True, we will give back the trader's fees paid to the gp trader if they have positive epoch profit but no score.
ENABLE_ES_GP_LOSS_COMPENSATION = False
# This is the percentage of the trader's fees paid that is given back to the gp trader if they have positive epoch profit but no score. 1.0 == 100%.
ESGP_LOSS_COMPENSATION_PERCENTAGE = 1.0
# This is used to give more weights (and in turn, more incentives) to the miners by taking the final miner pool weights and boosting them by this percentage.
# Set to 0 to disable.
MINER_POOL_WEIGHT_BOOST_PERCENTAGE = 3
TOTAL_MINER_ALPHA_PER_DAY = 2952 # 7200 alpha per day for entire subnet * 0.41 (41% for miners)
# Subnet owner burn UID
BURN_UID = 210
# Subnet owner excess miner weight UID
EXCESS_MINER_WEIGHT_UID = None
EXCESS_MINER_MIN_WEIGHT = 0 # 0.00001 should be low enough if used
EXCESS_MINER_TAKE_PERCENTAGE = 0 # percentage of the excess miner weight that is set to EXCESS_MINER_WEIGHT_UID. rest goes to BURN_UID.