Created
June 7, 2025 14:30
-
-
Save danicuki/6e37300e769ba19b97380dc40634d9a5 to your computer and use it in GitHub Desktop.
DOT coretime demand vs inflation simulation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Update starting burn to 5 million DOT/year | |
initial_coretime_demand_5m = 5e6 # 5 million DOT/year | |
# Recalculate coretime burn with 60% growth from 5M start | |
coretime_burn_5m = initial_coretime_demand_5m * np.exp(faster_growth_rate * (short_years_updated - 2024)) | |
burn_interp_5m = interp1d(short_years_updated, coretime_burn_5m, kind='linear') | |
fine_burn_5m = burn_interp_5m(fine_years_updated) | |
fine_net_inflation_5m = fine_inflation_updated - fine_burn_5m | |
# Find precise tipping point with 5M starting burn | |
tipping_idx_5m = np.argmax(fine_burn_5m > fine_inflation_updated) | |
tipping_year_5m = fine_years_updated[tipping_idx_5m] | |
tipping_value_5m = fine_burn_5m[tipping_idx_5m] | |
# Plotting | |
plt.figure(figsize=(10, 6)) | |
plt.plot(fine_years_updated, fine_inflation_updated, label='DOT Inflation (new DOT/year)', linestyle='--') | |
plt.plot(fine_years_updated, fine_burn_5m, label='Coretime DOT Burn (5M start, 60% growth)', linestyle='-') | |
plt.plot(fine_years_updated, fine_net_inflation_5m, label='Net Inflation (Inflation - Burn)', linestyle='-.', color='purple') | |
# Annotate new tipping point | |
plt.axvline(x=tipping_year_5m, color='gray', linestyle=':', label='Tipping Point') | |
plt.annotate(f'Tipping Point\n({tipping_year_5m:.2f})', xy=(tipping_year_5m, tipping_value_5m), | |
xytext=(tipping_year_5m+0.2, tipping_value_5m*1.1), | |
arrowprops=dict(facecolor='black', arrowstyle='->')) | |
plt.title('DOT Inflation vs Coretime Burn (2025–2030, 5M Start)') | |
plt.xlabel('Year') | |
plt.ylabel('DOT per Year') | |
plt.legend() | |
plt.grid(True) | |
plt.tight_layout() | |
plt.show() |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment