verraux
-
Upload
markovich-mbarga -
Category
Documents
-
view
157 -
download
9
Transcript of 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
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.
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.
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
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
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
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
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-
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é.
3
Première partie
Généralités mathématiques et
�nancières
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
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.
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.
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.
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.
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.
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 < +∞
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.
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
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 :
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.
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.
16
Deuxième partie
Le modèle de Black et Scholes pour
une option européenne
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
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.
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.
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.
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
4τ
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
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.
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
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 :
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√
2π
∫ +∞
− 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.
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
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
)]
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.
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,
2τ
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 :
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
2δ
Pour les points extrémité, en i = 1, on va utiliser la formule progressive
yi =−3yi + 4yi+1 − yi+2
2δ
et en i = N , on va utiliser la formule régressive
yi =yi−2 − 4yi−1 + 3yi
2δ
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)
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)
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
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]}
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.
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
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
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.
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
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]
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 :
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
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.
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.
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.
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
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.
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.
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)
50
Troisième partie
Le modèle de Black et Scholes pour
une option américaine
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
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.
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
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 :
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
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
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,
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.
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).
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)
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
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
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) :
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.
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.
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
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.
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)
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);
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,:)];
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;
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));
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
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));
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))
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
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