Voeg aandelen-DataFrames samen en bereken rendementen
Onze eerste stap richting het berekenen van modern portfolio theory (MPT)-portefeuilles is het ophalen van dagelijkse en maandelijkse rendementen. Uiteindelijk gaan we de beste portefeuilles van elke maand bepalen op basis van de Sharpe-ratio. De makkelijkste manier is om al onze aandelenkoersen in één DataFrame te zetten en ze daarna te resamplen naar dagelijkse en maandelijkse tijdvakken. We hebben dagelijkse koersveranderingen nodig om de volatiliteit te berekenen, die we gebruiken als onze maat voor risico.
Deze oefening maakt deel uit van de cursus
Machine Learning voor finance in Python
Oefeninstructies
- Voeg
lng_df,spy_dfensmlv_dfsamen metpd.concat()tot het DataFramefull_df. - Resample
full_dfnaar Business Month Start-frequentie ('BMS'). - Haal de dagelijkse procentuele verandering van
full_dfop met.pct_change().
Interactieve oefening met praktijkervaring
Probeer deze oefening door deze voorbeeldcode aan te vullen.
# 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())