Unisci i DataFrame dei titoli e calcola i rendimenti
Il primo passo per calcolare portafogli secondo la modern portfolio theory (MPT) è ottenere i rendimenti giornalieri e mensili. In seguito troveremo i portafogli migliori di ogni mese in base allo Sharpe ratio. Il modo più semplice è inserire tutti i nostri prezzi azionari in un unico DataFrame, quindi effettuare un resampling alle frequenze giornaliera e mensile. Ci servono le variazioni di prezzo giornaliere per calcolare la volatilità, che useremo come misura del rischio.
Questo esercizio fa parte del corso
Machine Learning per la finanza in Python
Istruzioni dell'esercizio
- Unisci
lng_df,spy_dfesmlv_dfusandopd.concat()nel DataFramefull_df. - Esegui il resampling di
full_dfalla frequenza Business Month Start ('BMS'). - Ottieni la variazione percentuale giornaliera di
full_dfcon.pct_change().
esercizio interattivo pratico
Prova questo esercizio completando questo codice di esempio.
# Join 3 stock dataframes together
full_df = pd.concat(____, axis=1).dropna()
# Resample the full dataframe to monthly timeframe
monthly_df = full_df.resample(____).first()
# Calculate daily returns of stocks
returns_daily = ____
# Calculate monthly returns of the stocks
returns_monthly = monthly_df.pct_change().dropna()
print(returns_monthly.tail())