Sample codes and details
Input:
Weight Generator
Weight Part
import pandas as pd
import numpy as np
import itertools
def generate_weights_with_constraints_25(num_weights, num_simulation=70):
possible_values = [0, 0.25, 0.5, 0.75, 1]
simulations = []
# Generate all possible combinations
all_combinations = list(itertools.product(possible_values, repeat=num_weights))
valid_combinations = [combo for combo in all_combinations if np.isclose(sum(combo), 1)]
simulations = np.random.choice(len(valid_combinations), num_simulation, replace=False)
simulations = [valid_combinations[i] for i in simulations]
return simulations
# For 0.25 interval, total number of simulation are 70
num_weights = 5
num_simulation = 70
simulations = generate_weights_with_constraints_25(num_weights, num_simulation)
simulations = pd.DataFrame(simulationsAllocation Part
Data Combination
Simulation Configurations Input:
funding rate weights input
allocation weights input
Historical Funding Rates Data:
Creating feasible DataFrame
Math functions & formulas:
Token Scores Function:
'token_score_func(symbol, simulations_id, model_num)'
Simulation Realized APR Function:
'simulation_apr_func(Tokens_names, simulations_id, model_num)'
Output
Funding rate weight and Portfolio allocation configurations for monitor

Last updated