Ajouter des objectifs
Les objectifs s’ajoutent à l’objet portefeuille avec la fonction add.objective(). Chaque objectif ajouté est un objet distinct et est stocké dans l’emplacement objectives de l’objet de spécification de portefeuille. Ainsi, les objectifs sont modulaires et vous pouvez facilement ajouter, supprimer ou modifier les objets objectifs. L’argument name doit être une fonction R valide. Plusieurs fonctions sont disponibles dans le package PerformanceAnalytics, mais des fonctions définies par l’utilisateur peuvent également être utilisées comme fonctions objectif. Les arguments requis pour add.objective() sont le portfolio auquel l’objectif est ajouté, le type de l’objectif, le name de l’objectif, ainsi que des arguments nommés passés via ... au constructeur du type d’objectif. Les arguments de la fonction objectif sont fournis sous forme de liste nommée à arguments.
Types d’objectifs de base :
return: ce type d’objectif cherche à maximiser l’objectif.risk: ce type d’objectif cherche à minimiser l’objectif.risk_budget: ce type d’objectif cherche à minimiser la concentration du risque ou à pénaliser la contribution au risque qui dépasse le pourcentage minimal ou maximal autorisé de contribution au risque.
En plus des types d’objectifs listés ci-dessus, PortfolioAnalytics prend également en charge l’utilité quadratique et les objectifs de concentration des pondérations. Si vous souhaitez en savoir plus sur les autres types de contraintes, consultez les fichiers d’aide des constructeurs de contraintes. Les fichiers d’aide incluent une description du type de contrainte ainsi que des exemples de code.
Cet exercice fait partie du cours
Analyse de portefeuille intermédiaire en R
Instructions
- Ajoutez un objectif de rendement à l’objet de spécification de portefeuille
port_specque vous avez créé dans un exercice précédent. - Ajoutez à
port_specun objectif de risque visant à minimiser l’écart-type du portefeuille. - Ajoutez à
port_specun objectif de budget de risque où le risque est défini comme l’écart-type des composantes. Fixez le pourcentage minimal de risque à 5 % et le pourcentage maximal de risque à 10 %. - Affichez l’objet
port_spec.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# Add a return objective to maximize mean return
port_spec <- add.objective(portfolio = ___, type = ___, name = ___)
# Add a risk objective to minimize portfolio standard deviation
port_spec <- add.objective(portfolio = ___, type = ___, name = ___)
# Add a risk budget objective
port_spec <- add.objective(portfolio = ___, type = ___, name = ___, min_prisk = ___, max_prisk = ___)
# Print the portfolio specification object