ポートフォリオの定義、制約、目的

Rで学ぶ中級ポートフォリオ分析

Ross Bennett

Instructor

ワークフロー概要

PortfolioAnalytics による一般的な最適化ワークフロー:

  • ポートフォリオの定義

  • 制約と目的の追加

  • 最適化の実行

  • 結果の分析

Rで学ぶ中級ポートフォリオ分析

ワークフロー: ポートフォリオ定義

portfolio.spec(assets = NULL, ...)

# 資産の文字ベクトル
portfolio.spec(assets = c("SP00", "DJIA", "Nasdaq", "FTSE100", "DAX", "CAC40"))

# 初期比率付きの資産の名前付きベクトル
initial_weights <- c("SP500" = 0.5, "FTSE100" = 0.3, "NIKKEI" = 0.2)
portfolio.spec(assets = initial_weights)

# 資産数のスカラー
portfolio.spec(assets = 4)
Rで学ぶ中級ポートフォリオ分析
add.constraint(portfolio,
               type = c("weight_sum", "box", "full_investment",...),
               ...)
# ポートフォリオ定義の初期化
p <- portfolio.spec(assets = 4)

# 全額投資制約の追加
p <- add.constraint(portfolio = p, type = "weight_sum",
                    min_sum = 1, max_sum = 1)

# ボックス制約の追加
p <- add.constraint(portfolio = p, type = "box", 
                    min = 0.2, max = 0.6)
Rで学ぶ中級ポートフォリオ分析
add.objective(portfolio, 
              type = c("return", "risk", ...), 
              name, 
              arguments = NULL,
              ... )
# ポートフォリオ定義の初期化
p <- portfolio.spec(assets = 4)
# 期待リターン(平均)の目的を追加
p <- add.objective(portfolio = p, type = "return",name = "mean")              

# 期待ショートフォール(ES)のリスク目的を追加
p <- add.objective(portfolio = p, type = "risk", name = "ES", 
                   arguments = list(p= 0.9, method = "gaussian")
Rで学ぶ中級ポートフォリオ分析

演習に進みましょう

Rで学ぶ中級ポートフォリオ分析

Preparing Video For Download...