1. 学ぶ
  2. /
  3. コース
  4. /
  5. Rで学ぶ中級ポートフォリオ分析

Connected

演習

制約を追加する

制約は add.constraint() 関数でポートフォリオ仕様オブジェクトに追加します。追加された各制約は独立したオブジェクトで、ポートフォリオオブジェクトの constraints スロットに保存されます。これにより制約はモジュール化され、ポートフォリオオブジェクト内で簡単に追加・削除・変更できます。add.constraint() の必須引数は、制約を追加する portfolio、制約の type、そして ... で各制約タイプのコンストラクタに渡す名前付き引数です。

基本的な制約タイプ:

  • ウェイトの合計に対する制約を指定
    • weight_sum、weight、leverage
    • full_investment は特例で、min_sum = max_sum = 1 を設定します
    • dollar_neutral は特例で、min_sum = max_sum = 0 を設定します
  • 個別資産のウェイトに対する制約を指定
    • box
    • long_only は特例で、min = 0 と max = 1 を設定します
  • グループ(セクター、地域、アセットクラスなど)ごとのウェイト合計に対する制約を指定
    • group
  • 目標平均リターンに対する制約を指定
    • return

この演習では、より一般的に使われる制約タイプをいくつか追加します。上記の基本制約タイプに加えて、PortfolioAnalytics ではポジション数上限、ターンオーバー、分散化、ファクターエクスポージャー、レバレッジエクスポージャーといった制約タイプもサポートしています。これらの制約タイプに興味があれば、各制約コンストラクタのヘルプを参照してください。ヘルプには制約タイプの説明とサンプルコードが含まれています。

指示

100 XP
  • weight_sum 制約を追加し、ウェイト合計の最小値を 1、最大値を 1 に設定します。
  • box 制約を追加し、最初の5資産の最小ウェイトを 10%、残りの資産の最小ウェイトを 5% に設定します。すべての資産の最大ウェイトは 40% にします。
  • group 制約を追加し、資産 1、5、7、9、10、11 を第1グループ、資産 2、3、4、6、8、12 を第2グループに指定します。各グループの最小ウェイトを 40%、最大ウェイトを 60% に設定します。