mercoledì 29 gennaio 2025

Rendimento annuale stabile e modesto per BTC?!

Vi propongo di seguito un'analisi che mostra dal 2018 ad oggi il prezzo del BTC e il suo rendimento annuo calcolato in continuo.

Negli ultimi anni si nota abbastanza stabile rispetto al passato intorno al 100%-150% annuo circa):

 

 

 Codice Python usato per calcolarlo:

# Creazione del grafico prezzo BTC
display_date4 = '2018-01-01'

stocks_2 = stocks.loc[stocks.index >= display_date4]

plt.figure(figsize=(12, 6))
plt.plot(stocks_2.index, stocks_2['BTC-USD'], label='BTC Price', color='blue', linewidth=1)

# Personalizzazione del grafico
plt.title('BTC Price', fontsize=16)
plt.xlabel('Data', fontsize=12)
plt.ylabel('Price ($)', fontsize=12)
plt.legend(loc='upper left', fontsize=12)
plt.grid(alpha=0.4)

# Mostrare il grafico
plt.tight_layout()


# Calcolo dei rendimenti rolling annualizzati (365 giorni)

rol_window2 = 365  # Impostare 365 per rendimento annuale, 30 per mensile, 7 per settimanale,...

ptf_3 = pd.DataFrame()
ptf_3['Roll_Return_Btc'] = (
    (1 + btc_returns).rolling(window=rol_window2).apply(lambda x: x.prod(), raw=True) - 1
)

ptf_3 = ptf_3.loc[ptf_3.index >= display_date4].dropna()

# Creazione del grafico
plt.figure(figsize=(12, 6))
plt.plot(ptf_3.index, ptf_3['Roll_Return_Btc'], label='Bitcoin', color='green', linewidth=1)

# Personalizzazione del grafico
plt.title('Rendimenti rolling Bitcoin', fontsize=16)
plt.xlabel('Data', fontsize=12)
plt.ylabel('Rendimento', fontsize=12)
plt.axhline(0, color='red', linestyle='--', linewidth=1, label='Zero')
plt.legend(loc='upper left', fontsize=12)
plt.grid(alpha=0.4)

# Mostrare il grafico
plt.tight_layout()
plt.show()