MSRポートフォリオ
最大シャープレシオ、つまり MSR ポートフォリオは、効率的フロンティアの頂点に位置し、最も高いシャープレシオを持つポートフォリオを探すことで構築できます。
ただし、MSRポートフォリオはしばしば不安定です。過去に高いシャープレシオだったとしても、今後も良好なシャープレシオが維持されるとは限りません。
この演習はコースの一部です
Pythonで学ぶポートフォリオ・リスク管理入門
演習の手順
RandomPortfoliosをシャープ値が最も高い順(降順)に並べ替えます。MSR_weights_arrayをStockReturnsの各行に掛けて、加重した株式リターンを計算します。- 最後に、時系列の累積リターンのプロットを確認します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Sort the portfolios by Sharpe ratio
sorted_portfolios = RandomPortfolios.____(by=['Sharpe'], ascending=____)
# Extract the corresponding weights
MSR_weights = sorted_portfolios.iloc[0, 0:numstocks]
# Cast the MSR weights as a numpy array
MSR_weights_array = np.array(MSR_weights)
# Calculate the MSR portfolio returns
StockReturns['Portfolio_MSR'] = StockReturns.iloc[:, 0:numstocks].mul(____, axis=1).sum(axis=1)
# Plot the cumulative returns
cumulative_returns_plot(['Portfolio_EW', 'Portfolio_MCap', 'Portfolio_MSR'])