Slå ihop aktie-DataFrames och beräkna avkastning
Det första steget mot att beräkna portföljer enligt modern portföljteori (MPT) är att hämta daglig och månatlig avkastning. Målet är att identifiera de bästa portföljerna för varje månad baserat på Sharpe-kvoten. Det enklaste sättet är att samla alla aktiekurser i ett DataFrame, och sedan sampla om dem till dagliga och månatliga tidsintervall. Vi behöver dagliga prisförändringar för att beräkna volatilitet, vilket vi använder som vårt riskmått.
Den här övningen är en del av kursen
Maskininlärning för finans i Python
Övningsinstruktioner
- Slå ihop
lng_df,spy_dfochsmlv_dfmedpd.concat()till DataFrame:enfull_df. - Sampla om
full_dftill frekvensen Business Month Start ('BMS'). - Beräkna den dagliga procentuella förändringen för
full_dfmed.pct_change().
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# 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())