Spécification de portefeuille, contraintes et objectifs

Analyse de portefeuille intermédiaire en R

Ross Bennett

Instructor

Aperçu du flux de travail

Enchaînement général d'optimisation de portefeuille dans PortfolioAnalytics :

  • Spécifier le portefeuille

  • Ajouter des contraintes et des objectifs

  • Lancer l'optimisation

  • Analyser les résultats

Analyse de portefeuille intermédiaire en R

Flux de travail : spécifier le portefeuille

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

# Vecteur de caractères d'actifs
portfolio.spec(assets = c("SP00", "DJIA", "Nasdaq", "FTSE100", "DAX", "CAC40"))

# Vecteur nommé d'actifs avec pondérations initiales
initial_weights <- c("SP500" = 0.5, "FTSE100" = 0.3, "NIKKEI" = 0.2)
portfolio.spec(assets = initial_weights)

# Scalaire indiquant le nombre d'actifs
portfolio.spec(assets = 4)
Analyse de portefeuille intermédiaire en R
add.constraint(portfolio,
               type = c("weight_sum", "box", "full_investment",...),
               ...)
# Initialiser la spécification du portefeuille
p <- portfolio.spec(assets = 4)

# Ajouter la contrainte d'investissement total
p <- add.constraint(portfolio = p, type = "weight_sum",
                    min_sum = 1, max_sum = 1)

# Ajouter une contrainte de boîte
p <- add.constraint(portfolio = p, type = "box", 
                    min = 0.2, max = 0.6)
Analyse de portefeuille intermédiaire en R
add.objective(portfolio, 
              type = c("return", "risk", ...), 
              name, 
              arguments = NULL,
              ... )
# Initialiser la spécification du portefeuille
p <- portfolio.spec(assets = 4)
# Ajouter l'objectif de rendement moyen
p <- add.objective(portfolio = p, type = "return",name = "mean")              

# Ajouter l'objectif de risque d'Expected Shortfall
p <- add.objective(portfolio = p, type = "risk", name = "ES", 
                   arguments = list(p= 0.9, method = "gaussian")
Analyse de portefeuille intermédiaire en R

Passons à la pratique !

Analyse de portefeuille intermédiaire en R

Preparing Video For Download...