Joël FOLENS et Fabrice RIVA. Date limite de remise : 07 janvier 2015 à 17:00



Documents pareils
Exercice : la frontière des portefeuilles optimaux sans actif certain

Travail de projet sur VBA

Formation Excel, Niveau initiation, module 1 DUREE DE LA FORMATION OBJECTIFS DE LA FORMATION

Comment créer et utiliser une fonction

Algorithmique et programmation : les bases (VBA) Corrigé

Programmation VBA/Excel. Programmation VBA. Pierre BONNET. Masters SMaRT & GSI - Supervision Industrielle P. Bonnet

L emprunt indivis - généralités

Application 1- VBA : Test de comportements d'investissements

CORRIGES DES CAS TRANSVERSAUX. Corrigés des cas : Emprunts

Se Perfectionner à Excel

Introduction à MATLAB R

Excel Avancé. Plan. Outils de résolution. Interactivité dans les feuilles. Outils de simulation. La valeur cible Le solveur

Probabilités. Rappel : trois exemples. Exemple 2 : On dispose d un dé truqué. On sait que : p(1) = p(2) =1/6 ; p(3) = 1/3 p(4) = p(5) =1/12

FORMATION EXCEL NIVEAU 2

Visual Basic for Applications

Formation Excel. Introduction Les Bases du Logiciel Le comportement des cellules. Calculs élaborés. Les feuilles de calculs élaborées

Excel. Identification. Informations sur vos besoins et objectifs. Notions fondamentales. Fiche de validation des besoins en formation Bureautique

La maison Ecole d ' Amortissement d un emprunt Classe de terminale ES. Ce qui est demandé. Les étapes du travail

SOMMAIRE. 1. Préambule Le calendrier Trajectoire d un objet lancé Régression linéaire...9

IMPORTATION, CRÉATION, MANIPULATION, EXPORTATION DE DONNÉES STATISTIQUES

Transmission d informations sur le réseau électrique

Préparation à l examen EFA en Macro

Découverte du tableur CellSheet

Contents. 1 Introduction Objectifs des systèmes bonus-malus Système bonus-malus à classes Système bonus-malus : Principes

Chapitre 6 : Fonctions financières et d amortissement

LE TABLEUR OPENOFFICE CALC : CONTRÔLES DE FORMULAIRES ACCÈS AUX BASES DE DONNÉES

Le risque Idiosyncrasique

FORMATION EXCEL NIVEAU 2

Sub CalculAnnuite() Const TITRE As String = "Calcul d'annuité de remboursement d'un emprunt"

Travaux Pratiques de Commande par ordinateur 1 TRAVAUX PRATIQUES

IMAGES NUMÉRIQUES MATRICIELLES EN SCILAB

Partie 1. Fonctions plus complexes dans Excel. Fonctions Si(), Et(), Ou() et fonctions imbriquées. Opérateurs logiques. I.1.

Pack Prélèvements Confort et Confort Plus

manuellement. Le prototype ayant obtenu des résultats satisfaisants aux différents essais de labour est validé sur le plan suivant :

Présentation du PL/SQL

Cette application développée en C# va récupérer un certain nombre d informations en ligne fournies par la ville de Paris :

annexe b : pénalités

Utiliser des fonctions complexes

Utilitaires méconnus de StrataFrame

La Clé informatique. Formation Excel XP Aide-mémoire

Bourse de recherche Jeff Thompson. Politique et procédures

Le cas «BOURSE» annexe

Migration du pack office Planification, préparation, déploiement et formation

Révision salariale - Manager

Informations détaillées pour l emploi du calculateur TCF sur le 2 e pilier

Plan de cours. Chiffriers et bases de données en gestion commerciale

GUIDE UTILISATEUR. KPAX Discover

Découverte du logiciel ordinateur TI-n spire / TI-n spire CAS

1 Recherche en table par balayage

1 TD 2 : Construction d'une chier Acrobat et envoi par

Guide de formation avec cas pratiques. Programmation. Philippe Moreau Patrick Morié. Daniel-Jean David

Vous souhaitez vous inscrire à la formation Excel à titre particulier,

Guide de rapports ADT Sélecte

Le cas «BOURSE» annexe

CONCOURS D ENTREE A L ECOLE DE 2007 CONCOURS EXTERNE. Cinquième épreuve d admissibilité STATISTIQUE. (durée : cinq heures)

R01 Import de données

MATLAB : COMMANDES DE BASE. Note : lorsqu applicable, l équivalent en langage C est indiqué entre les délimiteurs /* */.

Choisir le mode d envoi souhaité. Option 1 : Envoyer un SMS à un nombre réduit de numéros (0 10 )

Logiciel XLSTAT version rue Damrémont PARIS

Traitement des données avec Microsoft EXCEL 2010

Des caisses diversifiées et gérées professionnellement. Les Caisses privées

Exigences de collecte de données financières sur l assurance automobile. Pièce jointe au Bulletin GISA

Programme détaillé. LES TABLEAUX DE BORD Formation en présentiel (21 h) accompagnée d un parcours e-learning Excel (5 h)

TP 1. Prise en main du langage Python

UTILISATIONS D'EXCEL POUR LES SCIENTIFIQUES.


PROJET DE GESTION PORTEFEUILLE. Evaluation d une Stratégie de Trading

TD3 - Facturation avec archivage automatisé

GLOBAL SUPPLY CHAIN MANAGEMENT & STRATEGIE LOGISTIQUE

Pascal Weber - Expert en organisation

PROGRAMMATION EVENEMENTIELLE sur EXCEL

Table des matières: Guidelines Fonds de Pensions

Algorithmique et Programmation, IMA

Document de réflexion - RACHETER OU NE PAS RACHETER?

EXCEL TUTORIEL 2012/2013

Vue d ensemble. Initiatives des données. Gestion de la trésorerie. Gestion du risque. Gestion des fournisseurs 2 >>

Norme internationale d information financière 1 Première application des Normes internationales d information financière

Cours d introduction à l informatique. Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions

Document de réflexion - RACHETER OU NE PAS RACHETER?

TABLE DES MATIÈRES. II. La théorie de la valeur A. Les notions de base de mathématiques financières B. Les annuités constantes...

POUR ALLER UN PEU PLUS LOIN SUR UN TABLEUR. Version EXCEL

Auto-Entreprise : Activités : Eric SOTY - Siret n Formation Bureautique, continue d'adultes. Tél : Fax :

Valeur cible et solveur. Les calculs effectués habituellement avec Excel utilisent des valeurs numériques qui constituent les données d'un problème.

Formation VBA 3 Interagir

4.2 Unités d enseignement du M1

Proposition d un outil de suivi du plan de formation et de calcul des ETP. Explications

Calc 2 Avancé. OpenOffice.org. Guide de formation avec exercices et cas pratiques. Philippe Moreau

Parcours FOAD Formation EXCEL 2010

Formations 2015 Bureautique

NOS FORMATIONS EN BUREAUTIQUE

Reconstruction de bâtiments en 3D à partir de nuages de points LIDAR

Des Paniers diversifiés et gérés professionnellement. Les Paniers

COURS DE MS EXCEL 2010

Politique et Standards Santé, Sécurité et Environnement

Artisans, commerçants et professionnels libéraux. L'auto-entrepreneur. Édition janvier 2012

Suivi de la formation

Transcription:

M2 MATHÉMATIQUES ET FINANCE UNIVERSITÉ LILLE 1 GESTION DE PORTEFEUILLE ET MESURE DU RISQUE Joël FOLENS et Fabrice RIVA Date limite de remise : 07 janvier 2015 à 17:00 1. Présentation du projet L objectif de ce projet est d évaluer la performance, mesurée à partir de la significativité de l α, d un portefeuille optimisé en termes de couple rentabilité-risque. Les sections qui suivent vous décrivent le protocole de test qu il vous faudra implémenter en VBA sous Excel. Vous y trouverez également différentes informations destinées à vous guider dans la réalisation de votre programme. 2. Les données Les données qui vous sont fournies couvrent 178 actions présentant des niveaux de disponibilité variables sur la période 1990-2011. Les informations relatives à une action donnée sont stockées dans une feuille propre nommée Actioni où i représente le numéro de l action. Chaque feuille action contient en colonne A un champ Date et en colonne B un champ intitulé Cours ajusté, corrigé des éventuelles opérations sur titres et des détachements de dividendes. Outre les 178 feuilles actions, le classeur sur lequel vous aurez à travailler comporte quatre feuilles intitulées respectivement Calendrier, PF, Optim et Test dont la raison d être vous sera précisée dans les sections qui suivent. 3. Remplacement des cours manquants Les actions dont vous disposez ne cotent pas tous les jours. Cette situation va notamment poser problème au moment du calcul de la matrice de variances-covariances des taux de rentabilité des différents titres à faire figurer dans un portefeuille, certains taux étant manquants. Pour éviter le problème, une étape préalable va consister à procéder, pour chaque action faisant partie de l univers de titres qui vous est alloué (cf section 7.), au remplacement des cours manquants. Pour une action i donnée, seuls les cours strictement compris entre le premier et le dernier cours disponible de i devront faire l objet d un éventuel remplacement. L action i présente un cours manquant à la date t si elle ne présente pas de cours en t alors que t figure dans le champ Date (colonne A) de la feuille intitulée Calendrier. La procédure de remplacement des cours manquants est la suivante. En notant C i pre le dernier cours disponible de l action i avant un (ou plusieurs) cours manquant(s), en notant C i post le premier cours 1

disponible de i après un (ou plusieurs) cours manquant(s), et en notant k le nombre de cours manquants entre C i pre et C i post, la valeur du jème cours manquant sera calculée comme : { ( )} Cj i = exp ln(cpre) i 1 C i + k + 1 j ln post Cpre i La série complète cours originaux + cours remplacés de l action i devra être stockée dans la feuille de l action concernée selon la disposition suivante : Colonne D, à partir de D2 (écrire l intitulé "Date" dans la cellule D1) : la série des dates, incluant celles pour lesquelles un cours manquant a été calculé ; Colonne E, à partir de E2 (écrire l intitulé "Cours complété" dans la cellule E1) : la série des cours ajustés (dont les cours manquants calculés) ; Colonne F, à partir de F2 (écrire l intitulé "Taux de rentabilité" dans la cellule F1) : la série des taux de rentabilité continus quotidiens de l action i. (1) 4. Construction des portefeuilles optimaux et rentabilité out-of-sample Les portefeuilles optimaux seront construits selon le protocole suivant. Le premier portefeuille optimal sera constitué sur la base des taux de rentabilité observés sur la période - période d optimisation - allant du 1/05/1992 au 31/07/1992 (valeurs 1 à 3 de la colonne B de la feuille Calendrier). Seules les actions présentant des taux de rentabilité (potentiellement calculés sur la base de cours remplacés) du 1/05/1992 au 31/08/1992 (soit les 3 mois correspondant à la période d optimisation + 1 mois correspondant à la période de test) devront être prises en compte dans les calculs. Par souci de commodité, il vous est conseillé de stocker les taux de rentabilité de la période d optimisation dans la feuille PF du classeur 1. Partant de ces taux, vous déterminerez le portefeuille de variance minimale présentant une volatilité annuelle de 25% (on considérera qu une année comporte 254 jours de bourse) avec interdiction des ventes à découvert 2. Vous devrez pour ce faire renseigner la feuille Optim du classeur et paramétrer celle-ci de façon à permettre au solveur Excel d effectuer l optimisation demandée. Une fois les poids obtenus, vous calculerez les taux de rentabilité quotidiens du portefeuille optimisé sur la période de test et vous en déduirez le taux de rentabilité mensuel du portefeuille optimisé (par sommation des taux de rentabilité quotidiens). Vous reporterez ce dernier taux en colonne B, ligne 2, de la feuille Test. La procédure précédemment décrite devra être itérée. Un second portefeuille sera ainsi construit avec une période d optimisation allant du 1/06/1992 au 31/08/1992 (période de test du 1/09/1992 au 30/09/1992), un troisième avec une période d optimisation allant du 1/07/1992 au 30/09/1992 (période de test du 1/10/1992 au 31/10/1992), etc. Le dernier portefeuille construit sera optimisé sur la période allant du 1/12/2007 au 28/02/2008 (période de test du 1/03/2008 au 31/03/2008). Le taux de rentabilité mensuel du deuxième portefeuille sur la période de test sera stocké cellule B3 de la feuille Test, celui du troisième portefeuille dans la cellule B4, etc. 1. Ce point n est pas obligatoire et vous ne serez pas pénalisé si vous optez pour une stratégie de programmation différente. 2. La valeur de 25% est indicative. Vous êtes libre de choisir une autre valeur - voiré invités à analyser les niveaux de performance obtenus pour un ensemble de différentes valeurs. 2

5. Test de performance Vous disposez dans la feuille Test des valeurs mensuelles des facteurs Fama-French sur la période août 1992 - mars 2008. Les valeurs respectives des facteurs "marché", "SMB", "HML" et "Momentum" figurent dans les colonnes C à F. La réalisation de la régression Fama-French et le test de significativité du α pourront être réalisés à l aide de la fonction DROITEREG d Excel. Vous n avez pas à programmer la réalisation de cette régression. 6. Conseils et compléments Visual Basic Cette section regroupe quelques conseils de programmation et vous détaille également le fonctionnement de certaines instructions non vues en cours qui pourront vous être utiles. Vous devez impérativement travailler en Option Base 1 pour pouvoir réaliser les opérations matricielles qu impliquent plusieurs calculs. Vous aurez à plusieurs reprises à utiliser l équivalent VBA de la fonction Recherche d Excel. On effectue une recherche en VBA en utilisant la méthode Find avec la syntaxe suivante : <Objet Range correspondant à la zone de recherche>.find(what: =<valeur recherchée>) Veuillez noter que la méthode Find retourne un objet de type Range. Dans le cas où la valeur recherché par Find ne figure pas parmi celles présentes au niveau de la zone de recherche spécifiée, une erreur se produit, ayant pour effet d interrompre l exécution du code VBA. L interruption de l exécution peut toutefois être évitée grâce à l utilisation d un bloc On Error Resume Next. Soit l exemple de code suivant : 1. On Error Resume Next 2. <Instruction> 3. If Err.Number = 0 Then 4. Groupe d instructions 1 5. Else 6. Groupe d instructions 2 7. End If où <Instruction> fait référence à l instruction susceptible de causer une erreur d exécution. En faisant précéder celle-ci de la ligne On Error Resume Next, l exécution du programme se poursuit, quoi qu il arrive, au niveau de la ligne 3 du code. La propriété Number appliquée à l objet Err permet de récupérer le code erreur généré par l exécution de l instruction figurant en ligne 2. Si le code retourné par Err.Number est égal à 0, aucune erreur n est détectée et l exécution du programme est redirigée (dans l exemple) vers le groupe d instructions 1. Dans le cas contraire, c est le groupe d instructions 2 qui sera exécuté. Pour certaines étapes du projet, vous aurez à créer des vecteurs ou des matrices à partir des données contenues dans les cellules d une feuille de calcul. Une plage de données peut être directement affectée à un vecteur ou à une matrice (sous la forme d une variable tableau) à l aide d une instruction du type : 3

<variable> = <plage> Ainsi, l instruction x = Range("A1:A10") permet de générer un vecteur colonne sous la forme d une variable tableau x composée de 10 lignes et 1 colonne, x(1,1) se voyant affecter le contenu de la cellule A1, x(2,1) le contenu de la cellule A2, etc. De même, y = Range("A1:J10") permet de générer un vecteur ligne sous la forme d une variable tableau y composée d 1 ligne et 10 colonnes, y(1,1) se voyant affecter le contenu de la cellule A1, y(1,2) le contenu de la cellule B1, etc. Important : il est fortement recommandé de ne pas effectuer de déclaration préalable des variables destinées à recevoir une plage de données pour que la conversion automatique en variable tableau se fasse sans erreur d exécution 3. Au sein de la feuille Optim, les formules de calcul de la variance du portefeuille, de son espérance, et de la somme de ses poids devront être ré-écrites à chaque nouveau portefeuille construit. Ceci est rendu nécessaire par le fait que le nombre d actions en portefeuille peut varier d un portefeuille à l autre du fait de la présence ou non d une action sur la période en cours de traitement. Souvenezvous qu une formule se code, que l on utilise la propriété Formula ou la propriété FormulR1C1, sous la forme d une chaîne de caractères. Il est donc possible de fabriquer des formules adaptées à un besoin particulier en utilisant l opérateur de concaténation &. Avant de lancer le solveur pour réaliser l optimisation du portefeuille, fixez tous les poids à leur valeur équi-pondérée. Vous interdirez l utilisation des ventes à découvert en positionnant l option AssumeNonNeg de la propriété SolverOptions du solver à True. 7. Groupes Afin de limiter les temps de calculs, chaque groupe devra n utiliser que 50 actions parmi les 178 disponibles dans le classeur initial. La répartition des actions entre les différents groupes est la suivante : Groupe 1 : actions 1 à 50 ; Groupe 2 : actions 27 à 76 ; Groupe 3 : actions 53 à 102 ; Groupe 4 : actions 79 à 128 ; Groupe 5 : actions 105 à 154 ; Groupe 6 : actions 131 à 178. 8. Livrables Il vous est demandé de produire un rapport écrit contenant le code, les résultats obtenus et leur interprétation. Le code devra faire l objet d un commentaire détaillé de façon à permettre au correcteur d en comprendre le fonctionnement. Le rapport format.pdf ainsi que le le fichier.bas de votre code 4 devront être envoyés à Joël Folens (Joel.Folens@polytech-lille.fr) et Fabrice Riva (fabrice.riva@iae.univlille1.fr) avec comme intitulé Projet gestion de portefeuille - Groupe <n>. La date et l heure limite de 3. Si l on souhaite malgré tout effectuer une déclaration préalable, le seul type autorisé est le type Variant, sans indication sur la (les) dimension(s) de la variable tableau, soit par exemple dim x as Variant. 4. Vous ne devez sous aucun prétexte envoyer le fichier Excel en raison de sa taille. 4

remise sont fixées au 07 janvier 2015 à 17:00. Une remise hors-délai entraînera la perte automatique de 2 points auxquels s ajouteront 2 points de pénalité supplémentaire par jour de retard. 9. Soutenance Ce projet fera l objet d une soutenance dans la semaine du 12 janvier 2015 (la date exacte vous sera communiquée ultérieurement). Chaque groupe sera auditionné pendant 20 minutes. Les questions posées lors de l audition porteront sur des aspects de programmation mais également sur des éléments de finance vus en cours. L heure exacte de passage des différents groupes ainsi que la salle vous seront précisés ultérieurement. 5