Simulations et Estimations de la volatilité Daniel Herlemont 5 novembre 2012 Table des matières 1 Introduction 1 2 A faire... 3 3 Rappels 10 3.1 Propriétés des estimateurs............................ 10 3.2 Propriétés relatives à la volatilité historique.................. 12 1 Introduction Qu il s agisse de gestion du risque ou de l évaluation des produits dérivés, la volatilité joue un rôle central en finance. L objectif de ce TP est de tester différents estimateurs de la volatilité. La volatilité n est ni directement observable ni constante. Il convient donc de l estimer de la meilleure façon, en utilisant un historique suffisamment long pour réduire la variance de l estimation, mais suffisamment court pour réagir rapidement aux évolutions dans le temps. S agissant de données journalières nous disposons, le plus souvent, d un résumé de la journée comprenant les cours les plus haut et plus bas de la journée. Ces informations, plus précisément, l écart entre le plus haut et le plus bas, sont directement liés à la volatilité. Il existe de nombreux estimateurs utilisant ces informations (Rogers Satchell, Parkinson). Dans un premier temps, nous nous intéresserons à ces estimateurs afin de comparer leur efficacité, dans le cas de processus connus de prix lognormaux. Pour ce faire nous allons tester et comparer différents estimateurs : 1
1 INTRODUCTION ˆ Volatilité historique. C est l estimateur le plus classique : 1 ˆσ 2 = 1 N 1 r = 1 N (r i r) 2 i=1,n i=1,n ˆ estimateurs utilisant les plus haut et plus bas : Parkinson, Roger Satchell. Parkinson σ 2 P arkinson = r i 1 N 4 log(2) (h k l k ) 2 k=1,n avec h = log(high) l = log(low) o = log(open) c = log(close) Roger Satchell : σ 2 RS = 1 N (h k o k )(h k c k ) + (l k o k )(l k c k ) k=1,n Garman Klass σ 2 GK = 1 N k=1,n 0.511(u k d k ) 2 0.019(c k (u k + d k ) 2u k d k ) 0.383c 2 k 1 N 2/π avec u k = log(high) k log(open) k, d k = log(low) k log(open) k, c k = log(close) k log(open) k, Pour plus d information, voir l article original http://www.fea.com/resources/ pdf/a_estimation_of_security_price.pdf Yang and Zhang derived an extension to the Garman Glass historical volatility estimator that allows for opening jumps. It assumes Brownian motion with zero drift. This is currently the preferred version of open-high-low-close volatility estimator for zero drift and has an effciency of 8 times the classic close-to-close 1 Ou basé sur la valeur absolue (sous une hypothèse de rendements gaussiens de moyenne nulle)ˆσ = i=1,n r i Daniel Herlemont 2
estimator. Note that when the drift is nonzero, but instead relative large to the volatility, this estimator will tend to overestimate the volatility. σ 2 Y Z = 1 N (o i c i 1 ) 2 +.5(h i l i ) 2 (2 ln 2 1)(c i o i ) 2 i=1,n with Z the number of closing prices in a year, n the number of historical see http://www.atmif.com/papers/range.pdf and TTR package. Ces estimateurs proviennent des lois de distribution des plus haut et plus bas sous une hypothèse de rendements log normaux. 2 Dans de prochains TP, nous examinerons les estimateurs tenant compte de la variation de la volatilité dans le temps, à savoir : RiskMetrics (Moyenne Mobile Exponentielle Pondérée - Exponential Weighted Moving Average - EWMA en anglais), ainsi que les estimations GARCH. Ici, ces estimateurs ne seront d aucune utilité car la volatilité et supposée constante. Les estimateurs utilisant les plus hauts et plus bas sont beaucoup plus efficaces (au sens statistique) que des estimateurs utilisant les cours de clôture. En effet, les plus haut et plus bas donnent un bon résumé de la journée. Nous allons montrer que la plupart de ces estimateurs utilisant ces valeurs ont une efficacité 5 à 6 plus grande que l estimateur historique (à même nombre de jours de cotations, l erreur quadratique moyenne sera 5 à 6 fois plus faible). Pour étudier les propriétés des estimateurs, il sera nécessaire de simuler des prix pour une volatilité connue et comparer les estimations à cette volatilité, à l aide de la notion d efficacité des estimateurs. 2 A faire... Nous allons estimer les volatilités à partir de cotations journalières simulées (voir TP précédent, sur la simulation des cours boursiers). Nous considérons une action (ou indice) typique de volatilité σ = 30% par an (on pourra prendre µ = 0 sera d aucune utilité ici). 2 Ces estimateurs font l hypothese que le cours de cloture de la veille est le même que le cours d ouverture du lendemain. En pratique ce n est pas le cas, il faut donc corriger ces estimations de la maniere suivante σ 2 = a (log(open 1 log(close 0 )) 2 f + (1 a) σ2 ohlc 1 f (1) avec σ ohlc l estimateur de la volatilité utilisant les plus hauts et plus bas, f = 0.192 la fraction du temps de fermeture du marché et a = 0.12 Daniel Herlemont 3
On comparera l estimateur de la variance historique avec un estimateur utilisant les plus haut et plus bas (Parkinson ou Roger Satchell, au choix). Pour chaque estimateur, calculer ˆ les erreurs relatives ERQM/σ 2 en fonction du nombre de N jours, pour N = 10, 20,..., 100 Pour calculer les erreurs quadratiques moyennes on utilisera un échantillon de l ordre de 100 estimations des σ : ˆσ i, pour i = 1, 100. ˆ Pour quelles valeurs de N l erreur relative ERQM/σ 2 est de l ordre de 10%. Commentaires? Por effectuer les estimations on pourra procéder de la maniere suivante sigma=0.3 variance.estimates=numeric() for (i in 1:100) { # generer 10 jours de prix, avec les cours # d'ouverture, fermeture, plus haut et plus bas # voir TP precedent sur la simulation # calculer une estimation de la variance variance.estimates[i]=(estimation de la variance journaliere)*252 } erqm=mean((variance.estimates-sigma^2)^2) resultat=sqrt(erqm)/sigma^2 Comparer l efficacité des estimateurs de Parkinson et Roger Satchell par rapport à l estimateur historique. Conclusions? Note : pour simuler les plus haut et plus bas journaliers, voir le TP sur la simulation des cours intraday log-normaux. Indications : Construire une fonction pour calculer l erreur relative d estimation ERQM/σ 2 pour un estimateur V, on construit, disons, 100 estimations ˆσ 2 i de la volatilité. L erreur quadratique moyenne est alors ERQM = 1 ( 100 ˆσ 2 i σ 2 ) 2 i=1,100 Daniel Herlemont 4
Pour l estimateur de volatilité historique, montrer que l on obtient une erreur quadratique moyenne de l ordre de (voir 3.2) : erqm(ˆσ 2 ) = 2 n σ4 Autrement dit, l erreur relative d estimation de la variance est de l ordre de erqm(ˆσ2 ) σ 2 2 n soit de l ordre de 20% pour n = 50, 14% pour n = 100, 10% pour n = 200, alors qu en utilisant les plus haut et plus bas, ce niveau d erreur est obtenu pour n = 10!!! L erreur relative pour la volatilité historique est représentée sur la figure ci après pour un nombre de jours de 10 à 100 Daniel Herlemont 5
Volatility errors with the hist. closes sd/sigma^2 15 20 25 30 35 40 45 20 40 60 80 100 N Les erreurs en % sont de l ordre de : > rbind(ns,hist.errors) Ns 10.0 20.0 30.0 40.0 50.0 60.0 70.0 80.0 90.0 100.0 hist.errors 46.7 31.5 26.6 23.8 19.9 17.7 17.4 16.1 15.3 13.5 faire de même pour les autres estimateurs : Parkinson et Roger Satchell. Daniel Herlemont 6
Parkinson errors sd/sigma^2 6 8 10 12 14 16 18 20 20 40 60 80 100 N Les erreurs d estimation de la volatilité de Parkinson sont de l ordre de (en %) : > rbind(ns,park.errors) Ns 10.0 20.0 30.0 40.00 50.00 60.00 70.00 80.00 90.00 100.00 park.errors 19.7 14.4 11.2 9.81 9.21 7.86 7.67 6.77 6.44 6.02 Daniel Herlemont 7
Garman Klass errors sd/sigma^2 6 8 10 12 14 16 20 40 60 80 100 N Les erreurs d estimation de la volatilité de Garman Klass sont de l ordre de (en %) : > rbind(ns,gk.errors) Ns 10.0 20.0 30.00 40.00 50.00 60.0 70.00 80.00 90.00 100.00 gk.errors 16.4 11.3 8.98 7.73 7.23 6.4 6.12 5.49 5.27 4.79 Les erreurs d estimation de la volatilité de Yang and Zhang sont de l ordre de (en %) : > rbind(ns,yz.errors) Ns 10.0 20.0 30.00 40.00 50.00 60.0 70.00 80.00 90.00 100.00 yz.errors 16.4 11.3 8.98 7.73 7.24 6.4 6.12 5.49 5.26 4.79 Daniel Herlemont 8
Roger Satchell errors sd/sigma^2 6 8 10 12 14 16 18 20 40 60 80 100 N Les erreurs d estimation de la volatilité de Roger Satchell sont de l ordre de (en %) : > rbind(ns,rs.errors) Ns 10.0 20.0 30.0 40.00 50.00 60.00 70.00 80.00 90.00 100.00 rs.errors 18.4 12.6 10.1 8.69 8.11 7.36 6.91 6.27 5.94 5.52 > # recapitulatif > rbind(ns,hist.errors,park.errors,rs.errors,gk.errors,yz.errors) Ns 10.0 20.0 30.00 40.00 50.00 60.00 70.00 80.00 90.00 100.00 Daniel Herlemont 9
hist.errors 46.7 31.5 26.57 23.84 19.88 17.72 17.44 16.09 15.26 13.50 park.errors 19.7 14.4 11.24 9.81 9.21 7.86 7.67 6.77 6.44 6.02 rs.errors 18.4 12.6 10.15 8.69 8.11 7.36 6.91 6.27 5.94 5.52 gk.errors 16.4 11.3 8.98 7.73 7.23 6.40 6.12 5.49 5.27 4.79 yz.errors 16.4 11.3 8.98 7.73 7.24 6.40 6.12 5.49 5.26 4.79 > #comparaison des efficacités avec l'estimateur > #à partir des cours de fermeture seulement > rbind(ns,hist.errors^2/park.errors^2,hist.errors^2/rs.errors^2 +,hist.errors^2/gk.errors^2,hist.errors^2/yz.errors^2) Ns 10.00 20.00 30.00 40.00 50.00 60.00 70.00 80.00 90.00 100.00 5.61 4.79 5.59 5.91 4.66 5.09 5.17 5.65 5.62 5.03 6.49 6.21 6.85 7.53 6.01 5.80 6.37 6.59 6.59 5.99 8.16 7.74 8.75 9.50 7.55 7.66 8.11 8.59 8.40 7.94 8.17 7.73 8.76 9.50 7.55 7.67 8.11 8.60 8.41 7.94 Daniel Herlemont 10
3 RAPPELS Root Mean Square 10 20 30 40 Closes Parkinson Roger Satchell Garman Klass Yang Zhang 20 40 60 80 100 Days 3 Rappels 3.1 Propriétés des estimateurs Soit V un estimateur d un paramètre θ la vraie valeur du paramètre mesuré. Soit E(V ), l espérance de l estimateur. L espérance de l estimateur n est pas nécessairement égale à la vraie valeur θ. La différence est le biais de l estimateur : biais = E(V ) θ L estimateur peut être plus ou moins dispersé autour de son espérance. Soit var(v ) la Daniel Herlemont 11
3 RAPPELS variance de l estimateur. L efficacité des estimateurs est mesurée à l aide l erreur quadratique moyenne : ERQM = E(V θ) 2 On peut décomposer cette erreur quadratique moyenne en : En effet, ERQM = E(V θ) 2 ERQM = var(v ) + biais 2 (2) = E(V E(V ) + E(V ) θ) 2 = E(V E(V )) 2 + 2E[(V E(V ))(E(V ) θ)] + E(E(V ) θ) 2 il suffit de remarquer que le terme central est nul, ce qui démontre la relation 2. En fonction des propriétés du biais et de la variance de l estimateur, on dira de l estimateur qu il est : ˆ sans bais, si E(V ) = θ, baisé dans le cas contraire. ˆ convergent (ou consistant), si l erreur quadratique moyenne tend vers zéro lorsque la taille de l échantillon tend vers l infini, une condition nécessaire et suffisante est que le bais et la variance tendent aussi vers zéro. ˆ Asymptotiquement sans biais, si le biais tend vers 0 lorsque taille de l échantillon tend vers l infini, ˆ Asymptotiquement normal, si la distribution de l estimateur est une gaussienne (de moyenne E(V ) et variance var(v )) ˆ plus efficace qu un autre estimateur W si l erreur quadratique moyenne est plus faible. L efficacité comparée de V, à celle de W est définie par : ERQM(W ) ERQM(V ) Un estimateur sans bais n est pas nécessairement l estimateur le plus efficace. En général, on recherchera les estimateurs dont l erreur quadratique moyenne est la plus faible possible. Daniel Herlemont 12
3 RAPPELS 3.2 Propriétés relatives à la volatilité historique Considérons les rendements r i comme des variables iid gaussiennes de moyenne nulle et variance σ 2 (si l espérance est différent de zéro il suffit de considérer r i µ). Considérons l estimateur ˆσ 2 = 1 ri 2 n Sa variance est i=1,n var( ˆσ 2 ) = 1 var(r 2 n 2 i ) Les rendements étant indépendants, il en va de même pour toute fonction de ces rendements, en particulier les ri 2 sont également indépendants et la variance de la somme est la somme des variances. Pour une variable aléatoire X normalement distribuée, X 2 est distribuée suivant une loi de khi2 On peut retrouver la variance de X 2, en sachant que la kurtosis est égale à 3 : E[X 4 ]/var(x) 2 = 3 : i=1,n var(x 2 ) = E[X 4 ] (E[X 2 ]) 2 = 3var(X) 2 var(x) 2 = 2var(X) 2 d où var( ˆσ 2 ) = 2σ4 n Daniel Herlemont 13