390 likes | 509 Views
Module Technologies Emergentes 1. Aide à la décision en finance 18 février 2003 Luca De Dominicis (ECP 2001 - Politecnico di Milano). A - Introduction. Présentation luca.de.dominicis@mazars.fr Mode de fonctionnement Rappels théoriques Etude de cas : problème ouvert à plusieurs solutions
E N D
Module Technologies Emergentes 1 Aide à la décision en finance 18 février 2003 Luca De Dominicis(ECP 2001 - Politecnico di Milano)
A - Introduction • Présentation • luca.de.dominicis@mazars.fr • Mode de fonctionnement • Rappels théoriques • Etude de cas : • problème ouvert à plusieurs solutions • recherche commune des solutions • implémentation commune d’un Algorithme Génétique • Discussion ouverte sur l’application • Objectifs • vous montrer une application réelle • susciter votre intérêt • stimuler votre réflexion • vous faire poser des questions sur les technologies émergentes • Questions • qui peut m’expliquer en deux mots le fonctionnement des AG ?
Plan de la présentation A - Introduction B - Rappel sur les Algorithmes Génétiques • Introduction • Algorithme • Caractéristiques principales • Avantages et inconvénients • Nomenclature C - Etude de cas • Le problème • Les solutions • La solution par Algorithmes Génétiques D - Conclusions
Module Technologies Emergentes 1 Rappel sur les Algorithmes Génétiques
B - Rappel sur les Algorithmes Génétiques « How poor will be the results of man, compared with those accumulated by Nature during whole geological periods ! » C. Darwin Les algorithmes génétiques s’inspirent du fonctionnement présumé du vivant, et plus spécifiquement des mécanismes darwiniens de l’évolution, pour construire à partir d’une population donnée (générée aléatoirement) un individu meilleur au sens d’un critère prédéterminé.
B - Rappel sur les Algorithmes Génétiques • L’idée fondamentale est la suivante : le pool génétique d’une population donnée contient potentiellement la solution, ou plutôt une meilleure solution, à un problème adaptatif donné. Cette solution n’est pas exprimée car la combinaison génétique sur laquelle elle repose est dispersée chez plusieurs individus. Ce n’est que par l’association de ces combinaisons génétiques au cours des croisements entre individus que la solution pourra s’exprimer. • Les individus générés aléatoirement représentent donc chacun un chromosome, chacun composé de gènes codés en binaire. Les croisements entre chromosomes permettent d’échanger les gènes et donc de créer des individus nouveaux. Ces croisements se font de manière aléatoire, mais de façon à permettre la convergence vers une solution optimale. n=n+1 Population initiale (Random) Evaluation Sélection Opérateurs : • Croisement • Mutation Non Fin ? Oui Résultats
B - Rappel sur les Algorithmes Génétiques • Les algorithmes génétiques sont une méthode de recherche de maximum qui a les caractéristiques énumérées ci-dessus, notamment : • Ils traitent une fonction quelconque, la seule contrainte étant d’en pouvoir calculer la valeur en tous les points du domaine de définition ; • Ils sont une méthode de recherche rapide : ils consentent d’arriver à des résultats comparables à l’exploration exhaustive de l’espace de définition en réduisant le temps de calcul de plusieurs ordres de grandeur ; • Ils sont une méthode de recherche globale : tous les points de l’espace de définition ont la même probabilité a priori d ’être testés.
B - Rappel sur les Algorithmes Génétiques • Le but • Recherche du maximum global d’une fonction… • …de plusieurs variables… • …éventuellement non linéaire… • …sous contraintes. • Les avantages • La vitesse de convergence • Le petit nombre d’informations nécessaires • Les inconvénients • Impossibilité de démontrer les résultats obtenus
B - Rappel sur les Algorithmes Génétiques • Pour la suite, les notions suivantes sont à retenir : • chromosome = individu • gène = partie constitutive d’un chromosome • population = collection d’individus (la population est classée une fois que les individus ont pu être classés sur la base du critère donné) • génération : une population est projetée sur plusieurs générations (la population initiale est générée de manière aléatoire) • sélection, croisement, replacement, mutations = opérateurs qui permettent de passer d’une génération à l ’autre, tout en améliorant la population en base au critère donné.
Module Technologies Emergentes 1 Etude de Cas
C - Etude de Cas • Le problème est le suivant : • un investisseur privé … • … détient un capital de 1000€ à la date T … • … il veut placer son capital en instruments d ’investissement tels que actions, obligations, immobilier, etc. afin de : • MAXIMISER le rendement de son capital tout en MINIMISANT le risque associé (risque de ne pas atteindre le rendement souhaité, voire de perdre tout ou partie de son capital) • Cet investisseur vient nous voir en nous demandant comment repartir son capital entre les différents instruments afin d’atteindre au mieux son objectif en fonction de la durée de son placement • Question : • Comment peut-on résoudre le problème de l’investisseur ?
Espace d’arrivée (nombre de dimensions dépendant des règles d’optimisation) FONCTION OBJECTIF Espace des allocations (autant de dimensions que le nombre de classes d’actif) C - Etude de Cas • Question : • Comment peut-on résoudre le problème de l’investisseur ? • Reformulons le problème en termes mathématiques : • il s’agit de maximiser la fonction f(x1, x2, …, xn), appelée fonction objectif • Problèmes : • optimisation multi-objectif dans un espace non normé • nombre de variables potentiellement élevé • simulation des actifs préférablement stochastique
C - Etude de Cas - Solution 1 • Solution 1 : approche analytique déterministe • on prend des hypothèses sur l’évolution des classes d ’actifs • on en tire un indicateur (ex. : l’espérance historique moins la volatilité annuelle) : • on peut en tirer des conclusions directement par une simple analyse du graphique.
C - Etude de Cas - Solution 1 • Solution 1 : approche analytique déterministe • avantages • rapidité • simplicité de résolution • simplicité de lecture des résultats • inconvénients • absence de corrélations entre les actifs => un des principes fondamentaux de la finance (les avantages de la diversification) n ’est pas pris en compte • hypothèse de normalité des distributions (à la base d ’un calcul moyenne-variance). En réalité, ce sont des distributions à queues épaisses et l’hypothèse faite minimise (parfois brutalement) le risque réel • dépendance des résultats de l’indicateur choisi (par exemple, si je choisis la moyenne tout court, la classe action surperforme toujours les autres, voir le slide suivant)
C - Etude de Cas - Solution 2 • Solution 2 : approche analytique déterministe multiobjectif • on prend des hypothèses sur l’évolution des classes d’actifs (moyenne, variance de chaque classe) • il apparaît tout de suite que critères différents donnent des résultats opposés : donc, nous devons introduire une mesure dans l ’espace des objectifs. Comment ? Quelle mesure ?
Critère 2 Critère 2 3 6 4 2 6 5 5 1 4 3 2 1 Critère 1 Critère 1 C - Etude de Cas - Solution 2 • Solution 2 : optimisation multiobjectifs • … quelques techniques : • on lie les objectifs par une fonction, par exemple : • F(objectif1 ; objectif2) = F(objectif1) + F(objectif2) • problème : dans l ’espace des objectif, les solutions faisant partie des droites ci-dessous auront la même valeur … • on fait une optimisation au sens de Pareto : on prend comme optimale tout point de l ’espace d ’arrivée qui n ’est pas dominé en même temps sur les deux objectifs : • problème : l ’ensemble des solution optimales peut devenir si vaste qu ’il sera impossible de choisir entre elles. On ne fait que retarder le processus d ’optimisation
C - Etude de Cas - Solution 2 • Solution 2 : optimisation multiobjectifs • … notre solution : nous rechercherons à optimiser un seul objectif, mais considérerons une contrainte sur l ’autre, c ’est à dire : • soit nous rechercherons le rendement maximum sous contrainte de limiter le risque • soit nous rechercherons le risque minimum sous contrainte d ’avoir un rendement donné • cette approche permet, au niveau de l ’utilisateur de l ’optimisation, de fixer les rôles entre lui et le décideur (dans ce cas, l ’investisseur) : en effet, le décideur doit prendre d ’abord la décision (entre les deux possibilités, ensuite pour fixer les paramètre), ensuite l ’utilisateur du modèle (le consultant financier) transmet une seule solution, voir un nombre restreint mais regroupé autour d ’une solution. • Si on reprend l ’exemple des trois classes d ’actifs et on met à 0 les rendements associés à un risque de perdre plus de 30% du capital initial, on obtient :
C - Etude de Cas - Solution 3 • Solution 3 : approche analytique déterministe multiobjectif avec corrélations • le résultat qu ’on vient d ’obtenir est encore biaisé, au moins du fait de ne pas prendre en compte les corrélations. • insérer les corrélations revient à dire que, si s1 et s2 sont les risques associés à deux actifs, alors le risque sm présente la propriété : sm < s1 + s2 • pour prendre en compte les corrélations, on devra calculer la matrice des variances:
C - Etude de Cas - Solution 3 • Solution 3 : approche analytique déterministe multiobjectif avec corrélations • à partir de cette matrice, on peut calculer le risque associé à une allocation donnée comme suit : • on s’aperçoit que des combinaisons de ces classes pourraient donner des meilleurs résultats (en terme de couple risque - rendement) par rapport à un investissement à 100% dans une seule classe • on est alors amenés à passer d’un type de graphique (temps, fonction objectif) à un graphique où, pour un horizon donné, on déterminera le couple risque - rendement pour toute combinaison linéaire des classes d’actifs : =>
C - Etude de Cas - Solution 4 • Solution 4 : approche CAPM • le modèle CAPM (Capital Asset Pricing Model) ou MEDAF (Modèle d ’Evaluation Des Actifs Financiers) est le modèle issu de la théorie du portefeuille de Markowitz : il regroupe grand partie des aspects évoqués jusqu’ici, notamment : • prise en compte des corrélations entre classes d ’actifs • prise en compte de plusieurs objectifs, par le moyen d ’une frontière efficiente, calculée pour un horizon donné
C - Etude de Cas - Solution 4 • Solution 4 : approche CAPM • la frontière efficiente est l ’ensemble des allocations pour lesquelles on ne peut pas trouver d ’autre allocation qui ait : • un meilleur rendement pour un niveau de risque donné • un risque plus bas pour un rendement donné • la méthode CAPM consiste à tracer, pour un horizon donné, la frontière efficiente : comment trace-t-on la frontière efficiente ? • soit de manière déterministe, mais en prenant des hypothèses « lourdes » sur les distributions des rendements des classes d ’actifs • soit de manière stochastique • en tous les cas, on est obligé de calculer le couple risque - rendement pour toute allocation qu’on veuille tester
C - Etude de Cas - Résumé • D’après les tentatives de solutions montrées jusqu’ici, l’approche souhaitée devrait avoir les caractéristiques suivantes : • offrir la possibilité de faire des calculs stochastiques, pour éviter des simplification nuisibles au niveau des distributions des rendements des actifs • pouvoir optimiser une fonction qui ne s ’exprime pas de manière analytique, mais de manière récursive • pouvoir optimiser une fonction non linéaire, ou au moins sous des contraintes non linéaires (notamment, la contrainte de rendement minimum ou de risque maximum) • Un plus, serait si on pouvait augmenter au fur et à mesure le nombre de variables • en termes de classes d’actifs … • … mais aussi de contraintes temporelles : par exemple, on pourrait souhaiter de poser des contraintes non seulement sur l’année fixée comme horizon temporel, mais aussi sur les années précédentes • Avez-vous des propositions ?
Caractéristiques des Algorithmes Génétiques Caractéristiques Recherchées C - Etude de Cas - Solution AG ? • Le but • Recherche du maximum global d’une fonction… • …de plusieurs variables… • …éventuellement non linéaire… • …sous contraintes. • Les avantages • La vitesse de convergence • Le petit nombre d’informations nécessaires • Les inconvénients • Impossibilité de démontrer les résultats obtenus • L’approche souhaitée devrait avoir les caractéristiques suivantes : • offrir la possibilité de faire des calculs stochastiques • pouvoir optimiser une fonction qui ne s ’exprime pas de manière analytique • pouvoir optimiser une fonction non linéaire, ou au moins sous des contraintes non linéaires • Un plus, serait si on pouvait augmenter au fur et à mesure le nombre de variables
C - Etude de Cas - Solution AG • Mise en place d’une solution de type « Algorithmes Génétiques ». Les étapes : • 1 - Choisir la fonction objectif • 2 - Cerner les variables importantes • 3 - Déterminer par conséquent l’espace de définition de la fonction objectif • 4 - Si l ’espace de définition est continu, où si son maillage n ’est pas le maillage souhaité, déterminer le maillage de cet espace (maillage dynamique de l’espace ?) • 5 - Déterminer la bijection entre le modèle réel et les Algorithmes Génétiques • Dans notre cas, il faudra aussi déterminer l ’interaction entre Algorithmes Génétiques et simulations stochastiques Monte Carlo : • 6 - Définition des processus stochastiques • 7 - Calibrage des processus stochastiques (sur l ’historique, par exemple ? Quel historique ?) • 8 - Redéfinition de la fonction objectif comme indicateur statistique sur les histoires stochastiques
C - Etude de Cas - Solution AG - Etape 1 : Choix de la fonction • Le choix de la fonction objectif est une des étapes plus délicates de la mise en place des Algorithmes Génétiques, comme il arrive souvent quand il s’agit de l ’étape initiale d ’un processus • Le choix de la fonction objectif part de la question suivante : quel est l ’objectif de l ’optimisation ? • L ’objectif étant la maximisation du rendement et la minimisation du risque, nous rencontrons la problématique de l ’optimisation multiobjectif : l ’expérience professionnelle montre qu ’il est indispensable déterminer a priori l ’objectif (et par conséquent la contrainte) avant de continuer. Quel objectif choisir ? Pourquoi (analyse points forts / points faibles) ? • L ’objectif de notre optimisation sera de minimiser le risque pour l ’année finale de projection (= horizon temporel) => Donc, la contrainte sera un rendement minimum, disons par exemple de 5% par an (recapitalisé)
C - Etude de Cas - Solution AG - Etape 2 : les variables sensibles • Les Algorithmes Génétiques présentent la propriété sympathique de gérer fonctions de plusieurs dizaines de variables • Néanmoins, moins de variables on utilise, moins sont les dimensions de l ’espace de définition du problème, plus sera rapide la recherche • Il faudra alors se limiter au nombre nécessaire de variables : quelles sont les variables du problème et combien on en retient ? • Dans ce problème, l ’investisseur veut qu ’on lui indique la répartition de son investissement entre différentes classes d ’actifs : donc, les classes d ’actifs seront les variables : • combien de classes choisit-on ? • Comment caractérise-t-on les classes d ’actifs (pourcentages, valeurs absolues, etc.) ? • Les variables seront les pourcentages des trois classes : actions, obligations, monétaire … • … ce qui en réalité réduit le nombre de variables à deux (le troisième pourcentage étant le complément à 1 des deux autres
C - Etude de Cas - Solution AG - Etapes 3 et 4 : l’espace de définition • Etape 3 : définition de l ’espace • Compte tenu du fait que les Algorithmes Génétiques sont une méthode d ’exploration globale de l ’espace de définition, et compte tenu que le nombre de ses dimensions est fixé une fois les variables choisies, nous pouvons diminuer le temps de recherche en posant des limites sur les variables (par exemple, si l ’investisseur ne veut pas investir plus que X% dans une certaine classe d ’actif) • Etape 4 : maillage de l ’espace • Dans ce problème, l ’espace de définition est potentiellement continu en toutes ses dimensions entre les bornes choisies plus haut • Comment peut-on faire le maillage ? • Quel pas choisir et quelle technique ? • Le plus important, c ’est de choisir un maillage constant dans le temps : il existe des techniques de maillage dynamique (avec des pas de plus en plus serrés), mais elles vont dans le sens contraire de la recherche globale • Pour le pourcentage, un pas de 1% convient dans la plupart des cas comme un bon compromis entre précision et vitesse
C - Etude de Cas - Solution AG - Etape 5 • La bijection entre l ’espace réel et l ’espace des Algorithmes Génétiques est déterminée de la manière suivante : • Par ailleurs, nous rappelons les définitions suivantes, qui seront utilisées dans la suite : • génération : une population est projetée sur plusieurs générations (la population initiale est générée de manière aléatoire • sélection, croisement, replacement, mutations = opérateurs qui permettent de passer d’une génération à l ’autre, tout en améliorant la population en base au critère donné. chromosome = individu gène = partie constitutive d’un chromosome population = collection d’individus structure cible = allocation d’actif (en %) pourcentage d’une classe d ’actifs collection d’allocations
C - Etude de Cas - Solution AG - Etape 5 • Il reste à savoir, concrètement, comment les pourcentages des actifs sont codifiés en gènes : des idées ? • Nous nous trouvons face à quelques problèmes : • des pourcentages doivent être codés en binaire • il existe des contraintes sur les pourcentages et entre les pourcentages • faut-il coder en absolu ou en relatif ? • Nous avons codé en relatif suivant ce raisonnement : • la précision souhaitée et les bornes des classes connues, nous savons combien de valeurs différentes peuvent prendre les pourcentages de chaque classe • on cherche alors le plus petit x tel que et ça, pour chaque classe • x est alors le nombre de « digits » pour le gène correspondant à la classe • à ce moment, nous n ’avons pas encore posé de contrainte d ’ensemble, c ’est à dire, pour le moment la somme des pourcentages ainsi codés pourrait être différente de 1 • pour ce faire, on applique un rescaling aux pourcentages afin de respecter la condition ci-dessus
C - Etude de Cas - Solution AG - Etapes 6 et 7 : processus stochastiques • Etape 6 : définition des processus • Il s ’agit ici de déterminer quels processus gouvernent les indices qui nous servent pour mesurer le rendement et la volatilité des classes d ’actifs • Suivant les propriétés qu ’on veut souligner sur les classes, on pourra choisir entre autres entre : • processus de retour à la moyenne • processus à queues épaisses • processus de saut - diffusion • etc. • Etape 7 : calibrage des processus • Les processus mis en place, il reste une opération au moins aussi importante, leur calibrage, c ’est à dire le choix des paramètres des distributions qui les gouvernent (ex. : espérance, volatilité, skewness, kurtosis, etc.) • Le « choix » des paramètres peut se faire en réalité par des régressions multiples, par exemple sur un historique : néanmoins, il reste encore beaucoup de variables, comme la durée de l ’historique à prendre en compte, la fréquence de mesure, l ’indice de référence (ex. : pour les actions françaises et européennes vaut-il mieux considérer le CAC40 ou le DJEuroStoxx ?)
C - Etude de Cas - Solution AG - Etape 8 : redéfinition fonction objectif • Compte tenu du fait que nous utilisons des simulations stochastiques (normalement, 10^4 simulations pour une allocation donnée), il faut redéfinir une fonction objectif (au sens de l ’Algorithme Génétique) pour bien prendre en compte de la richesse statistique des simulations • Par exemple, si la fonction objectif du problème est de minimiser le risque pour un rendement donné (comme dans le problème actuel), nous pourrons mesurer pour chaque allocation un indicateur de type VaR (Value at Risk) ou Expected Shortfall et prendre ça comme fonction objectif de l ’Algorithme Génétique • Value at Risk : il s ’agit d ’un centile donné (généralement 90%, 95% ou 99%) de la distribution des rendements • Expected Shortfall : il s ’agit de la somme de toutes les valeurs qui sont après le centile correspondant (encore une fois, généralement 90%, 95% ou 99%) • les deux sont des indicateurs de « perte maximale » que l ’investisseur pourrait être confronté à enregistrer
C - Etude de Cas - Solution AG - Résultats 1 • Ces résultats ont été trouvés à partir de l ’Algorithme Génétique couplé avec 100 simulations stochastiques par allocation • Analysons les résultats : • d ’abord, on constate une certaine instabilité, due au nombre de simulations ; normalement, ce genre d ’optimisation utilise 1000 à 10000 simulations stochastiques par allocation testée • on note que le risque diminue avec le temps : pourquoi ? • La réponse est fournie par le couplage des trajectoires des actifs avec la contrainte (rendement = 5% par an) imposée : au début seulement les actifs plus risqués arrivent à fournir le rendement désiré
C - Etude de Cas - Solution AG - Résultats 2 • Ces résultats ont été trouvés à partir de l ’Algorithme Génétique couplé avec 300 simulations stochastiques par allocation • Analyse des résultats : • on note tout de suite une meilleure stabilité • le risque a augmenté, mais par des raisons exogènes au problème (notamment, des paramètres de l ’algorithme génétique et des simulations stochastiques) • on remarque une montée des obligations sur les horizons à 5 et 6 ans, apparemment difficile à expliquer
Module Technologies Emergentes 1 Conclusions & remerciements
D - Conclusions et remerciements • Une question de moi à vous : • qui peut m’expliquer en deux mots le fonctionnement des AG ? • avec un exemple concret ? • Ce qui reste à faire • démontrer la convergence des Algorithmes Génétiques • diffuser la connaissance : pour le moment, les AG peuvent être utilisés presque seulement en recherche, trop peu de monde en a entendu parler dans les entreprises et, comme on ne peut pas démontrer les résultats, ils paraissent comme une boîte noire • présenter les Algorithmes Génétiques non comme méthode d ’optimisation, mais comme catalyseur pour l ’optimisation : cela rend les gens moins exigeants sur la démontrabilité des résultats, car ils se disent que, si on doit vraiment faire une recherche globale du maximum, autant la faire à travers un outil qui la rend plus rapide • Questions ? • Un précurseur des Algorithmes Génétiques • « Continue ce que tu as commencé et tu arriveras peut-être au sommet ; ou au moins, tu arriveras en haut à un tel point que tu seul comprendras que tu n ’es pas au sommet » (Sénèque)
Module Technologies Emergentes 1 Aide à la décision en finance 18 février 2003 Luca De Dominicis(ECP 2001 - Politecnico di Milano)