Projet
Projet
Mémoire de Master
En vue de l’obtention du grade de
Master d’Aptitude au Professorat de l’Ecole Normale (MAPEN)
PROMOTION : MIAVAKA
Mémoire de Master
En vue de l’obtention du grade de
Master d’Aptitude au Professorat de l’Ecole Normale (MAPEN)
PROMOTION : MIAVAKA
i
Résume
Ainsi, le recours aux méthodes numériques devient indispensable pour approcher les
solutions de ces équations. L’étude de ces méthodes permet de mieux comprendre leur com-
portement en termes de convergence, de stabilité et de précision.
Dans ce travail, nous avons étudié quelques méthodes numériques classiques des équations
différentielle stochastiques et les appliquées à EDS de Black-Scholes.
i
Abstract
i
Cahier des charges
Description du sujet :
Mots-clés :
ii
Table des matières
Remerciements i
Résume i
Abstrack i
INTRODUCTION GÉNÉRALE 1
iii
TABLE DES MATIÈRES
CONCLUSION 43
Références bibliographiques 43
iv
Liste des tableaux
v
Liste des figures
vi
Liste des abréviations
vii
Notations utilisées
∀ quantificateur universel
∃ quantificateur existentiel
≤ ordre large
< ordre strict
O Ordre
≈ approximation
⇔ équivalence
∈ appartenance
R Ensemble des nombres réels
Rd R × R × ... × R
∆ ou Ω Ensemble de Rd
m Espérance de la variable aléatoire X
σ2 Variance de la variable aléatoire X
I
b
n Estimateur de la méthode de Monte-Carlo
Ifn Estimateur amélioré de I par une technique de réduction de la variance
viii
INTRODUCTION
Ce travail porte sur le problème de résolution numériques des équations différentielles sto-
chastiques. Un phénomène stochastique est un processus dépendant du temps et contrôler
par un ou des mouvement Brownien. Ce dernier est décrit par des équations différentielles
stochastiques qui différent des équations différentielles ordinaires modélisant les processus
déterministes. Contrairement aux équations différentielles ordinaires, les équations différen-
tielles stochastiques contiennent deux termes : la dérivée pour l’évolution du temps et la
diffusion qui inclut le bruit. Du fait de la présence d’un mouvement Brownien qui n’est pas
dérivable par rapport au temps, les dérivées présentées dans les équations différentielles ordi-
naires sont remplacées dans les équations différentielles stochastiques par des différentielles
et pour résoudre les équations différentielles stochastiques, on fait appel aux formules d’Itô.
Des nombreux phénomènes sont décrits par des équations différentielles stochastiques
lorsqu’une description déterministes n’est pas satisfaisante : économie, biologie, informa-
tique, physique et mécanique, physique quantique, électricité, ingénierie.
En général, il est très difficile, voir impossible de trouver ou tracer une solution exacte aux
équations différentielles stochastiques, nous devons donc avoir recours à des méthodes numé-
riques afin de trouver une bonne approximation de la solution recherchée. Plusieurs travaux
ont été élaborer de ce travail. Nous citons entre autres quelques travaux ci-après. CHEIKH
BÉCAYE NDONGO[NDO12], BOUDAHDIR Louiza et BERKANI Asmaa[BA18],
elles vont exposer les notions fondamentales sur la résolution numérique des équations diffé-
rentielles stochastiques et la convergence de ces dernières puis elles clôturent ce travail par
une comparaison de quelques méthodes numériques à savoir la méthode d’Euler-Maruyama
et la méthode de Milstein, Angar Miloud[Mil20] il est de présenter les deux différents
schémas de discrétisation usuellement employés ainsi que leurs efficience en terme de rapi-
dité de convergence et Ikram Boukhelkhal[I.B24] il étudié d’abord les schémas classiques
de Taylor-Itô forts et faibles afin d’approximer les solutions des EDS et d’examiner leurs
propriétés de stabilité, en suivant l’approche de Higham, nous considérons notamment les
méthodes d’Euler-Maruyama et Milstein, construit à partir de développement d’Itô-Taylor,
enfin il propose de nouvelles approches numériques pour approximer certaines classes d’EDS
gouvernées par un bruit blanc.
Dans ce mémoire, nous avons d’étudier et d’utiliser les méthodes numériques classiques
pour approximer la solution des EDS, lorsque la solution exacte est difficile ou impossible
à déterminer. Pour atteindre cet objectif, nous avons organisé ce travail comme suit. Le
chapitre 1 expose les concepts de bases. Le chapitre 2 approximation numérique des EDS. Le
chapitre 3 applications et implications pédagogiques. Ce travail se termine par la conclusion.
discontinuités soudaines. Par ailleurs, des recherches récentes portent sur les méthodes de
Monte Carlo, les techniques de réduction de variance et les méthodes numériques adaptatives.
Enfin, les applications des EDS sont largement documentées dans la littérature. En fi-
nance mathématique, elles sont utilisées pour modéliser l’évolution des prix des actifs et
des taux d’intérêt. En physique, elles interviennent dans l’étude des phénomènes de diffu-
sion et de turbulence. En biologie et en ingénierie, elles permettent de décrire des systèmes
complexes soumis à des fluctuations aléatoires.
Exemple 1.2.1 Les ensembles τ = {∅, Ω} et τ = P(Ω) sont des tribus sur Ω.
Définition 1.2.2 Soit X : Ω → R est une variable aléatoire mesurable par rapport à la tribu
τ, si ∀β ∈ B(R) :
{ω ∈ Ω, X(ω) ∈ β} = {X ∈ β} ∈ τ
Définition 1.2.4 Soit (Ω, τ) un espace probabilisable. On appelle probabilité sur (Ω, τ) toute
application P : τ → [0, 1] vérifiant
1. P(Ω) = 1
S∞ X
∞
2. P( i=0 Ai ) = P(Ai ), tels que Ai ∩ Aj = ∅, ∀i 6= j
i=0
Définition 1.2.5 (Espace probabilisé)Un espace probabilisé est un triplet (Ω, τ, P) où Ω
est un ensemble, τ est une tribu sur Ω et P une probabilité sur (Ω, τ).
P(A ∩ B)
PB (A) =
P(B)
C’est aussi l’unique ( à une égalité presque sûrement près) variable G-mesurable telle que
E(E(X/G)Y) = E(XY)
pour toute variable Y, G-mesurable.
Remarque 1.2.1 Il en résulte que si X est de carré intégrable, E(X/G) est la projection
de X sur l’espace des variables aléatoires G-mesurables et de carré intégrable, c’est-à-dire
la variable aléatoire G-mesurable qui minimise E[(X − Y)2 ] parmi les variables aléatoires
G-mesurable.
Propriétés 1.2.1 Soit X, Y deux variables aléatoires dans L1 (Ω, τ, P), et G une sous-tribu
de τ.
1. Si X⊥G alors :
E(E(X/G)) = E(X).
2. E(X/G) = X, si X est G-mesurable.
3. Si Y et G-mesurable alors
E(XY/G) = YE(X/G),
4. Linéarité :
∀a, b ∈ R, E(aX + bY/G) = aE(X/G) + bE(Y/G).
Remarque 1.2.2 1. T = R ou R+ le processus est indexé par le temps t est dit continu.
2. T = N le processus est dit discret.
Exemple 1.2.3 Tout suite de variable aléatoires (Xn )n ∈ N est un processus stochastique
indexé sur I = N.
Définition 1.2.9 [P.B24](Filtration) On appelle une filtration est une suite Ft vérifiant :
∀s ≤ t alors Ft ⊂ Ft ⊂ F.
Définition 1.2.10 [P.B24] Le processus (Xt )t∈T est dit adapter à la filtration Ft si ∀t ∈ T, Xt
est Ft -mesurable.
Z !1
p
p
kXkp = kXkLp = |X(ω)| dP(ω)
Ω
Soit Lp (Ω, [0; T ]) l’ensemble des processus X adapté sur [0; T ] tels que
ZT !! 1
p
kXkLp (Ω,[0;T ]) = E | Xt |p dt <∞
0
1
Inégalité de Young : Soit a et b deux réels positifs, et p, q > 1 vérifiant : p
+ q1 = 1. Alors
on a
ap bp
ab ≤ +
p q
Inégalité Hölder s’écrit
1 1
E[|XY|] ≤ (E[|X|p ]) p (E[|Y|q ]) q
E[|X|]2 ≤ E[X2 ]
P(X ≥ a) ≤ a1 E[X]
Définition 1.2.14 Un processus (Xt )t≥0 adapté par rapport à une filtration {Ft }t≥0 et tel que
∀t ≥ 0, Xt ∈ L1 est appelé :
1. Martingale si pour s ≤ t : E[Xt | Fs ] = Xs
2. Sur-martingale si pour s ≤ t : E[Xt | Fs ] ≤ Xs
3. Sous-martingale si pour s ≤ t : E[Xt | Fs ] ≥ Xs
1 1 1
On sait que p
+ q
= 1 alors p
= 1 − q1 , on a
1 1
(E(Yt )p ) p ≤ q(E(|Xt |p )) p
E[(Yt )p ] ≤ qp E(|Xt |p )
On remplace Yt = sups≤t Xs ,
h i
E sups≤t |Xs |p ≤ qp E[|Xt |p ]
où Bt est un mouvement Brownien. Pour cela, rappelons que lorsque nous intégrons une
fonction g régulière par rapport à une fonction dérivable f, alors
ZT ZT
g(t)df(t) = g(t)f 0 (t)dt
0 0
Dans le cas où f n’est pas dérivable, mais en supposant qu’elle est à variation bornée,
alors l’intégrale de Stieltjes, définie par
ZT X
n−1
g(t)df(t) = lim g(ti )(f(ti+1 ) − f(ti )), (1.3)
0 πn →0
i=0
où 0 = t0 < tl < ... < tn = T et πn = max0≤i≤n−1 |ti+1 − ti | peut être utilisée. Malheureuse-
ment, puisque le mouvement Brownien n’est pas à variation bornée, la définition précédente
ne s’applique pas à l’intégrale (1.2).
Nous allons donc construire l’intégrale stochastique sur l’ensemble
Z
T
L2F ={(θt )0≤t≤T , processus CADLAG F-adapté tels que E θ2s ds < ∞}
0
Définition 1.3.1 [SC22] On dit qu’un processus θ est étagé(ou élémentaire) s’il existe une
subdivision de réel 0 = t0 ≤ t1 ≤ ... ≤ tn = T et un processus discret (θi )0≤i≤n−i tel que tout
θi est Fti -adapté dans L2 (Ω) tels que
X
n−1
θt (w) = θi (w)1]ti −ti+1 ] (t)
i=0
Propriétés 1.3.1 [S.B19] Si (θt )0≤t≤T un processus élémentaire, alors on a les égalités sui-
vantes :
ZT
1. E θs dBs = 0
0
Z 2 Z
T T
2. E θs dBs = E θ2s ds
0 0
Démonstration 1.
Z
X
T n−1
E θs dBs = E θi (Bti+1 − Bti )
0 i=0
X
n−1
= E(θi (Bti+1 − Bti ))
i=0
X
n−1
= E(E(θi (Bti+1 − Bti ))/Fti )
i=0
Comme θi est Fti -mesurable et Bti+1 − Bti est indépendant de Fti alors
Z
X
T n−1
E θs dBs = E(θi E((Bti+1 − Bti )))
0 i=0
2. On a :
Z 2
T X
n−1 X
n−1
E θs dBs = E(θi θj (Bti+1 − Bti )(Btj+1 − Btj ))
0 i=0 j=0
(a) Si i < j
E(θi θj (Bti+1 − Bti )(Btj+1 − Btj )) = E(E(θi θj (Bti+1 − Bti )(Btj+1 − Btj )/Fti ))
= E(θi θj (Btj+1 − Btj )E((Bti+1 − Bti )/Fti ))
=0
Comme Bt est un mouvement Brownien et Bti+1 − Bti est indépendant de Fti alors
E((Bti+1 − Bti )2 /Fti ) = E((Bti+1 − Bti )2 ) = ti+1 − ti
Z 2
T X
n−1
E θs dBs = E(θ2i (ti+1 − ti ))
0 i=0
X
n−1
= E θ2i (ti+1 − ti )
i=0
X Z ti+1
n−1
= E θ2s ds
i=0 ti
Z
T
= E θ2s ds
0
Z
t
Propriétés 1.3.2 1. E θs dBs = 0
0
2.
Z 2 Z 2
t T
E θs dBs = E θs 1[0,t] (s)dBs
0 0
Z
T
= E θ2s 1[0,t] (s)ds
0
Z
t
= E θ2s ds
0
Zt
4. Le processus θs dBs , t ∈ [0, T ] est une martingale continue de carrée intégrable.
0
Définition 1.3.2 (processus d Itô) On appelle processus d’Itô un processus (Xt )0≤t≤T
leurs réelles tel que ∀0 ≤ s ≤ t
Zt Zt
Xt = X0 + a(s, Xs )ds + b(s, Xs )dBs , P − ps
0 0
où, X0 est F0 -mesurable, a et b sont deux processus progressivement mesurables vérifiant les
conditions
ZT ZT
|a(s, Xs )| < ∞ et ||b(s, Xs )||2 < ∞ où ||b|| = trace(bb∗ )
0 0
Théorème 1.3.1 (Lemme d’Itô) Soit X un processus d’Itô sur l’intervalle [0, T ], de dif-
férentielle stochastique
Soit f une fonction de f(t, Xt ) ∈ C1,2 (R+ × R, R). Alors (f(t, Xt ))t∈[0,T ] est un processus d’Itô
qui a pour différentielle stochastique :
∂f ∂f 1 ∂2 f
df = dt + dX + 2
(dX)2 (1.4)
∂t ∂X 2 ∂X
On illustre l’application de la formule d’Itô dans les exemples suivants.
Exemple 1.3.1 Soit X(t) = B(t) et u(t, X) = Xm , y(t) = u(t, X(t)). Alors
∂u ∂u 1 ∂2 u
dy(t) = dt + dX + (dX)2
∂t ∂X 2 ∂X2
1
= mXm−1 dX + m(m − 1)Xm−2 dt
2
d’où
1
dBm (t) = mBm−1 (t)dB(t) + m(m − 1)Bm−2 (t)dt
2
En particulier pour m=2, on trouve
On a :
Zt Zt
Xt = X0 + a(Xs , s)ds + b(Xs , s)dBs (1.6)
0 0
tel que l’inconnue est le processus Xt , où a, b sont des fonctions déterministes mesurables de
Rn × R+ → R.
– Xt : processus stochastique
– Bt : Mouvement Brownien
– t : le temps
– a(Xt , t) : coefficient de dérivée
– b(Xt , t) : coefficient de diffusion
où f et g sont des fonctions déterministes, avec a(Xt , t) = f(t)Xt et b(Xt , t) = g(t).
Définition 1.4.2 Un processus stochastique (Xt )t≥0 dans R est appelé une solution de l’équa-
tion (1.6) si qui vérifie les propriétés suivantes :
1. (Xt )t≥0 est continu et adapté à la filtration (Ft )t≥0
Zt Zt
2. les intégrales a(Xs , s)ds et b(Xs , s)dBs ont un sens et l’égalité
0 0
Nous donnons d’abord un résultat d’existence et d’unicité d’une solution forte sous des
conditions un peu restrictives sur les coefficients f et g.
L’unicité signifie que si (Xt )t≥0 et (Yt )t≥0 sont deux solution de l’équation (1.5), donc P-
presque sûrement ∀t ≤ 0, (Xt )t≥0 = (Yt )t≥0 , alors
P(sup0≤t≤T |Xt − Yt | = 0) = 1
Lemme 1.4.1 Soit g : [0, T ] → R une fonction continue telle que, pour
Zt
g(t) ≤ a + b g(s)ds, a ≥ 0, b ≥ 0
0
Alors,
∀t ∈ [0, T ], g(t) ≤ aebt
Vérifiant d’abord par récurrence sur n qu’il existe une constante Cn telle que à chaque fois
je prend t ∈ [0, T ] :
E|Xn (t)|2 ≤ Cn .
Donc,
Zt 2 Z
t
Donc,
Zt 2 Z
t
Retour à l’équation (1.9) et en substituant les deux estimations (1.10) et (1.11) dans (1.9)
et comme x est un variable aléatoire de carré intégrable alors on trouve estimation suivante :
Z Z
t t
E(|Xn+1 (t)|2 ) ≤ 3E(|x|2 ) + TC2 (1 + E(|Xns |2 ))ds + C2 (1 + E(|Xns |2 ))ds
0 0
Z
t
≤ 3E(|x|2 ) + C2 (T + 1) (1 + E(|Xns |2 ))ds
0
Conclusion : Par hypothèse de récurrence E|Xn (t)|2 ≤ Cn . Ce qui prouve E(|Xn+1 (t)|2 ) <
+∞.
Maintenant on va majorer par récurrence la quantité suivante : Esupt∈[0,T ] |Xn+1 (t)−Xn (t)|2 .
Nous ré-appliquons la même technique une autre fois, en appliquant l’inégalité de Doob, à
|Xnu − Xn−1
u | pour obtenir :
2
Z
s
Esup0≤u≤s |Xnu − Xun−1 |2 ≤ K Esup0≤r≤u |Xn−1
r − Xn−2
r |2 dr (1.13)
0
X
∞ X ∞
1 (4KT )n
Psup0≤s≤t |Xn+1 (s) − Xn (s)|2 ≥ n+1 ≤ 4A = 4A exp(4KT ) < +∞
n=0
2 n=0
n!
Donc
1
sup0≤s≤t |Xn+1 (s) − Xn (s)|2 < , ∀n ≥ n0 , n0 ∈ N
2n+1
En remarquant que la suite (Xn )n≥0 est une suite de Cauchy dans un espace de Banach,
donc elle converge dans le même espace de Banach. Alors il existe un processus continu
(X(t))0≤t≤T , tels que :
Donc, P-ps, (Xn )n≥0 converge vers processus continu X(t). D’où l’existence de la solution.
L’unicité : Supposons que (X(t))t≥0 et (Y(t))t≥0 deux solutions d’équation (1.5) pour
tout t ∈ [0, T ]. Montrons que Xt − Yt = 0.
Zt Zt
X(t) − Y(t) = (a(Xs , s) − a(Ys , s))ds + (b(Xs , s) − b(Ys , s))dBs
0 0
Donc,
Zt 2 Zt
E (a(Xs , s) − a(Ys , s))ds ≤ TC 2
E(|Xs − Ys |2 )ds (1.15)
0 0
Donc,
Zt 2 Zt
E (b(Xs , s) − b(Ys , s))dBs ≤ C 2
E(|Xs − Ys |2 )ds (1.16)
0 0
Retour à l’équation (1.14) et en substituant les deux estimations (1.15) et (1.16) dans (1.14),
on trouve
Zt Zt
2
E(|X(t) − Y(t)| ) ≤ 2TC 2
E(|Xs − Ys | )ds + 2C
2 2
E(|Xs − Ys |2 )ds
0
Zt 0
Exemple 1.4.3 Soit l’EDS linéaire dXt = −αXt dt+dBt . Montrer que cette équation admet
une solution fort. Pour cella, On doit vérifier les condition du théorème d’existence.
On a :
µ(t) est une fonction du temps qui permet de s’ajuster à la structure actuelle des taux
du marché.
En général, la résolution des équations différentielles stochastiques se repose sur lemme d’Itô.
Pour résoudre analytiquement l’équation différentielle stochastique, on va suivre les étapes
suivants :
1. Étape 1 : Changement de variable, on pose Xt = f(t, Bt ) et on utilisant lemme d’Itô
∂f 1 ∂2 f ∂f
dXt = + 2
dt + dBt
∂t 2 ∂B ∂B
∂f = b(t, f) =⇒ ∂2 f
∂B ∂B2
= b(t, f) ∂b(t,f)
∂f
∂2 f
En remplaçant ∂B2
et isoler ∂f
∂t
, on obtient
∂f
= a(t, f) − 12 b(t, f) ∂b(t,f)
∂t ∂f
∂f = b(t, f)
∂B
4. Étape 4 : Conclusion
Exemple 1.4.7 Prenons l’exemple 1.4.3, on a : l’existence de solution est déjà vérifie. Ap-
plication de l’algorithme de résolution de l’EDS : soit l’EDS linéaire dXt = −αXt dt + dBt .
1. Changement de variable, on pose Xt = f(t, Bt ), en utilisant lemme d’Itô
∂f 1 ∂2 f ∂f
dXt = + 2
dt + dBt
∂t 2 ∂B ∂B
∂f = 1 =⇒ ∂2 f
∂B ∂B2
=0
∂2 f
En remplaçant ∂B2
par sa valeur, on obtient
∂f ∂f
= −αf =⇒ = −α∂t (1.18)
∂t f
Intégré (1.18) on a
Zt Zt
∂f
= −α ds =⇒ ln(f(t, Bt )) − ln(X0 ) = −αt + C(Bt )
0 f 0
Isoler f(t, Bt )
∂(K(Bt )e−αt )
= 1 =⇒ K 0 (Bt )e−αt = 1 =⇒ K 0 (Bt ) = eαt
∂B
Intégré par rapport à Bt , en utilisant borne 0 et t
Zt Zt Zt
0
K (Bs )dBs = e dBs =⇒ K(Bs ) − K(B0 ) = eαs dBs
αs
0 0 0
Donc,
Zt
K(Bt ) = K(B0 ) + eαs dBs
0
K(B0 ) = f(0, B0 ) = X0
4. Conclusion
D’où
Zt
∂f = βf =⇒ ∂2 f
∂B ∂B2
= β2 f
∂2 f ∂f
En remplaçant ∂B2
et isoler ∂t
, on obtient
∂f 1 ∂f 1
= µf − β2 f =⇒ = f(µ − β2 )
∂t 2 ∂t 2
∂f
Intégrons par rapport à t ∂t
, on ne peut pas utiliser le borne.
Zt Zt
∂f 1 1
= (µ − β2 )ds + C(Bs ) =⇒ ln(f) − ln(X0 ) = (µ − β2 )t + C(Bt )
0 f 0 2 2
1 2 )t
f(t, Bt ) = K(Bt )e(µ− 2 β avec K(Bt ) = X0 eC(Bt )
∂f
Trouvons K(Bt ), en utilisant ∂B
, on a :
1 2
∂(K(Bt )e(µ− 2 β )t ) 1 2
= βK(Bt )e(µ− 2 β )t
∂B
1 2 1 2
0
K (Bt )e(µ− 2 β )t = βK(Bt )e(µ− 2 β )t
K 0 (Bt )
=β
K(Bt )
Intégrons par rapport à Bt , en utilisant le borne 0 et t, on obtient
Zt 0 Zt
K (Bs )
dBs = β dBs =⇒ ln(K(Bt )) − ln(K(B0 )) = β(Bt − B0 )
0 K(Bs ) 0
K(Bt ) = X0 eβBt
∂f = β =⇒ ∂2 f
∂B ∂B2
=0
∂2 f ∂f
En remplaçant ∂B2
et isoler ∂t
, on obtient
∂f ∂f
= αf + b =⇒ − αf = b
∂t ∂t
Remarquons que ∂f ∂tR
− αf = b est une EDO forme linéaire, pour cella cherchons le facteur
P(t)dt
intégrant h(t) = e on a :
R
αdt
P(t) = α =⇒ h(t) = e = eαt
Zt !
1
Alors f(t, Bt ) = h(t)
h(s)Q(s)ds + K(Bt ) , avec K(Bt ) = X0 + C(Bt ) en remplaçant h(t)
0
et Q(t) = b. On a :
Zt ! Zt
1 αs −αt
f(t, Bt ) = αt e bds + K(Bt ) = e b eαs ds + e−αt K(Bt )
e 0 0
b b
= e−αt eαt − e−αt + e−αt K(Bt )
α α
b
= (1 − e−αt ) + e−αt K(Bt )
α
donc, f(t, Bt ) = αb (1 − e−αt ) + e−αt K(Bt ).
Trouvons K(Bt ), on a :
∂( αb (1 − e−αt ) + e−αt K(Bt ))
= β =⇒ e−αt K 0 (Bt ) = β
∂B
K 0 (Bt ) = eαt β
Zt Zt
K(Bt ) − K(0) = e βdBs =⇒ K(Bt ) = X0 + β eαs dBs
αs
0 0
avec
a(t, F−1 (y)) 1 ∂(b(F−1 (y)))
aY (t, Xt ) = −
b(F−1 (y)) 2 ∂x
d’où, on a
!
a(t, Xt ) 1 ∂(b(Xt ))
dYt = − dt + dBt (1.22)
b(Xt ) 2 ∂x
Zx
1
Démonstration Appliquant la formule d’Itô à la fonction Yt = f(t, x) = du, avec
b(u)
∂f = 1 =⇒ ∂2 f
∂B ∂B2
=0
∂2 f
En remplaçant ∂B2
par sa valeur, on obtient
∂f ∂f
= αf =⇒ = α∂t (1.23)
∂t f
Intégré (1.23) on a
Zt Zt
∂f
= −α ds =⇒ ln(f(t, Bt )) − ln(Y0 ) = αt + C(Bt )
0 f 0
Isoler f(t, Bt )
Donc,
Zt
K(Bt ) = K(B0 ) + e−αs dBs
0
K(B0 ) = f(0, B0 ) = Y0
Donc,
Zt
Zt
Cependant, il est parfois difficile d’obtenir une expression analytique pour cette solution. Il est
donc important de développer des méthodes numériques afin de simuler des approximations
de la solution de telles équations. Les schémas numériques utilisés pour les EDO peuvent,
en général, être adaptés au cas aléatoire.
Par exemple, dans la pratique, pour un intervalle de temps d’une année, si le processus
est observé mensuellement alors N = 12 et h = 121 et, si hebdomadairement alors h = 521 et
1
si journalière on avait h = 252 .
Nous commençons par introduire quelques notions de convergence.
une solution analytique, nous pouvons calculer l’erreur estimée entre le processus d’Itô et
son approximation au temps T comme suit :
^T |)
forte = E(|XT − X
L’erreur absolue est estimée en exécutant N simulations diverses de trajectoires simples
^ Ces simulations sont basées sur les même
pour le processus d’Itô et ses approximations X.
échantillons de trajectoires du mouvement brownien. Nous utiliserons l’estimation suivante :
1 X
N
= |XT − X
^T |
N j=1
^hN )) = 0
lim E(g(XT )) − E(g(X
h−→0
^hN )) ≤ Chp
E(g(XT )) − E(g(X
et Z ti Z ti
Xti = X0 + a(s, Xs )ds + b(s, Xs )dBs (2.5)
t0 t0
En utilisant la notation indiciaire par Xi = Xti et Xi+1 = Xti+1 , pour i = 0, ..., N et l’approxi-
mation des intégrales d’équation (2.16) est donnée par :
Z ti+1
a(s, Xs )ds ≈ a(ti , Xi )(ti+1 − ti ) ≈ a(ti , Xi )4i (2.7)
ti
et
Z ti+1
b(s, Xs )dBs ≈ b(ti , Xi )(Bi+1 − Bi ) ≈ b(ti , Xi )4Bi (2.8)
ti
∆Bi N(0, h)
3. Etape 3 : calculer
Pour l’étude de la convergence nous avons besoin du résultat important donné dans la pro-
position suivante :
Proposition 2.3.1 [Ahl21] Supposons que les coefficients de l’EDS (1.5) a et b satisfont
les conditions suivantes :
– H1 : ∃k > 0 tel que ∀x, y ∈ R et s, t ∈ R+ on a :
Démonstration Pour entamer la preuve nous avons besoin d’un processus particulier X ^t ,
il sert à approximer la solution pour tout t ∈ [0, T ] et pas seulement au point ti pour i =
0, ..., N.
Pour t ∈ [ti , ti+1 ] et i = 0, ..., N − 1, on définit
Z ti Z ti
^ h
Xt = Xti + a(s, Xs )ds + b(s, Xs )dBs
0 0
alors pour i = 0, ..., N − 1, le processus stochastique t est solution de EDS sur t ∈ [ti , ti+1 ]
dt = (a(t, Xt ) − a(ti , Xhti ))ds + (b(t, Xt ) − b(ti , Xhti ))dBt (2.12)
^ h
+ 2(Xt − Xt )(b(t, Xt ) − b(ti , Xt ))dBt i
on a :
| a(t, Xt ) − a(ti , Xhti ) |2 =| a(t, Xt ) − a(ti , Xti ) + a(ti , Xti ) − a(ti , Xhti ) |2
≤| a(t, Xt ) − a(ti , Xti ) |2 + | a(ti , Xti ) − a(ti , Xhti ) |2
+ 2 | a(t, Xt ) − a(ti , Xti ) | × | a(ti , Xti ) − a(ti , Xhti ) |
≤ 2 | a(t, Xt ) − a(ti , Xti ) |2 +2 | a(ti , Xti ) − a(ti , Xhti ) |2
d’après l’hypothèse H1 :
de même :
On a :
Z ti+1 Z ti+1 Z ti+1
E(2ti+1 ) ≤ E(2ti ) + 4k (t − ti )dt + 4k E(| Xt − Xti | )dt + 4k2
E(| Xti − Xhti |2 )dt
ti ti ti
Z ti+1
+ ^t )2 dt
E(Xt − X
ti
Donc, Z ti+1
E(2ti+1 ) ≤ a(t) + E(2s )ds.
ti
Avec
Donc,
exp(Nh)(4kh + 1)N − 1
E(2tN ) ≤ 2k(C + 1) exp(h)h2
exp(h)(4kh + 1) − 1
2k(C + 1) exp(h)h2 exp(Nh)(4kh + 1)N
≤
exp(h)(4kh + 1) − 1
2k(C + 1) exp(h)h2 exp(Nh)(4kh + 1)
≤
exp(h) − 1 + 4kh exp(h)
.
En notant que exp(h) − 1 > 0
Alors,
pour i = 0, ..., N − 1
Maintenant, nous avons besoin de définir l’approximation d’Euler-Maruyama ∀t ∈ [0, T ].
Pour cela, nous allons introduire Yt comme interpolation linéaire par morceaux passant par
les points (ti , Xhi ) définie par :
Alors
X
N−1
h2 h3 h3 h3
kX − Yk2L2 (Ω,[0;T ]) ≤4 (c + M +M +c )
i=0
2 3h 3h 3h
X
N−1
h2
≤4 (5c + 4M)
i=0
6
h2
≤ (10c + 8M)N
3
h
≤ (10c + 8M)T
3
kX − Yk2L2 (Ω,[0;T ]) ≤ k2 h
D’où,
1
kX − YkL2 (Ω,[0;T ]) ≤ kh 2
Par transitivité, on a
1
kX − YkL1 ≤ kh 2
Or kX − YkL1 = E(| X − Y |), donc
1
E(| X − Y |) ≤ kh 2
Démonstration contenu...
Le schémas d’Euler-Maruyama est simple et très utilisée, mais il présent plusieurs limites
importantes comme son ordre de convergence forte est seulement 12 cela signifie qu’il faut
choisir un pas h très petit pour obtenir une bonne approximation, le temps de calcul élevé
lorsque h est petit. Ce schéma peut devenir instable dans le cas d’EDS raides ou fortement
non linéaire ce qui entraine explosion numérique. Son convergence peut échouer et les moment
peuvent diverger si le coefficient de dérivée et de diffusion ne vérifient pas les conditions
de Lipschitz globale. Ces faiblesses motivent l’étude de schémas améliorés comme celui de
Milstein.
Pour t = ti+1 et t = ti , on a :
Z ti+1 Z ti+1
Xti+1 = X0 + a(s, Xs )ds + b(s, Xs )dBs (2.14)
t0 t0
et Z ti Z ti
Xti = X0 + a(s, Xs )ds + b(s, Xs )dBs (2.15)
t0 t0
+ b(ti , Xt ) +
i
b 0 (u, Xu )dXu + b 00 (u, Xu )(dXu )2 dBs
ti ti ti
Z ti+1 Zs Zs
= Xti + a(ti , Xt ) +
i
a (u, Xu )a(u, Xu )du + a 0 (u, Xu )b(u, Xu )dBu
0
ti ti ti
Zs Z ti+1 Zs
1 00
+ 2
a (u, Xu )b (u, Xu )duds + b(ti , Xt ) +
i
b 0 (u, Xu )a(u, Xu )du
2 ti ti ti
Zs Zs
On sait que [Link] = 0, [Link] << ds2 donc duds = 0 et dudBs = 0, par suite
Z ti+1 Z ti+1 Z ti+1 Z s
Xti+1 = Xti + a(ti , Xti )ds + b(ti , Xti )dBs + b 0 (u, Xu )b(u, Xu )dBu dBs
ti ti ti ti
Les premiers termes correspondent simplement à la méthode d’Euler. Le terme suivant peut
être approximé davantage (en pensant à effectuer un autre développement d’Itô) par :
Z ti+1 Z s Z ti+1 Z s
0 0
b (u, Xu )b(u, Xu )dBu dBs ≈ b (ti , Xi )b(ti , Xi ) dBu dBs
ti ti t ti
Z tii+1
≈ b 0 (ti , Xi )b(ti , Xi ) (Bs − Bti )dBs
ti
1 1
≈ b 0 (ti , Xi )b(ti , Xi )( (Bti+1 − Bti )2 − h)
2 2
1 0
≈ b (ti , Xi )b(ti , Xi )((∆Bi )2 − h)
2
Donc, le schéma de Milstein est donné par :
1
Xi+1 = Xi + a(ti , Xi )h + b(ti , Xi )∆Bi + b 0 (ti , Xi )b(ti , Xi )((∆Bi )2 − h) (2.17)
2
Algorithme 2.3.2 La méthode de Milstein pour la résolution numérique de l’équation (2.1)
dans l’intervalle [0, T ] est définit par les étapes suivantes :
1. Etape 1 : Discrétisons l’intervalle [0, T ] avec un pas h = NT , puis nous obtenons points
ti = ih, i = 0, ..., N.
2. Etape 2 : Tirez une variable aléatoire ∆Bi de la distribution
∆Bi N(0, h)
3. Etape 3 : Calculer
1
Xi+1 = Xi + a(ti , Xi )h + b(ti , Xi )∆Bi + b 0 (ti , Xi )b(ti , Xi )((∆Bi )2 − h)
2
Remarque 2.3.2 Remarquons que si le coefficient de diffusion est indépendant de Xt alors
la méthode de Milstein coı̈ncide avec méthode d’Euler-Maryama.
Notons bien que ce qu’on vient de présenter n’est pas l’unique schéma de Milstein. Il existe
une deuxième forme.
Ainsi, dans le cas unidimensionnel, le schéma implicite d’Euler-Maruyama est donné par :
Le schéma implicite (2.20) est d’ordre de convergence forte égale à 0.5. A partir du schéma
explicite (2.9) et implicite (2.20), on peut construire la famille des schémas d’Euler implicite :
Mais il est aussi possible d’avoir une version implicite du schéma de Milstein :
1
Xi+1 = Xi + (a(ti+1 , Xi+1 )∆i + b(ti , Xi )∆Bi+1 + b 0 (ti , Xi )b(ti , Xi )((∆Bi+1 )2 − ∆i )
2
Voici une famille des schémas de Milstein implicite :
1
Xi+1 = Xi + (λa(ti+1 , Xi+1 ) + (1 − λ)a(ti , Xi ))∆i + b(ti , Xi )∆Bi + b 0 (ti , Xi )b(ti , Xi )((∆Bi+1 )2 − ∆i )
2
où λ ∈ [0, T ] représente le degré d’implicité du schéma.
1. Si λ = 0, alors on retrouve le schéma explicite ;
2. Si λ = 1, alors on retrouve le schéma implicite ;
3. Si λ = 21 , alors on a la généralisation de la méthode de trapèze déterministe. Encore
une fois, sur ce cas la méthode converge avec une ordre de convergence fort égale à 1.
Application et implication
pédagogique
Après avoir présenté quelques méthodes numériques de résolution des équations diffé-
rentielles stochastiques, nous allons comparer deux méthodes numériques par le biais de
simulation à savoir la méthode d’Euler-Maruyama et la méthode de Milstein que nous allons
appliquer à l’EDS linéaire comme modèle de Black-Scholes et aussi à l’EDS non linéaire. Afin
d’atteindre cet objectif, nous allons simuler des échantillons de différents tailles pour diffé-
rentes réplications. Les solutions approchées estimées sont calculées sur la base de plusieurs
pas de temps de discrétisation.
Wt = ert
dXt = µXt dt + βXt dBt
La résolution analytique de cette équation est déjà fait dans l’exemple (1.4.8). La solution
analytique de cette équation est :
1 2 )t
Xt = X0 eβBt +(µ− 2 β
On observe que la valeur initiale commence autour de X0 = 1, puis elle évolue de manière
aléatoire au cours du temps. Au début, la trajectoire augmente rapidement, atteignant un
maximum proche 1.7. En suite, elle diminue progressivement jusqu’à des valeurs autour de
0.5. Dans la dernière partie, la courbe présente des oscillations autour de valeurs proches de
1. Ces fluctuations sont dues au caractère aléatoire du modèle, qui dépend du mouvement
brownien. La trajectoire est donc irrégulière mais continue.
verte, c’est-à-dire erreur Milstein << erreur Euler cela signifie que Milstein est plus précis
que Euler surtout pour les petits pas. Ces résultats confirment bien la théorie.
import numpy as np
import [Link] as plt
# Paramètres
T = 1.0 # Temps final
N = 1000 # Nombre de subdivisions
dt = T / N
mu = 1.5
sigma = 1.0
X0 = 1.0
# Temps
t = [Link](0, T, N+1)
# Solution exacte
X_exact = X0 * [Link]((mu - 0.5 * sigma**2) * t + sigma * W)
# Graphique solution exacte
[Link](figsize=(10,6))
[Link](t, X_exact, color=’blue’, label="Solution exacte")
[Link]("Temps")
[Link]("X(t)")
[Link]("Simulation de la solution exacte d’une EDS")
[Link]()
[Link](True)
[Link]()
comparaison
import numpy as np
import [Link] as plt
# Paramètres de la simulation
T = 1.0 # Temps final
N = 200 # Nombre de pas de temps
dt = T/N # Taille du pas
t = [Link](0, T, N+1)
x0 = 1.0 # Condition initiale X_0
# 2. Approximation d’Euler-Maruyama
x_euler = [Link](N+1)
x_euler[0] = x0
for i in range(N):
x_euler[i+1] = x_euler[i] + mu*x_euler[i]*dt + sigma*x_euler[i]*dW[i]
# 3. Approximation de Milstein
# Ajoute le terme de correction : 0.5 * sigma^2 * X * (dW^2 - dt)
x_milstein = [Link](N+1)
x_milstein[0] = x0
for i in range(N):
x_milstein[i+1] = x_milstein[i] + mu*x_milstein[i]*dt + sigma*x_milstein[i]*dW[i]
\
+ 0.5 * sigma**2 * x_milstein[i] * (dW[i]**2 - dt)
[Link](’X_t’)
[Link]()
[Link](False)
plt.tight_layout()
[Link]()
Analyse comparative
import numpy as np
import [Link] as plt
import pandas as pd
# Paramètres
T = 1
mu = 1.5
sigma = 1
X0 = 1
# Différentes tailles
N_values = [100, 200, 400, 800, 1600, 3200]
err_euler = []
err_milstein = []
h_values = []
for N in N_values:
h = T / N
h_values.append(h)
# Brownien
dW = [Link](h) * [Link](N)
W = [Link](([0], [Link](dW)))
t = [Link](0, T, N+1)
# Solution exacte
X_exact = X0 * [Link]((mu - 0.5*sigma**2)*t + sigma*W)
# Euler
Xe = [Link](N+1)
Xe[0] = X0
# Milstein
Xm = [Link](N+1)
Xm[0] = X0
for n in range(N):
Xe[n+1] = Xe[n] + mu*Xe[n]*h + sigma*Xe[n]*dW[n]
err_euler.append(abs(X_exact[-1] - Xe[-1]))
err_milstein.append(abs(X_exact[-1] - Xm[-1]))
ordre_euler.append(p1)
ordre_milstein.append(p2)
# Tableau
df = [Link]({
"N": N_values[1:],
"Ordre Euler": ordre_euler,
"Ordre Milstein": ordre_milstein
})
print(df)
# Graphique erreur
[Link](h_values, err_euler, ’o-’, label="Euler")
[Link](h_values, err_milstein, ’s-’, label="Milstein")
[Link]("h")
[Link]("Erreur")
[Link]("Ordre expérimental de convergence")
[Link]()
[Link](True)
[Link]()