Help Webmaster..!!

Forum destiné à recueillir vos avis et questions au sujet de 'La Bourse pour les nains'.
N'hésitez pas à vous exprimer.

Modérateur : webmaster

Répondre
swyn
Messages : 2
Enregistré le : 02/03/2006 12:05

Help Webmaster..!!

Message par swyn » 02/03/2006 17:30

J'ai un soucis, je n'arrive pas à faire fonctionner les macros du fichier que j'ai téléchargé sur votre site:
- lorsque je lance la macro pour chercher la matrice des variances covariances j'ai le message suivant : "erreur de compilation : projet ou bibliothèque introuvable" et voilà ce qui s'affiche:

Sub CreeMatriceVarCovar()
'----- Constantes -----
Const LIGNE_TITRE_DONNEES = 1
Const PREMIERE_COLONNE_SRC = 3
Const PREMIERE_LIGNE_SRC = 4
Const PREMIERE_COLONNE_DEST = 2
Const PREMIERE_LIGNE_DEST = 5
Const NB_DATAS_MINI = 36

Const COLONNE_NOM_VALEURS_PF = 2
Const PREMIERE_LIGNE_DEST_PF = 2
Const COLONNE_VOLATILITE_VALEURS_PF = 5
Const COLONNE_RENDEMENT_VALEURS_PF = 4

'----- Variables -----
iLigSrc = PREMIERE_LIGNE_SRC
iColSrc = PREMIERE_COLONNE_SRC
iLigDest = PREMIERE_LIGNE_DEST
iColDest = PREMIERE_COLONNE_DEST
iNbSeries = 0

je ne sais pas quoi corriger!! avec l'autre fichier ça me fait pareil!

Avatar du membre
webmaster
Messages : 769
Enregistré le : 14/06/2003 15:21
Contact :

Message par webmaster » 02/03/2006 22:26

Bonsoir,

Lorsque vous accédez au "Visual Basic Editor", (ALT-F11 ou Outils/Macros/Visual Basic Editor) et que vous consultez les références (Menu Outils/Références...), quelles sont les références cochées ?

Webmaster

PDG
Messages : 3
Enregistré le : 09/03/2006 00:42

Message par PDG » 09/03/2006 00:57

Bonsoir,
j'ai exactement le même problème :
je me permets donc de répondre

la référence SOLVER.XLA est cochée mais précédée de MANQUANT

comment la récupérer ?

Avatar du membre
webmaster
Messages : 769
Enregistré le : 14/06/2003 15:21
Contact :

Message par webmaster » 09/03/2006 10:55

Bonjour,

Une recherche de "Solver.xla manquant" dans Google :wink: donne deux résultats, dont le premier devrait vous permettre de régler le problème.

Webmaster

PDG
Messages : 3
Enregistré le : 09/03/2006 00:42

Message par PDG » 09/03/2006 16:17

Bonjour,

c'est vraiment nicke merci.

Juste une petite question relative à la méthode sous-jascente à l'outil,
J'ai suivi avec grand interêt vous explications, (les caculs matriciels me rappelant de bons souvenirs). Je m'imagine déjà en train danalyser mon propre portefeuille et de le rééquilibrer .... quand je tombe sur votre conclusion : PERSONNE NE L'UTILISE !!!!
Que dois-je en conclure ? Que j'aurais tort de l'utiliser même si je suis conscient des limites de l'utilisation de données historiques entrée du système ?

merci de vos éclaircissements et du boulot fait sur le site ... un nouveau monde s'offre à moi :)

Avatar du membre
webmaster
Messages : 769
Enregistré le : 14/06/2003 15:21
Contact :

Message par webmaster » 11/03/2006 12:35

Bonjour,

Content de savoir que ça fonctionne :).
PDG a écrit :J'ai suivi avec grand interêt vous explications, (les caculs matriciels me rappelant de bons souvenirs). Je m'imagine déjà en train danalyser mon propre portefeuille et de le rééquilibrer .... quand je tombe sur votre conclusion : PERSONNE NE L'UTILISE !!!!
Que dois-je en conclure ? Que j'aurais tort de l'utiliser même si je suis conscient des limites de l'utilisation de données historiques entrée du système ?
Je pense que vous trouverez des éléments de réponses à votre question dans le fil "Mise en oeuvre de l'optimisation de portefeuille". Pour compléter, je ne pense pas avoir écrit que personne n'utilise l'optimisation de portefeuille. J'ai cité Robert Haugen qui a écrit "almost no one uses it (1).", avec en note de bas de page :
Robert Haugen a écrit :(1) Except at asset allocation levels where institutions such as pension funds use it to determine how much of their funds should be invested in asset classes like bonds and stock. The Tool is also used by quantitative investment managers to manage the volatility of the differences between the returns on their long and short portfolios. Hedge funds actually build portfolios of stocks that they sell short. Long only managers are "short" their benchmark like the S&P500 stock index.
Ce que j'ai résumé par la phrase "Souvenez vous donc que l'optimisation de portefeuille est un moyen, un outil, applicable uniquement dans certains contextes (long terme et allocation d'actifs plutôt qu'allocation de titres dans un portefeuille d'actions). Ce n'est pas le Graal de l'investisseur !"

Le problème de fond de l'optimisation se situe dans le fait qu'on a tendance à vouloir l'utiliser comme un scalpel alors qu'il s'agit d'un marteau assez rudimentaire. Elle fonctionne sur la base des matrices de variance/covariance et des espérances de rendement. Et vous pouvez constater qu'en modifiant très légèrement ces données d'entrée, vous obtenez en sortie des résultats très différents. Or personne ne possède de boule de cristal permettant de déterminer les matrices de variance/covariance et les rendements futurs (dans ce cas il ne serait d'ailleurs plus nécessaire d'optimiser, il suffirait d'investir avec un levier maximum dans l'avoir le plus rentable). Par ailleurs, on sait par expérience que les matrices de variances/covariances et les rendements ne sont pas stables dans le temps. Dès lors, optimiser sur cette base est relativement inutile, sauf peut-être dans une perspective de long terme ou pour déterminer des proportions 'à grosse maille' (ie sans rebalancer au moindre changement). Par contre, les classes d'actifs sur le long terme présentent des caractéristiques nettement plus stables, il est donc plus intéressant d'utiliser l'optimiseur pour décider de la répartition des différents types d'actifs dans un portefeuille. L'autre voie consiste à essayer de "fiabiliser" les données d'entrées (cf fil cité plus haut).

Webmaster


Webmaster

PDG
Messages : 3
Enregistré le : 09/03/2006 00:42

Message par PDG » 17/03/2006 17:53

je vous remercie encore de toutes ces explications

DoM P
Messages : 2
Enregistré le : 06/06/2007 21:24
Localisation : Paris

Message par DoM P » 04/07/2007 00:05

Bonjur,

Tout d'abord, merci pour ce formidable site.
J'ai téléchargé le fichier optimisation.xls et me suis amusé avec. C'est fort intéressant.
J'avais l'intention de l'utiliser mon optimiser mon portefeuille et je me demandais si, selon vous, l'usage que j'en ferais serait adéquat :
J'investis sur du long terme en assurance vie, le but étant de définir des grandes lignes lors de la création du contrat et éventuellement lors de versements ponctuels, puis d'arbitrer de temps en temps pour rééquilibrer l'ensemble.
Est-ce que cette utilisation entre dans le domaine que vous avez défini plus haut dans cette discussion?

J'ai par ailleurs deux autres questions au sujet de ce classeur :
- En utilisant le fichier dans sa version d'origine, dans la feuille portefeuille, je teste la fonction "minimiser variance pour rendement choisi". Les paramètres par défaut sont 0.18 d'objectif de rendement annuel, case vide pour l'objectif d'écart-type, 0 de minimum par ligne, et 0.1 de maximum. Dans ce cas, pas de problème, ça fonctionne.
En revanche, si je veux spécifier un minimum par ligne (par exemple 0.05) la fonction ne donne aucune valeur. J'ai essayé en fournissant différents paramètres pour l'objectif de rendement, sans amélioration. Pourquoi?
- J'ai testé ce classeur avec les valeurs mensuelles d'une dizaine de FCP et SICAV depuis janvier 2004. La FE calculée est très étrange comparée à celle du fichier d'origine : Elle a une forme d'arc vertical, ne dépassant pas 0.16 de volatilité tout en atteignant un rendement supérieur à 0.4. Cela est-il possible ou me suis-je trompé quelque part?

Par avance, merci des réponses que vous pourrez m'apporter.

Avatar du membre
webmaster
Messages : 769
Enregistré le : 14/06/2003 15:21
Contact :

Message par webmaster » 09/07/2007 21:56

Bonsoir,
DoM P a écrit :Est-ce que cette utilisation entre dans le domaine que vous avez défini plus haut dans cette discussion?
Oui, dans ce contexte cela peut être intéressant et offrir un éclairage sur la composition du portefeuille lors des ré-équilibrages.
DoM P a écrit :En revanche, si je veux spécifier un minimum par ligne (par exemple 0.05) la fonction ne donne aucune valeur. J'ai essayé en fournissant différents paramètres pour l'objectif de rendement, sans amélioration. Pourquoi?
En général lorsqu'aucune solution n'est proposée, c'est qu'il n'existe aucune solution au problème posé. En l'occurence un minimum de 5% de chaque valeur dans le portefeuille avec un portefeuille composé de 100% implique un maximum de 20 valeurs. Si il y en a plus de 20, le problème n'a pas de solution et l'optimiseur n'en trouve pas.
DoM P a écrit :J'ai testé ce classeur avec les valeurs mensuelles d'une dizaine de FCP et SICAV depuis janvier 2004. La FE calculée est très étrange comparée à celle du fichier d'origine : Elle a une forme d'arc vertical, ne dépassant pas 0.16 de volatilité tout en atteignant un rendement supérieur à 0.4. Cela est-il possible ou me suis-je trompé quelque part?
Vous ne vous êtes pas forcément trompé. La forme de la frontière efficiente dépend des contraintes posées sur le portefeuille et de l'historique choisi. Si l'historique est exclusivement basé de valeurs ayant exclusivement connues des hausses de cours sans volatilité ou si vous n'avez pas de règles de maximum par valeur par exemple, il est possible d'obtenir ce genre de résultats.

Dans tous les cas, il est souhaitable d'utiliser comme rendements attendus pour les valeurs un rendement choisi plutôt qu'un rendement observé sur une période assez courte car celui observé sur une période courte a peu de chances de se reproduire. Et d'utiliser comme variances/covariances celles des classes d'actifs sous-jacentes aux titres choisis (dans le cas de SICAV ou FCP déjà diversifiés par nature, on peut probablement s'affranchir de ce dernier point).

Webmaster

DoM P
Messages : 2
Enregistré le : 06/06/2007 21:24
Localisation : Paris

Message par DoM P » 10/07/2007 22:43

Merci pour ces informations.

Il y a cependant un point qui cloche toujours. Vous dites
webmaster a écrit :En général lorsqu'aucune solution n'est proposée, c'est qu'il n'existe aucune solution au problème posé. En l'occurence un minimum de 5% de chaque valeur dans le portefeuille avec un portefeuille composé de 100% implique un maximum de 20 valeurs. Si il y en a plus de 20, le problème n'a pas de solution et l'optimiseur n'en trouve pas.
C'est ce que je pensais, mais ce n'est pas aussi simple. Laissez-moi préciser le contexte : Office 2003 US, pack MUI français. Le fichier utilisé est celui non optimisé pour la version française. (Je ne suis jamais parvenu à le faire fonctionner avec une version française d'Excel)
A l'ouverture, j'accepte l'exécution des macros automatiques, puis je vais directement sur la feuille "portefeuille". Je clique sur "Minimiser variance pour rendement choisi" et j'obtiens une réponse : Le solver fonctionne.
Je désélectionne toutes les valeurs sauf 10, et définis une valeur maximale par ligne de 0,1. Je clique sur "Minimiser variance pour rendement choisi" et j'obtiens une réponse logique : 10% de chaque fonds.
Maintenant, j'ajoute la contrainte de minimum par ligne, que je définis, disons, à 0,05. Ca ne doit, techniquement, rien changer au résultat précédent, puisque chaque valeur était déjà au-delà de 5%.
Mais, là, ça ne marche plus.
Quelle que soit la valeur minimum définie, si elle est supérieure à zéro, ça ne fonctionne pas. (Les valeurs négatives, bien qu'inutiles, n'induise pas ce dysfonctionnement).
La question maintenant est donc de savoir pourquoi. Le code VBA m'a l'air correct, mais je ne suis pas un expert...

Merci encore d'accepter d'user de votre temps pour cette question.

Avatar du membre
webmaster
Messages : 769
Enregistré le : 14/06/2003 15:21
Contact :

Message par webmaster » 11/07/2007 23:50

Bonsoir,

Effectivement le problème ne venait pas du nombre de valeurs.

Bravo, vous avez trouvé un bug dans le classeur d'optimisation :oops:. Les contraintes de minimum ne peuvent pas fonctionner dans la version fournie dans la mesure où telles que la macro les généraient elles étaient contradictoires avec les contraintes de non prise en compte des valeurs écartées : il était demandé au solver de fournir des valeurs supérieures à 0 pour les cellules C2 à C49 alors qu'il lui était demandé de fournir des valeurs égales à 0 pour les cellules correspondant à des valeurs écartées. Au bilan le solveur ne trouvait bien sûr aucune solution.

J'ai corrigé les deux feuilles qui sont maintenant disponibles en téléchargement (ici par exemple pour le classeur normal).

Webmaster

Répondre

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 2 invités