Méthode de monte-carlo pour le pricing d'option
Le modèle de Black et Scholes

LAPEYRE Bernard

25 septembre 2017

Version pdf de ce document
http://cermics.enpc.fr/$\sim$bl/home.html

Préliminaires

  1. Ecrire une fonction Scilab qui calcule la moyenne empirique Moyenne, la variance empirique Variance empirique d'un tableau de nombre.

    Vérifiez qu'elles coïncident avec les fonctions prédéfinies de Scilab : mean, variance.

    Correction

  2. Ecrire une fonction permettant de simuler un vecteur consitué de variables aléatoires gaussiennes centrées réduites indépendantes.

    Tracer l'histogramme du vecteur obtenu et verifier qu'il correspond bien à la loi gaussienne centrée réduite.

    Cette fonction existe dans Scilab (x=rand(1,n,''gauss'')).

    Correction

  3. On cherche à calculer par simulation $\E(e^{\beta G})$$G$ est une gaussienne centrée réduite. On rappelle que $\E(e^{\beta
G})=\exp(\beta^2/2)$.

    Calculer par simulation $\E(e^{\beta G})$ pour $\beta=2,4,6,8,10\ldots$. Précisez à chaque fois une intervalle de confiance. Pour quelles valeurs de $\beta$ peut on utiliser cette méthode de monte-carlo ?

    Correction

Le modèle de Black et Scholes

On considère le modèle de Black et Scholes :

\begin{displaymath}
S_t = S_0 \exp\left(\left(r-\frac{\sigma^2}{2}\right)t + \sigma W_t\right).
\end{displaymath}

On supposera dans la suite que $S_0=100$, $\sigma=0.3$ (volatilité annuelle) et $r=0.05$ (taux d'intérêt exponentiel annuel).

  1. Tracer l'histogramme de la loi de $S_T$, pour $T=1$, $\sigma=0.3$ (volatilité annuelle) et $r=0.05$ (taux d'intérêt exponentiel annuel).
    Correction
  2. On cherche à calculer le prix d'un call de strike $K=100$. Calculer ce prix par une méthode de monte-carlo avec un nombre de tirages égaux à $N=1000$,$1000$,$10000$. On précisera l'intervalle de confiance.
    Correction
  3. On va chercher à utiliser la variable aléatoire $S_T$ comme une variable de contrôle. Vérifiez que $\E(S_T)=S_0 e^{rT}$ (pourquoi ?).

    Ecrire un programme qui utilise $S_T$ comme variable de contrôle. Comparer la précision de cette méthode avec la précédente suivant les valeur relative de $K$ et $S_0$.

    Se convaincre que l'on a ainsi ramené le calcul du call à un calcul de put.

    Correction

  4. On se place dans la cas d'un call de strike $K$ grand devant $S_0$. Montrer par simulation que la précision relative du calcul décroit au fur et à mesure que $K/S_0$ décroit. On prendra $S_0=100$ et $K=100$, $150$, $200$, $250$. Que se passe t'il pour $K=400$ ?
    Correction

  5. Montrer en utilisant le théorème de Girsanov que :

    \begin{displaymath}
\E\left(f(W_T)\right)
= \E\left(e^{-\lambda W_T -\frac{\lambda^2 T}{2}}f(W_T+\lambda T)\right).
\end{displaymath}

    On se place dans le cas du call avec $S_0=100$ et $K=150$. Proposer une valeur de $\lambda$ permettant de réduire la variance de la simulation.
    Correction