合併股票 DataFrame 並計算報酬率
要計算現代投資組合理論(MPT)的投資組合,第一步是取得日與月的報酬率。接下來我們會根據夏普比率找出每個月的最佳投資組合。最簡單的方法是先把所有股票價格放進同一個 DataFrame,然後重取樣為日頻與月頻。我們需要每日價格變動來計算波動度,這會作為我們衡量風險的指標。
本練習屬於課程
Python 金融 Machine Learning
練習說明
- 使用
pd.concat()將lng_df、spy_df與smlv_df合併成full_dfDataFrame。 - 將
full_df重取樣為 Business Month Start('BMS')頻率。 - 使用
.pct_change()取得full_df的每日百分比變化。
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
# 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())