Pythonで学ぶ定量的リスク管理
Jamsheed Shorish
Computational Economist


注意: $f(x)$ はポートフォリオの損失の確率密度関数
PyPortfolioOpt: 目的を CVaR 最小化に設定可能
returns{{1}} で EfficientCVaR オブジェクトを作成.min_cvar() メソッドで最適ウエイトを計算
ec = pypfopt.efficient_frontier.EfficientCVaR(None, returns)optimal_weights = ec.min_cvar()
ef = EfficientFrontier(None, e_cov)min_vol_weights = ef.min_volatility()print(min_vol_weights)
{'Citibank': 0.0,
'Morgan Stanley': 5.0784330940519306e-18,
'Goldman Sachs': 0.6280157234640608,
'J.P. Morgan': 0.3719842765359393}
ec = pypfopt.efficient_frontier.EfficientCVaR(None, returns) min_cvar_weights = ec.min_cvar()print(min_cvar_weights)
{'Citibank': 0.0,
'Morgan Stanley': 0.0,
'Goldman Sachs': 0.669324359403484,
'J.P. Morgan': 0.3306756405965026}
Pythonで学ぶ定量的リスク管理