Explorer les Livres électroniques
Catégories
Explorer les Livres audio
Catégories
Explorer les Magazines
Catégories
Explorer les Documents
Catégories
NUMERIQUES
POUR LE PRICING DOPTIONS
DIDIER AUROUX
POLYTECHNICE-SOPHIA
MAM5 - OPTION IMAFA
2010-2011
`res
Table des matie
1. Notations et equation de Black-Scholes
1.1. Notations
1.2. Equation
de Black-Scholes
1.3. Conditions aux limites pour un call
1.4. Conditions aux limites pour un put
1.5. Lien entre lequation de Black-Scholes et lequation de la chaleur
1.6. Solution analytique
2. Schemas numeriques pour la resolution de lequation de la chaleur
2.1. Discretisation et differences finies
2.2. Schema dEuler explicite
2.3. Schema dEuler implicite
2.4. Schema de Crank-Nicholson
3. Resolution numerique de lequation de Black-Scholes
2
2
2
2
3
3
4
4
5
6
7
9
10
DIDIER AUROUX
quation de Black-Scholes
1. Notations et e
1.1. Notations. One note V la valeur dune option (on se limitera aux options
europeennes dans ce cours). On pourra faire la distinction entre un call C et un
put P si besoin. Ce sont des fonctions du temps t, et de la valeur actuelle de
laction sous-jacente S. On note donc V = V (S, t).
On notera egalement :
la volatilite du prix de laction ;
E le prix dexercice fixe par loption ;
T le temps qui reste `
a loption avant son echeance ;
r le taux dinteret.
1.2. Equation
de Black-Scholes. Cest une equation aux derivees partielles qui
permet de calculer la valeur dune option europeenne en fonction du temps et de la
valeur de laction sous-jacente. Le mod`ele est le suivant :
(1)
2V
1
V
V
+ 2 S 2 2 + rS
rV = 0.
t
2
S
S
Cest une equation aux derivees partielles (EDP) dordre 2, du type parabolique, et il est necessaire de preciser une condition initiale (ou finale) en temps, et
des conditions aux limites en espace.
1.3. Conditions aux limites pour un call. Dans le cas dun call (option
dachat) pour une option europeenne, on a une condition finale, `a linstant t = T
correspondant `
a lecheance de loption : `a t = T , la valeur du call est donnee par la
formule
(2)
S.
C(0, t) = 0,
t.
C(S, t) S,
S +.
Lensemble des equations (1)-(4) peut etre resolu afin de determiner la valeur
dun option dachat (call).
METHODES
NUMERIQUES
POUR LE PRICING DOPTIONS
1.4. Conditions aux limites pour un put. Dans le cas dune option du type
put (option de vente), la condition finale est le benefice :
P (S, T ) = max(E S, 0),
(5)
S.
(6)
S +.
Si au contraire, on consid`ere le cas dune action dont le prix est nul (S = 0),
alors le benefice `
a terme est forcement E. Il faut tenir compte du taux dinteret r
pour en deduire la valeur de P (0, t) sachant qu`a linstant T , P (0, T ) = E. Dans le
cas dun taux dinteret constant, on trouve assez facilement la condition suivante
en resolvant lequation (1) dans le cas S = 0 :
P (0, t) = E er(T t) ,
(7)
t.
RT
t
r( ) d
t.
Lensemble des equations (1) et (5-(7) peut etre resolu afin de determiner la
valeur dune option de vente (put).
1.5. Lien entre l
equation de Black-Scholes et l
equation de la chaleur.
Prenons le cas dune option dachat (call), nous allons nous ramener de lequation
de Black-Scholes `
a lequation de la chaleur. On consid`ere donc lequation
C
1
2C
C
+ 2 S 2 2 + rS
rC = 0,
t
2
S
S
avec les conditions aux limites
(8)
C(0, t) = 0 ;
C(S, t) S, S +
et la condition finale
C(S, T ) = max(S E, 0).
Dans un premier temps, on effectue un changement de variable pour supprimer
les termes en S et S 2 devant les operateurs differentiels, revenir en temps croissant
x2
x
(9)
avec k =
(10)
1 2.
2
DIDIER AUROUX
x2
(11)
avec
(14)
d1
(15)
d2
(16)
N (d)
S
log( E
) + r + 12 2 (T t)
,
T t
S
) + r 12 2 (T t)
log( E
,
T t
Z d
1 2
1
e 2 s ds.
2
u
2u
=
.
x2
METHODES
NUMERIQUES
POUR LE PRICING DOPTIONS
2.1. Discr
etisation et diff
erences finies. La resolution numerique dune EDP
necessite la discretisation du domaine detude considere, en temps comme en espace. On suppose que lintervalle de temps est decoupe suivant une grille avec un
nombre fini de points et dintervalles. On va calculer (et considerer) la solution
uniquement en ces instants-l`
a. La difficulte consiste alors `a calculer les derivees
(ici, en temps) `
a partir de ces valeurs discr`etes. Si on note lintervalle de temps
(suppose constant) de la grille de discretisation temporelle, et x le pas despace
(suppose aussi constant) de la grille de discretisation spatiale, on ne calculera la
solution quaux points x = n x et = m .
Comme vu precdemment,
lintervalle de temps considere est [0; 12 2 T ] (date
dexpiration de loption). On decoupe generalement cet intervalle en M intervalles
2
constants, et donc = 21 MT .
De meme, le domaine despace que lon consid`ere est R. Il est evident quon
ne peut pas discretiser toute la droite reelle, et on se limite donc `a un intervalle
despace borne [N x; N + x], o`
u N < 0 et N + > 0 sont deux entiers.
Dans la suite, on notera
(19)
um
n = u(n x, m )
Lerreur dapproximation est dordre 1, en O( ). La justification de cette approximation est immediate en utilisant une formule de Taylor.
2.1.2. Differences finies decentrees `
a gauche. Une deuxi`eme approximation de la
derivee partielle de u est donnee par la formule des differences finies decentrees `a
gauche :
u
u(x, ) u(x, )
(x, ) '
.
u
u(x, + ) u(x, )
(x, ) '
.
DIDIER AUROUX
x2
Ainsi, si la solution est connue `a linstant m en tous les points despace (et
plus particuli`erement en (n 1) x, n x et (n + 1) x), alors on peut calculer
explicitement la solution `
a linstant suivant (m + 1) , au point n x. On peut
donc calculer la solution `
a linstant + explicitement en fonction de la solution
a linstant .
`
(24)
um
N = u (N x, m ),
+
um
N + = u+ (N x, m ),
0 < m M.
,
x2
on peut reecrire lequation (24) sous la forme
(25)
(26)
m
m
um+1
= um
n
n1 + (1 2) un + un+1 .
METHODES
NUMERIQUES
POUR LE PRICING DOPTIONS
Si la condition de stabilite nest pas verifiee, alors on peut faire le meme calcul
mais en prenant la valeur absolue des poids :
um+1
( + |1 2| + ) U m = ( + (2 1) + )U m U m
n
si et seulement si 4 1 1, ce qui est equivalent `a 21 . La condition (27) est
donc une condition necessaire et suffisante de stabilite du schema numerique.
Lerreur dapproximation du schema numerique est en O( + x2 ), comme vu
precedemment. Le schema etant stable du moment que 21 x2 , il est inutile
de raffiner excessivement, et on prendra du meme ordre que x2 (par exemple
0, 4 x2 ). Lerreur est donc en O(x2 ). On choisit donc x en fonction de la precision
souhaitee, et du temps de calcul dont on dispose, puis on fixe de lordre de x2 .
2.3. Sch
ema dEuler implicite. Le schema dEuler implicite consiste `a utiliser
un schema aux differences finies, decentre `a gauche, pour le calcul de la derivee
temporelle :
m
m1
um 2 um
um
n + un+1
n un
' n1
.
x2
De facon equivalente, en augmentant m de 1, on obtient
(28)
(29)
um+1 2 um+1
+ um+1
um+1
um
n
n+1
n
n
.
' n1
x2
x2 .
On peut
m+1
m
um+1
um+1
n1 + (1 + 2)un
n+1 = un .
+
n
N
N
limites. On peut alors reecrire (29) de la mani`ere suivante :
(30)
m+1 m
um+1
uN +1
uN +1
1 + 2
0
...
0
N
..
..
1
+
2
0
.
.
m+1
..
..
m
..
.
.
0
+
u0
= u0
.
..
.
..
..
..
..
0
.
.
.
um
0
0
1 + 2
um+1
um+1
N + 1
N + 1
N+
On voit apparatre la matrice tridiagonale, avec des 1 + 2 sur la diagonale, et
des sur et sous la diagonale, puis le vecteur dinconnues constitue des um+1
,
n
DIDIER AUROUX
+
N
N
La resolution du schema `
a chaque pas de temps revient donc `a calculer la solution
dun syst`eme lineaire de la forme
AU m+1 = bm ,
(31)
o`
u A est la matrice tridiagonale, U m+1 contient les inconnues um+1
, et bm est le
n
second membre, connu. On obtient alors la solution `a linstant + (les um+1
)
n
en fonction de la solution `
a linstant (les um
).
n
Linconvenient de la methode dEuler implicite par rapport `a la methode explicite
est lapparente difficulte supplementaire pour la resolution de ces syst`emes lineaires
afin de calculer la solution. Toutefois, un avantage certain de la methode est quelle
est intrins`equement stable. En effet, quelle que soit la valeur du param`etre > 0,
la norme de la matrice A1 est inferieure `a 1, assurant la stabilite du schema.
Une mani`ere a priori simple de resoudre les syst`emes lineaires (31) consiste `a
inverser la matrice A, en remarquant quelle est constante au fil des pas de temps.
Mais linverse dune matrice tridiagonale est pleine, ce qui represente un co
ut de
stockage important, au del`
a du co
ut de calcul de la matrice inverse. En temps
normal, linverse dune matrice de taille N necessite O(N 4 ) operations. Le stockage
de linverse de la matrice represente N 2 elements, `a comparer avec seulement 3N
elements dans la matrice A.
La resolution dun syst`eme lineaire peut se faire avec la traditionnelle methode
du pivot de Gauss, qui consiste `a iterer les operations sur les lignes ou colonnes de
la matrice pour rendre le syst`eme triangulaire. La resolution dun syst`eme lineaire
triangulaire est alors tr`es rapide.
La matrice etant ici tridiagonale, il est plus interessant dutiliser une decomposition
LU.
2.3.2. Methode LU pour la resolution du syst`eme lineaire. Lidee de la methode LU
consiste `
a decomposer la matrice A sous la forme dun produit A = LU , o`
u L est
une matrice triangulaire inferieure (Lower), et U une matrice triangulaire superieure
(Upper). Cette decomposition nexiste que sous conditions de rang et de non nullite
des mineurs principaux de la matrice. Dans le cas de la matrice A presente, cette
decomposition existe, et les matrices L et U nont que deux diagonales non nulles :
u1 0 . . .
0
1
0
0
...
0
..
..
l1 1 . . .
0 u2
.
.
..
..
..
..
,
U
=
,
L = 0 l2
.
.
0
u3
0
1
.
.
.
..
..
..
..
..
..
.
.
.
.
0
0 . . . 0 lN 1 1
0 ...
0
0 uN
o`
u les cfficients se calculent par recurrence :
u1 = (1 + 2),
un = (1 + 2)
2
,
un1
ln =
.
un
Lz = bm ,
U U m+1 = z.
METHODES
NUMERIQUES
POUR LE PRICING DOPTIONS
Chacun de ces deux syst`emes lineaires est triangulaire, avec seulement une sous(ou sur-)diagonale non nulle. Le premier syst`eme se resoud donc rapidement : la
premi`ere ligne donne directement z1 = bm
eme ligne donne z2 en
1 . Puis la deuxi`
fonction de z1 et b2 . Et ainsi de suite. De meme, on peut resoudre le deuxi`eme
syst`eme lineaire, mais en partant de la derni`ere ligne, qui donne directement um+1
N
en fonction de zN .
Il faut donc O(N ) operations pour resoudre chacun de ces deux syst`emes, et
donc pour resoudre (31). Cest tr`es clairement lune des methodes les plus efficaces
pour resoudre un syst`eme lineaire tridiagonal, dautant plus que la decomposition
LU (ou le calcul des cfficients de ces matrices) est fait une fois pour toutes, la
matrice etant independante du pas de temps considere.
On voit donc quavec cette decomposition, le calcul de la solution `a linstant
(m + 1) en fonction de la solution `a linstant m nest pas particuli`erement
plus long que dans le cas de la methode dEuler explicite, avec la garantie de la
stabilite du schema en plus.
Toutefois, la precision de la methode est toujours en O( + x2 ), ce qui impose
un pas de temps tr`es petit si on veut garantir une certaine precision `a la solution
calculee.
2.4. Sch
ema de Crank-Nicholson. Le schema de Crank-Nicholson consiste `a
utiliser un schema aux differences finies, centre en espace, afin daccrotre la
precision. Linteret du schema de Crank-Nicholson est quil permettra de reduire
lerreur sur la derivee temporelle en O( 2 ), au lieu de O( ).
En pratique, le schema de Crank-Nicholson revient `a faire la moyenne du schema
dEuler explicite et du schema dEuler implicite :
!
m+1
m
m
um+1
+ um+1
um+1
um
1 um
n1 2 un + un+1
n1 2 un
n+1
n
n
(33)
'
+
.
2
x2
x2
On peut montrer que lerreur de ce schema est en O( 2 + x2 ), ce qui nimpose
plus des pas de temps particuli`erement petits pour garantir la precision.
On peut reecrire lequation (33) sous la forme
(34)
1
1
m+1
m
m
m
m
um+1
(um+1
+ um+1
n
n1 2un
n+1 ) = un + (un1 2un + un+1 ),
2
2
o`
u est toujours donne par (25). Le second membre est connu, et on obtient `a
nouveau une dependance implicite des um+1
en fonction des um
n
n.
Comme dans le cas du schema dEuler implicite, en assemblant les equations
(34) pour tous les n, on obtient un syst`eme lineaire
(35)
CU m+1 = bm ,
o`
u C est la matrice tri-diagonale suivante :
1 + 12
0
1 1 + 1
2
2
..
1
.
0
(36)
C=
2
..
.
..
.
0
0
...
..
..
.
21
0
0
1
2
1+
10
DIDIER AUROUX
uN
fN +1
..
1
m
m
..
(37)
b = f0
+ 2
.
..
.
m
fN
+ 1
um+1
N+
1
m
(um
n1 + un+1 ). On retrouve une fois encore la partie
2
provenant du second membre qui est connu (solution `a linstant m ) et la partie
provenant des conditions aux limites
(egalement connues) `a linstant (m + 1) .
On remarque que C() = A 2 . Autrement dit, en considerant 2 au lieu de
dans le schema dEuler implicite, on obtient la meme matrice quici. On peut donc
utiliser la methode LU precedemment detaillee, en divisant par 2, pour resoudre
les syst`emes lineaires (35).
solution nume
rique de le
quation de Black-Scholes
3. Re
Il est egalement possible de resoudre directement lequation de Black-Scholes
(1) sans passer par les precedentes transformations et lequation de la chaleur.
Parmi les schemas presentes, la facon la plus precise et efficace consiste `a utiliser
une methode de Crank-Nicholson en temps, et des schemas aux differences finies
centrees en espace. Une difficulte supplementaire apparat toutefois dans le fait que
les cfficients des derivees partielles spatiales ne sont pas constants (ils dependent
de S), ce qui complique la resolution des syst`emes lineaires (qui restent malgre tout
tri-diagonaux).