Analyse de portefeuille intermédiaire en R
Ross Bennett
Instructor
Résoudre un problème d'optimisation de portefeuille semblable à ceux de l'industrie
Appliquer les techniques vues dans le cours
Définir un portefeuille avec contraintes et objectifs
Lancer l'optimisation avec rééquilibrage périodique sur des données historiques
Analyser les résultats
Raffiner les contraintes, les objectifs et les estimations des moments
Données
Rendements mensuels des indices alternatifs EDHEC-Risk {6}
Janv. 1997 – mars 2016
data(indexes) returns <- indexes[,1:4]# Equal weight benchmark n <- ncol(returns) equal_weights <- rep(1 / n, n) benchmark_returns <- Return.portfolio(R = returns, weights = equal_weights, rebalance_on = "years") colnames(benchmark_returns) <- "benchmark"# Benchmark performance table.AnnualizedReturns(benchmark_returns)
benchmark
Annualized Return 0.0775
Annualized Std Dev 0.1032
Annualized Sharpe (Rf=0%) 0.7509
Définir une spécification de portefeuille qui servira de cas de base
La spécification de base vise une approche simple, contraintes souples et objectifs de base
# Base portfolio specification
base_port_spec <- portfolio.spec(assets = colnames(returns))
base_port_spec <- add.constraint(portfolio = base_port_spec,
type = "full_investment")
base_port_spec <- add.constraint(portfolio = base_port_spec,
type = "long_only")
base_port_spec <- add.objective(portfolio = base_port_spec,
type = "risk", name = "StdDev")
Analyse de portefeuille intermédiaire en R