Méthodes numériques pour le pricing d options



Documents pareils
MATHS FINANCIERES. Projet OMEGA

Théorème du point fixe - Théorème de l inversion locale

3 Approximation de solutions d équations

Introduction au pricing d option en finance

Master Modélisation Aléatoire Paris VII, Cours Méthodes de Monte Carlo en nance et C++, TP n 2.


Probabilités III Introduction à l évaluation d options

TP1 Méthodes de Monte Carlo et techniques de réduction de variance, application au pricing d options

Le modèle de Black et Scholes

de calibration Master 2: Calibration de modèles: présentation et simulation d

Commun à tous les candidats

Résolution d équations non linéaires

EXERCICE 4 (7 points ) (Commun à tous les candidats)

CHAPITRE V SYSTEMES DIFFERENTIELS LINEAIRES A COEFFICIENTS CONSTANTS DU PREMIER ORDRE. EQUATIONS DIFFERENTIELLES.

Optimisation non linéaire Irène Charon, Olivier Hudry École nationale supérieure des télécommunications

* très facile ** facile *** difficulté moyenne **** difficile ***** très difficile I : Incontournable T : pour travailler et mémoriser le cours

Théorie Financière 8 P. rod i u t its dé dérivés

Fonctions de plusieurs variables, intégrales multiples, et intégrales dépendant d un paramètre

Chapitre 7 : Intégration sur un intervalle quelconque

TRAVAIL D ETUDE ET DE RECHERCHE. Utilisation des arbres binomiaux pour le pricing des options américaines

Introduction à l analyse numérique : exemple du cloud computing

Continuité en un point

Simulation de variables aléatoires

Exercice autour de densité, fonction de répatition, espérance et variance de variables quelconques.

Fonctions de plusieurs variables

Image d un intervalle par une fonction continue

Chapitre 2 Le problème de l unicité des solutions

Valorisation d es des options Novembre 2007

ERRATA ET AJOUTS. ( t) 2 s2 dt (4.7) Chapitre 2, p. 64, l équation se lit comme suit : Taux effectif = 1+

La fonction exponentielle

Options exotiques. April 18, 2000

Bien lire l énoncé 2 fois avant de continuer - Méthodes et/ou Explications Réponses. Antécédents d un nombre par une fonction

3. Conditionnement P (B)

Compte rendu des TP matlab

Tests non-paramétriques de non-effet et d adéquation pour des covariables fonctionnelles

Baccalauréat S Antilles-Guyane 11 septembre 2014 Corrigé

= constante et cette constante est a.

1 Introduction et modèle mathématique

I. Polynômes de Tchebychev

Manuel d Utilisateur - Logiciel ModAFi. Jonathan ANJOU - Maud EYZAT - Kévin NAVARRO

Correction de l examen de la première session

Correction du baccalauréat ES/L Métropole 20 juin 2014

Les équations différentielles

Calculating Greeks by Monte Carlo simulation

Amphi 3: Espaces complets - Applications linéaires continues

Continuité d une fonction de plusieurs variables

Chp. 4. Minimisation d une fonction d une variable

Chapitre 2. Eléments pour comprendre un énoncé

I. Introduction. 1. Objectifs. 2. Les options. a. Présentation du problème.

Rappels sur les suites - Algorithme

Résumé

Sujet proposé par Yves M. LEROY. Cet examen se compose d un exercice et de deux problèmes. Ces trois parties sont indépendantes.

H Soumaré : Rapport de stage Page 1

Calibration de Modèles et Couverture de Produits Dérivés

Équations non linéaires

Propriétés des options sur actions

Capes Première épreuve

Finance, Navier-Stokes, et la calibration

LES MÉTHODES DE POINT INTÉRIEUR 1

Filtrage stochastique non linéaire par la théorie de représentation des martingales

La tarification d options

Méthodes de quadrature. Polytech Paris-UPMC. - p. 1/48

IV- Equations, inéquations dans R, Systèmes d équations

Prix et couverture d une option d achat

Examen optimisation Centrale Marseille (2008) et SupGalilee (2008)

Baccalauréat ES Pondichéry 7 avril 2014 Corrigé

Dérivés Financiers Options

Cours d Analyse. Fonctions de plusieurs variables

Programmation linéaire

Souad EL Bernoussi. Groupe d Analyse Numérique et Optimisation Rabat http ://

Processus aléatoires avec application en finance

Résumé des communications des Intervenants

Calibration de modèles et couverture de produits dérivés

Calcul différentiel sur R n Première partie

a et b étant deux nombres relatifs donnés, une fonction affine est une fonction qui a un nombre x associe le nombre ax + b

Exercices - Fonctions de plusieurs variables : corrigé. Pour commencer

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

BTS Groupement A. Mathématiques Session Spécialités CIRA, IRIS, Systèmes électroniques, TPIL

Équations non linéaires

Dérivées d ordres supérieurs. Application à l étude d extrema.

La programmation linéaire : une introduction. Qu est-ce qu un programme linéaire? Terminologie. Écriture mathématique

Mathématique et Automatique : de la boucle ouverte à la boucle fermée. Maïtine bergounioux Laboratoire MAPMO - UMR 6628 Université d'orléans

Texte Agrégation limitée par diffusion interne

Calcul Stochastique pour la finance. Romuald ELIE

QUESTIONS D ENTRETIENS EN FINANCE DE MARCHE

Surface de volatilité

Exo7. Matrice d une application linéaire. Corrections d Arnaud Bodin.

ANALYSE NUMERIQUE ET OPTIMISATION. Une introduction à la modélisation mathématique et à la simulation numérique

CHAPITRE 10. Jacobien, changement de coordonnées.

Chapitre 0 Introduction à la cinématique

Etude de fonctions: procédure et exemple

Développement décimal d un réel

Analyse Numérique : SMA-SMI S4 Cours, exercices et examens

Continuité et dérivabilité d une fonction

Première partie. Introduction à la méthodes des différences finies

Options et Volatilité (introduction)

Cours 02 : Problème général de la programmation linéaire

Méthodes d approximation numérique pour le pricing des options vanilles et asiatiques dans le modèle de Heston de volatilité stochastique

Baccalauréat ES/L Amérique du Sud 21 novembre 2013

Optimisation des fonctions de plusieurs variables

Transcription:

Méthodes numériques pour le pricing d options Mohamed Ben Alaya 6 février 013 Nous allons tester les différentes méthodes de différence finies vu dans le cours en l appliquant au calcul du call ou le put européen. On considère, pour t [0, T ], le modèle de Black & Scholes solution de l EDS ds t = rs t dt + σs t dw t, S 0 = s 0 > 0, où (W t ) 0 t T désigne un mouvement Brownien standard et (F t ) 0 t T sa filtration canonique. On sait que l EDS ci-dessus admet une solution unique donnée par ) S t = s 0 exp ((r σ )t + σw t. On note par (S 0,s 0 t ) 0 t T la solution de l EDS précédente issue de s 0 à l instant 0. Le prix d une option européenne, de payoff g(s T ) où g est une fonction numérique, s écrit comme E ( e rt g(s 0,s 0 T ) ) = E (f(w T )) où f est une fonction à déterminer à partir de g. On s intéresse au calcul de la fonction u(t, x) = E (f(x + W t )) t 0 et x R. Cette fonction est solution de l équation de la chaleur u t = 1 u x u(0, x) = f(x). (t, x) [0, T ] R On va rappeler les différentes méthodes de différence finies et les résultats de convergence vu en cours. Ceci est dans le but de les programmer et d analyser numériquement le choix des paramètres dans le cas du call et du put européen. Rappel On rappelle que pour le call, le payoff g(x) = (x K) + et la valeur de l option, à l instant t [0, T ], est égale à V (t, S 0,s 0 t ) avec où V (t, x) = xn(d 1 ) Ke r(t t) N(d ), d 1 = log (x/k) + (r + σ /)(T t) σ et d = d 1 σ T t T t Pour le put on a une formulation analogue avec V (t, x) = Ke r(t t) N( d ) xn( d 1 ). 1

1 Introduction aux méthodes d analyse numérique On considère une fonction numérique u sur R + R solution de l équation de la chaleur u = 1 u (t, x) R t x + R u(0, x) = f(x). Pour résoudre numériquement cette équation aux dérivées partielles (EDP), on discrétise l espace et le temps en se donnant un pas de temps k = δt et un pas d espace h = δx, tous les deux strictement positifs. On obtient une grille dans R + R par les points (nδt, jδx) pour n Z et j N. On cherche à approximer u sur la grille en trouvant une suite de nombres U(n, j) telle que U(n, j) u(nδt, jδx) pour n Z et j N. Pour cela on approxime les opérateurs par t t et, au choix, par x x ou x, où U(n + 1, j) U(n, j) t U(n, j) = δt U(n, j + 1) U(n, j) x U(n, j) = δx U(n, j) U(n, j 1) x U(n, j) = δx Puis l on approxime x par x x. Soit : x x U(n, j) = U(n, j + 1) U(n, j) + U(n, j 1) (δx) 1.1 Méthode explicite En tenant compte de ces approximations, on obtient U(n + 1, j) U(n, j) δt = U(n, j + 1) U(n, j) + U(n, j 1) (δx). On appelle ce type de discrétisation un schéma explicite, car on calcule directement U(n + 1,.) en fonction de U(n,.). Ou encore, si l on pose λ = k h = δt (δx) : U(n + 1, j) = λ U(n, j + 1) + (1 λ)u(n, j) + λ U(n, j 1)

Remarques : 1. Pour 0 < λ 1, ce schéma est stable dans L, dans le sens que U(n + 1,.) U(n,.), pour tout n N. Il converge aussi vers la vraie solution. Dans ce cas le schéma est dit conditionnellement convergent.. On peut également restreindre le problème sur un l espace bornée [0, T ] [x min, x max ]. Les bornes des intervalles sont des paramètres à choisir soigneusement. Dans ce cas, il faut imposer des conditions au bord, on peut par exemple prendre des conditions du type u(t, x min ) = g(t) et u(t, x max ) = d(t). Si l on considère alors l EDP suivante = 1 u (t, x) [0, T ] [x x min, x max ] u t u(t, x min ) = 0 et u(t, x max ) = 0 u(0, x) = f(x). Une discrétisation de ce problème, en posant δt = T/N et un pas d espace δx = (x max x min )/(M + 1), est de considérer les points x 0 = x min x 1 = x min + δx et d approximer avec. x j = x min + jδx. x M = x min + Mδx x M+1 = x max u(nδt, x j ) U(n, j), n {0,, N} et j {0,, M + 1}, U(n + 1, j) = λ U(n, j + 1) + (1 λ)u(n, j) + λ U(n, j 1), 1 j M, et pour tenir compte des conditions aux limites en x min et x max compléter par U(n + 1, 0) = 0 et U(n + 1, M + 1) = 0. Maintenant, si l on pose U n = a 1 = a 3 = λ et a = 1 λ. U(n, 1). U(n, M) alors a a 3 0 0 0 0 0 a 1 a a 3 0 0 0 0 0 a 1 a a 3 0 0 0 U n+1 = AU n avec A = 0 0 0 a 1 a a 3 0 0 0 0 0 a 1 a a 3 0 0 0 0 0 a 1 a 3

Exercice Ecrire un programme basé sur cette égalité pour calculer un call européen. // TP 4 // Méthode des differences finies pour l équation de la chaleur // On introduit la fonction $f$ // La grille est uniforme en espace et en temps. stacksize(1.e7); clear xbasc() // Parametres financiers // payoff : call T=1.; r=0; S0=100; K=100; sigma=0.05; // Parametres numeriques // Schéma explicite M=500; // nombres de pas en espace N=100; // nombres de pas de temps Smax=5*K; // valeur maximum du sous-jacent xmax=(log(smax/s0)-(r-sigma**/)*t)/sigma; xmin=-xmax; dx=(xmax-xmin)/(m+1); dt=t/n; lambda=dt/(dx*dx); ///////////////////////// // Matrices ///////////////////////// disp( Definition de la matrice A ); // Matrices diagonales, diagonale inférieure, diagonale centrée, 4

// diagonale supérieure. for i=1:m-1 A(i,i)=1-lambda; A(i,i+1)=lambda/; A(i+1,i)=lambda/; end A(M,M)=1-lambda; // Condition initiale x=(xmin+dx:dx:xmax-dx) ; Unew=exp(-r*T)*max(0,S0*exp((r-sigma**/)*T+sigma*x)-K); //// // Boucle en temps //// disp( Boucle en temps... ); for i=1:m Unew=A*Unew; end //// // Affichage du prix //// i=floor(xmax/dx); P=Unew(i); // on peut interpoler pour avoir le prix en S0 disp(p, prix calculé ) // calcul du vrai prix d1=(1/(sigma*sqrt(t)))*(log(s0/k)+(r+sigma**/)*t); d=d1-sigma*sqrt(t); // case call prix=s0*cdfnor("pq",d1,0,1)-k*exp(-r*t)*cdfnor("pq",d,0,1); // case put // prix=-(s0-k*exp(-r*t))+(s0*cdfnor("pq",d1,0,1)-k*exp(-r*t)*cdfnor("pq",d,0,1)); 5

disp(prix, prix exact ); 1. Méthode implicite On reprend la discrétisation précédente, que l on peut écrire t U n j = 1 x x U n j, mais, en calculant le second membre en n + 1 : t Uj n = 1 x x U n+1 j. On obtient U n j = λ U n+1 j+1 n+1 + (1 + λ)uj λ U n+1 j 1, 1 j M, et U n+1 0 = U n+1 M+1 = 0, avec λ = δt. Ceci est équivalent à écrire (δx) b b 3 0 0 0 0 0 b 1 b b 3 0 0 0 0 0 b 1 b b 3 0 0 0 BU n+1 = U n avec B = 0 0 0 b 1 b b 3 0 0 0 0 0 b 1 b b 3 0 0 0 0 0 b 1 b b 1 = b 3 = λ et b = 1 + λ. Remarques : 1. On montre que B est inversible, le schéma vérifie une propriété de stabilité inconditionnelle (stabilité pour tout λ > 0) et qu il est convergent.. L erreur est en O(h + k). Ceci suggère que pour calculer efficacement u, il faut prendre k h. Exercice Tester cette méthode dans le cas d un call européen. 1.3 Méthode de Cranck Nicholson C est un mélange des deux précédentes, on considère t Uj n = 1 ( 1 x x Uj n + 1 ) x x U n+1 j, pour 1 j M, et U0 n+1 = U n+1 M+1 = 0. Ceci est équivalent, en posant λ = δt (δx), à écrire λ 4 U n+1 j+1 + (1 + λ n+1 )Uj λ 4 U n+1 j 1 = λ 4 U j+1 n + (1 λ )U j n + λ 4 U j 1, n 1 j M, 6

et U0 n+1 = U n+1 M+1 = 0. En posant b b 3 0 0 0 0 0 b 1 b b 3 0 0 0 0 0 b 1 b b 3 0 0 0 B = 0 0 0 b 1 b b 3 0 0 0 0 0 b 1 b b 3 0 0 0 0 0 b 1 b a a 3 0 0 0 0 0 a 1 a a 3 0 0 0 0 0 a 1 a a 3 0 0 0 et A = 0 0 0 a 1 a a 3 0 0 0 0 0 a 1 a a 3 0 0 0 0 0 a 1 a avec b 1 = b 3 = λ, b 4 = 1 + λ, a 1 = a 3 = λ et a 4 = 1 λ. Ce problème se réécrit Remarques BU n+1 = AU n, ou encore U n+1 = B 1 AU n. 1. On montre que B est inversible, le schéma vérifie une propriété de stabilité inconditionnelle (stabilité pour tout λ > 0) et qu il est convergent.. L erreur est en O(h +k ). Ceci suggère que pour calculer efficacement u, il faut prendre h et k du même ordre. Ceci représente une amélioration significative du schéma précédent. Ce schéma est généralement choisi pour ce genre de problèmes. 7