introduction
Dans cet article, Nous apprendrons les concepts de gestion de portefeuille et les implémenterons en utilisant les bibliothèques Python.
L'article est divisé en trois parties afin de couvrir les fondamentaux de la gestion de portefeuille comme indiqué ci-dessous:
1. Rendement d'un actif et d'un portefeuille
2. Risque associé à un actif et à un portefeuille
3. La théorie moderne du portefeuille: trouver le portefeuille optimal
Rendement d'un actif et d'un portefeuille
Avant de nous plonger dans le calcul des rendements d'un actif et d'un portefeuille, visitons brièvement la définition du portefeuille et des rendements.
mallette: Un portefeuille est un ensemble d'instruments financiers tels que des actions, obligations, matières premières, Trésorerie et équivalents de trésorerie, ainsi que leurs contreparties de fonds. [Investopedia]
Dans cet article, nous aurons notre portefeuille qui contient 4 les atouts ("Portefeuille axé sur les actions"): Actions d'Apple Inc., Nike (NKC), Google et Amazon. L'aperçu de nos données est présenté ci-dessous:
Retour: Désigne le gain ou la perte de nos actifs / portefeuille pour une durée déterminée. Dans cette analyse, nous effectuons un retour sous forme de variation en pourcentage du cours de clôture de l'actif par rapport au cours de clôture de la veille. Nous calculerons les rendements en utilisant.pct_change () fonction en python.
Vous trouverez ci-dessous le code Python pour faire de même et le 5 rangées du haut (entête) des retours
Noter: la première ligne est nulle s'il n'y a pas de ligne précédente pour faciliter le calcul de la variation en pourcentage.
Retourner un portefeuille est défini comme la somme pondérée des rendements des actifs du portefeuille.
Démontrer comment calculer les performances d'un portefeuille en Python, initialisons les poids au hasard (que nous optimiserons ensuite). Le rendement du portefeuille est calculé comme indiqué dans le code ci-dessous et l'en-tête des rendements du portefeuille est également affiché:
Nous avons vu comment calculer les rendements, Passons maintenant à un autre concept: Risque
Le risque lié aux actifs et au portefeuille
La méthode pour calculer le risque d'un portefeuille est écrite ci-dessous et plus tard nous expliquons et donnons la formulation mathématique pour chacune des étapes:
- Calculer la matrice de covariance sur les données de performance.
- Annualisez la covariance en multipliant par 252
- Calculer la variance du portefeuille en la multipliant par des vecteurs de poids.
- Calculer la racine carrée de la variance calculée ci-dessus pour obtenir l'écart type. Cet écart type est appelé volatilité du portefeuille..
La formule pour calculer la covariance et l'annualiser est:
covariance = retours.cov () * 252
comment est-il 252 jours ouvrables, on multiplie la covariance par 252 pour l'annualiser.
La variation du portefeuille, à calculer à l'étape 3 antérieur, dépend de la pondération des actifs du portefeuille et se définit comme:
où,
- Lesmallette est la matrice de covariance du portefeuille
- pondérations est le vecteur des pondérations attribuées à chaque actif du portefeuille
Vous trouverez ci-dessous l'approche pour calculer le risque des actifs en Python.
Comme expliqué ci-dessus, on multiplie la matrice de covariance par 252, puisqu'il y a 252 jours de bourse dans une année.
Les éléments diagonaux de varnce_matrix représentent la variance de chaque actif, tandis que les termes hors diagonale représentent la covariance entre les deux actifs, par exemple: l'élément (1,2) représente la covariance entre Nike et Apple.
Le code pour calculer le risque de portefeuille en python, dont nous avons vu la méthode plus haut, est comme indiqué:
À présent, la tâche pour nous est d'optimiser les poids. Parce que? Afin que nous puissions maximiser notre rendement ou minimiser notre risque, Et nous le faisons en utilisant la théorie moderne du portefeuille !!
La théorie moderne du portefeuille
La théorie moderne du portefeuille soutient que les caractéristiques de risque et de rendement d'un investissement ne doivent pas être considérées seules, Ils doivent plutôt être évalués en fonction de la manière dont l'investissement affecte le risque global et le rendement du portefeuille.. MPT montre qu'un investisseur peut construire un portefeuille de plusieurs actifs qui maximiseront les rendements pour un niveau de risque donné.. en outre, étant donné un niveau souhaité de rendement attendu, un investisseur peut construire un portefeuille avec le risque le plus faible possible. Basé sur des mesures statistiques telles que la variance et la corrélation, la performance d'un investisseur individuel est moins importante que son impact sur l'ensemble du portefeuille. [Investopedia]
Cette théorie est résumée dans ce qui suit chiffre"Chiffre" est un terme utilisé dans divers contextes, De l’art à l’anatomie. Dans le domaine artistique, fait référence à la représentation de formes humaines ou animales dans des sculptures et des peintures. En anatomie, désigne la forme et la structure du corps. En outre, en mathématiques, "chiffre" Il est lié aux formes géométriques. Sa polyvalence en fait un concept fondamental dans de multiples disciplines..... Nous trouvons la frontière comme indiqué ci-dessous et maximisons le rendement attendu pour le niveau de risque ou minimisons le risque pour un niveau de rendement attendu donné.
Notre objectif est de choisir les pondérations de chaque actif de notre portefeuille afin de maximiser le rendement attendu compte tenu d'un niveau de risque..
Mathématiquement, la fonction objectif peut être définie comme indiqué ci-dessous:
Une autre façon de considérer la frontière efficace et la fonction objectif est que nous pouvons minimiser le risque étant donné que le rendement attendu est au moins supérieur à la valeur donnée.. Mathématiquement, cette fonction objectif peut s'écrire:
la première ligne représente que l'objectif est de minimiser la variance du portefeuille, c'est-à-dire, à son tour la volatilité du portefeuille et, pourtant, minimiser les risques.
Restreint implique que les rendements doivent être supérieurs à un rendement cible particulier, tous les poids doivent s'additionner 1 et les poids ne doivent pas être négatifs.
Maintenant que nous connaissons le concept, Passons maintenant à la partie pratique!
En premier lieu, nous créons la frontière efficace en exécutant une boucle. Dans chaque cycle, nous considérons un ensemble différent de pondérations attribuées au hasard pour les actifs de notre portefeuille et calculons le rendement et la volatilité pour cette combinaison de pondérations.
Pour cela nous créons 3 listes vides, un pour stocker les retours, un autre pour stocker la volatilité et le dernier pour stocker les pondérations du portefeuille.
Une fois que nous avons créé les listes, nous générons aléatoirement les poids de nos actifs à plusieurs reprises, puis on normalise la pondération pour ajouter 1. Ensuite, nous calculons les rendements de la même manière que nous avons calculé ci-dessus. Ensuite, on calcule la variance du portefeuille puis on prend la racine carrée puis on l'annualise pour obtenir la volatilité, la mesureLa "mesure" C’est un concept fondamental dans diverses disciplines, qui fait référence au processus de quantification des caractéristiques ou des grandeurs d’objets, phénomènes ou situations. En mathématiques, Utilisé pour déterminer les longueurs, Surfaces et volumes, tandis qu’en sciences sociales, il peut faire référence à l’évaluation de variables qualitatives et quantitatives. La précision des mesures est cruciale pour obtenir des résultats fiables et valides dans toute recherche ou application pratique.... Risque pour notre portefeuille.
Maintenant, nous agrégeons les données dans un dictionnaire, puis créons un bloc de données pour voir la combinaison des pondérations des actifs et les rendements et la volatilité correspondants qu'ils génèrent..
Voici l'aperçu des données de rentabilité, volatilité et pondération du portefeuille.
Maintenant, nous avons tout avec nous pour entrer dans le dernier tour de cette course et trouver le jeu de poids optimal !!
Nous traçons la volatilité par rapport aux rendements que nous avons calculés précédemment, cela nous donnera la frontière efficace que nous voulions créer au début de cet article.
Et c'est reparti!!
Maintenant que nous avons la frontière efficace avec nous, trouvons les poids optimaux.
Nous pouvons optimiser l'utilisation de diverses méthodes décrites ci-dessous.:
- Portefeuille avec une volatilité minimale (risque)
- Portefeuille optimal (Ratio maximal de Sharpe)
- Rendement maximal au niveau de risque; Risque minimal à un niveau de rendement attendu; Portefeuille avec le ratio Sortino le plus élevé
Dans cet article, je vais optimiser à travers les deux premières approches. Dans le troisième segment, le « rendement maximal à un niveau de risque’ et le « risque minimum à un niveau de rendement attendu’ ils sont assez simples, tandis que celui basé sur le indiceLe "Indice" C’est un outil fondamental dans les livres et les documents, qui vous permet de localiser rapidement les informations souhaitées. Généralement, Il est présenté au début d’une œuvre et organise les contenus de manière hiérarchique, y compris les chapitres et les sections. Sa préparation correcte facilite la navigation et améliore la compréhension du matériau, ce qui en fait une ressource incontournable tant pour les étudiants que pour les professionnels dans divers domaines.... est similaire à l’indice de Sharpe.
1. Volatilité minimale
Pour trouver la combinaison de volatilité minimale, nous sélectionnons la ligne de notre bloc de données qui correspond à la variance minimale et trouvons cette ligne à l'aide de la fonction .idxmin (). Le code pour faire la même chose est montré ci-dessous:
Les poids que nous en tirons sont:
À présent, découvrir où se trouve le point de volatilité le plus bas sur la courbe ci-dessus. La réponse s'affiche à la fin! Mais ne triche pas!
2. Rapport de netteté plus élevé
L'indice Sharpe est le rendement moyen obtenu au-delà du taux sans risque par unité de volatilité ou de risque total.. La formule utilisée pour calculer le ratio de Sharpe est donnée ci-dessous:
Rapport de netteté = (Rpage – RF)/ DAKOTA DEL SURpage
où,
- Rpage est le rendement du portefeuille
- RF est le taux sans risque
- Dakota del Surpage est l'écart type des rendements du portefeuille
Le code pour calculer le portefeuille le plus optimal, c'est-à-dire, portefeuille avec l'indice Sharpe le plus élevé, indiqué ci-dessous:
Ensuite, Les pondérations du portefeuille qui donnent l'indice Sharpe le plus élevé sont indiquées:
Découvrez où se trouve le point de relation de Sharpe le plus élevé sur la courbe ci-dessus. La réponse est montrée ci-dessous! Une fois de plus, ne pas tricher!
Comme promis voici la réponse aux deux questions ci-dessus !!
L'étoile bleue correspond au point de relation de Sharpe le plus élevé et l'étoile jaune correspond au point de volatilité minimale.
À présent, avant de finir cet article, Je vous encourage à trouver le portefeuille Maximum Return à un niveau de risque et’ Risque minimum à un niveau de rentabilité attendu 'et les marquer dans le graphique précédent.
En plus d'utiliser la relation de Sharpe, nous pouvons également optimiser le portefeuille à l'aide de la relation Sortino.
Faire un brief à ce sujet:
Les Relation Sortino est une variation de l'indice Sharpe qui différencie la volatilité nuisible de la volatilité globale en utilisant l'écart type des actifs des rendements négatifs du portefeuille (écart à la baisse) plutôt que l'écart type total des rendements du portefeuille. Le ratio de Sortino prend le rendement d'un actif ou d'un portefeuille et soustrait le taux sans risque, puis diviser ce montant par la dérive à la baisse de l'actif. [Investopedia]
Taux de tri = (Rpage – rF)/ DAKOTA DEL SURré
où,
- Rpage est le rendement du portefeuille
- rF est le taux sans risque
- Dakota del Surré est l'écart type du handicap
Si vous avez des difficultés à mettre en œuvre ou à comprendre les 3 méthodes d'optimisation que j'ai décrites ci-dessus, écris-moi à [email protégé] | [email protégé] | ou contactez LinkedIn sur https://www.linkedin.com/in/parth-tyagi-4b867452/
Remarque sur l'auteur: Parth Tyagi étudie actuellement le PGDBA à l'IIM Calcutta, IIT Kharagpur & Indian Statistical Institute-Kolkata et a terminé le B.Tech de l'IIT Delhi. A ~ 4 années d'expérience de travail dans l'analytique avancée.
Les médias présentés dans cet article d'optimisation de portefeuille Python ne sont pas la propriété de DataPeaker et sont utilisés à la discrétion de l'auteur.