verraux

84

Transcript of verraux

Page 1: verraux

ALEXANE VERRAUXRESOLUTION DE L'EQUATION DE BLACK ET SCHOLESThèse scienti�que

Professeur : M. Robert Piché

Sujet approuvé par le Conseil du

département Teknisluonnontieteen

Réunion le 4 juin 2008

Page 2: verraux

II

ABSTRACT

UNIVERSITE DE TECHNOLOGIE DE TAMPERE

Programme de Master en Teknisluonnontieteen

ALEXANE VERRAUX : Résolution de l'équation de Black et Scholes

Thèse scienti�que, 71 pages, CD contenant les codes Matlab

Juin 2008

Spécialité : Génie mathématique

Professeur : M. Robert Piché

Mots clés : équation de Black et Scholes, options européennes et américaines, méthode

des di�érences �nies, décomposition LU, algorithme de Brennan-Schwartz

L'étude détaillée du modèle mathématique de Black-Scholes est au coeur de la thèse.

On s'intéresse d'abord au cas des options européennes : premièrement, on résout

l'équation de Black-Scholes de manière exacte en utilisant l'équation de la chaleur,

puis on résout à l'aide de schémas numériques dont on pourra comparer les so-

lutions et déduire des propriétés. Ensuite, on considérera le problème des options

américaines. Pour celles-ci, il n'existe pas de solution analytique, on a donc recours à

l'utilisation de méthodes numériques dont l'amélioration est encore un domaine actif

de recherche. On écrira le modèle de Black-Scholes en tant que problème de bornes

libres, puis inégalité variationnelle parabolique. Cette reformulation est cruciale pour

construire un traitement numérique correct du problème.

Page 3: verraux

III

PRÉFACE

La thèse a été débutée en octobre 2007 et achevée en juin 2008. Des rendez-vous

avec le superviseur étaient �xés d'abord toutes les deux semaines, puis toutes les

semaines, a�n de faire des bilans sur l'avancée du travail et dé�nir de nouveaux axes

de recherche. Je tiens à remercier mon tuteur, M. Robert Piché, pour les livres qu'il

m'a prêtés, les explications qu'il m'a apportées concernant le projet, sa gentillesse,

sa grande disponibilité et sa patience pour répondre à mes questions. Je voudrais

également remercier M. Erik Lenglart d'avoir accepté de lire la thèse et rédiger une

appréciation la concernant.

Page 4: verraux

IV

TABLE DES MATIÈRES

1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

I Généralités mathématiques et �nancières 3

2. Options et �nance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

2.1 Les marchés �nanciers . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

2.2 Les produits dérivés . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

2.2.1 Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

2.2.2 Swaps, warrants, forwards et futures . . . . . . . . . . . . . . . . . 7

2.3 Les intervenants . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

3. Le lemme d'Itô . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

4. Modèle pour les prix d'actifs . . . . . . . . . . . . . . . . . . . . . . . . . . 11

4.1 Equation di�érentielle stochastique . . . . . . . . . . . . . . . . . . . . 11

4.2 Propriétés . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

4.3 Elimination du caractère aléatoire . . . . . . . . . . . . . . . . . . . . 13

4.4 Valeur des options, rentabilité et stratégies . . . . . . . . . . . . . . . . 13

4.5 Parité put-call . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

II Le modèle de Black et Scholes pour une option eu-

ropéenne 16

5. Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

6. Solution analytique de l'équation de Black-Scholes . . . . . . . . . . . . . . 19

6.1 Equation de la chaleur . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

6.1.1 Solution fondamentale . . . . . . . . . . . . . . . . . . . . . . . . . 19

6.1.2 Solution générale d'un problème avec conditions initiales . . . . . 21

6.2 Résolution exacte de l'équation de Black et Scholes . . . . . . . . . . . 22

6.2.1 Résolution théorique . . . . . . . . . . . . . . . . . . . . . . . . . 22

6.2.2 Programmation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

6.2.3 Résultats graphiques . . . . . . . . . . . . . . . . . . . . . . . . . 28

7. Résolutions numériques à l'aide de la méthode des di�érences �nies . . . . . 29

7.1 Discrétisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

7.1.1 Théorie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

7.1.2 Implémentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

7.2 Résolutions de l'équation di�érentielle algébrique . . . . . . . . . . . . 31

7.2.1 Méthode d'Euler implicite . . . . . . . . . . . . . . . . . . . . . . 31

7.2.2 Méthode de Crank-Nicolson . . . . . . . . . . . . . . . . . . . . . 32

7.2.3 Méthode d'Alexander . . . . . . . . . . . . . . . . . . . . . . . . . 33

Page 5: verraux

V

7.2.4 Systèmes d'équations linéaires et décomposition LU . . . . . . . . 35

8. Comparaison et analyse des résultats obtenus . . . . . . . . . . . . . . . . . 36

8.1 In�uence du nombre de points dans l'espace : choix de N . . . . . . . 36

8.2 In�uence du nombre de pas de temps : choix de nt . . . . . . . . . . . 37

8.2.1 Etude graphique . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

8.2.2 Régions de stabilité, A-stabilité et L-stabilité . . . . . . . . . . . . 38

8.3 In�uence de la troncature de l'intervalle : choix de L . . . . . . . . . . 41

9. Les Grecques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

9.1 Le Delta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

9.1.1 Solution analytique . . . . . . . . . . . . . . . . . . . . . . . . . . 45

9.1.2 Solutions numériques . . . . . . . . . . . . . . . . . . . . . . . . . 45

9.1.3 Analyse des résultats . . . . . . . . . . . . . . . . . . . . . . . . . 47

9.2 Autres lettres grecques . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

9.2.1 Le thêta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

9.2.2 Le Gamma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

9.2.3 Le Vega . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

9.2.4 Le Rhô . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

III Le modèle de Black et Scholes pour une option améri-

caine 50

10.Options américaines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

10.1 De nouveaux enjeux . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

10.2 Call américain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

10.3 Put américain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

11.Des options américaines aux inégalités variationnelles . . . . . . . . . . . . . 53

11.1 Bornes libres, bornes mobiles . . . . . . . . . . . . . . . . . . . . . . . 53

11.2 Problèmes de bornes libres . . . . . . . . . . . . . . . . . . . . . . . . 53

11.2.1 Problème de l'obstacle . . . . . . . . . . . . . . . . . . . . . . . . 54

11.2.2 Options américaines en tant que problèmes de borne libre . . . . . 54

11.2.3 Black-Scholes pour les options américaines . . . . . . . . . . . . . 55

11.3 Formulation de complémentarité linéaire . . . . . . . . . . . . . . . . . 56

11.3.1 Pour le problème de l'obstacle . . . . . . . . . . . . . . . . . . . . 57

11.3.2 Pour le put américain . . . . . . . . . . . . . . . . . . . . . . . . . 58

12.Evaluation d'une option américaine par di�érences �nies . . . . . . . . . . . 60

12.1 Discrétisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60

12.2 Résolution du problème discrétisé . . . . . . . . . . . . . . . . . . . . . 61

12.2.1 Présentation du schéma . . . . . . . . . . . . . . . . . . . . . . . . 61

12.2.2 Algorithme de Brennan et Schwartz et décomposition LU . . . . . 62

12.2.3 Formulation de complémentarité linéaire . . . . . . . . . . . . . . 63

Page 6: verraux

VI

12.2.4 Implémentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63

12.3 Résultats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63

13.Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66

14.Annexes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68

14.1 Résolution exacte du problème européen . . . . . . . . . . . . . . . . . 68

14.1.1 Fonction BScall . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68

14.1.2 Programme BSschemaExact . . . . . . . . . . . . . . . . . . . . . 68

14.1.3 Programme BSschemaExact3D . . . . . . . . . . . . . . . . . . . . 69

14.2 Résolution numérique du problème européen . . . . . . . . . . . . . . . 69

14.2.1 Fonction get_di�matrix . . . . . . . . . . . . . . . . . . . . . . . . 69

14.2.2 Fonction BSschemaImplicite . . . . . . . . . . . . . . . . . . . . . 70

14.2.3 Fonction BSschemaCrankNicolson . . . . . . . . . . . . . . . . . . 70

14.2.4 Fonction BSAlexander . . . . . . . . . . . . . . . . . . . . . . . . 71

14.3 Etude comparative des méthodes numériques pour l'option européenne 72

14.3.1 Programme erreurEspace . . . . . . . . . . . . . . . . . . . . . . . 72

14.3.2 Programme erreurTemps . . . . . . . . . . . . . . . . . . . . . . . 72

14.3.3 Programme erreurTroncature . . . . . . . . . . . . . . . . . . . . . 73

14.4 Calcul du Delta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74

14.4.1 Fonction calculDeltaAvecEquation . . . . . . . . . . . . . . . . . . 74

14.4.2 Programme delta . . . . . . . . . . . . . . . . . . . . . . . . . . . 74

14.5 Option américaine : programme brennanSchwartz . . . . . . . . . . . . 75

Page 7: verraux

VII

TABLE DES FIGURES

4.1 Pro�t de gains d'un call . . . . . . . . . . . . . . . . . . . . . . . . . 14

4.2 Pro�t de gains d'un put . . . . . . . . . . . . . . . . . . . . . . . . . 14

6.1 Représentation graphique des valeurs d'une option d'achat (call) en

deux puis trois dimensions . . . . . . . . . . . . . . . . . . . . . . . . 28

8.1 Erreurs des trois schémas en fonction du nombre de points dans l'es-

pace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

8.2 Erreurs des trois schémas en fonction du nombre de pas de temps . . 37

8.3 Région de stabilité de la méthode d'Euler implicite . . . . . . . . . . 39

8.4 Région de stabilité de la méthode de Crank-Nicolson . . . . . . . . . 40

8.5 Erreurs des trois schémas en fonction de l'éloignement de la borne de

troncature . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

9.1 Delta théorique d'un call européen . . . . . . . . . . . . . . . . . . . 45

9.2 Représentation de l'erreur du Delta approximé par Dy ou par l'équation 47

12.1 Put américain calculé avec l'algorithme de Brennan-Schwartz, E=50,

σ = 0.4, r=0.1, T=1 . . . . . . . . . . . . . . . . . . . . . . . . . . . 64

Page 8: verraux

1

1. INTRODUCTION

Avec le développement des marchés �nanciers, l'étude des options devient un

véritable enjeu et n'a pas cessé de prendre de l'importance au cours des dernières

années.

L'observation empirique du cours des actifs �nanciers montre que ceux-ci ne sont

pas déterminés de façon certaine par leur histoire. En e�et, les nombreuses opéra-

tions d'achat ou de vente ne sont pas prévisibles, font souvent intervenir des élé-

ments n'appartenant pas à l'historique et modi�ent le cours de l'actif. Celui-ci est

donc souvent représenté par un processus chaotique que l'on modélise à l'aide d'un

mouvement brownien.

Le but de ce projet est d'étudier un modèle �nancier très largement utilisé, celui

de Black et Scholes. Le concept fondamental est de mettre en rapport le prix implicite

de l'option et les variations de prix de l'actif sous-jacent.

Le terme de Black-Scholes est utilisé pour désigner trois concepts très proches :

� le modèle Black-Scholes est un modèle mathématique du marché pour une

action, dans lequel le prix de l'action est un processus stochastique ;

� l'équation aux dérivées partielles de Black-Scholes est l'équation satis-

faite par le prix d'un dérivé d'une action ;

� la formule de Black-Scholes est la solution obtenue pour l'équation de Black-

Scholes quand on considère des options de type européen.

Robert C. Merton a été le premier à publier un article développant l'aspect mathé-

matique d'un modèle d'évaluation d'option en citant les travaux de Fischer Black et

de Myron Scholes. Robert Merton et Myron Scholes ont reçu en 1997 le � Prix Nobel

d'économie � pour leurs travaux. Fischer Black, décédé en 1995 et donc inéligible, a

été cité comme contributeur.

Le but de la thèse présentée est d'étudier les propriétés, avantages et inconvénients

de di�érentes méthodes de résolution de l'équation de Black-Scholes, pour des op-

tions européennes et américaines. Pour cela, on présentera di�érentes approches

pour la résolution et on mettra en évidence les propriétés de chacune d'entre elles

comparées à une solution analytique, si elle existe. Le travail sera divisé en trois

parties.

La première partie présentera de manière succincte les généralités mathématiques

et �nancières indispensables à connaitre a�n de comprendre les explications et pro-

Page 9: verraux

1. Introduction 2

cessus considérés dans la suite de la thèse. Nous présenterons le fonctionnement des

marchés �nanciers et dé�nirons précisément les marchés d'options avant de présenter

le modèle de base que nous allons utiliser tout au long de notre étude.

La deuxième partie sera consacrée au modèle de Black-Scholes pour une op-

tion européenne. Nous verrons les hypothèses du modèle puis résoudrons l'équation

de manière exacte. L'étape suivante consistera à résoudre l'équation en utilisant

divers schémas numériques. Il sera alors possible de comparer les di�érentes solu-

tions obtenues, modéliser les erreurs et en déduire l'in�uence des divers paramètres

�xés dans le modèle numérique préconisé. Finalement, on fera une rapide étude

des grecques, puisqu'elles sont étroitement liées au modèle que nous cherchons à

analyser.

La dernière partie du projet concernera le modèle de Black-Scholes pour les op-

tions américaines. Nous y verrons les di�érences fondamentales entre le modèle

européen et le modèle américain. Comme nous n'avons pas ici de solution ana-

lytique, on reformulera notre problème de manière à faciliter l'implémentation. La

nouvelle formulation permettra d'adapter le modèle numérique précédemment dé�ni

pour les options européennes, mais également l'utilisation d'un algorithme que nous

adapterons à notre cas et dont nous démontrerons l'e�cacité.

Page 10: verraux

3

Première partie

Généralités mathématiques et

�nancières

Page 11: verraux

4

2. OPTIONS ET FINANCE

Ce chapitre est une brève introduction au vocabulaire utilisé dans le monde de

la �nance. Avant une description mathématique, il est en e�et nécessaire de clari�er

quelques dé�nitions économiques a�n de comprendre les processus sous-jacents à

ce que l'on souhaite modéliser. Nous dé�nirons rapidement les marchés �nanciers,

les produits que l'on peut y échanger et les intervenants. Nous ne développerons

les explications que pour les termes largement manipulés dans cette thèse. Pour des

informations plus détaillées sur le fonctionnement des marchés, on pourra se reporter

à [1].

2.1 Les marchés �nanciers

Les marchés �nanciers (capital ou �nancial markets en anglais) sont les marchés

où sont e�ectuées les transactions sur des actifs �nanciers et, de plus en plus, leurs

produits dérivés.

Le marché est le lieu où se rencontrent l'o�re et la demande d'un certain bien.

On distingue généralement le marché des capitaux, où se négocie les outils de �-

nancement à long terme (plus de cinq ans), du marché monétaire qui pour sa part

concerne le �nancement à court terme. Les principales fonctions d'un marché sont :

� la transmission des ordres, c'est-à-dire les annonces d'une intention d'a-

cheter ou de vendre.

� l'exécution des ordres, c'est-à-dire leur transformation en transactions.

� la di�usion de l'information : connaissance des quantités d'actifs disponibles

à un prix donné, connaissance des prix, ...

On distingue deux types de marché, selon le comportement des participants :

Les marchés organisés d'actifs dérivés

Ce sont des marchés sur lesquels sont échangés des contrats standardisés, élaborés

par les autorités de marché, et qui font l'objet de contrôles publics. Au départ,

l'objectif essentiel était de standardiser quantités et qualités de produits échangés.

Quelques années plus tard, le premier contrat futures a été mis en place puis

rapidement, les spéculateurs ont trouvé plus attractif de spéculer sur le contrat que

sur le produit lui-même. Alors que, traditionnellement, les membres de marché négo-

ciaient en un lieu unique, à la criée, à l'aide d'un jeu de signes complexe, l'évolution

Page 12: verraux

2. Options et �nance 5

technologique a conduit à l'émergence de la négociation (trading) électronique qui

est la norme aujourd'hui.

Les marchés de gré à gré

Ils sont généralement notés OTC pour Over The Counter. Ces marchés con-

stituent une alternative importante en termes de volumes de transactions. Les échanges

sont conclus par téléphone ou par l'intermédiaire de réseaux informatiques entre deux

institutions �nancières ou entre une institution et l'un de ses clients.

Les transactions sur le marché OTC sont en général d'un montant moyen plus

important que sur le marché organisé et les conversations téléphoniques sont enreg-

istrées pour régler les litiges éventuels. L'avantage essentiel du marché OTC réside

dans la possibilité de traiter des produits sur mesure, la contrepartie étant qu'une

des deux parties puisse faire défaut. Les marchés organisés ont, par contre, dé�ni

des règles de fonctionnement qui rendent ce risque pratiquement nul.

2.2 Les produits dérivés

En �nance, un produit dérivé, ou dérivé �nancier, est un contrat entre deux

parties, un acheteur et un vendeur, qui �xe des �ux �nanciers futurs basés sur

ceux d'un actif sous-jacent, réel ou théorique, généralement �nancier. On distingue

notamment les swaps, warrants, forwards, futures et options. Nous présenterons ces

dernières de manière plus approfondie puisque ce sont celles que nous manipulerons

dans cette thèse.

2.2.1 Options

Dé�nition

Les options sont échangées sur les deux types de marché. Il en existe de deux

types.

Une option d'achat, call, donne le droit à son détenteur d'acheter une certaine

quantité d'un actif sous-jacent à une date future donnée et à un prix convenu. On

précise qu'est appelé actif sous-jacent, ou support, tout actif sur lequel porte une

option ou plus largement un produit dérivé. Une option de vente, put, donne le

droit à son détenteur de vendre une certaine quantité d'un actif sous-jacent à une

date future et à un prix convenu.

Ce prix est appelé prix d'exercice ; la date maximale à laquelle le droit peut

être exercé est la date d'échéance. Si l'exercice peut survenir à tout moment jusqu'à

la date d'échéance, l'option est dite américaine. Par contre, si l'option ne peut être

exercée qu'à la date d'échéance, elle est dite européenne.

Page 13: verraux

2. Options et �nance 6

Il existe trois catégories de prix d'exercice :

� Les options à la monnaie sont celles dont le prix d'exercice est le plus proche

du cours de l'action.

� Les options dans la monnaie sont celles dont le prix d'exercice est inférieur

au cours de l'action.

� Les options en dehors de la monnaie sont celles dont le prix d'exercice est

supérieur au cours de l'action.

Un point essentiel est que l'achat d'une option donne le droit mais pas l'obligation de

faire quelque chose. Le détenteur de l'option acquiert un droit, l'émetteur contracte

une obligation. C'est la di�érence fondamentale avec avec les contrats forward et

futures pour lesquels les contreparties sont obligées d'acheter ou de vendre. Cette

particularité implique qu'acheter un contrat d'option a un coût initial, ce qui n'est

pas le cas pour un forward ou un futures.

Le prix de l'option dé�ni pour une unité de sous-jacent est appelé Premium.

Les composantes du prix d'une option

La valeur de l'option est communément partagée en valeur intrinsèque et valeur

temps.

La valeur intrinsèque est la valeur qu'aurait l'option si le jour de l'échéance

était le jour d'achat de l'option. Lorsque le cours du sous-jacent est supérieur au

prix d'exercice, la valeur intrinsèque est égale au cours du sous-jacent moins le prix

d'exercice. Dans tous les autres cas, la valeur intrinsèque est égale à 0.

La valeur temps est en quelque sorte la valeur d'espoir de l'option. Il s'agit de la

di�érence entre le prix de l'option et sa valeur intrinsèque. Cette valeur décroît avec

le temps car au fur et à mesure que l'échéance de l'option approche, l'incertitude

sur le prix du sous-jacent disparaît, donc l'espoir disparaît. L'option est un "wasting

asset", c'est-à-dire un actif qui se déprécie avec le temps.

Les déterminants du prix d'une option

Intuitivement, la valeur d'une option, c'est-à-dire la prime à débourser pour

l'acquérir, représente la probabilité d'exercer celle-ci : plus l'exercice est probable,

plus l'option sera chère. La valeur d'une option dépend principalement des quatre

paramètres que nous dé�nissons ci-après :

Le cours du support

L'option varie en fonction du cours de son support. Si le support baisse, le call

baisse et le put monte. Si le support monte, c'est l'inverse qui se produit.

Page 14: verraux

2. Options et �nance 7

La volatilité

Le prix d'exercice et la durée de vie d'une option sont �xés dans le contrat. Les

cours de l'action et le risque sont observables. La seule inconnue reste la volatilité.

La volatilité est l'écart type annualisé du taux de variation instantané du prix de la

valeur.

Cette volatilité est le déterminant fondamental du prix d'une option, on peut la

calculer de deux manières di�érentes :

� La volatilité historique : on l'utilise pour essayer de prévoir les cours futurs,

les cours passé, c'est-à-dire que l'on prend en général les anciens cours pour

essayer de retrouver une similitude avec les nouveaux et prévoir ainsi l'évolution

de l'action.

� La volatilité implicite : on se sert ici du cours de l'action et de l'option pour

déterminer par tâtonnement le cours de l'option. Comme il existe plusieurs

options sur la même action, on obtient plusieurs volatilités implicites qui sont

composées pour donner la volatilité implicite.

La relation entre le cours de l'action et le taux d'intérêt

Celui qui achète un call dans le but d'acheter le support sous-jacent réalise une

économie de trésorerie d'autant plus importante que les taux d'intérêt sont élevés et

la valeur temps faible.

La relation entre le cours de l'action et le dividende

Quand une société procède à une distribution de dividendes, le cours de l'action

diminue en théorie de la valeur du coupon. Les options ne sont en aucun cas touchées

par ce genre d'opérations sauf en cas d'exercice. Dans ce cas, l'action levée est une

action dépréciée.

2.2.2 Swaps, warrants, forwards et futures

Swaps

Un Swap est un accord entre deux entreprises pour échanger des �ux de trésorerie

dans le futur. Cet accord dé�nit les dates auxquelles ces cash-�ows seront échangés

et la façon dont ils seront calculés. Généralement, ils dépendent d'une ou plusieurs

variables économiques comme un taux d'intérêt ou un taux de change.

La formidable dynamique des marchés de swaps réside dans ce qu'il n'y a pas

d'échange de capital, seulement l'échange de �ux d'intérêt. Dans le cas d'un swap

de taux d'intérêt, il s'agit donc d'un prêt débarrassé de l'essentiel de son risque de

crédit.

Page 15: verraux

2. Options et �nance 8

Warrants

Les warrants, ou dérivés de crédit, sont des valeurs mobilières de type optionnel

qui donnent le droit d'acheter ou de vendre un actif �nancier (devises, indices, taux,

actions,...) dans des conditions de prix et de durée dé�nies à l'avance. Ainsi, le call

warrant donne le droit d'acheter à un prix �xé jusqu'à une date donnée. Le put

warrant donne le droit de vendre à un prix �xé jusqu'à une date donnée. Ils sont

créés par un établissement �nancier qui en assure la di�usion et la cotation.

Forward

Un contrat forward est un actif dérivé très simple. C'est un engagement ferme

à acheter ou à vendre un actif, appelé sous-jacent, à une date future donnée et pour

un prix convenu. La partie qui s'engage à acheter l'actif prend une position dite

longue, alors que celle qui s'engage à le vendre prend une position dite courte.

Futures

Un contrat futures est, comme un contrat forward, un accord entre deux parties

pour acheter ou vendre un actif donné à une date future et pour un prix convenu.

2.3 Les intervenants

Le succès des marchés d'option trouve son origine dans la capacité de ces derniers

à attirer diverses catégories d'investisseurs. La liquidité, conséquence de ce succès,

permet à tout investisseur souhaitant prendre une position en options de trouver

une contrepartie.

On distingue trois catégories d'intervenants : les opérateurs en couverture

encore appelés hedgers, les spéculateurs et les arbitragistes.

Les hedgers utilisent les contrats forward, les futures ou les options pour ré-

duire leur exposition au risque de variation de la valeur des actifs sous-jacents à

ces contrats. Les spéculateurs prennent quant à eux des positions qui sont des paris

sur l'évolution future de ces sous-jacents. Les arbitragistes cherchent à pro�ter, en

prenant position sur plusieurs contrats ou actifs, des incohérences momentanées dans

les cotations.

Page 16: verraux

9

3. LE LEMME D'ITÔ

Dans la vie réelle, les prix des actifs sont évalués en des intervalles de temps dis-

crets. Il y a donc une borne inférieure pour le pas de temps dt de notre équation

di�érentielle stochastique. Mais si on utilise ce pas de temps en pratique pour éval-

uer des options, on aura à considérer de grandes quantités de données, ce qui est

incontrôlable.

On établit par conséquent nos modèles mathématiques en temps continu avec la

limite dt→ 0. Il en découle que nous avons besoin d'outils techniques pour manipuler

le terme aléatoire dX quand dt→ 0, d'où le lemme d'Itô, qui relie la petite variation

dans une fonction à la petite variation dans la variable aléatoire elle-même.

Supposons que f(S) est une fonction régulière de S. Le développement en séries

de Taylor donne :

df =df

dSdS +

1

2

d2f

dS2dS2 + ...

Mais dS = σSdX+µSdt donc dS2 = (σSdX+µSdt)2 = σ2S2dX2+2σµS2dtdX+

µ2S2dt2

Or, dX = O(√dt), donc pour un petit dt, le premier terme domine les deux

autres, d'où :

dS2 = σ2S2dX2 + ...

et �nalement

dS2 → σ2S2dt

On substitue ce résultat dans l'équation de df en ne retenant que les termes au

moins aussi grand que O(dt).

df =df

dS(σSdX + µSdt) +

1

2σ2S2 d

2f

dS2dt

= σSdf

dSdX + (µS

df

dS+

1

2σ2S2 d

2f

dS2)dt

Le premier terme est aléatoire, le second est déterministe. On retrouve ainsi une

équation ayant la même forme que notre équation di�érentielle stochastique de dé-

part.

Page 17: verraux

3. Le lemme d'Itô 10

Si l'on considère maintenant une fonction f dépendante de la variable aléatoire

S et de t :

df = f(S + dS, t+ dt)− f(S, t) =∂f

∂SdS +

∂f

∂tdt+

1

2

∂2f

∂S2dS2 + ...

Il en résulte la formule d'Itô :

df = σS∂f

∂SdX + (µS

∂f

∂S+

1

2σ2S2 ∂

2f

∂S2+∂f

∂t)dt

Distribution lognormale

Si on prend pour fonction f(S) = log(S), alors dfdS

= 1Set d2f

dS2 = − 1S2

On a donc df = σdX + (µ− 12σ2)dt

Le saut df est normalement distribué. f correspond à la somme des df . A la

limite, cette somme devient une intégrale. f − f0 ayant une distribution normale de

moyenne (µ− 12σ2)t et de variance σ2t, la densité de f(S) est :

1

σ√

2πte−(f−f0−(µ− 1

2σ2)t)2/2σ2t −∞ < f < +∞

A partir de la densité de probabilité de f(S) = log(S), on en déduit celle de S :

1

σS√

2πte−(log S

S0−(µ− 1

2σ2)t)2/2σ2t

0 < S < +∞

Page 18: verraux

11

4. MODÈLE POUR LES PRIX D'ACTIFS

Les prix des actifs changent de manière aléatoire, mais on va faire ici deux hy-

pothèses fondamentales :

� la distribution de l'état futur dépend uniquement de l'état présent, et pas des

états passés : propriété de Markov

� les marchés répondent immédiatement à toute nouvelle information concernant

un actif.

On considère donc un processus de Markov.

On associe à chaque actif un rendement : changement dans le prixprix d′origine

. On a ainsi une

mesure relative de la variation, ce qui est un meilleur indicateur de sa taille qu'une

mesure absolue. En e�et, une variation de 1 unité sera plus signi�ante sur un prix

d'actif de 20 unités que sur un prix d'actif de 200 unités.

Après la présentation des généralités �nancières du chapitre précédent, on va ici

dé�nir le modèle mathématique de base que l'on va utiliser tout au long de cette

thèse : l'équation di�érentielle stochastique et ses propriétés ainsi que les propriétés

techniques liées aux options. On renvoie à [2] pour plus d'informations.

4.1 Equation di�érentielle stochastique

Au temps t, le prix de l'actif est S. Considérons un intervalle de temps dt pendant

lequel S change à S + dS. Le rendement correspondant est modélisé par l'Equation

Di�érentielle Stochastique (EDS) suivante :

dS

S= σdX + µdt

avec :

� µdt : µ est appelé le dérive. Il correspond à une mesure du taux moyen de

croissance du prix de l'actif. µ peut être une constante dans les modèles les

plus simples ou une fonction de S et de t pour des modèles plus compliqués.

� σdX : modélise la variation aléatoire dans le prix de l'actif en réponse aux e�ets

extérieurs, tels que des nouvelles informations. σ est la volatilité. Elle mesure

la déviation standard du rendement de l'actif.

Si σ = 0, le prix de l'actif est entièrement déterministe et on peut prévoir avec

certitude le futur prix de l'actif.

Page 19: verraux

4. Modèle pour les prix d'actifs 12

dX contient un phénomène aléatoire qui est une caractéristique des prix des actifs.

C'est un processus de Wiener, c'est-à-dire que :

� dX est une variable aléatoire ayant une distribution normale

� la moyenne de dX est 0

� la variance de dX est dt

ce qui se traduit par dX =φ√dt, φ étant une variable aléatoire de distribution

standardisée normale (moyenne nulle, densité : 1√2πe−

12φ2)

4.2 Propriétés

L'Equation Di�érentielle Stochastique présentée a les propriétés :

E[dS] = E[σSdX + µSdt] = µSdt car E[dX] = 0

V [dS] = E[dS2]− (E[dS])2

= E[σ2S2dX2 + 2σS2µdXdt+ µ2S2dt2]− µ2S2dt2

On considère ici des variations de temps le plus petites possibles. A�n de simpli�er

l'expression obtenue, on va chercher à exprimer dX2 quand dt→ 0.

L'équation di�érentielle stochastique sous forme intégrale s'écrit :

S(t) = S(t0) + σ

∫ t

t0

SdX + µ

∫ t

t0

Sdt

Nous n'avons pas de dé�nition pour le terme d'intégration du processus deWiener.

La dé�nition d'une telle intégrale est, pour toute fonction h, t0 < t1 < ... < tm = t

Int =

∫ t

t0

h(τ)dX(τ) = limm→∞

Intm

avec

Intm =∑m−1

k=0 h(tk)(X(tk+1)−X(tk))

[t0, t] est divisé en m régions. Notons que la fonction h est évaluée à gauche : la

propriété de Markov est incorporée dans le modèle.

Par intégration stochastique de l'équation sous forme intégrale à l'aide du lemme

d'Itô, f fonction régulière de S, on obtient :

f(S(t)) = f(S(t0)) +

∫ t

t0

σSdf

dSdX +

∫ t

t0

[µSdf

dS+

1

2σ2S2 d

2f

dS2]dt

Et donc, on déduit que dX2 → dt quand dt→ 0, d'où le résultat �nal :

V [dS] = E[σ2S2dt] = σ2S2dt

Page 20: verraux

4. Modèle pour les prix d'actifs 13

4.3 Elimination du caractère aléatoire

Le caractère des expressions de S et f dépend de la seule variable aléatoire dX.

On peut exploiter cela en construisant une troisième variable g dont la �uctuation

dg est déterministe sur dt.

Soit 4 un nombre et g = f −4S, 4 étant maintenu constant sur l'intervalle dt.

Alors :

dg = df −4dS= σS ∂f

∂SdX + (µS ∂f

∂S+ 1

2σ2S2 ∂2f

∂S2 + ∂f∂t

)dt−4(σSdX + µSdt)

= σS( ∂f∂S−4)dX + (µS( ∂f

∂S−4) + 1

2σ2S2 ∂2f

∂S2 + ∂f∂t

)dt

Si on choisit 4 = ∂f∂S, le coe�cient de dX s'annule et g devient purement déter-

ministe.

4 est la valeur de ∂f∂S

au début de l'intervalle de temps dt (propriété de Markov).4représente le taux de change de la valeur de notre portefeuille d'options, c'est-à-dire

qu'il mesure la corrélation entre les mouvements des options et ceux du sous-jacent.

4.4 Valeur des options, rentabilité et stratégies

Nous présentons d'abord dans ce chapitre les variables que nous allons utiliser tout

au long de ce projet, aussi bien dans les codes Matlab que dans les développements

théoriques, et leurs signi�cations.

V : valeur de l'option, c'est-à-dire valeur courante de l'actif sous-jacent, S, et du

temps t. On distinguera C(S, t) et P (S, t) pour call et put si nécessaire.

σ : volatilité de l'actif sous-jacent

E : prix d'exercice

T : date d'expiration

r : taux d'intérêt

P : premium.

On se place à l'échéance, à savoir la date t = T .

Si S > E, on exerce le call et le béné�ce est S − E, sinon, on n'exerce pas.

La valeur du call à l'expiration est par conséquent :

C(S, t) = max(S − E, 0)

Le pro�t de gains d'un call est représenté ci-après :

Page 21: verraux

4. Modèle pour les prix d'actifs 14

Fig. 4.1: Pro�t de gains d'un call

Plus on approche de la date d'expiration et plus on suivra cette expression. Cette

di�érence entre la valeur de l'option avant et à l'expiration est la valeur dans le

temps.

La valeur à l'expiration est la valeur intrinsèque.

Inversement, si S < E, on exerce le put et le béné�ce est E−S, sinon, on n'exerce

pas.

La valeur du put à l'expiration est alors :

P (S, t) = max(E − S, 0)

Le pro�t de gains d'un put est représenté ci-dessous :

Fig. 4.2: Pro�t de gains d'un put

Bien que la structure de base pour exprimer la rentabilité soit le call ou le put,

on peut écrire plus généralement pour un contrat d'option la rentabilité :

H(S −E) avec H(.) la fonction poids de valeur nulle si S −E < 0 et de valeur 1

sinon.

Cette option est appelée cash-or-nothing call.

Page 22: verraux

4. Modèle pour les prix d'actifs 15

Les options avec de telles rentabilités générales sont appelées binaires ou digi-

tales.

Mais en combinant les calls et les puts avec des prix d'exercice variés, on peut

construire des portefeuilles ayant une grande diversité de payo�s.

4.5 Parité put-call

Options d'achat et de vente peuvent être combinées de manière à devenir par-

faitement corrélées.

Supposons un call et un put avec la même date d'expiration T et le même prix

d'exercice E. π est la valeur du portefeuille.

π = S + P − C

Le payo� de ce portefeuille à l'expiration est : S+ max(E−S, 0)−max(S−E, 0)

On a :S + (E − S)− 0 = EsiS ≤ E

S + 0− (S − E) = EsiS ≥ E

Le payo� est le même dans les deux cas. Avec un taux d'intérêt constant, la valeur

du portefeuille croît exponentiellement selon : dππ

= r.dt

La solution est simplement π = cert, c constante d'intégration.

Puisque π = E à t = T , la valeur du payo� au temps t est πE

= cert

cerT, ce qui

conduit à : π = Ee−r(T−t)

Si le taux d'intérêt est une fonction connue du temps, on peut modi�er triviale-

ment l'équation di�érentielle en :

π = Ee−R Tt r(s)ds

La valeur du portefeuille étant Ee−r(T−t), on a

S + P + C = Ee−r(T−t)

Cette relation entre l'actif sous-jacent et son option est appelée parité put-call.

Ceci est un nouvel exemple d'élimination du risque en e�ectuant une transaction

sur l'actif et chacune de ses options. En e�et, la rémunération du portefeuille est

égale à la rémunération du dépôt en banque. Si ce n'était pas le cas, les arbitragistes

pourraient faire un pro�t instantané sans risque en achentant et vendant des options

et en même temps en empruntant et prêtant de l'argent dans de bonnes proportions.

Les arbitragistes pourraient se positionner dans un pro�t aujourd'hui avec 0 payo�

dans le futur.

Page 23: verraux

16

Deuxième partie

Le modèle de Black et Scholes pour

une option européenne

Page 24: verraux

17

5. PRÉSENTATION

Supposons que l'on a une option (put ou call) dont la valeur V (S, t) dépend

uniquement de S et de T , alors avec le lemme d'Itô (chapitre 4), on peut écrire :

dV (S, t) = σS∂V

∂SdX + (µS

∂V

∂S+

1

2σ2S2∂

2V

∂S2+∂V

∂t)dt

Ceci donne la marche aléatoire suivie par V .

Construisons un portefeuille contenant une option et un nombre −4 d'actif sous-

jacent. La valeur du portefeuille est :

π = V −4S

La variation de cette valeur sur un intervalle de temps est : dπ = dV −4dS , 4maintenu �xe pendant l'intervalle de temps considéré.

Rappelons que dS = σSdX + µSdt (Equation Di�érentielle Stochastique)

Comme on l'a vu dans la section 4.3, en choisissant 4 = ∂V∂S, on peut arriver à

un portefeuille dont l'incrément est totalement déterministe :

dπ = (∂V

∂t+

1

2σ2S2∂

2V

∂S2)dt

La rentabilité d'un montant π investi dans des actifs sans risque présente une

croissance rπdt pendant dt.

Si (∂V∂t

+ 12σ2S2 ∂2V

∂S2 )dt > rπdt, un arbitragiste peut assurément faire un pro�t

sans risque en empruntant un montant π dans le portefeuille. La rentabilité sera

supérieure au coût de l'emprunt.

Dans le cas inverse, l'arbitragiste investira π à la banque.

Dans ces deux cas, l'arbitragiste ferait un pro�t sans risque, sans coût, instanta-

nément. Il faut donc dé�nir :

rπdt = (∂V

∂t+

1

2σ2S2∂

2V

∂S2)dt

r(V −4S) =∂V

∂t+

1

2σ2S2∂

2V

∂S2avec4 =

∂V

∂S

Page 25: verraux

5. Présentation 18

∂V

∂t+

1

2σ2S2∂

2V

∂S2+ rS

∂V

∂S− rV = 0

Il s'agit de l'équation di�érentielle de Black et Scholes.

Page 26: verraux

19

6. SOLUTION ANALYTIQUE DE L'ÉQUATION

DE BLACK-SCHOLES

Dans ce chapitre, nous allons tout d'abord résoudre l'équation de la chaleur,

également appelée équation de di�usion, avant d'utiliser la solution obtenue dans

la résolution analytique de l'équation de Black et Scholes. Nous présenterons la ré-

solution théorique avant d'expliquer brièvement les principales commandes utilisées

pour la programmation. Ce chapitre est très largement inspiré de la méthode de

résolution décrite par Wilmott, Howison et Dewynne dans [2].

6.1 Equation de la chaleur

L'equation de la chaleur, également appelée équation de di�usion, s'écrit :

∂u

∂t=∂2u

∂x2

Il s'agit d'une équation parabolique1 linéaire du second ordre dont les solutions

sont des fonctions analytiques de x , ce qui signi�e que∀t > t0, u(x, t) possède une

série convergente en termes de x− x0.

6.1.1 Solution fondamentale

On résout le problème :∂u

∂t=∂2u

∂x2

sous les conditions

{−∞ < x <∞

u(x, 0) = u0(x)u→ 0quandx→ ±∞

}.

Si la solution u(x, t) d'une équation aux dérivées partielles dépend seulement

d'une combinaison de deux variables indépendantes, le problème peut être réduit à

une équation di�érentielle ordinaire dans laquelle cette combinaison est la variable.

1Classi�cation des équations di�érentielles partielles linéaires du second ordreSi on considère une équation linéaire du second ordre de la forme générale

a∂2u

∂x21

+ b∂2u

∂x1∂x2+ c

∂2u

∂x22

= f(x1, x2, u,∂u

∂x1,∂u

∂x2)

et le nombre 4 = b2 − 4ac, l'équation est dite elliptique si 4 < 0, parabolique si 4 = 0 et

hyperbolique si 4 > 0.

Page 27: verraux

6. Solution analytique de l'équation de Black-Scholes 20

La solution de cette seconde équation est similaire à celle de l'équation aux dérivées

partielles d'origine.

Ceci peut être fait grâce à l'invariance x 7→ λx, t 7→ λ2t ∀λ ∈ RAvec les nouvelles variables X = λx et T = λ2t, on a ∂u

∂T= ∂2u

∂X2 .x√t

= X√Test la seule combinaison de X et T qui est indépendante de λ, et donc

la solution sera en fonction de ξ = x√tseulement, telle que u(x, t) = U( x√

t).

Ici, on va chercher à avoir une solution de la forme uδ(x, t) = t−1/2Uδ(ξ).

Le terme t−1/2 est ajouté car l'équation de di�usion étant linéaire, u 7→ µu est

aussi invariant, et on veut s'assurer que∫ +∞−∞ u(x, t)dx est constante pour tout t.

En dérivant, on obtient :

∂uδ(x, t)

∂t= −1

2t−3/2Uδ(ξ)−

1

2tt−1/2ξU ′δ(ξ)

et :

∂uδ(x,t)∂x

= 1√tt−1/2U ′δ(ξ)

∂2uδ(x,t)∂x2 = 1

t√tU ′′δ (ξ)

Finalement, en considérant l'équation de la chaleur :

U ′′δ (ξ) +1

2Uδ(ξ) +

1

2ξU ′δ(ξ) = 0

Cette équation correspond à la forme développée de :

U ′′δ + (1

2ξUδ)

′ = 0

On intègre une première fois∫ +∞

−∞U ′′δ +

∫ +∞

−∞(1

2ξUδ)

′ = U ′δ +1

2ξUδ = 0

puis une seconde fois ∫ +∞

−∞

U ′δUδ

= −∫ +∞

−∞

1

2ξdξ

soit :

lnUδ = [−1

4ξ2]+∞−∞

Uδ = Ce−14ξ2 +D

On choisit D = 0 et on normalise la solution grâce à C = 12√πde telle sorte que∫ +∞

−∞ u(x, t)dx = 1.

Page 28: verraux

6. Solution analytique de l'équation de Black-Scholes 21

Finalement :

uδ(x, t) =1

2√πte−

x2

4t

6.1.2 Solution générale d'un problème avec conditions ini-

tiales

On résout le problème :∂u

∂t=∂2u

∂x2

sous les conditions −∞ < x <∞, t > 0

et u(x, 0) = u0(x) où u0(x) se comporte su�samment bien, c'est-à-dire :{lim|x|→+∞ u0(x)e−ax

2= 0, ∀a > 0

lim|x|→∞ u(x, t)e−ax2

= 0, ∀a > 0, t > 0

}On peut écrire la donnée initiale de ce problème de la façon suivante :

u0(x) =

∫ +∞

−∞u0(ξ)δ(ξ − x)dξavec δ(.) la fonction Dirac

On rapelle que la solution fondamentale de l'équation de di�usion est :

uδ(s, τ) =1

2√πτe−

s2

et qu'elle a la valeur initiale :

uδ(s, 0) = δ(s)

Puisque uδ(s−x, τ) = uδ(x− s, τ), on a uδ(s−x, τ) = 12√πτe−

(s−x)24τ pour solution

de l'équation de la chaleur en utilisant x ou s comme variable spatiale indépendante.

Sa valeur initiale est : uδ(s− x, 0) = δ(s− x).

Donc, pour chaque s, la fonction u0(s)uδ(s − x, τ), fonction de x et de t, s �xé,

satisfait :

∂u∂τ

= ∂2u∂x2

u0(s)uδ(s− x)

L'équation de di�usion étant linéaire, en intégrant s de −∞ à +∞, on obtient

une autre solution de l'équation de di�usion :

u(x, τ) =1

2√πτ

∫ +∞

−∞u0(s)e

− (x−s)24τ ds

Page 29: verraux

6. Solution analytique de l'équation de Black-Scholes 22

avec

u(x, 0) =

∫ +∞

−∞u0(s)δ(s− x)ds = u0(x)

6.2 Résolution exacte de l'équation de Black et Scholes

La section précédente était consacrée à la résolution de l'équation de la chaleur.

Les résultats obtenus vont être maintenant utilisés a�n de résoudre de manière exacte

l'équation de Black et Scholes. On distinguera deux sections, la première présentant

la résolution numérique théorique détaillée de l'équation et la seconde présentant les

principales fonctions Matlab utilisées pour la programmation. Une dernière partie

sera consacrée à la présentation du graphique obtenu, le résultat étant indispensable

a�n d'e�ectuer ultérieurement une étude comparative.

6.2.1 Résolution théorique

Comme nous l'avons vu précédemment, pour un call européen de valeur C(S, t),

on a l'équation :

∂C

∂τ+

1

2σ2S2∂

2C

∂S2+ rS

∂C

∂S− rC = 0

avec

C(0, t) = 0

C(S, t) ∼ S quand S →∞C(S, t) = max(S − E, 0)

Cette équation ressemble à celle de la chaleur mais elle a plus de termes, et à

chaque fois que C est di�érencié par rapport à S, il est multiplié par S, ce qui donne

des coe�cients non constants. L'équation est clairement sous une forme backward2.

On va tout d'abord chercher à se débarrasser des coe�cients S et S2 et rendre

l'équation sans dimension, c'est-à-dire rassembler les paramètres autant que possible

a�n de connaître le véritable nombre de constantes indépendantes dans la solution

et pouvoir exploiter le fait que les paramètres sont très grands ou au contraire très

petits pour les approximer.

On pose : S = Eex, t = T − τ12σ2 , C = Ev(x, τ)

On a donc le changement de variables :

v(x, τ) =1

EC(Eex, T − τ

12σ2

) =1

EC(S, t)

2Forme Backward/ForwardSi l'équation est linéaire et les signes devant chacune des dérivées sont les mêmes quand ils

apparaissent du même côté de l'équation, alors l'équation est dite backward. Sinon, elle est dite

forward.

Page 30: verraux

6. Solution analytique de l'équation de Black-Scholes 23

En dérivant cette expression une première fois par rapport à x :

∂v

∂x=

1

E

∂C

∂S

∂S

∂x+

1

E

∂C

∂t

∂t

∂x

La deuxième partie de l'expression est nulle et la dérivée de S par rapport à x

donne S, d'où le résultat :

E∂v

∂x= S

∂C

∂S

On dérive une seconde fois :

∂2v

∂x2=

∂x[∂v

∂x] =

∂x[1

ES∂C

∂S]

=∂

∂S[1

ES∂C

∂S]∂S

∂x=

1

E[∂C

∂S+ S

∂2C

∂S2]S

=S

E

∂C

∂S+S2

E

∂2C

∂S2

On dérive maintenant par rapport à τ :

∂v

∂τ=

1

E

∂C

∂t

∂t

∂τ=

1

E

∂C

∂t

−112σ2

En réorganisant les expressions obtenues précédemment, on détermine :

Ct = −E2σ2vτ

SCS = Evx

S2CSS = Evxx − SCS = Evxx − Evx

Finalement, en revenant à l'équation de Black-Scholes, et en remplaçant :

Ct +1

2σ2S2CSS + rSCS − rC = 0

−E2σ2vτ +

1

2σ2(Evxx − Evx) + rEvx − rEv = 0

On divise l'expression par E2σ2, ce qui donne :

−vτ + vxx − vx + kvx − kv = 0

avec k = r12σ2

Page 31: verraux

6. Solution analytique de l'équation de Black-Scholes 24

On en déduit l'expression �nale :

∂v

∂τ=∂2v

∂x2+ (k − 1)

∂v

∂x− kvaveck =

r12σ2

La condition initiale devient :

v(x, 0) =1

EC(Eex, T ) =

1

Emax(Eex − E, 0) = max(ex − 1, 0)

L'équation obtenue se rapproche de celle de la chaleur. On e�ectue maintenant

un second changement de variables :

v = eαx+βτu(x, τ)

La di�érentiation par rapport à τ donne :

βu+∂u

∂τ= α2u+ 2α

∂u

∂x+∂2u

∂x2+ (k − 1)(αu+

∂u

∂x)− ku

On peut obtenir une équation sans le terme u en �xant :

β = α2 + (k − 1)α− k

et on élimine le terme en ∂u∂x

avec :

2α + (k − 1) = 0

On résout alors le petit système obtenu, ce qui donne :

α = −12(k − 1)

β = −14(k + 1)2

On a donc :

v = e−12(k−1)x− 1

4(k+1)2τu(x, τ)

où ∂u∂τ

= ∂2u∂x2 pour −∞ < x < +∞, τ > 0

La condition initiale correspondante est alors :

u(x, 0) = u0(x) = e12(k−1)x max(ex − 1, 0) = max(e

12(k+1)x − e

12(k−1)x, 0)

La solution de cette équation de la chaleur, comme nous l'avons vue précédem-

ment, est :

Page 32: verraux

6. Solution analytique de l'équation de Black-Scholes 25

u(x, τ) =1

2√πτ

∫ +∞

−∞u0(s)e

− (x−s)24τ ds

Il faut donc évaluer cette intégrale. Pour cela, on utilise le changement de variables

x′ = s−x√2τ

Sachant que dx′ = ds√2τ

et donc ds =√

2τdx′, on détermine :

u(x, τ) =1√2π

∫ +∞

−∞u0(x

′√

2τ + x)e−12x′2dx′

=1√2π

∫ +∞

− x√2τ

e12(k+1)(x+x′

√2τ)e−

12x′2dx′ − 1√

∫ +∞

− x√2τ

e12(k−1)(x+x′

√2τ)e−

12x′2dx′

= I1 − I2

On évalue I1 en faisant apparaître une identité remarquable pour obtenir une

intégrale standard :

I1 =e

12(k+1)x

√2π

∫ +∞

− x√2τ

e14(k+1)2τe−

12(x′− 1

2(k+1)

√2τ)2dx′

=e

12(k+1)x+ 1

4(k+1)2τ

√2π

∫ +∞

− x√2τ− 1

2(k+1)

√2τ

e−12ρ2dρ

= e12(k+1)x+ 1

4(k+1)2τN(d1)

où d1 = x√2τ

+ 12(k + 1)

√2τ

et N(d1) = 1√2π

∫ d1−∞ e

− 12s2ds est la fonction de répartition de la loi normale centrée

réduite.

On obtient I2 de la même manière :

I2 =e

12(k−1)x

√2π

∫ +∞

− x√2τ

e14(k−1)2τe−

12(x′− 1

2(k−1)

√2τ)2dx′

=e

12(k−1)x+ 1

4(k−1)2τ

√2π

∫ +∞

− x√2τ− 1

2(k−1)

√2τ

e−12ρ2dρ

= e12(k−1)x+ 1

4(k−1)2τN(d2)

où d2 = x√2π

+ 12(k − 1)

√2τ

et N(d2) = 1√2τ

∫ d2−∞ e

− 12s2ds est la fonction de répartition de la loi normale centrée

réduite.

Page 33: verraux

6. Solution analytique de l'équation de Black-Scholes 26

Avec l'expression de v(x, τ), en reprenant nos expressions de départ x = log SE,

τ = 12σ2(T − t), k = r

12σ2 et C = Ev(x, τ), et en développant notre solution :

C = Eeαx+βτ (I1 − I2)

C = Ee−12(k−1) log S

E− 1

4(k+1)2 1

2σ2(T−t)∗

[e12(k+1) log S

E+ 1

4(k+1)2 1

2σ2(T−t)N(d1)− e

12(k−1) log S

E+ 1

4(k−1)2 1

2σ2(T−t)N(d2)]

C = SN(d1)− Ee−r(T−t)N(d2)

où :

d1 =log S

E+ (r + 1

2σ2)(T − t)

σ√

(T − t)

d2 =log S

E+ (r − 1

2σ2)(T − t)

σ√

(T − t)

On peut procéder de la même manière pour déterminer la valeur d'un put eu-

ropéen. Cependant, le call ayant déjà été évalué, on peut utiliser la parité put-call

pour déterminer le put correspondant de manière plus rapide, sans reprendre toutes

les étapes précédentes :

C − P = S − Ee−r(T−t)

En utilisant N(d) +N(−d) = 1, on a :

P (S, t) = S[N(d1)− 1] + Ee−r(T−t)[1−N(d2)]

P (S, t) = Ee−r(T−t)N(−d2)− SN(−d1)

6.2.2 Programmation

Le calcul de N(d) pourra être e�ectué à l'aide de la fonction d'erreur Matlab

appelée erf que nous allons présenter a�n de montrer comment l'appliquer à la

résolution de l'équation de Black et Scholes.

La fonction erreur erf(X) correspond à l'intégrale de la distribution gaussienne de

moyenne 0 et de variance 12:

erf(x) = 2√π

∫ x

0

e−t

2

dt

Page 34: verraux

6. Solution analytique de l'équation de Black-Scholes 27

La fonction erreur complémentaire erfc(x) est dé�nie par :

erfc(x) = 2√π

∫ +∞

x

e−t

2

dt = 1− erf(x)

Dans notre code, c'est cette deuxième fonction que nous allons utiliser. Exprimons

donc N(d) en fonction de erfc :

N(d) =1√2π

∫ d

−∞e−

12s2ds

=1√2π

[

∫ 0

−∞e−

12s2ds+

∫ d

0

e−12s2ds]

=1

2+

1√2π

∫ d

0

e−12s2ds

puisque nous avons a�aire à une fonction de densité paire, c'est-à-dire que :1√2π

∫ +∞−∞ e−

12s2ds = 1.

On e�ectue le changement de variables 12s2 = t2, donc 1√

2s = t. Quand s = d, on

a alors t = 1√2d.

N(d) =1

2+

1√2π

∫ d√2

0

e−122t2√

2dt

=1

2+

1

2

2√π

∫ d√2

0

et2

dt

=1

2+

1

2erf(

d√2

)

=1

2+

1

2[1− erfc(

d√2

)]

= 1− 1

2erfc(

d√2

)

Cette expression peut encore être simpli�ée en considérant que erfc(x) = 2√π

∫ +∞x

e−t2dt

et donc erfc(−x) = 2√π

∫ +∞−x e−t

2dt = 2√

π

∫ 0

−x e−t2dt+ 2√

π

∫ +∞0

e−t2dt = 2√

π

∫ 0

−x e−t2dt+

1 = erf(x) + 1 = 2− erfc(x)

En remplaçant dans l'expression obtenue précédemment, ceci donne :

N(d) = 1− 1

2[2− erfc(

−d√2

)]

Page 35: verraux

6. Solution analytique de l'équation de Black-Scholes 28

N(d) =1

2erfc(

−d√2

)

Le programme utilisé pour tracer la solution en deux dimensions appelle la fonc-

tion BScall, laquelle e�ectue le calcul exact de la valeur de l'option en utilisant les

formules de Black-Scholes dé�nies précédemment.

En trois dimensions, il su�t de modi�er le code en deux dimensions a�n de stocker

les valeurs du temps dans une grille que nous utilisons ensuite pour tracer la solution

en tenant compte des valeurs stockées. On trouvera des plus amples informations à

ce sujet dans [3].

6.2.3 Résultats graphiques

Avec les codes présentés en section 14.1, les résultats théoriques sont les suivants

(�gure 6.1) :

Fig. 6.1: Représentation graphique des valeurs d'une option d'achat (call) en deux puis

trois dimensions

Les valeurs théoriques obtenues pour le call vont par la suite être utilisées a�n

de comparer la solution analytique de l'équation avec les solutions numériques que

nous allons développer dans les deux chapitres suivants.

Page 36: verraux

29

7. RÉSOLUTIONS NUMÉRIQUES À L'AIDE DE

LA MÉTHODE DES DIFFÉRENCES FINIES

Dans ce chapitre, nous allons résoudre l'équation de Black et Scholes de manière

approchée, à l'aide de la méthode des di�érences �nies, en utilisant successivement

trois schémas numériques : le schéma d'Euler implicite, le schéma de Crank-Nicolson,

puis le schéma d'Alexander. On suivra la méthode préconisée par Piché et Kanni-

ainen dans [4].

7.1 Discrétisation

7.1.1 Théorie

L'équation de Black-Scholes pour la valeur Y (S, t) d'un call auropéen sur un actif

de valeur S avec la volatilité√v et le taux d'intérêt r s'écrit :

∂Y

∂t+

1

2vS2∂

2Y

∂S2+ rS

∂Y

∂S− rY = 0

La condition terminale est Y (S, T ) = max(S − E, 0), E étant toujours le prix

d'exercice.

De la même manière que lors de la résolution exacte de l'équation en section 6.2.1,

on va appliquer un changement de variables à l'équation :

y(x, τ) =1

EY (EeLx,

v) =

1

EY (S, t)

L'expression �nale obtenue est :

∂y

∂τ= −L−2 ∂

2y

∂x2− (k − 1)L−1 ∂y

∂x+ kyaveck =

2r

v, x ∈ [−1, 1]

La condition �nale est alors :

y(x, τ) = y(x,vT

2) =

1

EY (EeLx,

vT

2) =

1

Emax(EeLx − E, 0) = max(eLx − 1, 0)

et les conditions aux frontières s'écrivent :

Page 37: verraux

7. Résolutions numériques à l'aide de la méthode des di�érences �nies 30

y(−1, τ) = 0

y(1, τ) = eL − ek(Tv/2−τ)

Si on note y(τ) = y(x, τ) pour les valeurs aux noeuds et i = 2 : N − 1 pour les

indices des noeuds internes, en appliquant la formule d'approximation di�érentielle

des matrices f (d)(x) ≈ D(d)f(x), la discrétisation de notre équation donne :

y′i = −L−2D(2)i,: y − (k − 1)L−1Di,:y + kyi i = 2 : N − 1

avec les conditions aux bornes

{y1(τ) = 0

yN(τ) = eL − e−k(Tv/2−τ)

}.

7.1.2 Implémentation

Les conditions aux bornes sont notées matriciellement

{I1,:y = 0

IN,:y = eL − e−k(Tv/2−τ)

}.

On en déduit l'équation di�érentielle algébrique à coe�cient linéaire constant liée à

notre équation discrétisée :

My′ = Ay + (eL − e−k(Tv/2−τ))I:,N

où :

A =

−L−2D(2)i,: − (k − 1)L−1Di,: + kIi,:

I1,:

−IN,:

et M =

Ii,:

0

0

.Lors du calcul, la dérivée première de y par rapport à x,Dy = ∂y

∂x, sera approximée

pour les noeuds internes (i = 2 : N−1) en utilisant la formule centrée des di�érences

�nies :

yi =yi+1 − yi−1

Pour les points extrémité, en i = 1, on va utiliser la formule progressive

yi =−3yi + 4yi+1 − yi+2

et en i = N , on va utiliser la formule régressive

yi =yi−2 − 4yi−1 + 3yi

Page 38: verraux

7. Résolutions numériques à l'aide de la méthode des di�érences �nies 31

On en déduit alors la matriceD(1) = 1δ

−3/2 2 −1/2

−1/2 0 1/2

−1/2 0 1/2. . . . . . . . .

−1/2 0 1/2

1/2 −2 3/2

,

δ le pas de temps.

D(2)y = ∂2y∂x2 sera approximée en utilisant la formule centrée incluant la dérivée

seconde

yi =yi+1 − 2yi + yi−1

δ2

d'où on déduit la forme matricielle :

D(2) = 1δ2

1 −2 1

1 −2 1

1 −2 1. . . . . . . . .

1 −2 1

1 −2 1

Pour la programmation avec Matlab, les matrices de di�érentiation D(1) et D(2)

vont être stockées dans une fonction que l'on appellera get_di�matrix. Cette fonction

prend en paramètre le type de méthode que l'on veut utiliser pour le calcul, calcul

spectral ou di�érences �nies, ainsi que le nombre de points que l'on veut considérer.

On obtient en sortie les valeurs de x et de nos matrices D(1)et D(2) qui dépendent

de la méthode choisie.

7.2 Résolutions de l'équation di�érentielle algébrique

Dans cette section, nous présentons les schémas numériques que nous allons

utiliser pour résoudre l'équation di�érentielle algébrique dé�nie ci-avant. Le dernier

sous-point sera consacré à l'explication des avantages de la décomposition utilisée

dans chacune des méthodes. Les graphiques obtenus suite à la programmation des

trois méthodes ont tous la même allure, ils ne seront donc pas présentés ici. Les codes

seront en revanche utilisés dans le chapitre suivant dans une optique comparative.

7.2.1 Méthode d'Euler implicite

Comme nous l'avons montré précédemment, on a une équation de la forme :

My′ = Ay + b(t)

Page 39: verraux

7. Résolutions numériques à l'aide de la méthode des di�érences �nies 32

Si on suppose M inversible,

y′ = M−1[Ay + b(t)] = f(t, y)

Avec un schéma d'Euler implicite, on a yn+1 = yn + hM−1f(tn+1, yn+1)

yn+1 = yn + hM−1[Ayn+1 + b(tn+1)]

Si on appelle z l'expression M−1[Ayn+1 + b(tn+1)], on a alors :

Mz = Ayn+1 + b(tn+1)

= A(yn + h) + b(tn+1)

= Ayn + bn+1 + hAz

et donc :

(M − hA)z = Ayn + bn+1

Pour faciliter la résolution du système de manière informatique, la matriceM−hAsera décomposée sous la forme LU avec L matrice triangulaire inférieure à diagonale

unité et U matrice triangulaire supérieure. Ce point est développé en section 7.2.4.

Donc �nalement :

LUz = Ayn + bn+1

z = U−1L−1[Ayn + bn+1]

Sous Matlab, on va créer une fonction renvoyant les valeurs du vecteur y, notre so-

lution. Le choix d'implémenter une fonction ici va nous permettre de réutiliser notre

code, par simple appel à partir d'autres �chiers, pour réaliser une étude comparative

entre les solutions obtenues en utilisant des schémas di�érents.

On précise que la méthode d'Euler implicite est d'ordre 1 dans le temps et d'ordre

2 dans l'espace.

7.2.2 Méthode de Crank-Nicolson

Notre équation de départ est toujours de la forme :

My′ = Ay + b(t)

Page 40: verraux

7. Résolutions numériques à l'aide de la méthode des di�érences �nies 33

Si on suppose M inversible,

y′ = M−1[Ay + b(t)] = f(t, y)

Le schéma que nous allons utiliser cette fois est le suivant :

yn+1 = yn + hM−1[f(tn, yn) + f(tn+1, yn+1)

2]

Si on appelle z l'expression M−1[f(tn,yn)+f(tn+1,yn+1)2

], on a :

Mz =1

2Ayn +

1

2bn +

1

2Ayn+1 +

1

2bn+1

=1

2Ayn +

1

2bn +

1

2A(yn + hz) +

1

2bn+1

(M − h

2A)z =

1

2Ayn +

1

2bn +

1

2Ayn +

1

2bn+1

Comme dans la méthode implicite, pour faciliter le calcul de l'expression, on

décomposera la matriceM− h2A sous la forme LU , où L est une matrice triangulaire

inférieure à diagonale unité et U une matrice triangulaire supérieure. L'expression

�nale obtenue est :

z = U−1L−1[Ayn +1

2(bn + bn+1)]

La méthode de Crank-Nicolson est d'ordre 1 dans le temps et 2 dans l'espace.

7.2.3 Méthode d'Alexander

Comme pour les méthodes de Euler et de Crank-Nicolson, notre équation de

départ est de la forme :

My′ = Ay + b(t)

Si on suppose M inversible,

y′ = M−1[Ay + b(t)] = f(t, y)

Le pas de temps que l'on va utiliser ici dépend d'un paramètre, γ, tel que :

tn+1 = tn + γh

Le schéma d'Alexander compte deux étapes distinctes. Premièrement, on utilise

le schéma :

yn+1 = yn + hγf(tn+1, yn+1) = hz

Page 41: verraux

7. Résolutions numériques à l'aide de la méthode des di�érences �nies 34

avec z = γM−1[Ayn+1 + bn+1]

On a alors :

Mz = γ[Ayn+1 + bn+1]

= γ[A(yn + hz) + bn+1]

Il en découle :

(M − hγA)z = γ(Ayn + bn+1)

Pour faciliter le calcul de l'expression, on décomposera la matrice M − hγA sous

la forme LU , où L est une matrice triangulaire inférieure à diagonale unité et U une

matrice triangulaire supérieure. L'expression �nale obtenue est :

z = U−1L−1[γ(Ayn + bn+1)]

Cette première expression obtenue va maintenant servir au calcul de la seconde

étape.

On considère cette fois :

yn+1 = yn + h[(1− γ)f(tn+1, yn+1) + γf(tn, yn+1)]

En appelant z l'expression M−1[(1− γ)f(tn+1, yn+1) + γf(tn, yn+1)], on a :

Mz = (1− γ)Ayn+1 + (1− γ)bn+1 + γAyn+1 + γbn

= (1− γ)Ayn + (1− γ)Ahz + (1− γ)bn+1 + γAyn+1 + γbn

= A[yn + (1− γ)hz] + (1− γ)bn+1 + γbn + γAhz

et �nalement :

(M − γhA)z = (1− γ)bn+1 + γbn + A[yn + (1− γ)hz]

On utilisera pour le calcul sous Matlab la même décomposition LU de M − γhAque pour la première étape :

z = U−1L−1{(1− γ)bn+1 + γbn + A[yn + (1− γ)hz]}

Page 42: verraux

7. Résolutions numériques à l'aide de la méthode des di�érences �nies 35

7.2.4 Systèmes d'équations linéaires et décomposition LU

Méthode

Toute matrice inversible A peut être décomposée en P−1A = LU , soit A = PLU ,

où P est une matrice de permutation1, L est une matrice triangulaire à diagonale

unité et U une matrice triangulaire supérieure. Parfois, la matrice P peut être choisie

a�n d'être une matrice identité. Dans ce cas, la décomposition devient A = LU .

Cette factorisation matricielle permet de résoudre des systèmes d'équations linéaires

où les coe�cients des inconnues sont les mêmes, mais avec plusieurs seconds mem-

bres di�érents. Il s'agit alors de déterminer le vecteur d'inconnues {x} associé au

second membre {b} tel que A{x} = {b}. Ce problème est équivalent à LU{x} = {b}ou encore L{U.x} = {b} que l'on peut mettre sous la forme L{y} = {b} en posant

{U.x} = {y}.On trouve les composantes de y par des substitutions élémentaires, y1 = b1

L11, puis

y2 = b2−L21y1L22

, et ainsi de suite. Cette étape est appelée descente puisqu'on résout

le système en descendant de y1 vers yn.

Il reste à calculer les composantes du vecteur {x} en résolvant le système trian-

gulaire supérieur U.{x} = {y}, ce qui se fait de manière similaire, mais en calculant

d'abord xn = ynUnn

, ... Il s'agit de l'étape de remontée.

Intérêt

Les matrices L et U auraient pu être inversées aisément en utilisant l'élimination

de Gauss-Jordan, dont la complexité est en O(n3). Mais pour un système à n équa-

tions, la complexité algorithmique du calcul des matrices inverses est supérieure à

une résolution par descente/remontée.

Donc, si l'on veut résoudre le système pour diverses valeurs de b, il est plus in-

téressant de réaliser la décomposition LU une fois pour toutes et d'e�ectuer les

substitutions de descente/remontée pour les di�érents b, plutôt que d'utiliser l'élim-

ination de Gauss-Jordan à de multiples reprises.

De plus, Matlab choisit automatiquement l'algoritme de descente/remontée pour

résoudre A\b si A est triangulaire ou triangulaire permutée, ce qui est le cas ici.

Donc, l'utilisation d'une décomposition LU est particulièrement bien appropriée.

La décomposition LU est une méthode de résolution directe. Elle s'oppose aux

méthodes itératives qui partent d'une solution approximative et l'améliore succes-

sivement jusqu'à ce qu'elle converge vers la solution exacte. Dans une méthode

directe, on obtient la solution sans besoin d'itération.

1Une matrice de permutation est une matrice carrée dont les coe�cients sont 0 ou 1 et il y

a un et un seul 1 par ligne et par colonne.

Page 43: verraux

36

8. COMPARAISON ET ANALYSE DES

RÉSULTATS OBTENUS

Dans ce chapitre, on va chercher à déterminer l'in�uence des di�érents paramètres

du modèle dé�ni dans la méthode des di�érences �nies. Pour cela, on va modéliser les

erreurs en utilisant les schémas d'Euler Implicite, de Crank-Nicolson et d'Alexan-

der par rapport à la solution exacte et en faisant varier les paramètres qui nous

intéressent, à savoir le nombre de pas d'espace N , le nombre de pas de temps nt et

l'éloignement des bornes de notre intervalle L. On tentera également de mettre en

évidence graphiquement certains résultats théoriques, notamment les ordres, concer-

nant les méthodes. Les codes correspondant à ce chapitre sont présentés en section

14.3.

8.1 In�uence du nombre de points dans l'espace : choix de N

Après avoir créé une liste de valeurs pour le paramètre N , on est en mesure de

représenter les erreurs, di�érence entre la solution exacte et la solution numérique,

pour chacun de nos trois schémas quand le nombre de pas d'espaces N augmente

(�gure 8.1) :

Fig. 8.1: Erreurs des trois schémas en fonction du nombre de points dans l'espace

Page 44: verraux

8. Comparaison et analyse des résultats obtenus 37

On voit que les erreurs obtenues pour le schéma implicite, pour le schéma de

Crank-Nicolson et pour le schéma d'Alexander sont similaires lorsque l'on fait varier

le nombre de points dans l'espace. Dans les trois cas, les erreurs diminuent lorsque le

nombre de points augmente, ce qui semble logique puisque la précision de la solution

donnée par notre schéma numérique augmente avec le nombre de points de calculs

que l'on considère.

Les trois courbes ayant des allures très similaires et étant proches l'une de l'autre,

le nombre de points dans l'espace ne semble pas in�uencer le comportement de la

solution d'un schéma à l'autre.

On remarque de plus que quand le nombre de pas d'espace est multiplié par 10,

l'erreur est multipliée par 100. On retrouve donc ici le résultat théorique selon lequel

les méthodes d'Euler implicite, de Crank-Nicolson et d'Alexander sont d'ordre 2 en

espace, c'est-à-dire qu'elles ont une erreur en O((4x)2).

8.2 In�uence du nombre de pas de temps : choix de nt

8.2.1 Etude graphique

Contrairement au graphique obtenu en faisant varier le pas d'espace, le graphique

obtenu ici présente des résultats di�érents entre les méthodes. Les erreurs avec la

méthode d'Euler et celle d'Alexander sont pratiquement identiques tandis que celles

relatives à la méthode de Crank-Nicolson se distinguent (�gure 8.2) :

Fig. 8.2: Erreurs des trois schémas en fonction du nombre de pas de temps

La valeur des paramètres gardés �xes a été choisie soigneusement. En e�et, pour

avoir des allures de courbes correctes, on a choisi un nombre de pas d'espace N

Page 45: verraux

8. Comparaison et analyse des résultats obtenus 38

su�samment grand, et la liste des pas de temps est rapprochée de l'origine.

Pour les méthodes d'Euler implicite et d'Alexander, on a une erreur décroissante

linéairement lorsque le nombre de pas de temps augmente. Lorsque le nombre de pas

de temps est multiplié par 10, l'erreur est également multipliée par 10. On retrouve

le résultat selon lequel la méthode utilisant le schéma de Crank-Nicolson est d'ordre

1 en temps, c'est-à-dire qu'elle a une erreur en O(4t). En revanche, on devrait

trouver un résultat di�érent pour la méthode d'Alexander puisqu'elle est d'ordre 2.

Nous tenterons d'expliquer ce résultat dans la suite de l'étude.

L'erreur liée à la méthode de Crank-Nicolson quant à elle, devrait être similaire à

celle d'Euler implicite, mais on observe une di�érence assez importante entre cette

courbe et les deux autres. Quand le nombre de pas de temps nt est petit, alors le pas

h = −Tv2nt

est grand et l'erreur est plus importante pour le schéma de Crank-Nicolson.

Puis, la valeur de l'erreur diminue rapidement et devient nettement inférieure à

celle observée avec les schémas d'Euler implicite et d'Alexander avant de �nalement

rejoindre les autres courbes pour la valeur de nt = 1000.

Cet écart entre les erreurs des méthodes peut être expliqué par la raideur du

schémaMy′ = Ay+b(t) par lequel nous avons modélisé l'équation de Black-Scholes.

En mathématique, une équation raide est une équation di�érentielle pour laque-

lle certaines méthodes numériques qui résolvent l'équation sont numéricalement in-

stables, à moins que la taille de l'intervalle considéré soit extrêmement petit. Il est

assez di�cile de donner une dé�nition précise de la raideur d'une équation, mais

l'idée principale est que l'équation inclut des termes qui peuvent conduire à une

rapide variation de la solution.

8.2.2 Régions de stabilité, A-stabilité et L-stabilité

Le comportement des méthodes numériques sur les problèmes raides peuvent être

analysés en appliquant ces méthodes à l'équation test y′ = ky, k ∈ C. La solution

de cette équation est y(t) = y(t0)ekt. Cette solution approche 0 quand k → +∞

si Re(k) < 0. Si la méthode numérique suit ce comportement, alors elle est dite

A-stable.

Cependant, une méthode peut être conditionnellement stable. Ceci nous amène au

concept de L-stabilité : une méthode est L-stable si elle est A-stable et si ϕ(z)→ 0

quand | z |→ +∞.

En considérant l'équation test sous la forme yn+1 = ϕ(hk)yn, on a alors également

yn = y0ϕ(hk)n. ϕ est appelée la fonction de stabilité. La condition yn → 0 quand

n→ +∞ est équivalente à | ϕ(hk) |< 1. On dé�nit alors la région de stabilité comme

l'ensemble {z ∈ C/ | ϕ(z) |< 1} (z = hk). La méthode est A-stable si la région de

stabilité contient l'ensemble {z ∈ C/Re(z) < 0}, c'est-à-dire le demi-plan gauche.

Page 46: verraux

8. Comparaison et analyse des résultats obtenus 39

Méthode d'Euler implicite

Considérons la méthode d'Euler implicite appliquée à l'équation di�érentielle test

y′ = ky. Notre schéma de départ était :

yn+1 = yn + hf(tn+1, yn+1)

= yn + h(kyn+1)

yn+1 = 11−hkyn

Quand k → +∞, 11−hk → 0, donc les hautes fréquences sont neutralisées par le

schéma puisqu'elles sont quasiment éliminées. La méthode est L-stable.

On a yn = y0(1

1−hk )n avec ϕ(z) = 11−z . La région de stabilité de la méthode d'Euler

implicite est donc {z ∈ C/ | 11−z |< 1} : il s'agit de la zone extérieure au cercle de

centre (1, 0) et de rayon 1. La région de stabilité apparait sur le graphique (�gure

8.3) en vert :

Fig. 8.3: Région de stabilité de la méthode d'Euler implicite

Méthode de Crank-Nicolson

Si on considère la méthode de Crank-Nicolson, notre schéma de départ était :

yn+1 = yn + h2[f(tn, yn) + f(tn+1, yn+1)]

= yn + hk2

[yn + yn+1]

yn+1 = 1+hk/21−hk/2yn

Quand k → +∞, 1+hk/21−hk/2 → −1, donc les hautes fréquences ne seront neutralisées

que pour des valeurs de h su�samment petites. La méthode est A-stable mais pas

Page 47: verraux

8. Comparaison et analyse des résultats obtenus 40

L-stable.

La fonction de stabilité est ici ϕ(z) =1+ 1

2z

1− 12zet la région de stabilité est {z ∈ C/ |

1+ 12z

1− 12z|< 1}. Cette région contient tout le demi-plan gauche (�gure 8.4) :

Fig. 8.4: Région de stabilité de la méthode de Crank-Nicolson

Méthode d'Alexander

Le but de la méthode d'Alexander va être de gérer la raideur de notre équation

en utilisant une méthode d'ordre 2 dans le temps, et sans l'inconvénient des hautes

fréquences.

Pour la méthode d'Alexander, nos équations de départ sont :

yn+1 = yn + hγf(tn+1, yn+1)

= yn + hγkyn+1

yn+1 = (1− hγk)yn

puis :

yn+1 = yn + h[(1− γ)f(tn+1, yn+1) + γf(tn, yn+1)]

= yn + hk[(1− γ)yn+1 + γyn+1]

= yn + hk[(1− γ)(1− hγk)yn + γyn+1]

Page 48: verraux

8. Comparaison et analyse des résultats obtenus 41

yn+1 =1 + hk(1− γ)(1− γhk)

1− γhkyn

Quand k → +∞, 1+hk(1−γ)(1−γhk)1−γhk → 0 si h est su�samment petit et γ = 1 −

√2

2

�xé. Les hautes fréquences sont donc neutralisées. On a atteint notre but, à savoir

neutraliser les hautes fréquences en utilisant un schéma L-stable d'ordre 2 dans le

temps.

Nous avons vu précédemment que les résultats graphiques ne coincident pas avec

l'ordre théorique de la méthode. L'erreur diminue moins vite que prévue quand le

pas de temps augmente. Ceci peut être dû au fait que la méthode comporte deux

étapes. Ainsi, si l'un des paramètres n'est pas choisi assez judicieusement, les erreurs

se répercutent sur chacune des deux étapes de calcul, à chaque itération, et il est

possible que de ce fait, les erreurs sur la solution diminuent plus lentement.

8.3 In�uence de la troncature de l'intervalle : choix de L

L'étude de l'in�uence de la troncature de l'intervalle sur la précision de la solution

passe par la création d'une liste de valeurs pour le paramètre L. Quand x varie entre

−1 et 1, S = EeLx varie entre Ee−L et EeL. On va donc devoir créer une liste de

valeurs pour L, mais également une liste de valeurs correspondantes pour N . En

e�et, si le nombre de points contenus dans l'intervalle demeure constant quelque

soit la largeur de celui-ci, pour les intervalles larges, on perdra en précision sur notre

solution puisque les points de calcul seront très espacés. Donc, on associera à chaque

valeur de L, une valeur de N qui permettra de maintenir constante la répartition

des points à l'intérieur de notre intervalle. On choisit ici d'espacer les points de 0.1

environ.

On fait la remarque que nous sommes limités dans le choix de nos valeurs pour

L car une valeur excessive de N entraîne un dépassement de capacité lors de l'appel

de nos fonctions qui calculent les solutions par les di�érents schémas numériques.

Le graphique obtenu (�gure 8.5) est présenté ci-dessous :

Page 49: verraux

8. Comparaison et analyse des résultats obtenus 42

Fig. 8.5: Erreurs des trois schémas en fonction de l'éloignement de la borne de troncature

Les courbes obtenues pour chacun des algorithmes ont des allures similaires : au

départ, pour les valeurs de L les plus petites, les erreurs sont d'environ 0.05, puis elles

décroîssent rapidement jusqu'à se stabiliser entre 0.01 et 0.02 à partir de la valeur

L = log(20). Après ce point, les erreurs du schéma implicite restent constantes,

celles du schéma d'Alexander présentent une légère tendance à la hausse et celles de

Crank-Nicolson tendent à diminuer.

Pour les trois schémas, le point qui se distingue nettement ici est le cinquième

de notre liste : L = log(20). Dans [5], Krango et Nicolaides analysent l'in�uence

de l'éloignement des conditions aux bornes pour les équations de Black-Scholes. Si

v est la solution exacte de notre équation sur un domaine in�ni et wL la solution

approchée sur notre intervalle tronqué, on a alors :

| v − wL |≤ E exp(−(ln s

L)2

2σ2(T − t))

Il en est ensuite déduit l'estimation selon laquelle, si par exemple

Lmax = E exp(√

2σ2T ln 100)

alors, on pourra être sûr que la solution du problème tronqué nous donnera une

valeur correcte à E/100 près pour le call. Si on calcule ici la valeur de L avec

les paramètres de notre modèle, on trouve 248 environ. Avec notre modèle, on a

E ln(20) ' 300 approximativement. Les deux résultats sont donc très proches et

la valeur de Lmax préconisée par Krango et Nicolaides a�n d'obtenir une erreur

acceptable correspond au point de stabilisation de la valeur des erreurs sur notre

Page 50: verraux

8. Comparaison et analyse des résultats obtenus 43

graphique.

Un choix judicieux pour le paramètre d'éloignement de la frontière L peut donc

être ln(20). Une valeur supérieure pourrait être choisie pour la méthode de Crank-

Nicolson puisque la valeur des erreurs continue de diminuer quand L > ln(20). Pour

les deux autres schémas, il n'apparaît pas utile de choisir une autre valeur puisque

les erreurs sont déjà minimales au point dé�ni.

Page 51: verraux

44

9. LES GRECQUES

Les lettres grecques ou grecques sont les instruments de base de la gestion �-

nancière des options. Elles découlent des principaux modèles d'évaluation d'option,

notamment de celui de Black et Scholes.

Chaque lettre grecque mesure une dimension di�érente du risque d'une position

en options, c'est-à-dire que ces indicateurs calculent l'impact sur le prix de l'option

d'une variation des paramètres qui le forment :

� le prix du sous-jacent S,

� la volatilité implicite σ,

� le temps t,

� le taux d'intérêt r.

L'objectif de l'opérateur de marché (ou trader) est de gérer les grecques de telle

manière que les risques pris soient acceptables.

On distingue cinq grecques principales : le Delta, le Thêta, le Gamma, le Vega

et le Rhô. Le but du chapitre est de dé�nir et présenter chacune de ces grecques.

Cependant, dans notre cas, on s'intéressera plus particulièrement au Delta car il est

étroitement lié au modèle de Black et Scholes, sujet de ce projet.

9.1 Le Delta

Le Delta est le taux de variation de la valeur de l'option par rapport à celle du

sous-jacent. Il mesure la sensibilité du prix de l'option à une variation donnée du

cours du sous-jacent. C'est la pente de la courbe reliant la valeur de l'option à celle

du sous-jacent.

Pour avoir une bonne couverture, on recherche à annuler le Delta. Ainsi, le Delta

de la position sur actions compense le Delta de la position sur options. Le Delta

varie, donc la position de l'investisseur demeure couverte en delta neutre seulement

dans un intervalle de temps relativement court. La couverture doit être réajustée

périodiquement.

Le Delta est très étroitement lié à l'analyse de Black-Scholes. En e�et, on a montré

qu'il était possible d'établir un portefeuille sans risque consistant en une position

sur l'action et une position sur l'option. Exprimé em termes de 4, le portefeuille deBlack et Scholes est constitué par la vente d'une option et l'achat de 4 actions.

Les codes Matlab utilisés pour représenter le Delta sont en section 14.4.

Page 52: verraux

9. Les Grecques 45

9.1.1 Solution analytique

Pour l'équation de Black-Scholes considérant un call de prix C, on a :

4 = ∂C∂S

= N(d1) + S ∂∂SN(d1)− Ee−r(T−t) ∂

∂SN(d2)

= N(d1) + SN ′(d1)∂d1∂S− Ee−r(T−t)N ′(d2)

∂d2∂S

= N(d1) + SN ′(d1)−Ee−r(T−t)N ′(d2)

Sσ√T−t

= N(d1)

car SN ′(d1)− Ee−r(T−t)N ′(d2) = 0

Donc,

4 =∂C

∂S= N(d1)

La représentation graphique est visible en �gure 9.1 :

Fig. 9.1: Delta théorique d'un call européen

En utilisant la parité put-call, on obtient le delta pour le put :4 = ∂P∂S

= N(d1)−1

9.1.2 Solutions numériques

On va considérer dans cette partie deux méthodes numériques de calcul du Delta,

la première utilisant les matrices d'approximation D(1) et D(2), la seconde manipu-

lant l'équation discrétisée en elle-même, à laquelle on fera subir une transformation

a�n d'obtenir le delta pour solution.

Utilisation des matrices d'approximation

Dans la section 7.1, on approxime la dérivée de la valeur de l'option y, ici un call,

par rapport au prix du sous-jacent x à l'aide de la formule des di�érences �nies. On

a alors ∂y∂x

= D(1)y.

Page 53: verraux

9. Les Grecques 46

On sait que 4 = ∂Y∂S

et que le changement de variables qui a été appliqué entre la

variable y utilisée pour la programmation et notre variable d'origine Y est y(x, τ) =1EY (EeLx, T ). Alors :

y =1

EY (EeLx, T ) =

1

EY (S, T )

∂y

∂x=

∂S

1

EY (S)

∂S

∂x

=1

E

∂Y

∂SELeLx

Quand S →∞, Y (S) ≈ S, donc ∂Y∂S' 1, et alors

∂Y

∂S=

1

LEeLx.∂y

∂x

La valeur de Delta est donc obtenue en calculantD(1)y, approximation de ∂y∂x, pour

chaque valeur de S, puis en revenant à notre variable de départ Y en multipliant le

résultat obtenu par 1LEeLx

.

Dans notre programme, on calculera le y grâce au schéma implicite.

Utilisation de l'équation de Black-Scholes discrétisée

Une seconde méthode numérique qui permet de calculer le Delta consiste à utiliser

l'équation de Black-Scholes discrétisée obtenue à la section 7.1. On rappelle l'équa-

tion obtenue :

∂τy = −L−2y′′ − (k − 1)

Ly′ + ky

où ′ correspond à la dérivée par rapport à x. Si on dérive la variable y par rapport

à x dans cette expression, on obtient :

∂τ(∂

∂xy) = −L−2(y′)′′ − (k − 1)

L(y′)′ + ky′

Or, y′ = ∂y∂x

= 4, donc :

∂τ4 = −L−24′′ − (k − 1)

L4′ + k4

avec les conditions aux bornes :{4(−1) = 0

4(1) = LeL

}La programmation va donc rejoindre celle déjà mise en oeuvre en section 6.1 pour

Page 54: verraux

9. Les Grecques 47

le calcul de la valeur de l'option. On utilisera l'équation di�érentielle algébrique :

My′ = Ay + LeLI:,N

avec les mêmes matrices A et M que précédemment :

A =

−L−2D(2)i,: − (k − 1)L−1Di,: + kIi,:

I1,:

−IN,:

et M =

Ii,:

0

0

.Ensuite, on peut utiliser le schéma numérique de notre choix pour réaliser l'im-

plémentation.

Comme dans le sous-point précédent, il faudra penser à multiplier par 1LEeLx

. la

valeur de y obtenue a�n de revenir à notre variable d'origine.

9.1.3 Analyse des résultats

Le graphique 9.2 correspond aux erreurs liées au calcul du Delta par les deux

méthodes numériques présentées ci-avant. Il s'agit donc de la di�érence entre le

Delta calculé numériquement et le Delta exact.

Fig. 9.2: Représentation de l'erreur du Delta approximé par Dy ou par l'équation

On remarque que les deux courbes d'erreur ont des allures similaires et sont très

proches. Nos deux méthodes de calcul pour l'approximation de Delta semblent donc

présenter des résultats corrects.

Page 55: verraux

9. Les Grecques 48

Pour les valeurs du sous-jacent inférieures à 200, les erreurs varient entre −4.10−3

et 6.10−3. Après 200, les erreurs semblent se stabiliser entre 0 et | 1.10−3 |, ce qui estrelativement faible. Si on rapproche les courbes obtenues à l'allure théorique de la

courbe du Delta, on voit que les valeurs de S pour lesquelles les erreurs sont les plus

élevées correspondent au moment où le Delta est dans sa phase ascendante, entre 0

et 1. Sitôt qu'il se rapproche de 1, aux alentours de S = 200 environ, les erreurs se

stabilisent.

9.2 Autres lettres grecques

9.2.1 Le thêta

Le Thêta d'un portefeuille d'options, Θ, se dé�nit comme le taux de variation de

la valeur du portefeuille par rapport à la durée de vie de l'option, tous paramètres

égaux par ailleurs. On a :

Θ = −∂C∂T

= −SN′(d1)σ

2√T

− rEe−rTN(d2)

avec N ′(x) = 1√2πe−

12x2, pour un call européen sur une action ne versant pas de

dividendes.

Le Thêta d'une option est généralement négatif car la valeur de l'option diminue

lorsqu'on se rapproche de l'échéance.

La nature du Thêta, en tant que paramètre de couverture, est di�érente de celle

du 4. En e�et, s'il y a une incertitude quant à la valeur future de l'action, il n'y

en a pas sur le fait que le temps passe. Il est normal de vouloir se couvrir contre

les variations imprévues du cours de l'actif sous-jacent, mais cela n'a aucun sens de

vouloir se couvrir contre l'e�et du temps qui passe dans un portefeuille d'options.

Malgré cela, de nombreux traders considèrent le Thêta comme une statistique

descriptive très pratique pour un portefeuille. Cela s'explique par le fait que dans

un portefeuille en delta-neutre, le Thêta peut remplacer le Gamma.

9.2.2 Le Gamma

Le Gamma d'un portefeuille, noté Γ, est le taux de variation du delta du porte-

feuille en fonction de la valeur de l'actif sous-jacent. Il représente la convexité du

prix d'une option en fonction du cours du sous-jacent. C'est la dérivée seconde de

la valeur du portefeuille par rapport au cours de l'actif :

Γ =∂2π

∂S2=N ′(d1)

Sσ√T

pour un call européen avec Black et Scholes.

Page 56: verraux

9. Les Grecques 49

Si le Gamma est faible, le Delta varie lentement et il n'est pas nécessaire d'ajuster

fréquemment le portefeuille pour maintenir une portefeuille delta-neutre. Par contre,

si le Gamma est important en valeur absolue, le Delta est très sensible aux variations

du cours de l'actif sous-jacent. Il est alors risqué de laisser un portefeuille delta-neutre

inchangé trop longtemps.

Le Gamma est une mesure de la courbure de la fonction liant la valeur de l'option

et le cours du sous-jacent. L'impact de cette courbure sur les performances de la

couverture peut être réduit en adoptant une position gamma-neutre.

9.2.3 Le Vega

Le Vega d'un portefeuille de produits dérivés, ν, représente le taux de variation

de la valeur du portefeuille en fonction de la volatilité de l'actif sous-jacent.

ν =∂π

∂σ

Si la valeur absolue de ν est importante, la valeur du portefeuille est très sensible

au moindre changement de volatilité. Au contraire, si elle est faible, le changement

de volatilité n'aura qu'un léger impact sur la valeur du portefeuille.

Une postion gamma-neutre protège contre d'importantes variations du cours de

l'actif sous-jacent entre deux réajustements de couverture. Une position vega-neutre

protège contre les variations de σ. Le choix de la meilleure option pour établir une

couverture en Delta ou en Gamma dépend du délai entre deux ajustements de la

position et de la variabilité de la volatilité.

9.2.4 Le Rhô

Le Rhô d'un portefeuille d'options est le taux de variation de la valeur du porte-

feuille en fonction du taux d'intérêt :

ρ =∂π

∂r

Pour un call européen sur une action ne versant pas de dividendes, ρ = ETe−rTN(d2)

Page 57: verraux

50

Troisième partie

Le modèle de Black et Scholes pour

une option américaine

Page 58: verraux

51

10. OPTIONS AMÉRICAINES

Ce chapitre présente les di�érences fondamentales à prendre en compte lorsque

l'on passe de l'étude d'options européennes à l'étude d'options américaines. On mon-

tre que l'apparition d'une nouvelle contrainte va nous obliger à di�érencier les cas

du call et du put américain.

10.1 De nouveaux enjeux

La plupart des options négociées sur les marchés organisés sont de type américain.

Les options européennes sont plus faciles à analyser et, dans un certain nombre

de cas, les propriétés des options américaines sont déduites de celles des options

européennes, d'où l'objet de la partie précédente de cette thèse.

Tandis que l'option européenne ne peut être exercée qu'à l'échéance, la nouvelle

caractéristique ici est la possibilité d'exercer l'option à tout moment avant l'échéance

et ceci complique de beaucoup son évaluation. Dans le cadre de Black-Scholes, on

ne connaît d'ailleurs aucune solution analytique, même aux options américaines les

plus simples.

Les formules explicites présentées dans la partie précédente sont valides pour

les options européennes, quand l'exercice prématuré n'est pas autorisé, mais pas

nécessairement pour les options américaines. En fait, puisque l'option américaine

donne à son détenteur de plus grands droits qu'avec l'option européenne via le droit

d'exercice prématuré, elle a potentiellement une valeur plus élevée.

10.2 Call américain

Une option américaine est comme une option européenne, avec la possibilité sup-

plémentaire du détenteur d'exercer son droit à tout moment entre la date de début

du contrat et la date d'expiration. Le détenteur d'une option américaine doit par

conséquent décider du moment auquel il devrait exercer a�n de faire un pro�t opti-

mal.

Si au temps t, l'option est en-dehors de la monnaie, alors il est clair qu'il ne faut

pas exercer. Si l'option est dans-la-monnaie, on peut exercer, mais il peut aussi être

béné�que d'attendre une date ultérieure à laquelle le payo� pourrait être encore

supérieur.

Comme précédemment, on considère le prix du sous-jacent au temps t, S(t), et le

Page 59: verraux

10. Options américaines 52

prix d'exercice E. Supposons que le détenteur souhaite exercer l'option à un temps

t < T . Ceci est avantageux uniquement si S(t) > E et le payo� au temps t sera

S(t) − E. Une alternative consiste pour le détenteur à prendre une position courte

sur le marché au temps t et ensuite acquérir l'actif au temps t = T en exerçant

l'option et achetant au prix du marché dans le même temps.

Avec cete stratégie, le détenteur a fait un pro�t de S(t) > E au temps t et payé

un montant inférieur ou égal à E au temps T . Le gain est clairement meilleur que

celui de S(t)− E au temps t.

Puisqu'il n'est jamais optimal d'exercer un call américain avant sa date d'expi-

ration, un call américain doit avoir la même valeur qu'un call européen. Ceci n'est

pas valable pour un put américain, et c'est pourquoi nous considérerons dans cette

partie le cas du put.

10.3 Put américain

Avant la date d'expiration, il y a une grande partie des valeurs d'actifs S pour

lesquelles la valeur du put européen est inférieure à sa valeur intrinsèque (la fonction

payo�).

Si S se trouve dans ce domaine, P (S, t) < max(E − S, 0), et si l'on considère

l'exercice de l'option, il y a alors une opportunité évidente d'arbitrage : on peut

acheter l'actif sur le marché pour S et vendre le titre pour P pendant le même

temps. Si on exerce immédiatement l'option en vendant l'actif pour E, on ferait un

pro�t sans risque de E − P − S. On en conclut que quand l'exercice prématuré est

permis, il faut imposer la condition :

V (S, t) ≥ max(S − E, 0)

Puts européens et américains doivent par conséquent avoir des valeurs di�érentes.

Pour les options américaines, il doit y avoir des valeurs de S pour lesquelles il est

optimal du point de vue du détenteur d'exercer son droit. Si ce n'était pas le cas,

alors l'option aurait la valeur européenne puisque l'équation de Black-Scholes serait

valable pour tout S. Or, nous avons vu que ce n'était pas le cas.

Page 60: verraux

53

11. DES OPTIONS AMÉRICAINES AUX

INÉGALITÉS VARIATIONNELLES

Le but du chapitre est de présenter le cheminement suivi pour modéliser les

valeurs des options américaines en tant que problèmes de complémentarité linéaire.

Ceux-ci sont en e�et plus faciles à gérer informatiquement.

11.1 Bornes libres, bornes mobiles

On distingue deux types de bornes rencontrées dans des problèmes d'Equations

aux Dérivées Partielles paraboliques :

� la borne libre (free boundary) : borne dont on ne connaît pas l'emplacement,

bien qu'on connaisse sa condition.

� la borne mobile (moving boundary) : borne libre dont l'emplacement (in-

connu) bouge dans l'espace avec le temps.

Les bornes libres et mobiles sont des concepts utiles pour appréhender un problème.

Les formulations de complémentarité du problème de borne mobile que présente l'op-

tion américaine sont généralement préférées aux problèmes de bornes libres pour des

raisons que nous développerons dans les sections suivantes. Cependant, on détaillera

les deux approches, la première étant utile pour comprendre la seconde.

11.2 Problèmes de bornes libres

L'évaluation d'options américaines est plus compliquée que celle des options eu-

ropéennes dans le sens où, à chaque instant, il convient de déterminer non seulement

la valeur de l'option, mais également, pour chaque valeur de S, si elle devrait être

exercée ou non. C'est ce qu'on appelle un problème de borne libre.

Typiquement, à chaque temps t, il existe une valeur particulière de S qui marque

la frontière entre deux régions : d'un côté de cette frontière, il faudrait maintenir

l'option et de l'autre, il faudrait l'exercer. Cette valeur, appelée prix d'exercice

optimal et notée Sf (t), varie en général avec le temps t.

On ne connait pas Sf a priori. Si on considère le problème d'évaluation de l'option

européenne correspondante, on remarque alors qu'il nous manque une information.

Avec l'option européenne, on connait les conditions aux bornes et on sait en quels

points les appliquer. Avec la problème américain, on ne sait pas a priori où appliquer

Page 61: verraux

11. Des options américaines aux inégalités variationnelles 54

les conditions aux bornes. La borne inconnue Sf (t) est pour cette raison appelée la

borne libre.

A�n de comprendre la formulation par Equation aux Dérivées Partielles du prob-

lème des options américaines, il est également utile de considérer un exemple clas-

sique de problème de borne libre : le problème de l'obstacle.

11.2.1 Problème de l'obstacle

Le problème de l'obstacle survient lorsqu'un élastique est ancré aux points A et

B et un objet lisse et concave le pousse vers le haut entre A et B. On connait la

forme exacte de l'objet et la hauteur des points A et B est dé�nie comme zéro. Il

s'agit alors de déterminer la position verticale de l'élastique entre A et B.

A nouveau, on ne connait pas a priori la région de contact entre l'élastique

et l'obstacle. Soit l'élastique repose sur l'objet et en suit la forme : dans ce cas, sa

position est connue ; soit il est �au-dessus� de l'objet et suit alors la loi de mouvement

appropriée : l'élastique est droit si on néglige la gravité.

L'élastique doit de plus satisfaire deux contraintes relatives aux propriétés de

l'obstacle :

� l'objet étant concave, l'élastique a une courbure nulle ou négative partout. Une

autre interprétation importante de cela est que l'obstacle ne peut jamais exercer

une force négative sur l'élastique : il peut le pousser, mais pas l'attirer.

� l'objet étant lisse, l'élastique a une pente continue.

Pour résumer les conditions du problème de l'obstacle :

� l'élastique doit être au-dessus ou sur l'obstacle,

� l'élastique doit avoir une courbure nulle ou négative,

� l'élastique doit être continu,

� la pente de l'élastique doit être continue.

Sous ces conditions, le problème de la position de l'élastique a une solution unique.

Précisons que l'élastique et sa pente sont continus, mais en général, la courbure

de l'élastique et donc sa dérivée seconde, présente des discontinuités.

11.2.2 Options américaines en tant que problèmes de borne

libre

Un problème d'évaluation d'option américaine peut aussi être spéci�é de manière

unique par un ensemble de contraintes très similaires à celles données pour le prob-

lème de l'obstacle :

Page 62: verraux

11. Des options américaines aux inégalités variationnelles 55

La valeur de l'option doit être supérieure ou égale à la fonction payo�.

Le pro�t suite à une opportunité d'arbitrage sur un exercice prématuré de l'option

doit être inférieur ou égal à 0, ceci pour éliminer les opportunités d'arbitrage en cas

d'exercice prématuré notamment.

Par conséquent, soit la valeur de l'option est la même que celle de la fonction

payo� et l'option devrait être exercée, ou lorsque l'option excède la fonction payo�,

elle satisfait l'équation de Black-Scholes. Il s'avère que ces deux phrases peuvent être

combinées en une inégalité, notre deuxième contrainte.

L'équation de Black-Scholes est remplacée par une inégalité.

Cette contrainte sera développée plus longuement ultérieurement.

La valeur de l'option doit être une fonction continue de S.

Cette contrainte suit de la simple opportunité d'arbitrage : s'il y avait une dis-

continuité dans la valeur de l'option en tant que fonction de S, si cette discontinuité

persistait pour plus qu'un temps in�nitésimal et si le prix de l'actif n'atteignait

jamais la valeur à laquelle la discontinuité survient, un portefeuille composé unique-

ment d'options ferait un pro�t sans risque de manière sure.

Le delta de l'option, c'est-à-dire sa pente, doit être continu.

Il s'agit ici de �xer une seconde condition sur Sf . Tout comme dans le problème

de l'obstacle, nous ne connaissons pas la position de Sf et nous devons imposer deux

conditions supplémentaires sur Sf pour que la valeur de l'option soit déterminée de

manière unique. C'est une de plus que si Sf était déterminé.

11.2.3 Black-Scholes pour les options américaines

Dans cette partie, nous revenons sur la deuxième contrainte, à savoir l'inégalité

satisfaite par l'opérateur de Black et Scholes. On rappelle que l'équation di�éren-

tielle partielle de Black-Scholes découle d'un argument d'arbitrage qui est seulement

partiellement valide pour les options américaines. Mais la relation entre arbitrage et

opérateur de Black et Scholes persiste.

On établit un portefeuille delta-couvert avec le même choix de delta que pour

l'élimination du caractère aléatoire dans la formule de Black-Scholes pour une option

européenne. Cependant, dans le cas américain, il y a des moments où il est optimal

d'exercer. Le simple argument d'arbitrage utilisé pour les options européennes ne

conduit plus à une unique valeur pour la rentabilité du portefeuille mais à un en-

semble de valeurs. On peut seulement dire que la rentabilité du portefeuille ne peut

Page 63: verraux

11. Des options américaines aux inégalités variationnelles 56

pas être supérieure à la rentabilité d'un dépôt en banque, donc dπ − rπdt ≤ 0.

Pour un put américain, cela donne :

∂P

∂t+

1

2σ2S2∂

2P

∂S2+ rS

∂P

∂S− rP ≤ 0

L'inégalité ici serait une égalité pour une option européenne. Quand il est optimal

de conserver l'option, l'égalité, c'est-à-dire l'équation de Black-Scholes, est valide et

la contrainte V (S, t) ≥ max(S − E, 0) doit être satisfaite. Sinon, il est optimal

d'exercer l'option et on considère seulement l'inégalité de Black-Scholes et l'égalité

dans V (S, t) ≥ max(S − E, 0) est véri�ée. Le payo� (ou l'obstacle) est alors la

solution.

Pour résumer, le problème de put américain s'écrit comme un problème de borne

libre de la manière suivante :

Pour chaque temps t, on divise l'axe des S en deux régions distinctes :

Soit 0 ≤ S ≤ Sf (t) : il s'agit de la région dans laquelle l'exercice prématuré est

optimal. On a :

P = E − S, ∂P∂t

+1

2σ2S2∂

2P

∂S2+ rS

∂P

∂S− rP < 0

Soit Sf (t) < S <∞ : l'exercice prématuré n'est pas optimal et :

P > E − S, ∂P∂t

+1

2σ2S2∂

2P

∂S2+ rS

∂P

∂S− rP = 0

Les conditions aux bornes, en S = Sf (t), sont que P et sa pente (le delta) sont

continus :

P (Sf (t), t) = max(E − Sf (t), 0),∂P

∂S(Sf (t), t) = −1

La première condition peut être vue comme une condition à la borne pour déter-

miner la valeur de l'option à la borne libre et la seconde pour déterminer la locali-

sation de la borne libre.

11.3 Formulation de complémentarité linéaire

Il est clair que l'analyse mathématique des options américaines est plus complexe

que celle des options européennes. Il est presque toujours impossible de trouver une

solution explicite utile à un problème de borne libre donné, et donc le but principal

est de construire des méthodes numériques e�caces et robustes pour leur calcul. Ceci

signi�e que nous avons besoin d'une structure théorique qui permette d'analyser les

Page 64: verraux

11. Des options américaines aux inégalités variationnelles 57

problèmes de borne libre en des termes généraux.

Puisqu'il est di�cile de gérer les bornes libres, notre but va être ici de reformuler

le problème de telle sorte que toute dépendance explicite avec la borne libre soit

éliminée. Ainsi, la borne libre n'interférera pas avec le calcul de la solution mais

pourra être retrouvée à partir de la solution obtenue.

On va tout d'abord considérer un exemple d'une telle reformulation, appelé prob-

lème de complémentarité linéaire, dans le contexte du problème de l'obstacle.

Puis, nous appliquerons les résultats obtenus à des options américaines.

Ces problèmes ont des formulations de complémentarité linéaire qui conduisent

à des schémas numériques e�caces et précis avec la propriété souhaitée de ne pas

dépendre de la borne libre.

11.3.1 Pour le problème de l'obstacle

Considérons un problème d'obstacle dans lequel les extrémités de l'élastique sont

�xées en x = ±1 et posons u(x) le déplacement de l'élastique et f(x) la hauteur de

l'obstacle, pour −1 ≤ x ≤ 1.

On suppose que f(±1) < 0 et f(x) > 0 aux points −1 < x < 1, de manière à ce

qu'il y ait obligatoirement une région de contact entre l'obstacle et l'élastique.

On suppose également que f ′′ < 0, où ′ = d/dx, ce qui garantit que nous avons

une seule région de contact.

Les bornes libres sont alors les points P (x = xP ) et Q(x = xQ) où l'élastique

commence à toucher l'objet.

Notons que l'élastique peut se trouver dans deux états :

� soit il est contact de l'obstacle, u = f , et alors u′′ = f ′′ < 0

� soit il se trouve �au-dessus� de l'obstacle, u > f , et alors u′′ = 0.

Ceci signi�e que l'on peut écrire le problème en une formulation dite de complé-

mentarité linéaire :

Trouver une fonction continue et continûment di�érentiable u(x) respectant :

u′′.(u− f) = 0, −u′′ ≥ 0, (u− f) ≥ 0

sur l'intervalle [−1, 1], de même que les conditions aux bornes :

u(−1) = u(1) = 0, u et u′ continues

La linéarité vient du fait que les deux termes u′′(x) et u(x)− f(x) sont linéaires,

Page 65: verraux

11. Des options américaines aux inégalités variationnelles 58

dans le sens de la linéarité des Equations aux Dérivées Partielles.

Il y a complémentarité car pour tout point x, l'un ou l'autre de u′′(x) ou u(x)−f(x) doit être nul.

Cette formulation du problème présente un immense avantage sur la version précé-

dente : il n'est fait aucune référence explicite aux bornes libres P et Q. Elles sont

toujours présentes mais seulement implicitement, via la contrainte u ≥ f .

11.3.2 Pour le put américain

Par analogie avec le problème de l'obstacle, le problème de borne libre pour

une option de vente américaine peut être réduit à un problème de complémentarité

linéaire. En fait, les parties �spatiales� des deux problèmes sont presque identiques

et la di�érence majeure est que le put donne un problème d'évolution, contrairement

au problème statique de l'obstacle.

On e�ectue tout d'abord un changement de variables dans le problème du put

américain de (S, t) vers (x, τ), de la même manière que dans la partie 6.2. La nouvelle

forme obtenue est meilleure du point de vue numérique et les manipulations sont

plus simples.

Avec les variables d'origine, on a S = Sf (t), ce qui donne avec les nouvelles

variables x = xf (τ).

On a de plus Sf (t) < E, ce qui implique que xf (τ) > 0. Alors, la fonction payo�

max(E − S, 0) devient :

g(0, τ) = g(x, τ) = e12(k+1)2τ max(e

12(k−1)x − e

12(k+1)x, 0)

On a toujours :

∂u

∂τ=∂2u

∂x2pour x > xf (τ)

u(x, τ) = g(x, τ) pour x ≤ xf (τ)

avec la condition initiale

u(x, 0) = g(x, 0) = max(e12(k−1)x − e

12(k+1)x, 0)

et le comportement asymptotique

limx→∞

u(x, τ) = 0

Quand x→ −∞, nous sommes dans la région où l'exercice prématuré est optimal,

et donc u = g.

Page 66: verraux

11. Des options américaines aux inégalités variationnelles 59

On a également la contrainte :

u(x, 0) ≥ e12(k+1)2τ max(e

12(k−1)x − e

12(k+1)x, 0)

et les conditions que u et ∂u∂x

sont continues en x = xf (τ).

Pour éviter les complications techniques, nous allons réduire le problème à un

intervalle �ni. Pour cela, nous considérerons les expressions ci-avant seulement pour

x dans l'intervalle −x− < x < x+, où x− et x+ sont su�samment grands. Ceci

signi�e qu'on impose les conditions aux bornes :

u(x+, τ) = 0, u(−x−, τ) = g(−x−, τ)

En termes �nanciers, on suppose que l'on peut remplacer les conditions exactes

aux bornes par les approximations que pour des petites valeurs de S, P = E − S,et pour les grandes valeurs, P = 0.

Le fait que le problème de l'obstacle et celui du put américain satisfont des con-

traintes suggère que le second a aussi une formulation de complémentarité linéaire.

Le problème de l'option est très similaire à celui de l'obstacle mais avec un obstacle

dépendant du temps, c'est-à-dire une fonction pao� transformée g(x, τ).

On peut donc écrire notre problème sous la forme de complémentarité :

(∂u

∂τ− ∂2u

∂x2).(u(x, τ)− g(x, τ)) = 0

(∂u

∂τ− ∂2u

∂x2) ≥ 0, (u(x, τ)− g(x, τ) ≥ 0

avec les conditions initiales et aux bornes

u(x, 0) = g(x, 0) et u(−x−, τ) = g(−x−, τ), u(x+, τ) = g(x+, τ) = 0

et les conditions u(x, τ) et ∂u∂x

(x, τ) sont continus.

Les deux possibilités dans cette formulation correspondent aux situations dans

lesquelles il est optimal d'exercer l'option (u = g) et celles dans lesquelles ça ne l'est

pas (u > g).

Page 67: verraux

60

12. EVALUATION D'UNE OPTION

AMÉRICAINE PAR DIFFÉRENCES FINIES

Après avoir présenté les formules générales grâce auxquelles on peut modéliser les

options américaines, on va maintenant appliquer les résultats théoriques en consid-

érant un schéma des di�érences �nies : le schéma de Crank-Nicolson. Pour ce faire,

on va avoir recours à une discrétisation de l'équation de Black-Scholes, tout comme

dans la section 6.2.1, ce qui nous amènera à méthode de résolution impliquant un

algorithme largement utilisé pour la résolution des problèmes de complémentarité

linéaire : l'algorithme de Brennan et Schwartz.

12.1 Discrétisation

Cette section s'appuie à nouveau sur la référence [4].

On rappelle que l'équation di�érentielle de Black-Scholes s'écrit :

∂V

∂t+

1

2σ2S2∂

2V

∂S2+ rS

∂V

∂S− rV = 0

On e�ectue la même discrétisation que dans la section 7.1, ce qui nous amène à

l'équation :

y′i = −L−2D2i,:y − (k − 1)L−1Di,:y + kyi i = 2 : N − 1

Ici, nous sommes en présence d'un put et non d'un call. La condition �nale est

donc :

Y (S, T ) = max(E − S, 0)

On rappelle le changement de variables qui a été e�ectué : y(x, τ) = 1EY (S, T ) =

1EY (EeLx, vτ

2)

On en déduit la condition �nale en rapport avec nos nouvelles variables :

y(x, τ) = y(x,vT

2) =

1

EY (EeLx,

vT

2)

=1

Emax(E − EeLx, 0)

Page 68: verraux

12. Evaluation d'une option américaine par di�érences �nies 61

= max(1− eLx, 0)

Les conditions aux frontières sont alors :

y(−1, τ) = 1− e−L

y(1, τ) = 0

Si on se ramène à notre formule discrétisée, sur l'intervalle [1, N ], on obtient les

conditions aux bornes

{y1(τ) = 1− e−L

yN(τ) = 0

}. On peut écrire l'équation di�érentielle

algébrique à coe�cient linéaire constant :

y′i = Ayi + b

avec :

A = −L−2D(2)i,i − (k − 1)L−1Di,i + kIi,i

et b = (−L−2D(2)i,1 − (k − 1)L−1Di,1 + kIi,1)(1− e−L)

Les matrices d'approximation D(1) et D(2) sont déterminées à partir de la formule

centrée des di�érences �nies, de la même manière que dans la section 7.1.

12.2 Résolution du problème discrétisé

Cette section est consacrée à la résolution algorithmique du problème que l'on

vient de discrétiser. Tout d'abord, on présentera le schéma numérique que l'on va

utiliser. Ensuite, on introduira le problème de complémentarité linéaire correspon-

dant au modèle dé�ni et on le résoudra par l'algorithme de Brennan et Schwartz.

12.2.1 Présentation du schéma

En utilisant le schéma de Crank-Nicolson puis en développant avec notre équation

di�érentielle algébrique, on obtient :

yn+1 = yn + h(f(tn, yn) + f(tn+1, yn+1)

2)

yn+1 = yn + h[1

2Ayn +

1

2bn +

1

2Ayn+1 +

1

2bn+1]

[I − 1

2Ah]yn+1 = yn +

1

2hAyn + h(

1

2bn +

1

2bn+1)

Ici, on considère un b indépendant du temps pour un put standard, d'où la formule

Page 69: verraux

12. Evaluation d'une option américaine par di�érences �nies 62

�nale :

[I − 1

2Ah]yn+1 = yn +

1

2Ahyn + hb

12.2.2 Algorithme de Brennan et Schwartz et décomposition

LU

L'algorithme de Brennan et Schwartz est couramment utilisé pour la résolution

de Problèmes de Complémentarité Linéaire, c'est pourquoi nous allons présenter

l'utilisation que nous en avons faite ici. Pour plus de détails sur l'algorithme, nous

renvoyons à [6].

Selon Ikonen et Toivanen dans [7], l'algorithme de Brennan et Schwartz peut être

reformulé en une forme simple utilisant une décomposition LU . Dans cette méthode,

la contrainte liée à la possibilité d'exercice prématuré de l'option américaine est

prise en compte dans une substitution par remontée et par conséquent, la solution

de l'algorithme di�ère seulement légèrement de la solution d'un système d'équations

linéaires avec une matrice tridiagonale.

Cependant, dans leur document, Ikonen et Toivanen considèrent un call. On s'in-

téresse ici à un put, l'algorithme sera donc légèrement di�érent mais la structure

générale reste la même. La matrice (I − 12hA) sera décomposée sous la forme LU ,

avec U matrice triangulaire supérieure, et L matrice triangulaire inférieure à diago-

nale unité.

Si on appelle y la solution à l'étape n− 1 et y la solution à l'étape n, alors :

y = U−1L−1(y +1

2hAy + hb)

Dans le cas de l'option américaine, on doit cependant également respecter la

condition :

y ≥ U−1L−1(y +1

2hAy + hb)

pour éviter les opportunités d'arbitrage.

De plus, dans la résolution de notre système, il ne faut pas oublier la contrainte

sur le payo� :

y = max(1− eLx, 0)

Comme nous l'avons vu, le pro�t doit être négatif ou nul, ceci pour éviter les

opportunités d'arbitrage suite à un exercice avant la date d'échéance. Donc, la valeur

de l'option doit être supérieure ou égale à la fonction payo� :

y ≥ 1− eLx

Cette contrainte sur le payo� est appliquée à notre cas de la façon suivante : on

Page 70: verraux

12. Evaluation d'une option américaine par di�érences �nies 63

retiendra à chaque étape la valeur maximale entre la fonction payo� et le résultat

numérique calculé à partir de notre schéma. Au départ, notre solution suivra la

fonction payo� jusqu'à un certain seuil à partir duquel elle suivra le schéma.

12.2.3 Formulation de complémentarité linéaire

Ceci nous amène à exprimer notre problème de façon concise. Si on note y∗ =

(yi+12hAyi+hb), en considérant toutes les valeurs du sous-jacent à la fois, c'est-à-dire

pour toutes les valeurs de n, on a le problème de complémentarité linéaire :LUy ≥ y∗y ≥ 1− eLx

(y − (1− eLx)).(LUy − y∗) = 0

On trouvera donc le prix de l'option au temps 0, soit y0, en résolvant séquen-

tiellement tous les problèmes de complémentarité linéaire pour les valeurs n =

N − 1, N − 2, ..., 0. On résout donc une suite de problèmes de complémentarité

linéaire, alors que dans le cas européen, on résolvait une suite de systèmes d'équa-

tions linéaires.

12.2.4 Implémentation

Sous Matlab, pour e�ectuer le calcul de la valeur de l'option, on utilisera la

boucle :

for it=2:length(t)

y=l\(y+0.5*h*A*y+h*b);

y(end)=max(g(end),y(end)/u(end,end));

for ii=length(y)-1:-1:1

y(ii)=max(g(ii),(y(ii)-u(ii,ii+1)*y(ii+1))/u(ii,ii));

end

end

12.3 Résultats

On présente ci-dessous le résultat obtenu lors de la programmation (�gure 12.1) :

Page 71: verraux

12. Evaluation d'une option américaine par di�érences �nies 64

Fig. 12.1: Put américain calculé avec l'algorithme de Brennan-Schwartz, E=50, σ = 0.4,r=0.1, T=1

Le code utilisé pour représenter cette courbe peut être trouvé en section 14.5.

Comme dans le cas de l'option américaine, nous n'avons pas de solution ana-

lytique, on va chercher à prouver l'exactitude de notre modèle en comparant les

résultats que l'on obtient ici avec ceux donnés par des calculateurs appelés pricers.

Le premier pricer que l'on utilisera s'appelle Multi Options Pricer. Ce logiciel

permet, entre autres fonctionnalités, d'évaluer des primes d'options. On peut le

télécharger à l'adresse :

http ://entreprise.01net.com/windows/Bureautique/bourse_et_�nance/�ches/27403.html.

Il su�t ensuite de sélectionner l'option Put, renseigner les paramètres, et a�cher le

résultat en cliquant sur �Calculer�.

Le deuxième pricer que l'on considérera est Option Pricing Calculator 1.0.0. On

peut le télécharger à l'adresse : http ://www.shareup.com/Option_Pricing_Calculator-

download-35276.html. Il permet notamment de calculer les valeurs d'options améri-

caines avec un modèle binomial.

Les tableaux suivants comparent les di�érents résultats obtenus, à paramètres

égaux, entre les deux pricers et notre code de Brennan-Schwartz. On précise que les

paramètres de notre modèle, L = log 2, N = 501 et nt = 500, ne sont pas modi�és

au cours des deux études qui suivent. Les paramètres que l'on fera varier sont la

volatilité σ, le taux r, la date d'échéance T , et le cours du sous-jacent S.

Page 72: verraux

12. Evaluation d'une option américaine par di�érences �nies 65

E = 50, σ = 0.4, r = 0.1, T = 1

Valeurs de S 30 40 50 60 70 80 90

Multi Options Pricer 16.3928 9.6901 5.4011 2.9153 1.5514 0.8231 0.4384

Option Pricing Calculator 20.0000 11.1344 5.9619 3.1816 1.6417 0.8622 0.4543

Brennan-Schwartz 19.9799 11.1069 5.9768 3.1417 1.6211 0.8064 0.3327

E = 50, σ = 0.3, r = 0.05, T = 5/12

Valeurs de S 30 40 50 60 70 80 90

Multi Options Pricer 18.9831 9.6224 3.3227 0.7928 0.1436 0.0217 0.0029

Option Pricing Calculator 20.0000 10.1091 3.4137 0.8190 0.1432 0.0217 0.0027

Brennan-Schwartz 19.9799 10.0605 3.4153 0.8023 0.1424 0.0215 0.0029

Les tableaux permettent de comparer les résultats obtenus pour la valeur d'un

put américain en considérant des méthodes et modèles di�érents pour les calculs. On

peut voir que les deux pricers que nous avons utilisé donnent des valeurs très simi-

laires, valeurs desquelles les résultats obtenus avec notre code de Brennan-Schwartz,

sont très proches. On peut donc conclure que le code implémenté est correct.

Page 73: verraux

66

13. CONCLUSION

L'objet de cette thèse était de présenter et analyser di�érentes méthodes de ré-

solution de l'équation de Black-Scholes pour des options européennes et américaines.

Pour le cas européen, nous avons dé�ni un modèle numérique que nous avons

ensuite implémenté de trois manières di�érentes, en considérant des schémas aux

propriétés bien connues. L'existence d'une solution analytique nous a alors permis

d'e�ectuer des comparaisons entre les précisions des di�érents schémas et de mettre

en évidence leurs caractéristiques. Les ordres de précision en temps et en espace des

trois schémas ont été véri�és.

Tandis que la méthode d'Euler implicite présentait les résultats attendus, celle de

Crank-Nicolson révélait la raideur de l'équation par laquelle nous avons modélisé le

problème de Black-Scholes. Une étude approfondie des régions de convergence des

schémas nous a alors conduit au schéma d'Alexander, lequel a neutralisé la raideur

observée pour les hautes fréquences.

L'étude des erreurs a également permis de déterminer l'in�uence des di�érents

paramètres de notre modèle numérique sur le comportement de la solution. Nous

avons ainsi observé que la précision de la solution augmente lorsque le nombre de

points dans l'espace et dans le temps augmente. Un autre résultat important con-

cerne la borne à choisir pour la troncature de notre intervalle a�n d'obtenir une

précision maximale. Une valeur optimale a été proposée, en accord avec les travaux

de Kangro et Nicolaides sur le sujet.

Pour le cas américain, l'absence de solution analytique et donc l'impossibilité de

comparer les résultats à une valeur de référence, a compliqué l'étude à e�ectuer.

Nous avons dû adapter le modèle numérique dé�ni pour le cas européen.

Cette manipulation a nécessité une approche variationnelle qui a mis en évi-

dence la possibilité d'utiliser l'algorithme de Brennan et Schwartz, mais légèrement

modi�é a�n d'utiliser une décomposition LU. On a en e�et montré qu'une telle

décomposition est avantageuse de part la triangularité des matrices ; la complexité

algorithmique en est diminuée.

Les résultats obtenus suite à l'implémentation ont �nalement été comparés à des

valeurs de référence que l'on a choisi, calculées à l'aide de pricers existants. Cette

Page 74: verraux

13. Conclusion 67

étape a permis de contrôler la validité de notre modèle.

L'étude et la compréhension de l'évolution des prix des options constituent un

enjeu toujours plus important sur les marchés �nanciers. De nos jours, les math-

ématiciens cherchent à développer de nouveaux modèles toujours plus précis pour

représenter les dynamiques aléatoires telles que les évolutions boursières. La formule

de Black-Scholes a permis de répondre à la question de l'évolution du prix d'une

option européenne. Pourtant dé�nie en 1973, elle reste très utilisée de nos jours ;

c'est une référence incontournable sur le marché des options, même si elle n'apporte

pas de solution exacte au problème de modélisation américain.

Page 75: verraux

68

14. ANNEXES

Ce dernier chapitre contient tous les codes Matlab, classés par fonctionnalités,

que nous avons utilisé pendant notre étude du modèle de Black-Scholes. On décrit

brièvement le rôle de chaque fonction ou programme avant de donner le code corre-

spondant. Le code en lui-même n'est pas commenté. Les commentaires peuvent être

trouvés dans le CD qui accompagne le rapport et qui contient tous les codes sous

format informatique.

14.1 Résolution exacte du problème européen

14.1.1 Fonction BScall

Cette fonction calcule la solution analytique de l'équation de Black-Scholes pour

un call européen.

function c = BScall(S,E,r,T,sigma)

d1 = (log(S./E) + (r + sigma.^2 /2) .* T) ./ (sigma .* sqrt(T));

d2 = d1 - sigma .* sqrt(T);

Ee = E .* exp(-r .* T);

N1=0.5*erfc(-d1/sqrt(2));

N2=0.5*erfc(-d2/sqrt(2));

c = S .* N1 - Ee .* N2;

14.1.2 Programme BSschemaExact

Ce programme utilise la fonction BScall. Il résout analytiquement l'équation de

Black-Scholes pour une option d'achat europénne et trace la solution obtenue en

deux dimensions.

sigma = 0.3; N = 200; E = 100; r = 0.1; T = 1; L = log(3);

h=2/(N-1);

x=(-1:h:1)';

S = E*exp(L*x);

call = BScall(S,E,r,T,sigma);

plot(S,call)

Page 76: verraux

14. Annexes 69

xlabel('S'), ylabel('valeur du call','rot',0)

box off

14.1.3 Programme BSschemaExact3D

Ce programme résout analytiquement l'équation de Black-Scholes pour une option

d'achat europénne et trace la solution obtenue en trois dimensions.

sigma = 0.3; E = 100; r = 0.1; T = 1; N = 50;

e=1e-4;

Svals = linspace(e,3,N);

tvals = linspace(e,T-e,N);

[Smat,tmat]=meshgrid(Svals,tvals);

C=BScall(E*Smat,E,r,T-tmat,sigma);

mesh(Smat,tmat,C)

xlabel('S'),ylabel('t'),zlabel('C(S,t)','rot',0)

box off

14.2 Résolution numérique du problème européen

14.2.1 Fonction get_di�matrix

Cette fonction retourne les valeurs du vecteur x et des matrices d'approximation

D1 et D2 utilisées pour la résolution avec des schémas numériques.

function [x,D1,D2]=get_diffmatrix(kind,N)

switch kind

case 'fd'

h=2/(N-1);

h2=h^2;

x=(-1:h:1)';

D1=spdiags(repmat([-1,1]*0.5/h,N,N),[-1 1],N,N);

D1(1,1:3)=[-1.5 2 -0.5]/h;

D1(N,N-2:N)=[0.5 -2 1.5]/h;

D2=spdiags(repmat([1/h2 -2/h2 1/h2],N,N),-1:1,N,N);

D2(1,1:3)=[1 -2 1]/h2;

D2(N,N-2:N)=[1 -2 1]/h2;

case 'sc'

[x,D]=chebdif(N,2);

ii=N:-1:1;

x=x(ii);

Page 77: verraux

14. Annexes 70

D1=D(ii,ii,1);

D2=D(ii,ii,2);

end

14.2.2 Fonction BSschemaImplicite

Cette fonction résout numériquement l'équation de Black-Scholes pour un call

européen à l'aide de la méthode des di�érences �nies avec un schéma d'Euler Im-

plicite.

function y = BSschemaImplicite(E,r,T,sigma,L,nt,N)

v = sigma^2;

[x, D, D2] = get_diffmatrix('fd', N);

I = speye(N); i = 2:N-1; k = 2*r/v;

A = [-L^(-2)*D2(i,:)-(k-1)/L*D(i,:)+k*I(i,:)

I(1,:)

-I(N,:)];

M = I(i,:); M(N-1,N-1) = 0; M(N,N) = 0;

y = max (exp(L*x)-1,0);

h = -T*v/2/nt; tau = T*v/2:h:0;

[l,u] = lu(M-h*A);

for it=2:length(tau)

b=(exp(L)-exp(-k*(T*v/2-tau(it)))) * I(:,N);

z=u\(l\(A*y+b));

y=y+h*z;

end

y = E*y;

14.2.3 Fonction BSschemaCrankNicolson

Cette fonction résout numériquement l'équation de Black-Scholes pour un call

européen à l'aide de la méthode des di�érences �nies avec un schéma de Crank-

Nicolson.

function y = BSschemaCrankNicolson(E,r,T,sigma,L,nt,N)

v = sigma^2;

[x, D, D2] = get_diffmatrix('fd', N);

I = speye(N); i = 2:N-1; k = 2*r/v;

A = [-L^(-2)*D2(i,:)-(k-1)/L*D(i,:)+k*I(i,:)

I(1,:)

-I(N,:)];

Page 78: verraux

14. Annexes 71

M = I(i,:); M(N-1,N-1) = 0; M(N,N) = 0;

y = max (exp(L*x)-1,0);

h = -T*v/2/nt; tau = T*v/2:h:0;

[l,u] = lu(M-(h/2)*A);

for it=2:length(tau)

b1=(exp(L)-exp(-k*(T*v/2-tau(it-1)))) * I(:,N);

b2=(exp(L)-exp(-k*(T*v/2-tau(it)))) * I(:,N);

z=u\(l\(A*y+(b1+b2)/2));

y=y+h*z;

end

y = E*y;

14.2.4 Fonction BSAlexander

Cette fonction résout numériquement l'équation de Black-Scholes pour un call

européen à l'aide de la méthode des di�érences �nies avec un schéma d'Alexander.

function y = BSAlexander(E,r,T,sigma,L,nt,N)

v = sigma^2;

[x, D, D2] = get_diffmatrix('fd', N);

I = speye(N); i = 2:N-1; k = 2*r/v;

A = [-L^(-2)*D2(i,:)-(k-1)/L*D(i,:)+k*I(i,:)

I(1,:)

-I(N,:)];

M = I(i,:); M(N-1,N-1) = 0; M(N,N) = 0;

y = max (exp(L*x)-1,0);

gamma = 1-sqrt(2)/2;

h = -T*v/2/nt; tau = T*v/2:h:0;

[l,u] = lu(M-h*gamma*A);

b1=(exp(L)-exp(-k*(T*v/2-tau(1)))) * I(:,N);

for it=2:length(tau)

h=tau(it)-tau(it-1);

z=u\(l\(gamma*(A*y+b1)));

b2=(exp(L)-exp(-k*(T*v/2-tau(it)))) * I(:,N);

z=u\(l\((1-gamma)*b1+gamma*b2+A*(y+(1-gamma)*h*z)));

y=y+h*z;

b1=b2;

end

y = E*y;

Page 79: verraux

14. Annexes 72

14.3 Etude comparative des méthodes numériques pour l'op-

tion européenne

14.3.1 Programme erreurEspace

Ce programme calcule les erreurs pour les schémas d'Euler implicite, de Crank-

Nicolson et d'Alexander lorsqu'on fait varier le pas d'espace.

sigma = 0.3; v = sigma^2;

E = 100; r = 0.1; T = 1; nt = 1000; L = log(3);

Nlist=[3 5 10 20 50 100 150 200];

erreur_implicite=zeros(size(Nlist));

erreur_cranknicolson=zeros(size(Nlist));

erreur_alexander=zeros(size(Nlist));

for i=1:length(Nlist)

N=Nlist(i);

Svals = E*exp(L*linspace(-1,1,N))';

Cexact=BScall(Svals,E,r,T,sigma);

Cimpl=BSschemaImplicite(E,r,T,sigma,L,nt,N);

Ccranknic=BSschemaCrankNicolson(E,r,T,sigma,L,nt,N);

Calex=BSAlexander(E,r,T,sigma,L,nt,N);

erreur_implicite(i) = norm(Cimpl-Cexact,inf);

erreur_cranknicolson(i) = norm(Ccranknic-Cexact,inf);

erreur_alexander(i) = norm(Calex-Cexact, inf);

end

loglog(Nlist,erreur_implicite,'o-',Nlist,erreur_cranknicolson,'*-',...

Nlist,erreur_alexander,'x-')

xlabel('N'),legend('erreur implicite','erreur CN','erreur Alexander')

box off

14.3.2 Programme erreurTemps

Ce programme calcule les erreurs pour les schémas d'Euler implicite, de Crank-

Nicolson et d'Alexander lorsqu'on fait varier le pas de temps.

sigma = 0.3; v = sigma^2;

E = 100; r = 0.1; T = 1; N = 200; L = log(3);

ntlist=[1 2:2:10 20 50 100 200 1000];

erreur_implicite=zeros(size(ntlist));

erreur_cranknicolson=zeros(size(ntlist));

erreur_alexander=zeros(size(ntlist));

Page 80: verraux

14. Annexes 73

Svals = E*exp(L*linspace(-1,1,N))';

Cexact=BScall(Svals,E,r,T,sigma);

for it=1:length(ntlist)

nt=ntlist(it);

Cimpl=BSschemaImplicite(E,r,T,sigma,L,nt,N);

Ccranknic=BSschemaCrankNicolson(E,r,T,sigma,L,nt,N);

Calex=BSschemaAlexander(E,r,T,sigma,L,nt,N);

erreur_implicite(it) = norm(Cimpl-Cexact,inf);

erreur_cranknicolson(it) = norm(Ccranknic-Cexact,inf);

erreur_alexander(it) = norm(Calex-Cexact, inf);

end

loglog(ntlist,erreur_implicite,'o-',ntlist,erreur_cranknicolson,'*-',...

ntlist,erreur_alexander,'x-')

xlabel('nt'),legend('erreur implicite','erreur CN','erreur Alexander')

box off

14.3.3 Programme erreurTroncature

Ce programme calcule les erreurs pour les schémas d'Euler implicite, de Crank-

Nicolson et d'Alexander lorsqu'on fait varier la valeur de la borne de troncature.

sigma = 0.3; v = sigma^2; E = 100; r = 0.1; T = 1; nt=100;

Llist=[log(3) log(5) log(7) log(10) log(20) log(50) log(100)

log(200) log(300) log(400)];

Nlist=[30 50 70 100 200 500 1000 2000 3000 4000];

erreur_implicite=zeros(size(Llist));

erreur_cranknicolson=zeros(size(Llist));

erreur_alexander=zeros(size(Llist));

for it=1:length(Llist)

L=Llist(it);

N=Nlist(it);

Svals = E*exp(L*linspace(-1,1,N))';

Cexact=BScall(Svals,E,r,T,sigma);

Cimpl=BSschemaImplicite(E,r,T,sigma,L,nt,N);

Ccranknic=BSschemaCrankNicolson(E,r,T,sigma,L,nt,N);

Calex=BSAlexander(E,r,T,sigma,L,nt,N);

erreur_implicite(it) = norm(Cimpl-Cexact,inf);

erreur_cranknicolson(it) = norm(Ccranknic-Cexact,inf);

erreur_alexander(it) = norm(Calex-Cexact,inf);

end

Page 81: verraux

14. Annexes 74

plot(Llist,erreur_implicite,'o-',Llist,erreur_cranknicolson,'*-',...

Llist,erreur_alexander,'x-')

xlabel('L'),legend('erreur implicite','erreur CN','erreur alexander')

box off

14.4 Calcul du Delta

14.4.1 Fonction calculDeltaAvecEquation

Cette fonction permet de calculer une valeur numérique pour Delta (dC/dS) dans

l'équation de Black-Scholes pour un call européen. Le schéma numérique utilise est

celui d'Euler implicite.

function delta = calculDeltaAvecEquation(E,r,T,sigma,L,nt,N)

v = sigma^2;

[x, D, D2] = get_diffmatrix('fd', N);

I = speye(N); i = 2:N-1; k = 2*r/v;

A = [-L^(-2)*D2(i,:)-(k-1)/L*D(i,:)+k*I(i,:)

I(1,:)

-I(N,:)];

M = I(i,:); M(N-1,N-1) = 0; M(N,N) = 0;

delta = L*exp(L*x).*stepfcn(exp(L*x)-1);

h = -T*v/2/nt; tau = T*v/2:h:0;

[l,u] = lu(M-h*A);

for it=2:length(tau)

b=L*exp(L)*I(:,N);

z=u\(l\(A*delta+b));

delta=delta+h*z;

end

14.4.2 Programme delta

Ce programme calcule et a�che les erreurs de Delta (dC/dS) pour un call améri-

cain dans l'équation de Black-Scholes. Les calculs sont e�ectués de deux manières

numériques (approximation du Delta par Dy en considérant notre schéma et calcaul

en utilisant l'équation) que nous comparons avec la solution analytique.

sigma = 0.3; E = 100; r = 0.1; T = 1; L = log(3); nt = 20; N = 51;

[x, D, D2] = get_diffmatrix('fd', N);

S=E*exp(L*x);

d1 = (log(S./E) + (r + sigma.^2 /2) .* T) ./ (sigma .* sqrt(T));

Page 82: verraux

14. Annexes 75

N1=0.5*erfc(-d1/sqrt(2));

deltaExact = N1;

deltaApproxime = 1/L*exp(-L*x).*(D*(BSschemaImplicite(E,r,T,sigma,L,nt,N)/E));

deltaEquation = 1/L*exp(-L*x).*calculDeltaAvecEquation(E,r,T,sigma,L,nt,N);

plot(S,deltaExact-deltaApproxime,'--',S,deltaExact-deltaEquation,'+')

xlabel('sous-jacent'), ylabel('delta','rot',0)

legend('erreur delta D*y','erreur delta equation')

box off

14.5 Option américaine : programme brennanSchwartz

Ce programme résout numériquement l'équation de Black-Scholes pour un put

américain en utilisant l'algorithme de Brennan-Schwartz avec un schéma de Crank-

Nicolson.

E=50; v=(0.4)^2; r=0.1; T=1;

L=log(2); N=501; nt=500;

TT=T*v/2; h=-TT/nt; t=TT:h:0;

[x,D,D2]=get_diffmatrix('fd',N);

k=r/(v/2); I=speye(N); i=2:N-1;

S=E*exp(L*x); g=1-S(i)/E; g=g;

y=max(1-S(i)/E,0); y1=1-S(1)/E;

A=-1/L^2*D2(i,i)-(k-1)/L*D(i,i)+k*I(i,i);

[l,u]=lu(I(i,i)-0.5*h*A);

b=(-1/L^2*D2(i,1)-(k-1)/L*D(i,1))*y1;

for it=2:length(t)

y=l\(y+0.5*h*A*y+h*b);

y(end)=max(g(end),y(end)/u(end,end));

for ii=length(y)-1:-1:1

y(ii)=max(g(ii),(y(ii)-u(ii,ii+1)*y(ii+1))/u(ii,ii));

end

end

Y=[E-S(1);E*y;0];

plot(S,Y,S,max(E-S,0),'--')

xlabel('S'),legend('valeur du put','condition finale')

box off

ValeursDeS=[30:10:90];

k=1;

j=1;

while (k<=length(ValeursDeS))

Page 83: verraux

14. Annexes 76

while (j<length(S))

if (S(j)>=ValeursDeS(k))

ValeurSolution(k)=Y(j);

j=length(S);

end

j=j+1;

end

j=1;

k=k+1;

end

ValeursDeS

ValeurSolution

Page 84: verraux

77

BIBLIOGRAPHIE

[1] J. Hull. �Options, futures et autres actifs dérivés�. Cinquième édition, Pearson

Education, 2004.

[2] P. Wilmott, S. Howison, J. Dewynne. �The Mathematics of Financial Derivatives,

A Student Introduction�. Cambridge University Press, 1995.

[3] Desmond J. Higham. �An Introduction to Financial Option Valuation�. Cam-

bridge University Press, 2004.

[4] R. Piché, J. Kanniainen. �Solving �nancial di�erential equations using di�eren-

tiation matrices�, Proceedings of WCE 2007, World Congress on Engineering,

London, 2-4 July, 2007, pp. 1016-1022.

[5] R. Kangro, R. Nicolaides. �Far Field Boundary Conditions For Black-Scholes

Equations�, Siam J. Numer. Anal., Vol. 38, No. 4, pp. 1357-1368

[6] M. J. Brennan, Eduardo S. Schwartz. �The Valuation of American Put Options�,

Journal of Finance, 32 (1977), pp. 449-462.

[7] S. Ikonen, J. Toivanen. �Pricing American Options using LU decomposition�,

Applied Mathematical Sciences, Volume 1, Number 51, 2007, pp. 2529-2551.

Department of Mathematical Information Technology, University of Jyväskylä,

Finland.

http ://m-hikari.com/ams/ams-password-2007/ams-password49-52-

2007/toivanenAMS49-52-2007.pdf