Vous êtes sur la page 1sur 177

Trading Haute Frquence

Modlisation et Arbitrage Statistique


Alexis Fauth

Universit Lille I
Master 2 Mathmatiques et Finance
Mathmatiques du Risque & Finance Computationnelle
2014/2015

Membre associ de luniversit Paris I, Pantheon-Sorbonne, laboratoire SAMM.


alexis.fauth@gmail.com, http://samm.univ-paris1.fr/-Alexis-Fauth-

Table des matires


0

Prsentation des Marchs Financiers


0.1

March Financier . . . . . .
0.1.1 Organis . . . . . . .
0.1.2 De Gr Gr . . . .
0.1.3 Acteurs . . . . . . .
0.1.4 Cot de Transaction
0.2 Produit Financier . . . . . .
0.2.1 Action . . . . . . . .
0.2.2 Indice . . . . . . . .
0.2.3 Obligation . . . . . .
0.2.4 Matire Premire . .
0.2.5 Taux de Change . . .
0.2.6 Tracker . . . . . . .
0.2.7 Forward et Future .
0.2.8 Option . . . . . . . .

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

6
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

Analyse Statistique des Donnes Financires

1 Comportement Empirique
1.1 Faits Styliss . . . . . .
1.2 Carnet dOrdres . . . . .
1.3 Microstructure . . . . .

13

des Marchs
. . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . .

2 Modlisation
2.1 Modlisation A Partir de lHistorique
2.2 Processus ARCH et Drives . . . . .
2.2.1 ARCH . . . . . . . . . . . . .
2.2.2 GARCH . . . . . . . . . . . .
2.2.3 Asymtrie . . . . . . . . . . .
2

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

6
6
6
6
7
7
7
8
9
10
10
11
11
12

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

14
14
27
31
37
38
39
39
42
45

2.2.4 Mmoire Longue . . . . . . . . . . . . . . . . .


2.3 Modle Multifractal . . . . . . . . . . . . . . . . . . . .
2.3.1 Mesure Multifractale . . . . . . . . . . . . . . .
2.3.2 Modle Multifractal des Rendements Financiers
2.3.3 Modle Multifractal Markov Switching . . . . .
2.3.4 Marche Alatoire Multifractale . . . . . . . . .
2.4 Processus ponctuels . . . . . . . . . . . . . . . . . . . .
2.4.1 Processus de Hawkes . . . . . . . . . . . . . . .
2.4.2 Carnet dOrdres . . . . . . . . . . . . . . . . . .
2.4.3 Fluctuation Trs Haute Frquence . . . . . . .

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

47
49
52
55
56
60
66
66
71
75

Rfrences de la Premire Partie

77

II

80

Arbitrage Statistique
2.5
2.6
2.7

Performance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
Thorie du Signal . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
Agrgation des Stratgies . . . . . . . . . . . . . . . . . . . . . . . . 84

3 Apprentissage Statistique
3.1 Rseau de Neurones . . .
3.2 Perceptron Multicouche
3.3 Arbre de Dcision . . . .
3.3.1 CART . . . . . .
3.3.2 Boosting . . . . .
3.3.3 Bootstrap . . . .
3.3.4 Fort Alatoire .

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

91
92
92
98
99
102
104
105

4 Pair Trading
4.1 Cointgration . . . . . .
4.2 Contrle Optimal . . . .
4.2.1 Fonction dUtilit
4.2.2 Problmatique . .

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

106
107
110
110
112

5 Portefeuille Multi-Actifs
114
5.1 Exploration/Exploitation . . . . . . . . . . . . . . . . . . . . . . . . 114
5.1.1 Portefeuille Universel . . . . . . . . . . . . . . . . . . . . . . 116
5.1.2 Exponentiated Gradient . . . . . . . . . . . . . . . . . . . . 119

5.2

Portefeuille de Markowitz .
5.2.1 Moyenne - Variance .
5.2.2 Shrinkage . . . . . .
5.2.3 Matrice Alatoire . .
5.2.4 Donnes Asynchrones

Rfrences de la Seconde Partie

III

Appendix

6 Optimisation non linaire

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

126
126
129
135
149
155

158
159

7 Introduction R
165
7.1 Premiers Pas (ou pas !) . . . . . . . . . . . . . . . . . . . . . . . . . 165

Prsentation des Marchs


Financiers

Trading Haute Frquence


Le premier rle des marchs financiers est de faciliter le transfert de liquidit
entre un agent ayant des capacits de placement vers un autre agent ayant un
besoin de financement. A cette fonction, on peut confrer aux marchs financiers
un outil de couverture de risque. Le premier groupe mondial de places boursires
est la bourse New-York Stock Exchange - Euronext (NYSE-Euronext), cr le 4
avril 2007 suite la fusion entre Euronext et le NYSE.

0.1
0.1.1

March Financier
Organis

Un march organis, ou bourse, est une plateforme permettant aux acheteurs


et aux vendeurs de produits financiers deffectuer des transactions, dexcuter des
ordres de bourses, via un intermdiaire qui transmet lordre un membre officiel
de la bourse. La chambre de compensation est un pilier central dans la bourse,
elle intervient comme contrepartie entre acheteurs et vendeurs en garantissant la
bonne fin des oprations. Il ne sagit ni plus ni moins que de lacheteur de tous les
vendeurs et du vendeur de tous les acheteurs. Ltablissement Clearnet soccupe
du bon fonctionnement de lensemble des bourses europennes (Euronext).

0.1.2

De Gr Gr

Un march de gr gr ou Other-The-Counter (OTC) est un march sur lequel


les transactions se font directement entre un acheteur et un vendeur. La principale
diffrence avec la bourse est donc quil nexiste pas de chambre de compensation
permettant dviter le risque de contrepartie. Les raisons de lexistence de cette
place sont multiples. Notons dj quune partie des socits qui y sont prsentes le
sont car elles sont trop petites, ne remplissent pas les critres pour tre cotes sur
les marchs organiss. De plus, comme les contrats sont tablis directement entre
les deux parties, cela permet dacheter (ou vendre) un produit correspondant bien
plus ses besoins, comme par exemple pour couvrir un risque de change. Par
construction, ce march est moins transparent que la bourse.

0.1.3

Acteurs

(Presque) nimporte qui peut intervenir sur les marchs financiers, nous pouvons tout de mme classifier les intervenants en 3 grandes catgories, les hedgers,
6

Trading Haute Frquence

les spculateurs et les market makers. Pour les deux premires catgories, sans
grandes surprises, il sagit de gestionnaires intervenant respectivement pour se
couvrir dun certain risque et, pour tirer un profit suite une transaction. Les
market makers sont prsents pour assurer la liquidit du march. Ils offrent une
contrepartie tout acheteur ou vendeur sur certains titres souvent illiquides. Ces
agents sont en gnral rmunrs par les bourses qui souhaitent offrir leur client
le plus de liquidit possible.

0.1.4

Cot de Transaction

Si lon achte ou vend un produit financier, quel quil soit, il faut rmunrer
les intermdiaires, personne ne travaille gratuitement ! On ne peut pas donner ici
de pourcentage prcis de cot, cela dpend du volume, du montant du produit
financier que lon traite et galement de votre broker, plus on achte, plus le
pourcentage va tre avantageux. Il faut donc bien se renseigner sur les montants
demands par votre broker et les prendre en compte dans votre stratgie.

0.2
0.2.1

Produit Financier
Action

Une action (share, ou stock) est un titre de proprit dune entreprise confrant
son dtenteur (lactionnaire) un droit de vote dans la politique de gestion de
lentreprise ainsi que des dividendes. Il sagit donc dune fraction du capital social
de lentreprise mise afin de se financer sur les marchs. La valeur initiale de laction
est dtermine par la socit, ensuite, elle volue sur les marchs en fonction de
loffre et de la demande.
Il existe deux types daction, ordinaire ou prfrentielle. Le dtenteur dune
action prfrentielle a un droit de priorit par rapport au dtenteur dune action
ordinaire, une socit na pas le droit de verser des dividendes aux actionnaires
ordinaires tant que les privilgis nont pas t rmunrs. La deuxime priorit
intervient en cas de liquidation de lentreprise, le dtenteur bnficiera dun remboursement prioritaire pour la valeur de chacune de ses actions.
Enormment de facteurs rentrent en compte dans la formation des prix, en premier lieu les fondamentaux de lentreprise, notons les variations de taux de changes,
les annonces conomiques/macroconomiques, les dcisions gouvernementales ainsi
que les mouvements purement spculatifs. Un simple ordre pass sur le march,

Trading Haute Frquence

disons de vente, quelle quen soit la raison, sil est relativement important, peut
entraner lui seul un effet de panique et conduire une vente de la part des
autres dtenteurs de la mme action, on parle alors de price impact.

0.2.2

Indice

Un indice est un indicateur propos par une bourse pour valuer les performances dun pays, dun secteur.
Citons quelques exemples parisiens. Le CAC 40 est le principal indice de la
bourse de Paris (Euronext Paris), initialement, lacronyme CAC signifiait Compagnie des Agents de Change, aujourdhui Cotation Assiste en Continu. La valeur
de lindice est une pondration de chacun des 40 titres de socits en fonction de
leur capitalisation flottante. Sa composition est mise jour tous les trimestres.
Quand une socit nest plus cote, elle est remplace par une des valeurs du CAC
Next 20 en fonction de la liquidit de son titre, capitalisation boursire, volumes
changs, etc. Enfin, notons que sa cotation est ractualise toutes les 15 secondes.
Le CAC Next 20 regroupe les vingt valeurs dont limportance suit celle des valeurs
composant le CAC 40. Le SBF 120 (Socit des Bourses Franaises) est compos
du CAC 40 et des 80 valeurs les plus liquides Paris parmi les 200 premires capitalisations boursires franaises. Il existe galement le SBF 250 dont on comprend
facilement la composition. Notons tout de mme que le SBF 80 est quant lui les
80 valeurs suivant le CAC 40, donc hors CAC 40.
Parmi les indices internationaux nous pouvons galement noter le S&P 500
(Standard & Poors, filiale de McGraw-Hill), compos des 500 plus grandes capitalisations boursires des bourses amricaines. Comme prcdemment, il existe des
variantes, S&P 100, 400 et 600. Et toujours comme prcdemment, il est pondr par la capitalisation boursire de chacune des ses composantes. Pour une plus
grande diversit sur les marchs amricains on pourra regarder le Russell 1000,
2000, 3000 ou le Wilshire 5000.
Pour voyager un peu dans diffrents pays, notons que lindice principal en Allemagne est le DAX (30 valeurs), Londres le FTSE 100 (Footsie), Hong-Kong
le Hang Seng Index, Taiwan le TSEC et le SSE Composite Index pour Shangai.
Les indices sont donc donns par,
I(t) = C

N
X

i xi,t

(0.2.1)

i=1

Trading Haute Frquence

o N est le nombre de valeurs composant lindice, xi,t la valeur de laction i


linstant t, i le nombre dactions i en circulation et C est une constante de normalisation une valeur de rfrence (par exemple 100) une date bien prcise.
On peut conclure cette courte prsentation en notant que le DJIA (Dow Jones
Industrial Average), indice des 30 plus grosses valeurs du NYSE et du NASDAQ,
tout comme le Nikki 225 Tokyo ne sont pas pondrs par la capitalisation
boursire de leurs composantes, mais par la valeur des actions. Le DJIA est le plus
vieil indice boursier au monde, 1896, il tait calcul la main toutes les heures,
on peut donc comprendre en partie pourquoi il est pondr ainsi.

0.2.3

Obligation

Une obligation est un titre de crance ngociable mis par une socit ou une
collectivit publique, principalement change sur les marchs de gr gr. Les paramtres rentrant dans le calcul dune obligation sont la date dmission, la date
dchance, le taux dintrt, la devise dans laquelle elle est mise et la priodicit
du coupon. Les modalits de remboursement et le mode de rmunration des prteurs sont fixs contractuellement, la rmunration pouvant tre fixe ou variable,
indexe alors sur un taux dintrt et non sur le rsultat de lentreprise. La valeur
nominale permet le calcul des intrts (coupon) que lemprunteur sengage verser des chances fixes lavance. Le march obligataire est une des principales
raisons justifiant limportance des agences de rating, dont les trois principales sont
S&P, Moodys et Fitch. Le systme de notation de S&P va du fameux triple A :
AAA pour une forte capacit rembourser au C pour peu despoir de recouvrement et D pour dfaut de paiement. On peut classifier ces produits en 4 catgories
bien distinctes :
Un Etat dans sa propre devise, emprunt dtat.
Un Etat dans une autre devise que la sienne, obligation souveraine.
Une entreprise du secteur public, un organisme public, une collectivit locale,
obligation du secteur public.
Une entreprise prive, une association, ou tout autre personne morale, obligation corporate.
Nous prsentons maintenant un peu plus en dtail le cas des obligations dEtat
Amricaines. Les obligations plus courte chance sont les Treasury Bill (T-Bill)
avec une maturit allant de 1 mois 1 an. De la mme manire que les obligations
zro-coupons, ils ne versent pas dintrts avant lchance. Les maturits habi9

Trading Haute Frquence

tuelles sont 1 mois, 3 mois ou 6 mois. Les T-Bills sont reconnus comme constituant
les obligations du trsor les moins risques aux tats-Unis par les investisseurs.
Les Treasury Notes (T-Notes) sont chances moyennes 2, 5 et 10 ans et leur
rmunration est assure par un coupon pay tous les six mois au souscripteur. La
T-Note chance de 10 ans est devenue la valeur la plus frquemment cite dans
les tudes des performances du march obligataire amricain.
Enfin, les obligations avec la plus grande maturit sont les Treasury Bond (TBond), variant entre 10 et 30 ans ils sont galement rmunrs par un coupon
pay tous les six mois. Le revenu que les dtenteurs peroivent possde en outre
lavantage de ntre impos quau niveau fdral. Les quivalents Franais des
obligations courte, moyenne et longue maturit sont respectivement les BTF
(Bons du Trsor taux Fixe et intrt prcompt), BTAN (Bons du Trsor
intrts ANnuels) et les OAT (Obligations Assimilables du Trsor).

0.2.4

Matire Premire

Les commodities, cest dire les matires premires, prennent elles aussi une
importante place dans les marchs organiss, tant pour les besoins de gestion des
risques que pour leur qualit de valeur refuge. Pour le secteur de lnergie on pourra
citer le baril de ptrole brut, le gaz naturel ou llectricit ; pour les matriaux
prcieux ou industriels, lor, largent, le platinium, le cuivre ou le palladium ; pour
les grains, le mas, le soja, lavoine, le riz ou le bl ; les viandes comme les bovins
vivants, bovins dengraissement, le porc maigre, ou la poitrine de porc ; et autres
comme le bois, le coton, le caoutchouc, le jus dorange, le sucre, le caf, le cacao,
le lait, etc.

0.2.5

Taux de Change

Nous aurions pu mettre cette section dans le chapitre sur les marchs financiers
puisque lensemble des devises qui sont changes les unes contre les autres un
certain taux de change sont cotes sur le Forex, contraction de Foreign Exchange.
Ce march mondial est le deuxime march financier en terme de volume chang
derrire celui des taux dintrts, il est ouvert 24h/24h du fait des dcalages horaires entre les bourses europenne, amricaine, australienne et japonaise, tout de
mme fermes le week-end ; fermant 22h GMT le vendredi New-York et ouvrant
22h GMT avec la bourse australienne.
Deux types de devises se distinguent, celle fixe par un Etat, on parle alors
dexotique comme le yuan chinois, et celle flottante, valorise par loffre et la
10

Trading Haute Frquence

demande sur les marchs, comme leuro ou le dollar amricain.


Un taux de change est toujours exprim de la manire suivante X/Y=z, en
dautres termes, 1 X vaut z Y. La devise de gauche est la devise de base et celle de
droite la devise de contrepartie. Les taux de changes varient jusqu la quatrime
dcimale, ce que lon appelle le pip.

0.2.6

Tracker

Un tracker a pour but de rpliquer un produit financier bien prcis. Il peut


porter sur un indice actions, obligataire ou encore de matires premires. Si lon
prend lindice CAC 40, il nest bien sr pas possible dacheter du CAC 40, on
pourrait quand mme avoir en portefeuille toutes les composantes du CAC 40 en
prenant garde de bien ractualiser son portefeuille suite aux sorties et rentres
dans le CAC, davoir le mme montant que la pondration, cela peut savrer bien
compliqu. Lachat dun tracker sur le CAC 40, par exemple le Lyxor ETF CAC 40
permet de simplifier tout cela en achetant un seul produit, au passage cela diminue
forcment les cots de commissions, les fees. Le SPDR S&P 500(Standard & Poors
Depositary Receipts), communment appel Spyder S&P 500, est naturellement le
tracker sur le S&P 500 et le SPDR Gold Trust qui rplique la performance de lor
physique sont les deux trackers les plus changs au monde avec des encours respectifs de 76.5 et 77.5 milliards de dollars au 08/11. Les grants dun fond indiciel
(Exchange traded funds) sont tenus davoir en portefeuille toutes les composantes
de lindice en les pondrant, et pour le cas de lor, de stocker lquivalent en or
dans leurs coffres.

0.2.7

Forward et Future

Les contrats forward et future sont des contrats termes, ils sengagent fermement acheter ou vendre une chance dfinie t = T , un prix fix, une
certaine quantit dun actif financier le sous-jacent, la date t = 0. La diffrence
entre un contrat forward et un contrat future est que le premier est OTC tandis
que le second schange sur les marchs organiss. Le sr-mesure propos par le
march de gr gr sexpose naturellement au risque de liquidit. Le sous-jacent
du contrat peut tre physique, or, ptrole, etc., une action, un indice, taux dintrt, devises, obligations. Il sagit initialement dun produit destin la gestion des
risques.

11

Trading Haute Frquence

0.2.8

Option

Les options les plus connues sont le call et le put europens, donnant respectivement le droit dacheter et le droit de vendre un actif sous-jacent une date
dtermine lavance, moyennant le versement dune prime. La diffrence entre
ces deux types de produits financiers avec les forward ou future est quils confrent
le droit, et non lobligation dexercer son contrat maturit. Ces deux premiers
exemples sont dit vanille. Les options exotiques sont plus complexes et la liste
complte serait trop longue citer ici. Rapidement, les options amricaines qui
donnent le droit dexercer son option nimporte quelle date entre le moment
dachat et la maturit ; loption bermuda qui donne le droit dexercer son contrat
plusieurs dates bien fixes ; une option asiatique paye la valeur moyenne du sous
jacent durant un certain intervalle de temps ; option lookback paye nimporte quel
prix atteint par laction au cours de la priode, on choisira naturellement celui qui
maximise le gain ; option as-you-like-this, donne le droit de choisir si elle deviendra
un call ou un put.

12

Premire partie
Analyse Statistique des Donnes
Financires

13

Chapitre 1
Comportement Empirique des
Marchs
1.1

Faits Styliss

Pour pouvoir construire des modles adapts la ralit des marchs financiers,
il faut tudier comment les diffrents actifs voluent au cour du temps pour ne pas
prendre des positions issues de formules inadaptes. Nous allons donc prsenter
dans cette partie ce que lon appelle les faits styliss des marchs financiers, il
sagit des caractristiques propres aux sries temporelles financires.
Rappelons dj que ltude appronfondie des marchs financiers et des premiers
modles proposs a t initie par Louis Bachelier en 1900 dans sa thse Thorie
de la Spculation sous la direction dHenri Poincar. Cette thse, pourtant pilier
fondateur de la thorie moderne des mathmatiques financires est passe inaperue en son temps avant dtre dpoussire par de grand noms, Samuelson, Black
et Scholes dans les annes 60. Aujourdhui trs critique par ses hypothses non
ralistes, cest dire que les prix boursiers suivent une loi gaussienne. Rappelons
que ltude de L. Bachelier portait sur des donnes antrieures aux annes 1900.
Nous allons voir quelles sont les caractristiques des sries de prix diffrentes
frquences pour voir quelles hypothses sont vrifies ou non.
Pendant toute la suite du cours nous noterons (p(t); t 0) le cours dun actif et
p(t) = ln X(t) le log-prix. Les variations financires, i.e. les rendements, scrivent
p(t+1)p(t)
, et les log-rendements, 1 X(t) = X(t + 1) X(t) et de manire plus
p(t)
14

Trading Haute Frquence

gnrale,
p(t + )
X(t) = X(t + ) X(t) = log
p(t)

(1.1.1)

La donne la plus grossire que lon peut avoir sur les marchs financiers est
la barre, cest dire linformation de lopen, high, low, close, o,
O(t) p(t t) H(t) max p(t t, t],
t

L(t) min p(t t, t],


t

C(t) p(t)

16

typiquement, t est une journe (9h30-16h00 aux Etats Unis), un mois, une heure,
une seconde, etc. Nous pouvons la rprsenter comme sur la figure (1.1).

High
Open

12
10

USD

14

High
Close

Open
Low

Close

Low

2
Temps

Figure 1.1 Reprsentation des variations dune srie financire sur deux pas de temps.
Avant de pouvoir rentrer dans le vif du sujet, cest--dire les donnes hautes
frquences, il convient de sintresser aux donnes basses frquences, que nous
considrons dobservation suprieure un jour. Pour toute cette partie nous allons
nous intresser au cours de lindice S&P 500 en donnes journalires ou infrieures,
(1.2, 1.3, 1.4). Mme si les proprits que nous allons mettre en valeurs sont vrifies par la plupart des actifs financiers, il ne faudra pas non plus gnraliser.

15

800

1000

1200

1400

1600

Trading Haute Frquence

2000

2005

2010

date

0.10

0.05

return

0.00

0.05

0.10

Figure 1.2 Cours du S&P 500 du 13/07/1998 au 16/03/2012, 3444 points.

2000

2005

2010

date

Figure 1.3 Log-rendements du S&P 500 du 13/07/1998 au 16/03/2012.

16

vol

0.01

0.02

0.03

0.04

0.05

Trading Haute Frquence

2000

2002

2004

2006

2008

2010

2012

date

Figure 1.4 Volatilit du S&P 500 du 13/07/1998 au 16/03/2012.

Une caractristique (plus ou moins) simple vrifier est la distribution des


rendements, suivent-ils une loi gaussienne par exemple ? Pour pouvoir identifier si
tel ou tel produit financier se rapproche au mieux de telle ou telle loi de probabilit,
on applique un test dadquation.
Proposition 1.1.1 (Test de Kolmogorov-Smirnov). Le test de KolmogorovSmirnov sappuie sur la distance D dfinie par,
Dn =

n max |Fn (x) F (x)|


x

(1.1.2)

1 Pn

o Fn (x) = n i=1 1xi x est la fonction de rpartition empirique de la srie


(x1 , , xn ) et F est la fonction de rpartition laquelle on souhaite comparer
notre chantillon. Sous lhypothse H0 : Fn = F , la statistique Dn converge vers la
loi de Kolmogorov-Smirnov,
P(Dn > c) = 2

2 c2

(1)n1 e2n

(1.1.3)

n=1

Par la construction de Dn , on voit bien que le test est happ par les valeurs
centrales et que les queues de distributions ne sont pas bien prises en compte par
ce test.
17

Trading Haute Frquence

Proposition 1.1.2 (qq-plot). Soit (Yt , 0 < t n) une srie dobservations.


On souhaite vrifier si elle suit une certaine loi L de paramtres = (1 , , d )
Rd . On gnre un chantillon (x1 , x2 , , xn ) de loi L et de mme paramtres
que ceux trouvs sur lchantillon (y1 , y2 , , yn ). Le qq-plot est le graphique form
par les couples Qj = (qxj , qyj ) o quj est le quantile lordre j de la variable u.
Si les deux sries ont la mme loi sous jacente, alors les Qj dcrivent une droite.
Pour faire simple, il sagit simplement du graphe des quantiles de lchantillon
observ sur un axe et des quantiles dune loi de probabilit bien choisie sur lautre
axe. Naturellement, si les deux lois sous jacentes aux observations sont les mmes,
nous devrions avoir une droite comme graphe.
On prsente le qq-plot des log-rendements du S&P 500 sur la figure (1.1) en
prenant la loi normale comme loi de rfrence.

0.4

0.10

0.0
0.2
0.4

Quantiles Thoriques

0.2

0.6

0.00

0.05

0.05

Quantiles Thoriques

0.10

0
Quantiles LogRendements

Quantiles LogRendements

Figure 1.5 qq-plot des log-rendements du S&P 500 du 13/07/1998 au 16/03/2012, gauche
avec = 1 et droite avec = 251, soit les rendements sur des lags dune anne. Le trait plein est
la droite dHenry, si les observations suivaient une loi gaussienne, les quantiles devraient tre par
dessus cette droite. On constate donc que plus la frquence choisie est basse, plus la distribution
des rendements se rapproche de la loi normale, un bon modle devra donc avoir cette proprit.

Un autre moyen de regarder la distribution des rendements financiers est sim18

Trading Haute Frquence

plement de tracer la distribution empirique (1.1),

0.500
0.050
Fn

5e04

0.000

0.001

0.002

0.003

0.004

0.005

0.006

(1.1.4)

0.005

n
1X
1X <x
n i=1 i

0.001

5e03

Fn

5e02

5e01

Fn (x) =

0.007

0.0000

0.0005

return

0.0010

0.0015

0.0020

0.0025

return

Figure 1.6 Distribution cumule empirique, P( X x), des log-rendements du S&P 500,
du du 13/07/1998 au 16/03/2012, chelle log, gauche = 1, droite = 251. En noir les
rendements positifs, en rouge les rendements ngatifs en valeurs absolues. Trait plein pour le fit
gaussien.

Avant dintroduire les notions de skewness et de kurtosis, faisons quelques rappels de probabilit.
Les moments dordre n, i.e. la moyenne de X exposant n sont donnes par,
n

mn E(X ) =

xn f (x)dx.

(1.1.5)

La connaissance des moments dune srie nous permet den dduire sa densit
de probabilit (nous faisons un gros raccourci car pour certaines lois, les moments
peuvent concider). Nanmoins, lestimation des moments pour des ordres n grand
nest faisable que si nous avons des chantillons suffisamment grands, ce qui nest
19

Trading Haute Frquence

pas forcment le cas pour des historiques de donnes financires.


La fonction caractristique (t), dfinie comme la transforme de Fourier de
f (t),
itx

(t) E(e ) =

f (x)eitx dx.

(1.1.6)

Inversement, connaissant la fonction caractristique de f nous pouvons retrouver la densit laide de la transforme de Fourier inverse,
1 Z
(x)eitx dx.
2
Une proprit intressante est le lien qui existe avec les moments,
f (x) =

(1.1.7)

dn
(t)|t=0 .
(1.1.8)
dtn
Sous quelques conditions et lexistence de tous les moments, nous pouvons
crire,
mn = (i)n

(k) =

X
n

mn
(ik)n .
n!

(1.1.9)

(x) est appele premire fonction caractristique, la deuxime fonction caractristique est ln (x) et vrifie
dn
ln (t)|t=0 ,
(1.1.10)
dtn
o cn est le cumulant dordre n. Nous pouvons donc crire la fonction caractristique par,
#
"
X cn
n
(ik) .
(1.1.11)
(x) = exp
n n!
cn = (i)n

Les quatres premiers cumulants sont donns par,


c1
c2
c3
c4

= m1
= m2 m21
= m3 3m2 m1 + 2m31
= m4 4m3 m1 3m22 + 12m2 m21 6m41 .

(1.1.12)

Le cumulant dordre 2 nest autre que la mesure de dviation des observations, la


variance,
20

Trading Haute Frquence

2 E[(X E(X))2 ] = m2 m21 .

(1.1.13)

Les cumulants normaliss sont dfinis par,


cn
.
(1.1.14)
n
La skewness, ou coefficient de dissymtrie dune variable alatoire, est le cumulant normalis dordre 3,
n =

c3
E[(X E(X))3 ]
=
.
3
3

(1.1.15)

Si 1 > 0, alors la distribution sera tale vers la droite, ramener notre problmatique de march financier, cela revient dire que si les rendements dun actif
financier ont une skweness positive, alors les rendements positifs sont plus frquents. Inversement, si 1 < 0, alors les rendements ngatifs sont plus frquents.
Notons pour que la loi qui nous servira de rfrence, le skewness est gal 0.
Le degr de kurtosis dune variable alatoire X est le cumulant standardis
dordre 4,
E[(X E(X))4 ]
c4
=
3.
(1.1.16)
4
4
Cette quantit mesure lpaisseur des queues de distributions. Ce rsultat sinterprte facilement en comparaison de loi normale pour qui 2 = 0. Si la variable
alatoire des queues de distribution plus paisses comparativement la loi normale, 2 > 0 et on parlera de distribution leptokurtique, inversement, si 2 < 0, la
distribution aura des queues plus fines que la loi normale, et elle sera dite platikurtique. Notons que la loi normale est dite mesokurtique. Donc si les rendements
dun actif sont tels que 2 > 0 cela veut dire que lon observe beaucoup dvnements extrmes, la diffrence dune toute douce loi normale, et inversement, si
2 < 0, les rendements sont trs concentrs.
2

Empiriquement, les marchs financiers ont un degr de kurtosis suprieur


celui de la loi normale, les queues de distribution des rendements sont plus prononces que pour la loi normale. La skewness est quant elle ngative, ce qui
correspond la dissymtrie dans les marchs.

21

Trading Haute Frquence

Concluons, la modlisation des rendements financiers par une loi gaussienne


nest pas approprie. Nous venons de le montrer par plusieurs calculs et graphes,
il y avait beaucoup plus simple pour sen rendre compte. Comme on a pu le voir
prcdemment, le skewness et le degr de kurtosis dun loi gaussienne sont tous
deux gaux 0, ni assymtrie, ni queues paisses. Les dviations plus de deux
fois lcart type, cest--dire m 2 sont de lordre de 2.2% de chaque cot, la probabilit davoir une ralisation plus ou moins 5 fois lcart type est de 5.7107 %
et 10 fois de lordre de 1.51023 %, soit quasiment jamais observable si lon parle
en terme de jour dune vie humaine. En fait, voir un crash boursier est possible
avec une loi normale, condition davoir bien sr, eut la chance de vivre cet
instant qui ne se produit pourtant quune fois par million dannes et pourtant,
les crash boursiers sont monnaie courante.
Dfinition 1.1.1 (Autocorrlation). La fonction dautocorrlation est la corrlation croise dune srie temporelle Y avec elle-mme, cest dire de Y (t) avec
Y (t + h),
C(h) = Cor (Y (t), Y (t + h)) .

(1.1.17)

Pourquoi sintresser cette quantit ? Si C(h) 0 pour tout h > p + 1, alors


nous devrions pouvoir crire,
X(t) a0 + a1 X(t 1) + + ap X(t p),

(1.1.18)

il sagit dun processus Auto-Rgressif dordre p, AR(p). En revanche, si C(h) 0


pour tout h, alors la modlisation par un processus AR nest pas tout fait adapte
puisque nous regardons uniquement comme variable explicative le retard en t 1
du cours alors que lautocorrlation nous indique que les cours t et t 1 sont
dcorrls. Idem si nous souhaitons modliser les rendements par un rseau de
neurones, un arbre de dcision ou autre (voir section (3.1) et (3.3)), il nest pas
ncessaire de prendre les retards des rendements comme variable explicative.
Dfinition 1.1.2 (Dpendance de long terme). La srie temporelle Y possde
une dpendance de long terme si sa fonction dautocorrlation diminue en suivant
une loi puissance de lag h,
C(h)

L(h)
h12d

1
0<d< ,
2

o L est une fonction variant lentement linfinie, limt


a > 0.

(1.1.19)
L(at)
L(t)

= 1 pour tout

22

Trading Haute Frquence

Inversement, on parle de dpendance de court terme si la fonction dautocorrlation dcrot de manire gomtrique,
K > 0, c (0, 1), |C(h)| Kch .

(1.1.20)

1.0

1.0

Les tudes empiriques montrent largement que les rendements ne prsentent


pas dautocorrlation significative quel-que soit le lag, cela est visible sur la figure
(1.3) des rendements du S&P 500. Les amats de points, i.e. les clusters, nous indiquent quune forte de variation est gnralement suivie dune forte variation,
mais pas ncessairement dans le mme sens, do lobservation de clusters. Toujours pour les mmes raisons, comme les fortes variations sont suivies de fortes
variations, nous devrions observer un certaine persistance dans les rendements au
carr, i.e. la volatilit, et bien quelle ne soit pas trace ici, lautocorrlation entre
les rendements en valeurs absolues est encore plus plus marque. Nous prsentons
lautocorrlation des rendements et de la volatilit de notre rfrence sur la figure
(1.13)

ACF

0.6

0.6

0.4

0.4

ACF

0.8

0.8

0.2


0.2

20

40

60
lag

80

100

20

0.0

0.0

40

60

80

100

lag

Figure 1.7 autocorrlation des log-rendements du S&P 500 du 13/07/1998 au 16/03/2012,


gauche et de la volatilit droite. Le trait plein rouge est le fit obtenu, pour les rendements,
y = 0, pour la volatilit, hb , b > 0. Dans ce cas, les rendements ne sont donc pas autocorrls,
en revanche la volatilit si, on parle de dpendance de long terme.

En plus de lautocorrlation entre les mmes observations (rendements avec


retard des rendements, volatilit avec retard de la volatilit), nous pouvons nous
23

Trading Haute Frquence

intresser la corrlation entre les rendements la date t et la volatilit variant


de T T .
Dfinition 1.1.3 (Effet de levier). Leffet de levier (dans cette section) est
la corrlation entre les rendements date fix et la volatilit diffrents instants,
L(h) = Cor( X(t), 2 X(t + h)).

(1.1.21)

Sur certains actifs, dont les indices financiers comme le S&P 500, nous observons que la corrlation entre les rendements et la volatilit passe est en moyenne
nulle. Si la corrlation tait positive ou ngative, un simple arbitrage en fonction
de la volatilit connue serait alors possible, il est donc naturel de ne rien observer.
En revanche, la corrlation avec la volatilit future est clairement ngative et remonte en suivant une loi exponentielle. Ce phnomne peut sinterprter comme
un effet de panique, plus les rendements senfoncent dans le rouge, plus la volatilit
linstant suivant va tre importante (1.8).

0.10

0.05

0.00

0.05

0.15

200

100

100

200

tau

Figure 1.8 Effet de levier, S&P 500 du 13/07/1998 au 16/03/2012.

24

Trading Haute Frquence

Pour finir cette section, nous pouvons nous poser la question de comment se
comportent les moments empiriques des rendements diffrents lags,
m(q, ) = E[| X(t)|q ] = E[|X(t + ) X(t)|q ].

(1.1.22)

Comme nous le montrons sur la figure (1.9), les moments semblent se comporter
de la manire,
m(q, ) Cq (q) ,

(1.1.23)

o Cq est simplement le moment dordre q au lag 1 et (q) est le spectre (multi)


fractal. Nous reviendrons sur ce point dans la section suivante, sur la modlisation
des donnes financires avec le modle de marche alatoire multifractale.

1e03
1e06

q=10

1e12

1e09

Moments Empiriques

1e+00

q=0.5

10

20

50

100

tau

Figure 1.9 Spectre fractal, S&P 500 du 13/07/1998 au 16/03/2012.

Les moments, sont une fonction du lag utilis, on parle dinvariance dchelle.
Quelque soit le zoom que nous prenons sur lobservation des donnes, nous avons
la mme distribution, par rapport , ce type de particularit est appel une
structure fractale ou multifractale, cela dpend de lexpression de lexposant (q).
25

Trading Haute Frquence

Comment pouvons-nous interprter ce comportement ? Les marchs financiers


sont htrognes, cest--dire que les agents ne sont pas tous informs de la mme
manire au mme moment, en contradiction avec lhypothse dE. Fama des marchs financiers efficients. De plus, tous les agents nont pas le mme comportement,
certains ont des profils dinvestissement de long terme, dautres de cour terme, les
dcisions prises sont donc bases sur des critres, sur des horizons diffrents. La
distribution des rendements change donc avec lchelle de temps, la frquence, et
se rapprochera dune loi normale pour de plus grands intervalles.
Pour bien illustrer cette proprit dinvariance dchelle, il suffit de zoomer
au fur et mesure sur le cours dun actif financier et voir si les comportements
semblent les mmes, figure (1.10).

Figure 1.10 Cours du S&P 500 du 11/05/2012, 18 :18 :40, au 26/02/2012, sampling 5
secondes, lintrieur, zoom du 11/05/2012 au 15/05/2012, 19 :11 :55, en rouge et en vert de
18 :18 :40 19 :41 :55 le 11/05/2012.

Pour un traitement plus complet des faits styliss, on pourra regarder par
exemple [MaSt07], [GoPlAmMeSt99], [BoPo04], [Vo05] pour une revue densemble,
26

Trading Haute Frquence

et [GeDaMuOlPi01] ou [ChMuPaAd11] pour des donnes hautes frquences.

1.2

Carnet dOrdres

Sur les marchs financiers, un carnet dordres rpertorie lensemble de loffre et


de la demande de tous les agents. Ce processus est dit de double enchre continue.

Figure 1.11 Carnet dordres du contrat future E-mini le 02/08/2011 vers 17h15.

Un ordre au march est un ordre dachat/vente pour une certaine quantit dun
actif financier au meilleur prix possible dans le carnet dordre. Quand un ordre au
march apparat, il est match au meilleur prix disponible dans le carnet dordre
et la transaction seffectue. La priorit des ordres vient de lanciennet de ceux
ci. La quantit disponible dans le carnet sajuste en fonction. Il est possible que
lordre soit effectu en plusieurs fois si le volume donn par la contrepartie est de
27

Trading Haute Frquence

taille infrieure.
Un ordre limite est un ordre dachat/vente pour une certaine quantit et pour
un prix bien fix. Il est soit excut si une contrepartie est prsente dans le carnet, soit, il est annul. Cest le prix maximum (minimum) auquel lagent est prt
acheter (vendre) un volume prcis. Il existe plusieurs types dordre limite, les
options possibles sont immediate or cancel (IOC) et fill or kill (FOK). Un ordre
IOC est excut instantanment, soit compltement, soit partiellement, soit pas
du tout. Le volume demand qui na pas pu tre excut au prix limite voulu ou
un prix plus avantageux est immdiatement annul. Un ordre FOK est un ordre
IOC mais est excut si et seulement si tout le volume demand est disponible.
Dun autre cot nous avons lordre good for a day (GFD), qui comme son
nom lindique, est retir du carnet la clture du march sil na pas trouv de
contrepartie. Les ordres good till canceled (GTC) et good till date (GTD) sont
galement proposs. Un ordre GTC na pas de dure de validit, nanmoins, le
broker peut dcider de le retirer du carnet, ou pour la cas dune option, si elle
arrive maturit, lordre sera annul. Lordre GTD permet de rentrer une date
prdfinie de cancellation.
Le carnet dordres est une capture de ltat du cours dun actif un instant
donn. Il indique les ordres limites offerts et demands. Le ask price est le plus
petit montant dans le carnet auquel les agents sont prts vendre, il sagit du
prix auquel un ordre march dachat est excut. A contrario, le bid price est le
plus grand montant dans le carnet auquel les agents sont prts acheter, il sagit
du prix auquel un ordre march de vente est excut. Chaque nouvel ordre trait
va donc se situer lextrieur de cet intervalle, sinon, si par exemple un ordre
dachat suprieur au bid price est pass, il devient le bid price, et donc le bid price
augmente. Le last price est le dernier ordre trait, il se situe donc lintrieur
de lintervalle (ferm) du ask et bid price. Les prix ne sont pas cots de manire
continue dans le sens o seulement un multiple du tick est possible,
p(t) = k ptick ,

(1.2.1)

o p est le prix de lactif, k N et ptick la valeur du tick pour lactif correspondant,


par exemple, le future E-mini S&P 500 a un tick de 0.25, les prix peuvent donc
varier uniquement de 0.25 en 0.25. Le taux de change EUR/USD, comme une
bonne partie des instruments issus du forex, a un tick de 0.0001, le 24 juillet 2012
vers 18h il est 1.2089, dans les prochaines secondes il sera peut tre 1.2088 ou
28

Trading Haute Frquence

1.2090, mais en aucun cas 1.20895 par exemple. La diffrence entre le bid price
et le ask price est le spread,
s = pask pbid ,

(1.2.2)

il est ncessairement positif puisque le ask price, donc le prix dachat est toujours
plus lev que le prix de vente, le bid price, si linverse se produisait, les arbitrageur et market makeur interviendraient immdiatement sur le march pour faire la
correction (notons que le cas s = 0 est galement non viable puisque ds que s = 0,
les ordres au march vont se matcher et le spread va redevenir positif). Cest une
quantit usuellement regarde pour dterminer si lactif en question est liquide ou
non. Plus le spread se resserre et tend vers 0, plus il y a de liquidit, un actif trs
liquide a en moyenne un spread de 1 tick. Enfin, notons que le spread est inclure
dans les cots de transactions, les fees. Disons que nous avons un spread constant
gal 1 tick et que le ask price vaut x$, nous achetons donc x$ (nous avons
achet au march), si nous revendons tout de suite, sans attendre de variations,
nous revendons au bid price, i.e. x$1tick, multipli par le capital investi, K, nous
avons perdu K 1tick $, auquel on rajoute bien sur les frais de passage dordres.
Avec le broker Interactive Borker, les frais sont de 2.5$ par ordre si le montant
chang sur le mois reprsente une valeure infrieure 109 $, 1.5 105 K x si
les transactions effectues en 1 mois ont une valeur comprise entre 109 $ et 2 109 $
et 1 105 K x si le montant excde 2 109 $. Chaque ordre ayant un cot
minimum de 2.5$.
Un autre type dordre est lordre iceberg, il est caractris par un certain degr de discrtion et est particulirement utile pour placer des volumes importants.
Nous avons trois paramtres dfinir, le prix limite, le volume total et le peak volume. Le peak volume est la partie visible de liceberg dans le carnet dordre, chaque
fois que le peak volume sera compltement excut, un nouveau peak volume va
apparatre dans le carnet si le volume cach na pas encore t totalement absorb.
Revenons un peu sur la priorit dexcution des ordres, il sagit dune priorit
temps-prix, il est difficile de dire lequel des deux passe devant lautre en fait.
Supposons quau prix limite p` nous ayons dans le carnet un volume v ` en attente,
alors si lon pose un nouvel ordre de volume k la mme limite, le volume devient
v ` + k, pour tre excut, nous devons attendre que la quantit v ` soit absorbe,
puis ce sera notre tour, il sagit de la priorit temporelle, la rgle de FIFO (first
in, first out).
29

Trading Haute Frquence

En plus de cette priorit, nous avons la priorit des prix, si nous avons deux
prix bid en carnet, lun p` $ et lautre p` $ + 1tick, nimporte quel agent va
prfrer vendre au prix p` $ + 1tick plutt qu p` . Si nous plaons un ordre dachat
p` (un ordre plac donc cot bid en carnet), il faut dabord que le bid price soit
entirement excut, puis le volume correspondant pbid 1tick, puis, etc. jusqu
ce que p` soit le nouvel ordre march, le nouveau ask price. Dans tous les cas, si
un nouvel ordre limite est plac lintrieur du spread, il sera le meilleur prix (que
ce soit lachat ou la vente) il a donc la priorit de prix et de temps.
Cest donc ce flux dordres qui forme les prix. Le carnet dordres est une des
informations les plus importantes fournies par le march puisquil nous indique
quel prix les agents sont prts excuter leurs deal. Cest une vision microscopique de lactif. Un trader discrtionnaire devra faire attention ne pas avoir
un ordre limite trop lv (pour la vente) au risque de ne pas trouver dacheteur.
Inversement, sil propose un montant trop bas, il peut passer cot dun gain
potentiel, mais minimise le risque de ne pas tre excut.
Lvolution du carnet dordres nous indique le degr dexcitation de lactif
chaque instant : la frquence darrive des ordres, les volumes et les prix proposs
sont autant dindications. Cest cette information que nous allons essayer dextraire, de modliser et, den tirer un profit dans la suite de ce cours.
On reprsente de manire schmatique les diffrents ordres, march, limite,
cancel, et leurs volutions sur la figure (1.12)

30

45

45

Trading Haute Frquence

30

USD

35

40

Market Order

15

20

25

30
15

20

25

USD

35

40

Limit Order

100

50

50

100

100

50

50

100

50

100

45
30

35

40

Limit Order

20
15

15

20

25

30

USD

35

40

Cancel Order

25

USD

0
Volume

45

Volume

100

50

50

Volume

100

100

50

0
Volume

Figure 1.12 Reprsentation des diffrents type dordre dans un carnet dordres, ordre
march, limite et cancel.

1.3

Microstructure

A trs haute frquence, ce qui dans cette partie correspond la formation


des prix, nous pouvons observer des caractristiques trs intressantes, qui comme
nous le verrons, sont trs simples et intuitives.
Nous avons dj (un peu) vu le comportement de la volatilit, trs haute
frquence, ce nest pas tout fait identique. A trs haute frquence, la volatilit
explose, les variations ntant pas continues mais arrivant de manire ponctuelle,
nous avons ncessairement une volatilit qui augmente avec la frquence. Ce ph31

Trading Haute Frquence

nomne est usuellement appel le signature plot. Formellement, le signature plot


est dfini par la quantit,
/ c
1 bTX
( X(s))2 .
V( ) =
T s=0

(1.3.1)

0.0195

0.010

0.0200

0.011

0.0205

0.0210

0.012

0.0215

0.013

Plus le lag va tre lev, plus cette quantit va dcroitre en suivant une loi puissance cause de la discontuinit des fluctuations boursires trs haute frquence.
Inversement, plus les fluctuations sont observes des chelles plus lointaines, ce
qui conduit voir des variations plus lisses, plus la volatilit va dcrotre jusqu
une valeur dquilibre. Nous avons prsent cette caractristique sur la figure ??.

20

40

60
tau

80

100

20

40

60

80

100

tau

Figure 1.13 Signature plot sur lEUR/USD (haut), lEUR/GBP (bas), les donnes partent
de lchelle tick jusqua 100 secondes, du 30/01/12 00 :00 :00 jusqu 22h00 le mme jour, soit
79200 secondes. En rouge le meilleur fit en loi puissance obtenu.

De la mme manire que pour le signature plot, la corrlation entre deux actifs
va voluer selon la frquence laquelle nous allons nous placer. Les ordres dachats
et de ventes narrivent pas aux mmes moments, il est trs rare de pouvoir observer
deux ordres sur les actifs Apple et IBM arriver exactement aux mmes moments,
la mme milliseconde. Ainsi, mme si nous observons deux actifs extrmement
liquides, il sera compliqu de voir une relation se former trs haute frquence.
32

Trading Haute Frquence

Plus la frquence va diminuer, plus la corrlation va se former et va arriver son


point dquilibre. Il sagit de leffet Epps et est quantifi par,
Co(X1 , X2 )
1,2 ( ) = q
,
V1 ( )V2 ( )

(1.3.2)

o Vi ( ) est la variation de lactif i donne (1.3.1) et la covariation empirique est


donne par,
/ c
1 bTX
X1 (s) X2 (s).
Co(X1 , X2 ) =
T s=0

(1.3.3)

0.00

0.05

0.10

0.15

Nous prsentons sur la figure (1.14) ce phnomne.

20

40

60

80

100

tau

Figure 1.14 Effet Epps sur lEUR/USD et lEUR/GBP, les donnes partent de lchelle tick
jusqua 100 secondes, du 30/01/12 00 :00 :00 jusqu 22h00 le mme jour, soit 79200 secondes.

La dernire proprit de ce type que nous pouvons citer est le lead-lag effect.
Quel que soit le sampling sur lequel on se place, mais plus particulirement trs
haute frquence, nous pouvons exhiber une paire dactif (X1 , X2 ) dont lun des
deux actifs, le lagger, ou suiveur, semble reproduire en partie les variations de
lautre (le leader ou meneur) aprs un certain lag.
Une proprit sur laquelle nous avons naturellement envie de nous pencher
pour avoir une ide des variations est la duration, cest--dire le temps pass entre
33

Trading Haute Frquence

deux changements de prix. Schmatiquement, si nous arrivons bien modliser le


temps quil faut attendre pour observer un nouvel ordre, nous avons une ide de
comment placer des ordres limites pour maximiser ses chances dtre executes.
Le temps dattente d entre deux ordres conscutifs est simplement donn par,
dk = tk+1 tk ,

(1.3.4)

1e+00

1e+00

o les ti sont les instants darrive des ordres. Cest prcisment cette quantit
qui nous produit le signature plot et leffet de Epps. Nous avons prsent la distribution cumule des durations pour les ordres bid et ask de lEUR/USD et de
lEUR/GBP que la figure (1.3) ainsi que les fit obtenus avec la loi gaussienne et la
loi de Pareto (loi puissance), f x , > 0. Pour dterminer lexposant de la
P
d(i)
loi puissance, nous pouvons par exemple utilis lestimateur de Hill,
= k1 ki=1 d(k)
o d(1) d(T ) est la statistique dordre des d1 , , dT et k et k est un paramtre choisir pour obtenir la meilleure approximation des queues paisses.

1e01

1e01

1e04

10

20

1e02

50

1e03

P(D>x)

1e04

1e02

1e03

P(D>x)

100

10

20

50

100

Figure 1.15 Probabilit cumule des durations pour lEUR/USD (gauche) et lEUR/GBP
(droite), en rouge les ask prices, et noir les bid prices. Les pointills sont la prvision par la loi
gaussienne, les croix par la loi puissance.

Lautocorrelation est prsent sur (1.16)


34

Trading Haute Frquence

0.15

0.10

ACF

0.00

0.05

20

40

60

80

100

lag

Figure 1.16 Autocorrelation


Enfin, sur la figure (1.17), nous prsentons le plot des durations en fonction
des volumes changs.

Figure 1.17 Variation du volume en fonction des durations. Les variations sont donnes en
Million dUSD. A gauche lEUR/USD, droite, lEUR/GBP .
Nous renvoyons [Ha12] pour une tude appronfondie des durations et [Le12]
pour une tude sur la microstructure du march et ses implications, et [BoMePo02],
35

Trading Haute Frquence

[MoViMoGeFaVaLiMa09], [ChMuPaAd11] pour le carnet dordre et les impacts de


march.

36

Chapitre 2
Modlisation
La premire question se poser est comment dcomposer le cours dun actif
financier en plusieurs lments susceptibles dtre chacun modlis.
Un cours boursier suit des tendances (des trends) en fonction des diffrents fondamentaux du sous-jacent, des diffrentes croyances des agents, des investisseurs,
ne faisons pas lamalgame dans linterprtation entre tendance et vraie valeur.
La seconde composante fondamentale est la volatilit. La volatilit, comme nous
lavons vu dans la partie prcdente, reprsente le degr de dispersion autour du
trend, en dautre terme, la temprature du march. Plus la volatilit est importante, plus les fluctuations vont se faire de manire abrupte. Il sagit dans un certain
sens dune mesure de risque, plus la volatilit est importante, plus les cours varient
rapidement, plus les agents sont susceptibles de perdre leur capital.
Tendance et volatilit sont les deux principales composantes dun cours boursier, il en existe dautre bien entendu, on peut par exemple penser la saisonnalit,
celle intraday est particulirement visible, les variations et les volumes changs
sont beaucoup plus importants au bord de la journe, louverture et la fermeture, quen plein milieu de la journe. On peut encore penser au saut, que lon
peut rajouter aux composantes de saisonnalit, de tendance et de volatilit pour
prendre en compte, comme son nom lindique, les sauts dans les cours boursiers,
nanmoins, comme nous le verrons, il existe des modles permettant dintgrer ces
sauts diffremment, sans rajout, mais en changeant de classe de processus.
Notons (X(t); t 0) le cours dun actif financier, Louis Bachelier dans sa thse
Thorie de la Spculation, [Ba00] propose de modliser le cours des actifs financiers
par un mouvement brownien avec tendance,
X(t) = X(0) + t + B(t),
37

(2.0.1)

Trading Haute Frquence

t est la tendance du cours (le drift), la volatilit et B est un mouvement brownien standard. Nous retrouvons bien nos deux principales composantes. Samuelson
raffine cette modlisation en ne lappliquant non plus aux cours eux-mmes, mais
aux log-rendements financiers,
dX(t) = X(t) (dt + dB(t)) .

(2.0.2)

Dans ce chapitre, nous allons principalement nous occuper de la partie dB(t)


plus que des autres. Une possibilit de modlisation et prvision de la tendance ne
sera pas prsente dans cette partie, mais dans la partie sur larbitrage statistique
car certains outils mathmatiques vont se croiser. Si lon crit le modle de manire
simplifie nous avons,
X(t) = (t) + (t).

(2.0.3)

Concrtement, ce qui va nous intresser principalement ici est le second terme,


cest--dire (t).

2.1

Modlisation A Partir de lHistorique

Avant de prsenter des modles sophistiqus de prvision de volatilit, nous


allons nous intresser des modles beaucoup plus simples, moins sexy, mais
qui finalement pourraient donner de trs bons rsultats en terme de prvision de
variance.
Sans information particulire, lide la plus simple est de supposer que la variance est une marche alatoire, et la prvision serait,

(t + 1) = (t).

(2.1.1)

Bien sr, nous pourrions supposer quelle ne dpend pas seulement de sa dernire
valeur, mais dun historique plus lointain,
(t) + (t 1) + + (t N )
.
(2.1.2)
N
On peut aisment se dire que les dernires valeurs ont plus dimportance que les
valeurs plus loignes, la moyenne mobile prcdente se drive alors en moyenne
mobile exponentielle (EWMA),

(t + 1) =

38

Trading Haute Frquence

(t + 1) = (1 )

N
X

i (t i), (0, 1).

(2.1.3)

i=0

Le terme (1 ) provient du fait que 1 + + 2 + = (1 )1 . Le terme est un


terme de persistence. Ce modle est trs connu, il fait parti de la suite RiskMetrics
de JP Morgan. Un moyen de mieux sadapter aux ractions de la volatilit avec
son historique est de faire une rgression linaire,

(t + 1) = + 0 (t) + 1 (t 1) + 2 (t 2) + .

(2.1.4)

Intuitivement, cette dernire manire destimer la volatilit future en ne regardant


que son pass devrait donner de meilleurs rsultats car elle est plus adaptative.
Nanmoins, le risque principal est de faire sur-apprendre le modle lors de la dtermination des poids (nous reviendrons sur le problme du sur-apprentissage quand
nous aborderons lapprentissage statistique).

2.2

Processus ARCH et Drives

Comme nous avons pu le voir dans les graphes prcdents, une particularit
courante et importante des sries financires est lobservation de clusters, i.e. un
amas de points concentrs. Intuitivement, nous pouvons interprter cela par larrive de nouvelles sur le march, la raction de ces informations est dacheter ou
vendre frntiquement, et quand la nouvelle a t digre, le march revient la
normale, son niveau de volatilit avant la nouvelle. Le cours de lactif va donc
prsenter une forte baisse ou hausse, empiriquement principalement des baisses (la
finance comportementale peut apporter des rponses ce phnomne), il sagit de
lassymtrie des sries, la kurtosis. Cette particularit est appelle heteroskacadict,
chaque variation est corrle la suivante, on peut rsumer cela grossirement par
un effet de mimtisme.

2.2.1

ARCH

La premire solution est apporte par Engle [En82] avec le modle ARCH, AutoRegressive Conditional Heteroscedasticity, partant de lobservation de clusters
dans les rendements et des variations typiques de la volatilit, lide principale
consiste regarder la variance conditionnelle au lieu de la variance non conditionnelle.

39

Trading Haute Frquence

La modlisation ARCH prend la forme,


(t) = z(t)h1/2 (t),

(2.2.1)

o z(t) est un bruit blanc faible centr (nous allons le supposer gaussien, mais ce
nest pas un impratif, dans la pratique, il faut mieux prendre une distribution de
Student ou GED par exemple). h(t), la variance (conditionnelle) du processus qui
elle-mme est un processus autorgressif,
h(t) = 0 + 1 2 (t 1) + + q 2 (t q),

(2.2.2)

la variance est ainsi dcrite comme fonction du carr du cours de lactif, soit
dterministe conditionnellement lhistorique H(t 1) = {(t 1), , (t q)}.
La modlisation ARCH et les nombreux drivs qui vont suivrent, ne permettent
donc en rien de prvoir le cours dun actif linstant suivant, uniquement sa
volatilit. Par construction, et sous lhypothse de normalit de z, nous pouvons
rcrire le modle,
(t)|H(t 1) N (0, h(t))
h(t) = 0 + 1 2 (t 1) + + q 2 (t q).

(2.2.3)

La premire proprit intressante remarquer est que


E[(t)|H(t 1)] = h1/2 (t)E[z(t)|H(t 1)] = 0.

(2.2.4)

Par la rgle des esprances itres, on trouve galement que E[(t)] = 0. La variance
conditionnelle de (t) est quant elle donne par,
Var((t)|H(t 1)) = E[((t) E[(t)|H(t 1)])2 |H(t 1)]
= E[2 (t)|H(t 1)]
= h(t) = 0 +

p
X

(2.2.5)

i (t i).

i=1

La variance conditionnelle volue donc selon un processus auto-rgressif. Aprs


quelques calculs simples on peut galement montrer que 2 > 0 (leptokurtik) et
que Cov((t), (t + h)|H(t 1)) = 0, donc cette reprsentation a le mrite de
vrifier les caractristiques de queues paisses et dabsence dautocorrlation des
rendements financiers.

40

Trading Haute Frquence

Pour pouvoir appliquer cette modlisation par exemple, pour prvoir, la volatilit dun actif financier, nous avons besoin destimer les paramtres du modle,
ce que lon appelle la calibration. Une des mthodes les plus courantes est celle du
maximum de vraisemblance, en notant lensemble des paramtres du modle,
= (0 , 1 , , p ) nous avons sous lhypothse de normalit de z,
L((1), , (T ); ) =

T
Y

`((t))

t=1
T
Y

1 2 (t)

q
.
exp
=
2 h(t)
2h(t)
t=1
1

(2.2.6)

La log vraisemblance est alors,

log L((1), , (T ); ) =

T
X
t=1

1 2 (t)
log( 2h(t))
2 h(t)
q

T
T
T
1X
1X
2 (t)
= log(2)
(log(h(t)))
.
2
2 t=1
2 t=1 h(t)
(2.2.7)
Les estimations
i , i = 1, , p + 1 sont donnes par maximisation de (2.2.7),

= arg min{log L((1), , (T ); )},

(2.2.8)

La maximisation se fait classiquement par un algorithme doptimisation type


BFGS (voir appendix). En dehors de la faiblesse du modle reflter correctement les faits styliliss, le choix de lordre p nest pas trivial. La mthode la plus
courante est de minimiser lAIC (Akaike Information Criterion),
AIC = 2(p + 1) 2 log L.

(2.2.9)

Dans la pratique, ce nest pas aussi vident et le critre AIC amne bien souvent
prendre un nombre de lag trop lev. Le modle GARCH(p, q) Generalized AutoRegressive Conditional Heteroskedasticity propos par Bollerslev en 1986 [Bo86] a,
entre autre, le mrite de pallier ce problme, il rend galement le modle plus raliste. Les modles GARCH sont trs utiliss en finance et ont inspir normment
de drivs plus sophistiqus, nous en verrons quelques uns.

41

Trading Haute Frquence

2.2.2

GARCH

Comme son nom lindique, il sagit dune extension du modle ARCH(p), au lieu
de ne regarder que les retards des carrs du processus, nous regardons galement
les retards de la volatilit elle-mme,
(t) = z(t)h1/2 (t), z(t) BB(0, z2 )
h(t) = 0 +

p
X

i (t i) +

i=1

q
X

j h(t j),

(2.2.10)

j=1

o 0 > 0, i 0 et i 0. La reprsentation GARCH admet une unique solution


stationnaire si
p
X

i +

i=1

q
X

j < 1.

(2.2.11)

j=1

Lide principale est que h(t), la variance conditionnelle du processus (t) sachant H(t 1) a une structure autorgressive et est corrle positivement aux rendements aux carrs 2 (tk). Cela permet davoir une volatilit (variance conditionnelle) persistante, de grandes valeurs de 2 (t) sont bien souvent suivies de grandes
valeurs de 2 (t + k).
Les deux premiers moments conditionnels sont donns par,
E((t)|H(t 1)) = 0,

E(2 (t)|H(t 1)) = h(t).

(2.2.12)

On en dduit directement la variance non-conditionnelle du processus,


Var((t)) = E(2 (t)) E((t))2
= E(E(2 (t)|H(t 1))) E(E((t)|H(t 1)))2
= E(h(t))
= 0 +

p
X

i E(2 (t i)) +

i=1

q
X

j E(h(t j))

(2.2.13)

j=1

0
.
=
Pp
P
1 i=1 i qj=1 j
On comprend maintenant la condition de stationnarit (2.2.11), si elle nest pas
respecte, la variance du processus explose. Si nous regardons la moyenne simple
du processus,
42

Trading Haute Frquence

E((t)) = E(z(t)h1/2 (t))


= E[E(z(t)h1/2 (t)|H(t 1))]
= E[E(z(t)|H(t 1))h1/2 (t)]

(2.2.14)

= E[E(z(t))h1/2 (t)] = 0.
Montrons maintenant que les rendements ne sont pas corrls entre eux. Comme
Cov(X, Y ) = EXY EXEY , daprs (2.2.14) il suffit de montrer que E(t)(t
k) = 0, 0 < k < t,
E((t)(t k)) = E((t)h1/2 (t k)z(t k))
= E[E((t)h1/2 (t k)z(t k)|H(t 1))]

(2.2.15)

= E[(t)h1/2 (t k)E(z(t k)|H(t 1))] = 0.


Pour le cas particulier dun GARCH(1,1), paramtrisation classiquement utilise en finance, qui nous vite donc davoir dterminer les ordres p et q, par
exemple laide du critre dAkaike, la kurtosis de (t) est de la forme,
2 =

1 (1 + 1 )2
2 (z(t)).
1 (1 + 1 )2 12 (E(z(t)4 ) 1)

(2.2.16)

Nous navons pas rcrit la vraisemblance du modle, il sagit exactement de


la mme que celle dun processus ARCH (2.2.7), bien entendu la forme de la
volatilit conditionnelle h1/2 (t) est celle dun GARCH et non plus dun ARCH,
et le jeu de paramtre estimer nest plus uniquement {0 , 1 , , p } mais
{0 , 1 , , p , 1 , , q }.

Avant de raffiner les modles, rsumons cette premire partie sur les modles
GARCH pour bien fixer les choses. En gardant la notation X(t) pour les logrendements financiers, la modlisation GARCH(p, q) est,
X(t) = (t) + (t)
(t) = h1/2 (t)z(t),
h(t) = 0 +

p
X
i=1

z(t) BB(0, z2 )

i 2 (t i) +

q
X

(2.2.17)

j h(t j).

j=1

43

Trading Haute Frquence

(t) est appel le terme dinnovation, ou derreur. Une attention toute particulire
doit tre apporte au terme (t), il faut bien tre conscient que la modlisation
GARCH est purement probabilistique et ne prend pas en compte de variables
exognes, on peut essayer de prdire en partie les rendements en fonction du rendement de march X m , modle CAPM (nous reviendrons sur ce point par la
suite), dun ensemble de variables explicatives X, rgression linaire multiple, rseau de neurones, etc. (nous reviendrons galement sur ce point par la suite), ou
enfin simplement des retards des rendements, par exemple en les modlisant par un
processus ARMA, modle ARMA-GARCH (nous ne reviendrons pas sur ce point
par la suite), etc. Soit, respectivement,
X(t) = X m (t) + (t)
X(t) = ( X) + (t), : Rd R
X(t) = (t) +

p
X

i X(t i) +

i=1

q
X

j (t j) + (t),

(t) BB(0, 2 ).

j=1

(2.2.18)
Le choix de la distribution du bruit blanc z(t) pour la reprsentation ARCH est
galement crucial, on pourra le choisir gaussien, student, GED, etc. La calibration
des paramtres par maximum de vraisemblance sera naturellement diffrente pour
chacune des lois choisies/testes. Pour le choix GED, rappelons que la densit est,
f (x) =
avec =

x
exp 12 x

2(1+1/) (1/)

, > 0.

(2.2.19)

2(2/) (1/)/(3/) et () la fonction gamma dfinie par,


(x) =

y x1 ey dy.

(2.2.20)

Le paramtre est une mesure de lpaisseur des queues de distributions. Le cas


particulier = 2 correspond au cas gaussien et si < 2, la distribution admet
des queues plus paisses que la loi gaussienne. La fonction de vraisemblance du
processus GARCH devient alors,
log L((1), , (T ); ) =T (log() log() (1 + 1/) log(2)
!/2

T
1X
1X
2 (t)
log((1/)))
T log(h(t))
.
2 i=1
2 t=1 2 h(t)
(2.2.21)

44

Trading Haute Frquence

Lun des inconvnients de ce type de processus et quen pratique, les paramtres


i , i sont peu stables dans le temps, il sagit dun modle discret. Un dfaut du
modle GARCH est que la rponse de la variance conditionnelle aux innovations
est linaire. Seulement lamplitude du shock est prise en compte pour dterminer
la volatilit, pas quil soit positif ou ngatif, en effet, comme h(t) est dtermin
en fonction du rendement au carr, 2 (t), il est clair que les effets de signe ne sont
pas pris en compte.
Notons enfin que les queues de distribution produites sont trop paisses par rapport la ralit observe des marchs financiers. Enfin, les corrlations volatilit
/ volatilit dcroissent exponentiellement et non en loi puissance, donc beaucoup
trop rapidement.
Le modle IGARCH, I pour integrated correspond au modle GARCH(p, q)
(2.2.10) non stationnaire, violant ainsi la condition (2.2.11) avec,
p
X
i=1

i +

q
X

j = 1.

(2.2.22)

j=1

Prenons le cas dun IGARCH(1,1), on a donc 1 + 1 = 1, la reprsentation


est alors,
h(t) = 0 + 1 (t 1)2 + (1 1 )h(t 1) = 0 + h(t 1) + 1 ((t 1)2 h(t 1)),
(2.2.23)
Lquation (2.2.23) nous donne donc un comportement persistant de la variance
conditionnelle, elle ne dcrot pas de manire abrupte.

2.2.3

Asymtrie

Passons maintenant aux modles asymtriques. Le modle EGARCH, E pour


Exponential dvelopp par Nelson en 91 [Ne91] autorise une forme dasymtrie qui
dpend non seulement du signe positif ou ngatif de linnovation, mais aussi de
lamplitude du chock,
log h(t) = 0 +

q
X
i=1

i g(z(t i)) +

p
X

j log h(t j),

(2.2.24)

j=1

45

Trading Haute Frquence

avec z(t) un bruit blanc et la fonction g est telle que,


g(z(t i)) = z(t i) + (|z(t i)| E|z(t i)|).

(2.2.25)

Leffet de signe est donn par le premier terme de g, z(t i), le second terme,
(|z(t i)| E|z(t i)|) nous donne lamplitude du chock.
Si nous supposons que la modlisation approprie est une EGARCH(1,1) et que
(t) sont i.i.d. de loi normale centre rduite, en notant lensemble des paramtres
estimer, la log-vraisemblance est alors,
T
T
1X
1X
2 (t)
T
log(h(t))
.
log L((1), , (T ); ) = log(2)
2
2 t=1
2 t=1 h(t)

(2.2.26)

Bien entendu, elle ne change pas de prcdemment, il peut tre juste bon de la
rappeler encore une fois. Une reprsentation alternative propose par Bollerlev et
al. 94 [BoEnNe94], pour limpact des nouvelles est,
1 |z(t)|
1 |z(t)|
1
+ h0 (t)

E
.
g(z(t i)) = 20
1 + 2 |z(t)|
1 + 2 |z(t)|
1 + 2 |z(t)|
(2.2.27)
Les paramtres 0 et 0 nous permettent davoir une variance conditionnelle de
log 2 (t) et ca corrlation avec zt variant dordre 2 (t).
"

!#

Afin de prendre en compte la variation induite dans la variance conditionnelle


dun nouvel vnement nous pouvons simplement introduire une indicatrice, il
sagit du modle GJR-GARCH, GJR pour le nom des auteurs, Glosten, Jagannathan et Runkle en 93, [GlJaRu93]. La variance conditionnelle scrit alors,

h(t) = 0 +

q
X

(i (t i) + i 1(ti)<0 (t i) ) +

i=1

p
X

i h(t i).

(2.2.28)

i=1

Ecrivons le cas (0,1),


h(t) = 0 + (1 + 1 1(t1)<0 )2 (t 1),

(2.2.29)

nous voyons ainsi que nous navons que deux rgimes possibles, soit uniquement
1 , soit 1 + 1 , et cela de manire brutale, le changement de rgime se faisant
46

Trading Haute Frquence

un instant bien prcis. Nous pouvons trs bien nous dire que les changements se
font de manire plus lisses et crire,

h(t) = 0 +

q
X

(1 g((ti))+2 (1g((ti)))) (ti)+

i=1

p
X

i h(ti), (2.2.30)

i=1

avec > 0 et la fonction g une sigmode donne par,


g(x) =

1
,
1 + ex

(2.2.31)

il sagit du modle Logistic Smooth Transition GARCH de Gonzales-Rivera (1998)


[Go98].

2.2.4

Mmoire Longue

Le modle FIGARCH, FI pour fractionally integrated propos par Baillie, Bollerslev et Mikkelsen (1996) [BaBoMi96], est une extension du modle GARCH
permettant dobtenir une mmoire longue dans le processus de volatilit. La dcroissance exponentielle de lautocorrlation des modles prcdents se rvle trop
rapide pour se conformer aux donnes de marchs, ils ne sont pas vritablement
adapts. Le processus FIGARCH admet quant lui une dcroissance plus lente,
hyperbolique. Les quations du processus FIGARCH(p, d, q) sont donnes par,
(t) = h1/2 (t)z(t)
(L)(1 L)d 2 (t) = + [1 (L)](2 (t) h(t)),

(2.2.32)

avec L loprateur de retard et,


(L) = [1 (L) (L)](1 L)1
(L) =
(L) =

q
X
k=0
p
X

Lk

(2.2.33)

k Lk .

k=0

Par souci de clart, nous rcrivons les quations pour le cas p = 1, q = 0 et


v(t) = 2 (t) h(t),
(1 L)d 2t = + [1 1 L]v(t),

(2.2.34)
47

Trading Haute Frquence

ainsi, grace la dcomposition de Wold nous avons,


2 (t) = 1 vt1 + [1 (1 L)d ]2 (t)
= 1 vt1

k 2 (t k),

(2.2.35)

k=1

avec,
k =

(k d)
,
(k + 1)(d)

(2.2.36)

o est la fonction gamma, (z) = 0 tz1 et dt. Pour bien mettre en avant
comment la longue mmoire est incorpore, nous traons sur la figure (2.2.4) les
fonctions k pour k variant de 0,5 1.

0.5

0.4

0.3

psi

0.2

0.1

0.0

10

15

20

Figure 2.1 Fonctions k pour k = 0.5, 0.55 , 1. Plus lon sapproche de 1, plus les courbes
croissent plus rapidement.

Concluons cette partie sur la modlisation en utilisant des processus ARCH, ou


plutt, ne concluons pas ! Nous avons donn quelques rsultats thoriques, certains
ont t soit omis volontairement soit parce que les rsultats ne sont pas (encore)
connus, soit simplement parce que votre enseignant a oubli de les noter. Aucune
simulation na t faite non plus, il est vivement conseill aux tudiants de vrifier
par eux-mmes quel modle vrifie quel fait stylis, quel modle donne les meilleurs
48

Trading Haute Frquence

rsultats en terme de prvision de volatilit.


Dans tous les cas, le caractre multifractal des marchs financiers nest pas
dcrit par les processus ARCH.

2.3

Modle Multifractal

Le terme fractal a t introduit par Mandelbrot pour pouvoir dcrire la gomtrie dobjets dimension non entire. Avant de parler des processus multifractals,
commenons par les processus fractals, caractriss par une proprit dautosimilarit.
Dfinition 2.3.1 (Autosimilaire). Un processus (X(t), t 0) est autosimilaire si pour tout c > 0, il existe b tel que,
L({X(ct), t 0}) = L({bX(t), t 0}).

(2.3.1)

Pour le cas particulier o il existe H > 0 tel que b = cH , on parle de processus Hauto-similaire. Lexposant H est appel lexposant de Hurst, lexposant
dechelle.
Le cas particulier de H = 1/2 correspond au mouvement brownien standard.
Introduisons maintenant le cas plus gnral du mouvement brownien fractionnaire introduit par Kolmogorov [Ko40] et tudi par Mandelbrot et Van Ness dans
[MaNe68].
Dfinition 2.3.2 (Brownien fractionnaire). Un processus gaussien (B H (t), t
0) est un mouvement Brownien fractionnaire (mBf) dexposant de Hurst H (0, 1)
si E(B H (t)) = 0 et,
1
E(B H (t)B H (s)) = (s2H + t2H |t s|2H ).
2

(2.3.2)

Pour lhistorique, lexposant H, a t introduit par le climatologue Hurst suite


une analyse statistique des crues du Nil [Hu10].
Le mBf est un processus H-autosimilaire,
L({B H (ct), t 0}) = L({cH B H (t), t 0}),

(2.3.3)
49

Trading Haute Frquence

et accroissements stationnaires,
L({B H (t + s) B H (t), t 0}) = L({B H (s) B H (0), t 0}), s 0.

(2.3.4)

Enfin, dans le cas ou 1 > H > 1/2, les corrlations sont positives et longue porte, il possde la proprit de longue dpendance. Si 0 > H > 1/2, les corrlations
sont ngatives, et si H = 1/2, les accroissements sont indpendants.
La notion de fractal stend naturellement au cas multifractal, cette fois nous
navons plus simplement un H tel que X(ct) = cH X(t) mais quelque chose de plus
gnral, X(ct) = M (c)X(t), on parle dinvariance dchelle. La notion dinvariance
dchelle est donc le coeur de lanalyse multifractale. On dit quune fonction f (un
observable) est invariante dchelle si,
f (x) = f (x),

(2.3.5)

o est une certaine fonction. Classiquement x est une distance, le temps, en


dautres termes, chaque chelle dobservation laquelle on se place, on observe
les mmes proprits. Proprit que les rendements financiers vrifient comme nous
avons pu le voir sur les figures (1.9) et (1.10). Il ny a pas que les rendements
financiers qui ont cette particularit, Mandelbrot a list un tas de cas ou cela se
vrifie, comme par exemple les ctes maritimes de lAngleterre, les fluctuations du
vent ou le choux romanesco. Une illustration est donne sur la figure (2.2)

Figure 2.2 Arbre fractal.

50

Trading Haute Frquence

Nous lavions dj voqu prcdemment, les moments empiriques en valeurs


absolues dordre q diffrents lag des rendements sont donns par,
m(q, ) = E[| X(t)|q ].

(2.3.6)

la srie de rendements (stationnaire) est alors invariante dchelle si,


m(q, ) C(q) (q) ,

(2.3.7)

avec C(q) le moment au lag 1 dordre q et (q) une fonction dpendant de lexposant de Hurst, H. Nous pouvons alors distinguer deux cas, si (q), lexposant de
fractalit, est une fonction linaire de q, on dira quil sagit dun processus fractal, et
si (q) est une fonction non linaire, on dira quil sagit dun processus multifractal.
Il convient donc de sintresser de plus prs ce fameux exposant (q).
Proposition 2.3.1. Dans le cas o linvariance dchelle (2.3.7) est vrifie
pour tout 0, alors lexposant (q) est une fonction concave de q.
Preuve. Notons q1 et q2 deux moments et [0, 1], alors par lingalit dHlder
nous avons,
E[| X(t)|q1 +(1)q2 ] E[| X(t)|q1 ] E[| X(t)|q2 ]1 .

(2.3.8)

Par hypothse, nous avons un processus stationnaire et invariant dchelle pour


0, donc,
E[| X(t)|q ] 0 C(q) (q)

(2.3.9)

ainsi, avec (2.3.8) et (2.3.9), en prenant le logarithme, nous avons pour q =


q1 + (1 )q2 ,
ln C(q) + (q) ln( ) (ln C(q1 ) + (q1 ) ln( )) + (1 )(ln C(q2 ) + (q2 ) ln( )).
(2.3.10)
Pour finir la preuve, il suffit de diviser lgalit par ln et faire tendre vers 0,
(q1 + (1 )q2 ) (q1 ) + (1 )(q2 ).

(2.3.11)

Proposition 2.3.2. Si lexposant (q) est non linaire, alors la loi dchelle
(2.3.7) nest pas valide la fois pour le cas 0 et
51

Trading Haute Frquence

Preuve. Idem que pour (2.3.1)


Pourquoi est-ce important de voir ces deux propositions ? Simplement, cela
nous dit que le lag doit appartenir un intervalle born [0, T ], T est appel le
temps intgral et dans ce cas, on dit que le processus a une invariance dchelle
exacte caractrise par son exposant multifractal (q). En dehors de cet intervalle,
le processus nest plus multifractal.
Nous introduisons maintenant la mesure multifractale, cest elle qui va nous
servir de base de construction des diffrents modles de cette section.

2.3.1

Mesure Multifractale

Dfinition 2.3.3 (Mesure alatoire). Une mesure alatoire sur lintervalle


X est analague une variable alatoire. Il sagit dune application dfinie sur un
espace de probabilit, et valeurs dans la classe de toutes les mesures sur X. Pour
un intervalle I X, la masse (I) est une variable alatoire.
La mesure multifractale la plus simple est la mesure binomiale (aussi dit de
Bernoulli ou Besicovitch) sur lintervalle compact [0, 1], cest pourquoi nous commenons naturellement par cet exemple. Il sagit de la limite dune procdure
itrative appele cascade multiplicative.
Notons m0 et m1 deux nombres positifs tel que m0 + m1 = 1. A ltape k = 0,
nous commenons la mesure de probabilit uniforme sur [0, 1]. A ltape k = 1, on
affecte la mesure 1 la masse m0 sur le sous intervalle [0, 21 ] et la masse m1 sur
lintervalle [ 12 , 1].
A ltape k = 2, chaque intervalle est subdivis en deux parties gales, par
exemple pour [0, 21 ] on obtient [0, 14 ] et [ 14 , 12 ], chacun des intervalles recevant une
fraction m0 et m1 de la masse totale 1 ([0, 12 ]). En appliquant la mme procdure
sur lensemble dyadique [ 12 , 1] on obtient,
1
1 1
1
1
= 1 0,
m0 = m0 m0 , 2
,
= 1 0,
m1 = m0 m1
2 0,
4 
2 
4 2 
2 




1 3
1
1 1
1
2
,
= 1
, 1 m0 = m1 m0 , 2
,
= 1
, 1 m1 = m1 m1 .
2 4
2
4 2
2
(2.3.12)
On prsente la construction jusqu lordre k = 3 sous forme dune cascade
(2.3).
















52

Trading Haute Frquence

0 ([0, 1])
m0

m1

1 ([0, 21 ])
m0

m1

3 ([0, 18 ])

m0

2 ([ 14 , 12 ])

2 ([0, 14 ])
m0

1 ([ 12 , 1])

2 ([ 21 , 34 ])

m1
2 ([ 34 , 1])

m1
3 ([ 18 , 41 ])

Figure 2.3 Construction de la mesure binomiale.


A litration k + 1, tant donne la mesure k et lintervalle [t, t + 21k ] avec t le
nombre dyadique de la forme,
t = 0.1 2 k =

k
X
i=1

h

1
,
2i

(2.3.13)

i

dans la base b = 2. La masse k t, t + 21k est rpartie uniformment sur les deux
1
1
sous-intervalles [t, t + 2k+1
] et [t + 2k+1
, t + 21k ] avec les proportions m0 et m1 . En
rptant la mme procdure tous les intervalles, nous arrivons ainsi construire
la mesure k+1 . La mesure binomiale est dfinie comme la limite de la squence
k ,
= lim k .
k

(2.3.14)

Notons que comme m0 +m1 = 1, chaque tape de la construction prserve la masse,


pour cette raison, on appelle cette procdure conservative ou, microcanonique.
Lextension la mesure multinomiale se fait assez naturellement. Au lieu de
diviser chaque intervalle en 2, nous les divisons en sous-intervalles de tailles gales
b > 2. Chacun de ces sous-intervalles index de gauche droite par , (0
53

Trading Haute Frquence

b1), reoit une fraction de la masse totale gale m0 , , mb1 . Par conservation
P
de la masse, ces fractions sont appels multiplieurs tel que m = 1.
Toujours de manire naturelle, lextension suivante serait dallouer les masses
sur les sous-intervalles construits chaque itration de manire alatoire. Le multiplieur de chaque sous intervalle est ainsi une variable alatoire discrte M positive
prenant ses valeurs dans m0 , m1 , , mb1 avec les probabilits p0 , p1 , , pb1 .
P
La prservation de la masse imposant M = 1. Cette procdure amenant la
construction de mesures multiplicatives est dite cascade multiplicative.
Dtaillons un peu plus cette construction. On impose toujours la contrainte de
P
normalisation, M = 1, la masse intiale sur lintervalle [0,1] est 1, et nous subdivisons lintervalle en sous-intervalles de longueur 1/b, chaque intervalle recevant
un poids alatoire M . Par rptition, lintervalle badique de longueur t = b1k ,
P
partant de t = 0.1 k = i i b1i a pour mesure,
(t) = M (1 )M (1 2 ) M (1 k ).

(2.3.15)

Donc, [(t)]q = M (1 )q M (1 2 )q M (1 k )q pour tout q 0. En passant


lesprance, les multiplieurs M (1 ), M (1 2 ), , M (1 k ) tant indpendants
et de mme loi, nous obtenons,
E[(t)q ] = E[M (1 )q M (1 2 )q M (1 k )q ]
= (E[M q ])k ,

(2.3.16)

soit,
E[(t)q ] = (t)(q) ,

(q) = logb E[M q ].

(2.3.17)

Assumons maintenant que le poids soit conserv chaque itration en espP


rance, E[ M ] = 1, autrement dit, quil sagit dune variable alatoire, que nous
noterons , et dans ce cas,
(t) = (1 k )M (1 )M (1 2 ) M (1 k ),

(2.3.18)

et nous avons la relation dchelle,


E[(t)q ] = E[q ](E[M q ])k .

(2.3.19)

E[(t)q ] = E[q ](E[M q ])k ,

(2.3.20)

Soit,

54

Trading Haute Frquence

qui caractrise le caractre multifractal.

2.3.2

Modle Multifractal des Rendements Financiers

Rentrons dans le vif du sujet en prsentant un premier modle multifractal, il


sagit du modle Multifractal Model of Asset Return (MMAR) introduit par Mandelbrot, Calvet et Fisher (1997) [MaFiCa97] et [FiCaMa97]. Il sagit dun processus
subordonn, le premier modle de ce type est attribu Clark, [Cl73].
Dfinition 2.3.4. Soit {B(t)} un processus stochastique et (t) une fonction
croissante de t. Alors le processus,
X(t) = B H ((t)),

(2.3.21)

est un processus de compos. B H est un brownien fractionnaire dexposant H,


lindice t dnote le temps physique et, (t) est le temps de trading, ou le processus
de dformation du temps.
Le modle MMAR correspond au cas particulier o {(t)} et {B H (t)} sont
indpendants et (t) la fonction de rpartition dune mesure multifractale dfinie
sur [0, T ]. Ainsi, (t) est une fonction incrments continus, croissants et stationnaires. Le temps de trading tant issu dune mesure multifractale, le processus
X(t) est galement multifractal. En notant {Ft ; t [0, T ]} la filtration engendre
par le processus (t), on a,
E[|X(t)|q ] = E[|B H ((t))|q ]
= E[E[|B H ((t))|q |Ft ]]
= E[E[|(t)H B H (1)|q |Ft ]]

(2.3.22)

= E[(t)qH ]E[|B H (1)|q ].


En utilisant la dfinition de lexposant multifractal on voit donc que,
X (q) = (qH),

(2.3.23)

puisque,
CX (q)tX (q) E[|X(t)|q ] = E[(t)qH ]E[|B H (1)|q ] E[|B H (1)|q ]t (qH) .

(2.3.24)
55

Trading Haute Frquence

Par un simple calcul on peut montrer que dans le cas o une la fonction de
rpartition dune mesure multiplicative log-normale lexposant scrit,
ln
(q) = ln (qH) = qH(1 + 22 ) 22 q 2 H 2 .
X

(2.3.25)

Le processus vrifie certains des faits styliss, lautocovariance des rendements


est nulle pour le cas o H = 1/2 (la preuve se base sur le fait que X(t) soit une
martingale et que donc, lhypothse de non-arbitrage est vrifie avec cette modlisation), si H > 1/2 elle est positive et ngative pour H < 1/2. En revanche,
le modle de Mandelbrot, Calvet et Fisher ne permet pas de vrifier leffet de levier.
En dehors de cela (de toute facon, leffet de levier nest pas non plus vrifi par
tous les actifs financiers), les avantages/inconvnients de ce modle est quil ny
a pas de jeu de paramtre estimer comme pour un modle ARCH par exemple,
en mme temps, cela tombe bien, nous navons pas de formule ferme pour la
vraisemblance ou dautre mthode destimation comme la mthode gnralise des
moments. Nous navons donc qu choisir la valeur de H, qui sera prise naturellement gale 0,5 pour coller aux donnes financires les plus classiques, exceptions
faites pour des donnes frquence trs leve ainsi que quelques commodities et
des produits trs peu liquides susceptibles de prsenter une certaine persistance
dans leurs rendements. Lautre, et dernier paramtre choisir est la taille des sousintervalles, b ansi que la loi rgissant la distribution des masses mi . La construction
est donc non causale.

2.3.3

Modle Multifractal Markov Switching

Le modle que nous allons prsenter maintenant t introduit par Calvet et


Fisher [CaFi01], [CaFi04], il sagit du modle multifractal Markov switching ou
encore multifrequency Markov switching. Les modles changement de rgime
sont principalement dus Hamilton (1989, 1900). La plupart des modles initiaux
ne proposent que 2 (voir 4) frquences diffrentes, simplement parce quils sont
destins des sries financires basse frquence o un petit nombre dtats apparat comme suffisant pour dcrire les cours boursiers. A la diffrence du modle
prsent prcdemment, il ne sagit pas du temps qui est issu dune mesure multifractale, mais de la volatilit elle-mme.

56

Trading Haute Frquence

Le modle multifractal Markov switching est un processus volatilit stochastique construit partir dun processus de Markov du premier ordre de k composants (on parle dun processus de Markov du premier ordre lorsque ltat linstant
t + t dpend uniquement de ltat linstant t),
(1)

(k)

(2)

Mt = (Mt ; Mt ; ; Mt ) Rk+ .

(2.3.26)

(i)

Chacun des composants du vecteur Mt a la mme distribution marginale M mais


volue diffrentes frquences. La distribution M est suppose support positif et
(k)
tel que EM = 1. Les multiplieurs sont galement mutuellement indpendants, Mt
(k0 )
et Mt0 sont indpendants si k est diffrent de k 0 . Le vecteur dtat est construit

chaque nouvel instant partir de linstant prcdent. Pour tout k {1, , k},
(k)

M avec probabilit k

Mt
(k)

Mt

(k)

= Mtt avec probabilit 1 k .

(2.3.27)

Les probabilits de transitions (1 , , k ) sont construites par itrations,


k1

k = 1 (1 1 )b

(2.3.28)

avec 1 (0, 1) et b (1, ). Pour de petites valeurs de k, la quantit 1 b(k1)


reste petite et la transition de probabilit vrifie,
k 1 b(k1) .

(2.3.29)

Pour de plus grande frquence, cest dire k lev, k 1.


Finalement, le modle prend la forme,
X(t) = (Mt )zt

(Mt ) =

k
Y

1/2
(i)
Mt

(2.3.30)
,

i=1

avec
une constante positive.
Quand les multiplieurs de basses frquence (petites valeurs de k) changent, la
volatilit varie de manire discontinue avec une persistance forte, Les multiplieurs
plus haute frquence (grandes valeurs de k) produisent quant eux des outliers.

57

Trading Haute Frquence

La construction multifractale du processus ne nous impose que quelques restrictions sur la distribution des multiplieurs, support positif et de moyenne unitaire,
et comme nous avons 1 < < k < 1 < b, nous navons qu choisir (b, k )
pour dterminer lensemble des probabilits de transitions. Ainsi, lensemble des
paramtres du modle est,
= {m0 ,
, b, k } R4+ ,

(2.3.31)

avec m0 carctrisant la distribution des multiplieurs et


la volatilit des rendements. Plusieurs mthodes sont possibles pour estimer le jeu de paramtre optimal,
nous pouvons citer par exemple la mthode gnralise des moments ou lestimateur du maximum de vraisemblance. Nous ne prsentons ici que la mthode du
maximum de vraisemblance et renvoyons ltudiant curieux de voir comment faire
par mthode des moments [Lu08].
Supposons que M est discret et que la chane de Markov Mt prend un nombre

fini de valeurs m1 , , md Rk+ . Sa dynamique est donne par la matrice de


transition A = (aij )1i,jd avec comme composants,
aij = P(Mt+1 = mj |Mt = mi ).

(2.3.32)

Conditionnellement ltat de la volatilit, le rendement linstant t, X(t)


pour densit,
!

1
x

,
f ( X|Mt = mi ) =
i
(m )
(mi )

(2.3.33)

o est la densit dune loi normale centre rduite. Dis autrement, la densit est
gaussienne centre de variance 2 (Mt ). Les diffrents tats ne sont pas observables,
en revanche, nous pouvons calculer leurs diffrentes probabilits conditionnelles,
jt = P(Mt = mj |It ), It = { X(1), , X(t)}.

(2.3.34)

En utilisant la rgle de Bayes nous avons,


jt =

( X(t)) (t1 A)
,
[( X(t)) (t1 A)]1t

(2.3.35)

avec 1 = (1, , 1) Rd , xy dnote le produit de Hadamard pour tout x, y Rd ,


(x1 , x2 , , xd ) (y 1 , y 2 , , y d ) = (x1 y 1 , , xd y d ) et,

58

Trading Haute Frquence

( X(t)) =

1
1
((m1 )), ,
((md )) .
1
d
(m )
(m )

(2.3.36)

Nous avons donc besoin de choisir un vecteur dinitialisation du processus du


Markov. Nous le choisissons ergodique et comme les multiplieurs sont mutuellement
Q
indpendants, la distribution ergodique initiale est donne par j0 = ks=1 P(M =
mjs ). Ainsi, et toujours grce la rgle de Bayes, nous trouvons la vraisemblance
du modle,
f ( X(t)|It ) =

d
X

P(Mt = mi |It1 )f ( X(t)|Mt = mi )

i=1
d
X

x
1

=
.
P(Mt = mi |It1 )
i
(m )
(mi )
i=1

(2.3.37)

La log-vraisemblance est donc,


ln L( X(1), , X(T ); ) =

T
X

ln(( X(t))(t1 A)).

(2.3.38)

t=1

Etudions maintenant les proprits du modle multifractal Markov switching.


La dmonstration de la forme assymptotique de la persistance dans les rendements
dordre q en valeur absolue ncessitant quelques calculs fastidieux, mais intressants [CaFi01], nous ne prsentons que le rsultat et linterprtation.
En notant Cq (h) la fonction dautocorrlation du processus dordre q en valeur
absolue,
Cq (h) = Cor(| X(t)|q , | X(t + h)|q ),

(2.3.39)

alors si X(t) suit un processus multifractal Markov switching nous avons,



ln C (h)
q
sup
(q)
nI ln n
k

0 avec k ,

(2.3.40)

o (q) = logb (E(M q )) logb (E(M q/2 )2 ) et Ik est un ensemble dentier tel que
pour 1 < 2 (0, 1) choisi arbitrairement,

Ik = {n : 1 logb (bk ) logb n 2 logb (bk )}.

(2.3.41)

59

Trading Haute Frquence

Lautocorrlation du processus dcrot donc de manire hyperbolique avec les pas


de temps. On peut aussi montrer que pour de grande valeur de h, la dcroissance
ce fait de manire exponentielle.
Ce modle peut galement se prolonger en version continue,
dX(t) = dt + (Ms )dB(s),

(2.3.42)

avec B un mouvement brownien standard et (Ms ) dfini comme prcdemment


Q


(k) 1/2

k
par (Ms ) =

. Lintgrale stochastique tant bien dfinie puisque


k=1 Mt
Rt 2
2
E 0 (Ms )ds =
t < . A la diffrence de modle MMAR, nous avons donc
ici des incrments stationnaires, facilitant lestimation des paramtres et la prvision de la volatilit. De plus les composants de la volatilit varient des instants
alatoires et non prdtermins.

2.3.4

Marche Alatoire Multifractale

Avant dintroduire cette nouvelle modlisation, donnons quelques dfinitions


pour pouvoir regarder la mesure multifractale sous jacente la construction.
Dfinition 2.3.5. Une variable alatoire relle X de loi a une distribution
infiniment divisible si et seulement si pour tout n il existe X1 , , Xn indpendante
et de mme loi n tel que,
L(X) = L(X1 + + Xn ).

(2.3.43)

Thorme 2.3.1. Si X a une loi infiniment divisible, alors sa fonction caractristique est,
(q) = E[e

iqX

] = exp imt +

eiqx 1 iq sin x
(dx) ,
x2
!

(2.3.44)

avec m R et une mesure telle que les intgrales,


Z
x

(dy)
y2

et

Z x

(dy)
,
y2

(2.3.45)

sont toutes deux convergentes pour x > 0, elle est dite mesure de Lvy.

60

Trading Haute Frquence

Proposition 2.3.3. Soit (X(t), t 0) un processus de Lvy, i.e. tel que


X(t) X(s) soit stationnaire et indpendant pour tout t > s, alors ses accroissements sont infiniment divisibles, rciproquement, une loi infiniment divisible est
un processus de Lvy.
Proposition 2.3.4. Si X a une loi infiniment divisible, alors sa fonction
caractristique scrit comme une puissance n-ime dune autre fonction caractristique.
Par exemple, si X N (m, 2 ), alors sa fonction caractristique est,
q22
(q) = exp imt
2

"

imq t2 2
= exp

n
2n

en dautre terme, on a X = X1 + , Xn avec Xi N

m 2
,
n n

!#n

(2.3.46)


Dfinition 2.3.6. La distribution de la variable alatoire relle X est dite


stable si et seulement si pour tout k et X1 , , Xk , il existe ak > 0 et bk R tels
que,
L(X1 + + Xk ) = L(ak X + bk ).

(2.3.47)

Proposition 2.3.5. Si X est stable, X est infiniment divisible.


Thorme 2.3.2. Si X une distribution stable, alors sa fonction caractristique scrit,
2
exp{imt |q|(1 + isign(q) ln |q|)}, = 1

(q) =

exp{imt |q| (1 isign(q) tan


)}, =
6 1,
2

(2.3.48)

avec 0 < 2, il caractrise les queues de distribution, plus diminue, plus les
queues sont paisses. Si = 2, alors X suit une loi normale.
Le modle MRW, [BaMuDe01], [BaMu02] repose sur une mesure alatoire multifractale infiniment divisible, nous allons la constuire. Plaons nous sur lespace
mesur (S + , ) avec S + le demi-plan,
S + = {(t, `), t R, ` R+
},

(2.3.49)

et , une mesure de Haar gauche (invariante par le groupe de translationsdilatations agissant sur S + ) tel que,
61

Trading Haute Frquence

dtd`
.
(2.3.50)
`2
P est un champ alatoire infinement divisible P dfini sur le demi-plan (S + , )
si pour toute famille densemble disjoint An de S + , {P(An )}n sont des variables
alatoires indpendantes qui vrifient,
(dt, d`) =

P(
n=1 An ) =

P(An ), p.s..

(2.3.51)

n=1

De plus, pour tout ensemble A -mesurable, P(A) est une variable infiniment
divisible de fonction caractristique,


E eiqP(A) = e(q)(A) ,

(2.3.52)

pour tout q 0 et (iq) < . (q) est donn par la formule de Lvy-Khintchine,
eiqx 1 iq sin x
(dx).
(2.3.53)
x2
(dx) est une mesure de Lvy (2.3.45). Lexposant de Laplace est donn par (q) =
(iq) et nous supposons que,
(q) = imq +

(1) = 0
(q(1 + )) < q(1 + ) 1, > 0.

(2.3.54)

Enfin, le champs alatoire P est dfini sur la filtration F` de lespace de probabilit


,
F` = {P(dt, d`0 ); ` `0 }.

(2.3.55)

Nous pouvons maintenant donner la mesure multifractale alatoire infiniment


divisible.
Dfinition 2.3.7 (Mesure multifractal alatoire infiniement divisible). Le
processus w = (w` (t); (t, `) R (0, )) est dfini pour tout (t, `) R (0, )
par,
w`,T (t) = P(A`,T (t)),

(2.3.56)

62

Trading Haute Frquence

o P est le champ alatoire infiniment divisible dfini prcdemment sur le demiplan S + et A` (t) est la famille de cones donne par,


1
min(`0 , T ) .
2


(2.3.57)

A` (t) = (t0 , `0 ); ` `0 , |t0 t|

l
2

t+

t+

T
2

Figure 2.4 Cone A` (t).


La mesure multifractale alatoire infiniment divisible M est alors,
2

M (t) = lim

`0

ew` (t) dt, > 0.

(2.3.58)

La marche alatoire multifractale est, de la mme manire que le modle multifractal pour rendements financiers, un processus subordonn,
X(t) = B(M (t)) = 2

Z t

ew(t) dB(t), t 0,

(2.3.59)

63

Trading Haute Frquence

avec B un mouvement Brownien standard indpendant de M . Notons que si la


mesure de Lvy (2.3.44) ((dx)) est donne par,
(dx) = 42 (x)dx, 2 > 0,

(2.3.60)

alors nous pouvons montrer que (q) est la fonction gnratrice des cumulants
de la loi log-normale (cest ce qui priori, est un bon choix pour les distributions
financires et, cest dans ce cadre danalyse que nous allons rester), (q) = 22 q+
22 q 2 et lexposant multifractal est une parabole,
ln
M
(q) = q(1 + 22 ) 22 q 2 .

(2.3.61)

Le processus gaussien {w` (t); t 0} est entirement dtermin par sa moyenne et


sa covariance,
T
E(w` (t)) = ln + 1
`
 

),

(ln l + 1
 `
T
2
Cov(w` (t), w` (t + )) =
ln l ,

0,
2

si 0 `

(2.3.62)

si ` T
si 0 .

Par construction, notons que la MRW est bien un processus multifractal,


E(X(t)q ) = E(B(M (t))q ) = E(B(1)q )E(M (t)q /2).

(2.3.63)

On en dduit que lexposant multifractal de la marche alatoire multifractale dans


le cas log-normale est,
q
2 q 2
ln
ln
X
(q) = M
(q/2) = (1 + 22 )
.
(2.3.64)
2
2
Lautocovariance du processus semble donner une approximation correcte de celle
estime empiriquement sur les donnes de rendements financiers puisque nous pouvons montrer que pour le cas o < k < T ,
2

T 4
E[ X (t) X (t + k)]

,
(2.3.65)
k
i.e. une loi puissance en k. Il est galement possible, aprs quelques calculs, de voir
que la fonction dautocovariance des incrments dune MRW en valeurs absolues
2

2 2

64

Trading Haute Frquence

suit une loi puissance.


Pour pouvoir simuler le processus, il faut pouvoir simuler des variables alatoires {w(k)}, gaussiennes, corrles. Pour simuler des variables gaussiennes indpendantes, nous supposerons cela connue (cf. algorithme de Box-Muller ou MarsagliaBray), expliquons tout de mme comment en faire des variables corrles.
La mthode la plus simple, mais pas forcmenent la plus efficace, est de commencer par construire la matrice dautocovariance souhaite, , donc partir de
(2.3.62), bien sr, nous ne pouvons pas dterminer le paramtre `, on le prendra
arbitrairement petit. La matrice tant suppose dfinie positive, il existe une
matrice triangulaire C tel que C t C = , alors les composants du vecteur,
w = + C t N (0, I),

(2.3.66)

sont corrls suivant une loi normale de matrice de covaraiance . La mthode


naturelle pour trouver la matrice triangulaire est la factorisation de Cholesky. Il
nest pas trs difficile de trouver une librairie informatique capable de faire cette
factorisation, nanmoins, mme si elles sont en gnral codes par des experts, la
mthode ses limites (complexit en O(N 3 )) et il nest plus possible de faire cette
factorisation pour des matrices trop grandes. La deuxime mthode, qui semble
plus complique mais qui reste trs simple consiste passer par la transforme de
Fourrier rapide [BaLaOpPhTa03].
Venons en lestimation des paramtres du modle, il y en a trois, la volatilit,
, le coefficient dintermittence 2 et le temps intgral T . Lestimation propose
de = {ln , , ln T } dans [BaKoMu08] repose sur la mthode des moments gnraliss (je ne le dtaille pas ici, car elle fera lobjet dun projet).
Pour conclure, notons que la marche alatoire que nous avons introduite semble
tre aujourdhui lun des modles les plus performant pour reproduire les faits styliss de rendements financiers et pour faire de la prvision de volatilit. Nanmoins,
comme les processus B et M sont indpendants, leffet de levier ne peut pas tre
vrifi. Une contruction alternative, base sur le calcul de Malliavin, du processus
dans le cas dpendant et, plus gnrale avec un mouvement Brownien fractionnaire au lieu du mouvement brownien standard, ce qui nous permet dobtenir une
persistance plus ou moins prononce dans les rendements bruts (ce qui est le cas
pour certaines commodities, des actifs peu liquides ou pour des donnes haute
frquence) est propose dans le trs intressant article [FaTu12].
65

Trading Haute Frquence

2.4
2.4.1

Processus ponctuels
Processus de Hawkes

Pour finir ce chapitre, et cette partie, nous allons voir les processus ponctuels
et leurs applications en finance, qui sont trs vastes, nous ne verrons que quelques
applications possibles. Commenons par quelques dfinitions thoriques pour introduire le processus.
Dfinition 2.4.1 (Processus Ponctuel). Soit t le temps physique et {ti }i{1,2, }
une suite croissante alatoire de temps darrives, 0 ti ti+1 , i. Alors la squence est un processus ponctuel sur le segment [0, ).
Dfinition 2.4.2 (Processus de Comptage). Soit (N (t))t0 un processus stoP
chastique valeurs relles tel que N (t) = i1 1{ti t} . On dit que N est un processus de comptage si p.s., N (0) = 0, N est continu droite et N est croissant.
Lexemple certainement le plus connnu est le processus de Poisson, qui en plus
des proprits enonces vrifie,
pour tout t, s 0, N (t + s) N (t) suit une loi de Poisson de paramtre s
(stationnarit)
pour tout t, s 0, les variables alatoires N (t + s) N (s) indpendant de
la sigma-algbre (Nu , u s), (accroissement indpendant)
Dfinition 2.4.3 (Processus de Duration). Soit di le temps dattente entre
deux vements conscutifs,
(

di =

ti ti1
ti

si i = 1, 2, , n
si i = 1,

(2.4.1)

avec t0 = 0. Alors, {di }i{1,2, } est le processus de duration associ au processus


ponctuel {ti }i{1,2, }
Dfinition 2.4.4 (Intensit). Soit (, F, P) un espace de probabilit et N un
processus de comptage adapt la filtration Ft . Le processus dintensit continue
gauche et limite droite est dfini par,
"

N (t + h) N (t)
|Ft
(t|Ft ) = lim E
h&0
h
"(
)
#
N (t + h) N (t)
= lim P
> 0 |Ft .
h&0
h

(2.4.2)

66

Trading Haute Frquence

La Ft -intensit caractrise lvolution du processus N (t) conditionellement sa


filtration naturelle. On peut linterprter comme la probabilit conditionnelle dobserver un vnement au prochain instant.
Notons quun processus ponctuel adapt la fitration Ft est une Ft -martingale.
Pour tout 0 s t nous avons,
E(N (t)|Fs ) = N (s) p.s.

(2.4.3)

Et en particulier, cest une surmartingale,


E(N (t)|Fs ) N (s) p.s.

(2.4.4)

Alors, daprs la dcomposition de Doob-Meyer, toute Ft -surmartingale peut tre


dcompos (de manire unique) comme la somme dune Ft -martingale M (t) de
moyenne zro et dun Ft -processus prdictible croissant (t),
N (t) = M (t) + (t).

(2.4.5)

La partie prdictible intervenant dans la dcomposition de Doob-Meyer est appele


le compensateur et est dfinie par,
(t) =

Z t
0

(s|Ft )ds.

(2.4.6)

En rarrangeant lexpression (2.4.5) nous pouvons donner une dfinition alternative de lintensit,
N (t)

Z t
0

(s|Ft )ds = M (t).

(2.4.7)

M (t) tant une martingale, nous obtenons,


Z t

(u|Fu )du|Fs ], p.s.

(2.4.8)

(u|Fu )du|Fs ] = E[(s, t)|Ft ], p.s.

(2.4.9)

E[N (t)|Fs ] = E[

Ou encore,

E[N (t) N (s)|Fs ] = E[

Z t
s

avec, (s, t) = (t) (s).

67

Trading Haute Frquence

Thorme 2.4.1 (Changement de temps alatoire). Soit N (t) un processus


ponctuel adapt la filtration Ft avec pour intensit (t|Ft ) et pour compensateur
(t) avec () = p.s. Pour tout t, nous dfinissons le temps darrt (t)
comme solution de,
Z (t)
0

(s|Ft )ds = t.

(2.4.10)

Alors, le processus ponctuel,


(t) = N ( (t)) = N (1 (t)),
N

(2.4.11)

est un processus de Poisson homogne dintensit = 1.


Lemme 2.4.1. Soit ti les temps darrivs associs au processus ponctuel
(t) donne par (2.4.11), alors,
(transform) N
ti =

Z ti
0

(s|Fs )ds, pour tout i.

(2.4.12)

Thorme 2.4.2. Les durations ti -ti1 associes au processus ponctuel trans (t) sont donnes par,
form (2.4.11), N
ti ti1 = (ti , ti1 ) =

Z ti
ti1

(s|Fs )ds,

(2.4.13)

et correspondent une suite de variable alatoire exponentielle dintensit 1 i.i.d.,


(ti , ti1 ) i.i.d. Exp(1).

(2.4.14)

Ce dernier thorme se dduit simplement du lemme (2.4.1). Comme nous le


verrons par la suite, il va nous permettre de poser un algorithme de simulation
dun processus ponctuel.
Un des premiers papiers avoir propos une application des processus de
Hawkes est celui de Y. Ogata sur la modlisation des sismes. En finance, ils
peuvent, entre autre, servir modliser le carnet dordres (et exhiber des opportunits darbitrage), et par suite, modliser le cours dun actif trs haute frquence,
puisque ce sont les variations du carnet dordres qui forment le prix.
Les processus de Hawkes font donc partie de la classe des processus ponctuels
et sont entirement caractriss par leur intensit.
68

Trading Haute Frquence

Dfinition 2.4.5 (Processus de Hawkes). Soit N un processus de comptage


adapt la filtration Ft et associ au processus ponctuel {ti }i=1,2, , alors si son
intensit conditionnelle est du type,
(t|Ft ) = +

Z t

w(t s)N (ds),

(2.4.15)

avec 0, 0 et wR+ R+ , le processus N est un processus de Hawkes.


Notons dj que lintensit est une intgrale par rapport une mesure de comptage, nous pouvons donc crire,
Z t

w(t s)N (ds) :=

w(t ti ).

(2.4.16)

ti <t

Ensuite, comment interprter les diffrents paramtres ? est lintensit fixe (un
peu comme un cot fixe de production), quelle que soit la frquence instantane
des arrives, en utilisant le vocabulaire appropri nous devrions dire la frquence
des immigrants. w est le noyau de pnalit, cest lui qui va donner les variations
de lintensit en fonction des temps darrive. Lexpression propose par Hawkes
est de prendre,
w(t ti ) = e(tti ) ,

(2.4.17)

avec un > 0. Ansi, plus ti est loin de linstant t, plus la fonction tend vers 0,
lim

(tti )

e(tti ) = 0,

(2.4.18)

et contrario, plus ti est proche de t, disons par exemple que les deux instants
concident, ti = t, alors w(t ti ) = w(0) = e0 = , nous avons donc une
augmentation temporaire de lintensit chaque nouvelle arrive dun immigrant.
Un autre noyau de pnalit envisageable est de prendre une fonction puissance,
w(t) =

( 1)
, > 2, > 0.
(1 + (t ti ))

(2.4.19)

Cette fonction correspond au modle ETAS (Epidemic-Type Aftershock Sequence)


pour la modlisation des sismes.
Pour pouvoir modliser le carnet dordre ou les variations dun actif financier
trs haute frquence, nous avons besoin dtendre la dfinition dun processus au
69

Trading Haute Frquence

cas multivari. En effet, les ordres faisant bouger le cours ne sont pas uniquement
des ordres au march, les ordres limites et dannulations sont galement une partie
importante des variations observes.
Dfinition 2.4.6 (Processus de Hawkes Multivari). Soit N = (N1 (t), , Nd (t))
un processus de comptage adapt la filtration Ft associ au processus ponctuel
(ti,1 , , ti,d ), d N, alors si lintensit conditionnelle est de la forme,
j (t|Ft ) = j +

d
X
k=1

jk

Z t
0

wj (t s)Nk (ds),

(2.4.20)

alors (N1 , , Nd ) est un processus de Hawkes multivari. = {ij }i,j=1, ,d est la


matrice de branchement, cest elle qui relit les diffrents types dintensits entre
elles et qui permet les interactions entre les diffrents processus que lon cherche
modliser.
Sans rentrer dans les dtails du pourquoi du comment (voir e.g. [DaVe05]),
nous avons besoin dimposer quelques restrictions pour que le processus soit bien
dfini,
Thorme 2.4.3 (Condition de Rgularit). Pour quun processus de Hawkes
multivari soit bien dfini et de manire unique, les conditions suivantes doivent
tre satisfaites :
(i)
max{|| : ()} < 1
(ii)

Z
0

twj (t)dt < , pour tout j = 1, , d.

(2.4.21)

(2.4.22)

En dautre terme, on peut trouver un espace (, F, P) ayant les conditions suffisantes pour supporter ce type de processus si les conditions prcdentes sont vrifies.
Enfin, pour calibrer les paramtres du modle, nous introduisons la vraisemblance du processus de Hawkes
ln L =

d Z T
X
j=1 0

ln j (t|Ft )N (dt)

d
X

j (T ).

(2.4.23)

j=1

70

Trading Haute Frquence

Pour contrler la qualit de la calibration, nous pouvons bien sr nous servir


des thormes (2.4.1) et (2.4.2) en traant les qq-plot correspondants.
Sur la figure (2.5) nous avons fitt un processus de Hawkes sur les rendements
de lETF SPY en 5 secondes du 4 janvier 2012 vers 11h. Pour bien mettre en
vidence le comportement dun processus de Hawkes, nous navons fitt que les
rendements suprieurs 98% de son historique.
Une fois que la calibration souhaite est faite, nous pourrions avoir envie de
simuler un processus de Hawkes correspondant, i.e. simuler le processus ponctuel
{t1 , , tn }. Le premier algorithme que nous allons prsenter est celui de ShedlerLewis, la seule difficult tant la connaissance dune borne M tel que,
(t|Ft ) M.

(2.4.24)

Algorithme de Simulation dun processus de Hawkes :

(1) Simulation dune suite de variable alatoire U1 , , Ui i.i.d. uniforme sur


(0,1).
(2) En utilisant la mthode dinversion, on gnre des variables alatoires exponentielles avec Vi = ln(1 Ui ), i = 1, , n.
(3) On pose t0 = 0. Si (0, t1 ) = V1 peut tre exprim comme t1 = x1 =
(0, V1 )1 , t1 = x1 . Sinon, on rsoud implicitement (t0 , t1 ) = V1 en t1 .
(4) Pour i = 2, , n, si (ti1 , ti ) = Vi peut tre exprim par xi = (ti1 , ti )1
alors ti = ti1 + xi . Sinon, on rsoud implicitement (ti1 , ti ) = Vi en ti .
(5) Output : {t1 , , tn }.

2.4.2

Carnet dOrdres

Venons en la premire application, comment modliser un carnet dordres ?


Comme nous lavons vu sur lanimation (??), les ordres, quelque soit leur type,
arrivent par intermittence, on va donc naturellement les modliser par des processus ponctuels et plus particulirement des processus de Hawkes. J. Large ([La07])
propose de modliser les variations dun carnet par un processus ponctuel de dimension 10, le but de son tude est de mesurer la rsilience du march, cest--dire
sa capacit revenir un tat dquilibre aprs un shock important. En effet,
71

Trading Haute Frquence

Logreturn, SPY

0.04

0.02

0.04

0.02

log return

0.00

50

100

150

200

250

150

200

250

temps

0.90
0.75

0.80

0.85

lambda1

0.95

1.00

1.05

Intensit

50

100
temps

Figure 2.5 Log-rendement de lETF SPY en 5 secondes du 4 janvier 2012 vers 11h, en
rouge les rendements suprieurs 98%. Sur la figure de droite, modlisation par un processus de
hawkes, les triangles reprsentants les temps darrivs.
bien que chaque ordre arrive de manire non-continue, leurs proportions sont diffrentes. Sur le tableau (2.1) nous donnons le pourcentage de chaque type dordre
par rapport la totalit des ordres sur les actifs composant le CAC 40 entre le 29
octobre et le 26 novembre 1991 ([BiHiSp95]).

72

Trading Haute Frquence

1
2
3
4
5
6
7
8
9
10

+ ou Achat
Vente
Achat
Vente
Achat
Vente
Achat
Vente
Achat
Vente

Type dordre
march ask qui dplace le ask price
march bid qui dplace le bid price
limite bid lintrieur du spread
limite ask lintrieur du spread
march ask qui ne dplace pas le ask price
march bid qui ne dplace pas le bid price
limite bid infrieur au bid price
limite ask suprieur au ask price
Annulation dun ordre bid
Annulation dun ordre ask

%
3.13
3.70
4.50
4.49
5.01
4.35
21.38
19.09
17.81
16.54

Vol Moyen
4 830
4 790
3 390
3 940
2 660
2 550
2 840
3 110
2 740
2 820

Table 2.1 Proportion des diffrents types dordres sur les actifs du CAC 40 entre le 29/10
et le 26/11 1991.

Notons bien sur que ces donnes ne sont quune photo et ne reprsentent pas
le march dans son ensemble, pour une modlisation nous intressant, nous devrions collecter les donnes sur le march qui nous intresse, sur une priode de
temps suffisamment large pour tre significative, correspondant diffrent rgime
de march et pas uniquement un bear market par exemple, et bien sr, rcente.
Comme un processus de comptage est entirement dtermin par son intensit,
le modle est donn par,
j (t|Ft ) = j +

10
X
k=1

jk

Z t
0

wj (t s)Nk (ds).

(2.4.25)

La calibration du modle se faisant par maximisation de la vraisemblance


(2.4.23) par rapport aux donnes rcoltes. La modlisation dun carnet dordre
se fait donc en diffusant chacun des processus Ni , i = 1, , 10, si les donnes
utilises pour fitter le modle correspondent celles prsentes dans le tableau
(2.1), nous devrions retrouver les mmes proportions dordres.
Un tel raffinement dans le type dordre nest pas forcment ncessaire, ([Mu10])
propose de modliser le carnet dordre selon un modle deux agents, lun impatient et envoyant uniquement des ordres march, on parle de preneur de liquidit,
lautre patient et envoyant uniquement des ordres limites, on parle dapporteur de
liquidit, il lui arrive donc den annuler certains. De plus ce modle propose de
ne pas uniquement sintresser aux instants darrives, mais galement aux prix et
volumes correspondants. Pour tre tout fait exact, ce nest pas le prix en tant
73

Trading Haute Frquence

que tel qui est modlis mais la distance laquelle lordre est plac par rapport au
bid/ask price. La distribution du volume sera prise selon une loi de Student pour
coller aux faits styliss et pour la position de limite nous prendrons une distribution exponentielle.
Agent Patient
1. Instant de passage dordre limite selon lintensit L .
2. Emplacement de la limite selon une loi de Student de paramtre L .
3. Volume correspondant la nouvelle limite selon une loi exponentielle
de paramtre mL .
4. Instant dannulation dordre selon lintensit C .
Agent Impatient
1. Instant de passage dordre march selon lintensit M .
2. Volume correspondant au nouvel ordre selon une loi exponentielle de
paramtre mM .
Pour les deux agents : Equiprobabilit entre ordre march bid ou ask.
Les intensits sont donnes par,
M (t|Ft ) = M +
L (t|Ft ) = L +

Z t

0
t

M M eM M (ts) NM (ds)

LM e

LM (ts)

NM (ds) +

Z t
0

(2.4.26)
LL e

LL (ts)

NL (ds).

Dans cette modlisation, nous avons donc suppos que les ordres march arrivaient de manire indpendante des ordres limites, quils sauto-excitaient uniquement. En revanche, une interaction t apporte pour les ordres limites qui eux
dpendent des ordres marchs. Quand un ordre march apparat, lintensit des
ordres limites augmente au mme instant, forant la probabilit quun ordre limite
soit le prochain vnement ce qui correspond aux comportements des market makeur. Notons que la formulation des intensits diffre lgrement de celle propose
prcdemment. En fait, nous avons simplement absorb le terme , cest--dire la
matrice de branchement, dans , pour cela que nous navons pas commme noyau
de pnalit et mais et puisque le nest pas tout fait le mme.
Une mthodologie possible pour classifier les ordres selon leurs types est la
suivante :
74

Trading Haute Frquence

1. Si Le volume offert au bid price ou au ask price a diminu, on classifie les


ordres comme ordres march au prix et volume correspondant.
2. Si la quantit offerte un prix donn a augment, lordre est considr comme
un ordre limite un prix et volume correspondant.
3. Si la quantit offerte un prix donn a diminu, lordre est considr comme
tant une annulation un prix et volume correspondant.

2.4.3

Fluctuation Trs Haute Frquence

Les modles de carnet dordre devraient nous permettre de dduire des diffrents types dordre les variations trs hautes frquences de lactif sous-jacent.
Nanmoins, nous pouvons faire beaucoup plus simple et nous verrons une limitation importante de ce type de modlisation. La variation totale est la somme des
variations positives et ngatives au cours du temps. Si nous notons X(t) le prix de
lactif linstant t, nous avons,
X(t) = N+ (t) N (t),

(2.4.27)

avec N+ et N deux processus de comptage associs respectivement aux sauts


positifs et ngatifs. Nous suivons les articles [BaDeHoMu12] et [BaDeHoMu11],
les intensits de deux processus de Hawkes sont donnes,
+ (t|Ft ) = + +
(t|Ft ) = +

Z t
0

Z t
0

w(t s)N+ (ds)


(2.4.28)
w(t s)N (ds).

Nous navons ici aucune interaction entre les intensits qui poussent le cours la
hausse et les intensits qui poussent la baisse. De plus, nous navons notifi dindice sur le noyau de pnalisation, en effet, nous avons w+ = w = w, les intensits
sont supposes symtriques la hausse comme la baisse.
Nanmoins, malgr sa simplicit, ce modle permet de reproduire le signature
plot caractristique des donnes trs haute frquence. De plus, si nous augmentons la dimension du processus de Hawkes 4, i.e.,

75

Trading Haute Frquence

A:

B:

A,+ (t|Ft )

= A +

A, (t|Ft )

= A +

B,+ (t|Ft )

= B +

B, (t|Ft )

= B +

Z t
0

Z t
0

Z t
0

Z t
0

w+ (t s)NA,+ (ds)
w (t s)NA, (ds)
(2.4.29)
w+ (t s)NB,+ (ds)
w (t s)NB, (ds).

Nous avons suppos que les noyaux de pnalisation taient les mmes entre actif
si la hausse et si la baisse. En dautres termes, les sauts la baisse (hausse)
de lactif A excitent les sauts la baisse (hausse) de lactif B, les intractions
nexistant pas. La diffusion des prix de deux actifs A et B est alors,
XA = NA,+ NA, , et XB = NB,+ NB, .

(2.4.30)

Les auteurs de [BaDeHoMu11] arrivent alors montrer que dans ce cas, la covariation du modle correspond la covariation des faits styliss, et que leffet lead-lag
est bien reproduit. De plus, mesure que lchelle de temps augmente, la limite
du processus tend vers un mouvement Brownien.

76

Bibliographie
[Ba00] L. Bachelier, Thorie de la Spculation, Annales Scientifiques de lcole
Normale Suprieure 3 (17) : 21-86, 1900.
[BaDeHoMu12] E. Bacry, S. Delattre, M. Hoffmann et J-F. Muzy, Modelling Microstructure Noise with Mutually Exciting Point Processes, Submitted to Quantitative Finance, 2012, arXiv.org.
[BaDeHoMu11] E. Bacry, S. Delattre, M. Hoffmann et J-F. Muzy, Scaling Limits
for Hawkes Processes and Application to Financial Statistics, Submitted to
Annals of Applied Probability, 2011,arXiv.org.
[BaKoMu08] E. Bacry, A. Kozhemyak et J-F. Muzy, Continuous Cascade Models
for Asset Returns, Journal of Economic Dynamics and Control, 32(1) :156-199,
2008.
[BaMu02] E. Bacry et J-F. Muzy, Multifractal Stationary Random Measures and
Multifractal Walks with Log-Infinitely Divisible Scaling Laws, Phys. Rev. E, 66,
056121, 2002,arXiv.org.
[BaMuDe01] E. Bacry, J.F. Muzy et J. Delour, Multifractal Random Walks, Phys.
Rev. E 64, 026103-026106, 2001, 2011,arXiv.org.
[BaBoMi96] R.T. Baillie, T. Bollerslev et H.O. Mikkelsen, Fractionally Integrated
Generalized Autoregressive Conditional Heteroskedasticity, Journal of Econometrics, 1996.
[BaLaOpPhTa03] J.M. Bardet, G. Lang, G. Oppenheim, A. Philippe et M. Taqqu, Generators of Long-Range Dependent Processes : A Survey, Long-range
Dependence : Theory and Applications, Birkhauser, 2003.
[BiHiSp95] B. Biais, P. Hillion, et C. Spatt, An Empirical Analysis of the Limit
Order Book and the Order Flow in the Paris Bourse, Journal of Finance 50,
1655-1689, 1995.
[Bo86] T. Bollerslev, Generalized Autoregressive Conditional Heteroskedasticity,
Journal of Econometrics, 31 :307-327, 1986.
77

Trading Haute Frquence

[BoEnNe94] T. Bollerslev, R. Engle et D. Nelson, ARCH Models, Handbook of


Econometrics, vol. IV, 1994.
[BoMePo02] J. P. Bouchaud, M. Mezard, et M. Potters, Statistical properties of
stock order books : empirical results and models, Quantitative Finance, 2(4),
2002, arXiv.org.
[BoPo04] J.P. Bouchaud et M. Potters, Theory of Financial Risk and Derivative
Pricing, Cambridge University Press, 400, 2003.
[CaFi01] L. Calvet et A. Fisher, Forecasting Multifractal Volatility. Journal of Econometrics 105 : 27-58, 2001.
[CaFi04] L. Calvet et A. Fisher, How to Forecast Long-Run Volatility : RegimeSwitching and the Estimation of Multifractal Processes. Journal of Financial
Econometrics 2 : 49-83, 2004.
[ChMuPaAd11] A. Chakraborti, I. Muni Toke, M. Patriarca, F. Abergel, Econophysics Review : I. Empirical facts, Quantitative Finance, vol.11, no.7, 9911012, 2011, arXiv.org.
[Cl73] P.K. Clark, A Subordinated Stochastic Process Model with Finite Variance
for Speculative Prices, Econometrica 41, 135-156, 1973.
[GeDaMuOlPi01] R. Gencay, M. Dacorogna, U. Muller, R. Olsen, O. Pictet, An
Introduction to High-Frequency Finance, Academic Press, New-York, 383 pp,
2001.
[DaVe05] D.J. Daley et D. Vere-Jones, An Introduction to the Theory of Point
Processes, Springer series in statistics, 2005.
[En82] R. Engle, Autoregressive Conditional Heteroscedasticity with Estimates of
the Variance of United Kingdom Inflation, Econometrica, Vol. 50, No. 4, pp.
987-1007, 1982.
[FaTu12] A. Fauth et C. Tudor, Multifractal Random Walk with Fractionnal Brownian Motion via Malliavin Calculus, soumis, 2012.
[FiCaMa97] A. Fisher, L. Calvet, et B. Mandelbrot, Multifractality of Deutschemark / US Dollar Exchange Rates, Discussion Paper 1166, Cowles Foundation,
1997, SSRN.
[Go98] G. Gonzlez-Rivera, Smooth Transition GARCH models, Studies in Nonlinear Dynamics and Econometrics, 3, 61-78, 1998.
[GoPlAmMeSt99] P. Gopikrishnan, V. Plerou, L.A. Amaral, M. Meyer et H.E
Stanley, Scaling of the Distribution of Fluctuations of Financial Market Indices,
Phys. Rev. E, 60, 5305-5316, 1999, arXiv.org.
78

Trading Haute Frquence

[GlJaRu93] L. Glosten, R. Jagannathan et D. Runkle, On the Relationship Between the Expected Value and the Volatility of the Nominal Excess Return on
Stocks, Journal of Finance, 48, 1779-1801, 1993.
[Ha12] N. Hautsch, Econometrics of Financial High-Frequency Data, Springer,
Berlin, 2012.
[Hu10] H. Hurst, Long-Term Storage Capacity in Reservoirs, Trans. Amer. Soc.
Civil Eng. 166, 400-410, 1951.
[Ko40] A. N. Kolmogorov, The Wiener Spiral and Some Other Interesting Curves
in Hilbert Space, Dokl. Akad. Nauk SSSR. 26 :2, 115-118. (Russian), 1940.
[La07] J. Large, Measuring the Resiliency of an Electronic Limit Order Book, Journal of Financial Markets 10, no. 1, 1-25, 2007.
[Le12] C.-A.Lehalle, Market Microstructure Knowledge Needed to Control an
Intra-Day Trading Process, Forthcoming in Handbook on Systemic Risk, 2012.
[Lu08] T. Lux, The Markov-Switching Multifractal Model of Asset Returns : GMM
Estimation and Linear Forecasting of Volatility. Journal of Business and Economic Statistics 26 (2) : 194-210, 2008.
[MaFiCa97] B. Mandelbrot, A. Fisher, et L. Calvet, A Multifractal Model of Asset
Returns, Discussion Paper 1164, Cowles Foundation, 1997, SSRN.
[MaNe68] B. Mandelbrot et J. Van Ness, Fractional Brownian Motions, Fractional
Noises and Applications, SIAM Review 10, 422-437, 1968.
[MaSt07] R.N. Mantegna et H.E. Stanley, An Introduction to Econophysics : Correlations and Complexity in Finance, Cambridge University Press, Cambridge,
UK, 2000.
[MoViMoGeFaVaLiMa09] E. Moro, J. Vicente, L.G. Moyano, A. Gerig, J.D. Farmer, G. Vaglica, F. Lillo, et R.N. Mantegna, Market Impact and Trading Profile
of Large Orders in Stock Markets. Phys. Rev. E, 80, 066102, 2009, arXiv.org.
[Mu10] I. Muni Toke, "Market Making" in an Order Book Model and its Impact on
the Bid-Ask Spread, in Econophysics of Order-Driven Markets, New Economic
Windows, Springer-Verlag Milan, 2010, arXiv.org.
[Ne91] D. Nelson, Conditional Heteroskedasticity in Asset Returns : A New Approach, Econometrica 59 : 347-370, 1991.
[Vo05] J. Voit, The Statistical Mechanics of Financial Markets, Springer, 3rd ed.,
378, 2005.

79

Deuxime partie
Arbitrage Statistique

80

Trading Haute Frquence

Cette partie sera faite en cours, je ne donne ici que quelques ides basiques.
Les stratgies ne sont pas crites ici.

2.5

Performance

Dfinition 2.5.1. Soit (X(t), t 0) le cours de lactif financier et (t) la


position linstant t. Si (t) = 1 (-1) on dira quon se met "Long" ("Short") sur
le march si on achte (vend dcouvert) lactif financier, il sagit dun pari la
hausse (baisse). Si (t) = 0 on est "Flat", aucune dcision nest prise linstant
t. On peut interprter de deux manires cette dernire position, soit on reste sur
la position dtermine en t 1, soit on dnoue entirement son portefeuille. De
la mme manire, si (t 1) = (t) 6= 0, on peut soit conserver la pose initie en
t 1, soit cumuler la position.
Rappelons



que le log-rendement de lactif linstant t est donn par, X(t) =


et X = ( X(1), , X(t)) le vecteur des rendements sur lenlog
semble de lhistorique, (t) la position donne par la stratgie linstant t et
= ((1), (2), , (t)) lensemble des positions sur lhistorique. Pour estimer
la qualit de la stratgie nous pouvons dterminer (entre autres),
X(t)
X(t )

t
1X
(s) X(s)
moyenne des rendements :=
t s=1

v
u

t
1 uX
cart type := t ((s) X(s) X)2
t s=1
t
100 X
% de positions corrects :=
1(s)=sign( X(s))
t s=1

max drawdown := max

0st

max

0st

( t
X
s=1

(s) X(s)

t
X

(s) X(s) .

s=1

(2.5.1)
Lcart type donne le risque de la stratgie, au sens de Markowitz, sil est
appliqu directement sur lactif il nous donne sa volatilit (du moins cest une
manire de calculer la volatilit dun actif). Le max-drawdown reprsente la plus
grosse perte encaisse au cours de la priode de trading. Un moyen visuel et rapide
de se faire une ide est de tracer les rendements cumuls, lequity curve, de la
stratgie,
81

Trading Haute Frquence

Dfinition 2.5.2 (Ratio de Sharpe). La solution la plus simple et la plus


courante pour dterminer le risque est de calculer lcart type des rendements. Le
ratio de Sharpe est construit pour maximiser les rendements et pnaliser le risque,
X b X
max q
.
t
Var( X)

(2.5.2)

b est la stratgie benchmark, la stratgie non risque, plus gnralement, il sagit


de la stratgie dfinie par le gestionnaire comme celle "battre".
Lalgorithme slectionnera uniquement une stratgie qui a des rendements suprieurs au benchmark (numrateur), et qui naura pas un risque trop lev (dnominateur).
Le problme du ratio de Sharpe est quil pnalise aussi bien les fortes variations
de rendements ngatifs que positifs.
Dfinition 2.5.3 (Ratio de Sortino). Le ratio de Sortino (dans sa version
simplifie) est quivalent au ratio de Sharpe dans le sens que lon cherche maximiser son esprence de rendement tout en pnalisant le risque de la stratgie. A
la diffrence que le risque nest pas dfini comme lcart type des rendements mais
comme lcart type des rendements uniquement ngatifs.
max q

X b X

(2.5.3)

Var( X1(s) X<0 )

De manire plus formelle on cherche rsoudre le problme,


P:

max[ X b X]

s.c.
Var( X1

(s) X<0 )

(2.5.4)
k

Le lagrangien associ est alors,




max [ X

b X]

Var( X1(s) X<0 ) .

(2.5.5)

Le multiplicateur de lagrange, , peut tre interprt comme le paramtre daversion au risque, libre au gestionnaire de lajuster selon son niveau daversion au
risque.

82

Trading Haute Frquence

Notons que cette phase doptimisation ne peut tre faite sur lensemble de lhistorique disponible au risque du sur-apprentissage, over-fitting, i.e. davoir un jeu
de paramtres trs, trop, prcis, correspondant uniquement lhistorique pass
et ne se reproduisant plus (on donnera une dfinition plus rigoureuse du surapprentissage par la suite). Une premire solution est de faire une optimisation
squentielle.
Bien sr, il faut rajouter les fees, i.e. les cots de transaction du broker ainsi
que le spread bid-ask. Le spread nest pas rajouter si lon dispose de lhistorique
bid et ask. Pour un ordre march, on supposera simplement quil est tout le temps
excut au ask price pour un ordre dachat et au bid price pour un ordre de vente.
Il faut rajouter le temps de latence (voir tableau 2.2),

Dpart
Arrive
Temps (ms)
Paris
Londres
20
Paris New York
110
Paris
Tokyo
300
Paris
Sydney
320
Table 2.2 Temps de latence entre les principales places boursires et Paris.

Le plus simple tant bien sr de louer un box dans le coeur de la place boursire
qui nous intresse pour diminuer drastiquement le temps de latence. Si nous recevons du flux en temps rel, le temps de le recevoir, de faire tourner les algorithmes
qui vont prendre les dcisions et, de renvoyer un ordre, nous perdons ncessairement du temps, le cours nest donc plus le mme. Si lon envoie un ordre march
au broker, nous sommes sr dtre excut, nanmoins, supposons lordre comme
un ordre dachat, pas au ask price sur lequel nous avons fait les calculs, mais sur le
ask price au moment ou lordre aura t reu. Il faut bien tre conscient de cela en
faisant les backtests, en estimant correctement le temps de latence pour pouvoir
estimer le ask price effectivement trait.
Pour les ordres limites, la tche est un peu plus complique. Notons pask (t) le
ask price et pbid (t) le bid price linstant o nous avons reu linformation. Nous
envoyons un ordre limite de vente pask (t)+ktick, il y a deux principales approches
83

Trading Haute Frquence

pour dterminer si nous aurions t excut ou non, le type defaut ou libral.


Le type libral est le plus avantageux, il suppose une excution partir du
moment ou le prix t touch au moins un fois, seulement il peut tre rencontr
mais ce nest pas pour autant que notre ordre serait pass pour la simple et bonne
raison que le volume correspondant cette limite na pas totalement t absorb.
Si lon se situe en bas de la pile, et que seulement une partie du volume a t
absorbe, la priorit temps ne nous permet pas de pass.
Le deuxime type, defaut, est plus contrariant, il suppose que lordre aurait t
excut ssi la totalit du volume a t prise. En dautre terme, nous sommes excuts pask (t) + ktick ssi le cours de lactif est pass au moins pask (t) + (k + 1)tick,
on parle de pntration de la limite.
Pour plus de prcision dans la ralisation du backtest, nous devrions avoir
donc en plus de lhistorique bid-ask, lhistorique complet des volumes changs
pour chacune des limites.

2.6

Thorie du Signal

On prsente ici les mthodes de filtrations dun signal (un cours dactif) erratiques. Il sagit de lisser les choses. Le mthode la plus baisque consiste faire
un moyenne mobile. On peut aller plus loin en utilisant les mthodes dondelettes,
Feynman-Kack, etc. Cette partie sera fait en cours !

2.7

Agrgation des Stratgies

Finalement, il est facile de produire des stratgies de trading, chacune donnant une performance plus ou moins bonne selon la priode, selon lactif, la phase
de backtest permet de slectionner son panier dindicateurs. La question que lon
peut facilement se poser est comment prendre une dcision linstant t face
1 (t), 2 (t), , K (t), i.e. K stratgies de trading.
Lide la plus simple est de prendre la position revenant le plus souvent
linstant t,

84

Trading Haute Frquence

(t) = sign

K
X

k (t) .

(2.7.1)

k=1

Cette mthode est dite vote majoritaire, sur la figure (2.6) nous avons test 14
stratgies de trading et leur agrgation par vote majoritaire (2.7.1).

Equity Curves des Stratgies

Stratgie 1

400

Stratgie 2
Stratgie 3
Stratgie 4
Stratgie 5

300

Stratgie 6
Stratgie 7
Stratgie 8
Stratgie 9

200

Stratgie 10
Stratgie 11
Stratgie 12
Stratgie 13
Stratgie 14

100

100

Moyenne Simple

2000

2001

2002

2003

2004

2005

2006

2007

2008

2009

2010

2011

Temps

Figure 2.6 14 stratgies de trading appliques au SPY du 31/08/2006 au 21/04/2011,


journalier, 1169 points et leur agrgation par vote majoritaire.

On peut tendre cette ide en pondrant chacune des stratgies par leur performance passe,
(

wk (t) =

(1 + )wk (t 1)
(1 )wk (t 1)

si k (t 1) = sign( X(t 1))


si k (t 1) 6= sign( X(t 1))

[0, 1]. (2.7.2)

La rgle de dcision est alors,


K
1 X
pk (t)k (t)

(t) = sign
K k=1

wk (t)
pk (t) = PK
.
j=1 wj (t)

(2.7.3)
85

Trading Haute Frquence

Ce type dalgorithme peut se rfrer la thorie des jeux.


Nous appellerons maintenant chacune des stratgies des experts ou des bras.
Nous notons D lespace de dcision, k (t) D et Y lespace darrive, X(t)
Y. A chaque instant, lagent choisit un bras k (t) et observe une perte, `k (t) =
`(k (t), X(t)) : D Y R et `k (t) = `(
k (t), X(t)) la perte de la stratgie
agrge, ` est la fonction de perte. Lobjectif est de minimiser le regret cumul de
la stratgie,
min Lk (t),
Rk (t) = L(t)

(2.7.4)

k=1, ,K

P
la perte
o Lk (t) = ts=1 `k (t) est la perte cumule de lexpert k linstant t et L(t)
de la stratgie agrge. On parle de regret puisque linstant t nous appliquons

alors que dans lensemble des stratgies, peut tre que lune dentre elles avait la
bonne dcision, la perte minimum, min `. Nous noterons galement rk (t) le regret
mink=1, ,K `k (t).
non-cumul de la stratgie k linstant t, rk (t) = `(t)

Le type dalgorithme prsent ici est dit dexploration/exploitation, lagent ne


connat pas les lois des diffrents experts, il doit donc acqurir de linformation en
tudiant lhistorique (exploration) pour pouvoir agir de manire optimale (exploitation).
Dfinition 2.7.1 (Prdiction avec avis dexperts). Le protocole de prdiction
peut tre naturellement interprt comme le jeu rept entre le prvisionniste (le
gestionnaire) qui joue
(t) et "lenvironnement" (le march) qui rvle X(t).
Le jeu le plus simple est de prendre le meilleur expert linstant t par rapport
aux pertes cumules,

(t) = k (t)

si k = arg min
0
k K

t1
X

`k0 (t).

(2.7.5)

s=1

Dans le cas de multiples minimiseurs, on choisit k de manire alatoire.


Une famille dalgorithme susceptible de rpondre notre problmatique est la
classe des algorithmes de bandit multi-armes contre adversaire. Bandit multi-armes
car on se rfre au jeu de bandit-manchot, le joueur place sa mise dans plusieurs
machines possibles et son but est de gagner au moins autant que sil avait connu
86

Trading Haute Frquence


Algorithme : Prdiction avec avis dexperts
Paramtres : D, Y, `, ensemble K des experts.
Pour tout tour t = 1, 2,
(1) Lenvironnement choisit le prochain rendement X(t) et les avis dexperts
{k (t) D : k K} ; les avis sont rvls au prvisionniste.
(2) Le prvisionniste choisit la prdiction
(t) D
(3) Lenvironnement rvle le rendement X(t) Y
(4) Le prvisionniste prend les pertes `k (t) et chaque expert `k (t)

en avance quelle machine aurait apport le meilleur gain. Contre adversaire, i.e.
quand lenvironnement distribue des rcompenses non i.i.d. Nous avons deux cas
distincts, le premier est dans le cadre dinformation parfaite, i.e. que lon connat
les rcompenses, ou pertes, de chacun des experts, le second dans le cas dinformation partielle, i.e. que lon ne connat pas toutes les rcompenses, ou pertes,
de tous les experts sur un horizon infini. Nous allons prsenter seulement un cas
correspondant linformation complte.
Information Complte. Comme pour (2.7.2), une stratgie naturelle dagrgation pour notre problmatique est de construire une agrgation par moyenne
pondre des experts, nous donnons cette fois un cadre plus formel. La prdiction
prend la forme,
PK

(t) =

k=1 wk (t
PK
j=1 wj (t

1)k (t)
,
1)

(2.7.6)

o w1 (t 1), w2 (t 1), , wK (t 1) 0 sont les poids associs aux experts


linstant t avec wk (t) = (Rk (t)). () : R R est le potentiel, fonction positive,
convexe et croissante de la forme,
(u) =

K
X

(ui ) ,

(2.7.7)

k=1

o est un paramtre positif, : R R une fonction positive, croissante, deux


fois diffrentiable et : R R positive, strictement croissante, concave et deux
fois diffrentiable.

87

Trading Haute Frquence

Lemme 2.7.1. Si la fonction de perte est convexe en son premier argument,


sup

K
X

rk (t)0 (Ri (t 1)) 0.

(2.7.8)

y(t)Y k=1

Preuve. Avec le lingalit de Jensen on a directement,


PK

`(
(t), y(t)) = `

0
k=1 (Rk (t 1))k (t)
, y(t)
PK
0
k=1 (Rk (t 1))

0 (Rk (t 1))`(k (t), y(t))


.
0 (Rk (t 1))
(2.7.9)

Thorme 2.7.1. Supposons que lagent satisfait la condition de Blackwell,


i.e.
sup r(t)(R(t 1)) 0,

(2.7.10)

y(t)Y

(la preuve est similaire celle du lemme 2.7.1) alors pour tout t = 1, 2, ,
t
1X
C(r(s)),
(R(t)) (0) +
2 s=1

o
C(R(t)) = sup
uRK

K
X

! K
X

(uk )

k=1

00 (uk )rk2 (t).

(2.7.11)

(2.7.12)

k=1

Preuve. Daprs le thorme de Taylor on a,


( X(t)) = (R(t 1) + X(t))
= (R(t 1)) + (R(t 1)r(t)) +
(R(t 1)) +

K X
K
1X
2
| ri (t)rj (t)
2 i=1 j=1 ui uj

K X
K
2
1X
| ri (t)rj (t).
2 i=1 j=1 ui uj

(2.7.13)
Prenons lexemple du potentiel exponentiel dfini par,
(u) =

K
X
1
ln( eui ).

k=1

(2.7.14)
88

Trading Haute Frquence

Il sagit de la stratgie de moyenne pondre exponentiellement. Dans ce cas, les


poids prennent la forme,
wk (t 1) = (Rk (t 1)) = eRk (t1) .

(2.7.15)

La prvision scrit alors,

(L(t1)L
k (t1)) (t)
k
k=1 e

t = PK (L(t1)L

(t1))
j
j=1 e
PK
eLk (t1) k (t)
,
= k=1
PK
Lj (t1)
j=1 e

PK

ce que lon peut rcrire sous la forme


t =

PK

k=1

(2.7.16)

wk (t 1)k (t) avec,

wk (t 1)el(k (t),r(t))
wk (t) = PK
.
l(j (t),r(t))
j=1 wj (t 1)e

(2.7.17)

Proposition 2.7.1. Supposons que la fonction de perte, `, est convexe en


son premier argument et prend des valeurs dans [0,B]. Pour tout K et > 0, le
regret de la stratgie vrifie,
) min Lk (T ) ln K + T B 2 .
L(T
k=1, ,K

(2.7.18)

Preuve. Pour tout t > 0, k = 1, , K, on note wk,t = eLk (t1) et W (t) =


(t)
w1 (t) + + wK (t), donc pk (t) = wWk(t)
. Alors,
K
X
W (T + 1)
= ln
eLk (T ) ln K
ln
W (1)
 k=1


ln

max eLk (T )

(2.7.19)

j=1, ,K

= min Lk (T ) ln K.
k=1, ,K

Pour continuer on a besoin dintroduire le lemme de Hoeffding-Azuma.


Lemme 2.7.2. Soit X une variable alatoire tel que a X b. Alors pour
tout s R,
s2 (b a)
.
(2.7.20)
ln E(esX ) sEX +
8
89

Trading Haute Frquence

Ainsi,
K
X

ln

e`k (T ) eLk (T 1)

Wt+1
= ln k=1 K
X
W (t)

eLk (t1)

k=1

= ln

K
X

(2.7.21)

`k (t)

pk (t)e

k=1
K
X

pk (t)`k (t) +

k=1

2 2
B .
8

en sommant pour t = 1, , T on trouve,


ln

T
X
W (T + 1)
T 2 2

`(t).

B
W (1)
8
t=1

(2.7.22)

On conclut la preuve en combinant la borne suprieure (2.7.22) avec la borne


infrieure (2.7.19).
Nous renvoyons [CeLu06] et [AuCeFrSc01] pour plus dalgorithmes dagrgation du mme type.

90

Chapitre 3
Apprentissage Statistique
Dans ce chapitre nous allons prsenter des algorithmes susceptibles dapprendre
une proprit pour pouvoir la reproduire. Par exemple, un taux de chmage faible,
ou au moins plus bas quattendu, pousse lindice du pays en question la hausse,
cest une rgle plus ou moins vrifie empiriquement. Donc, ds que les chiffres du
taux de chmage vont sortir, nous devrions voir les indices du pays soit senvoler,
soit dvisser, en fonction du taux. Il y a normment de chiffre macroconomique
qui ont un impact sur les marchs financiers, citons entre autre linflation, CPI,
GBP, etc., il est naturellement trs dlicat pour un gestionnaire discrtionnaire de
prendre en compte toutes les informations, de ragir instantanment, et correctement. Les algorithmes dapprentissage statistique se proposent de le faire.
Notons X un ensemble dinput, X = {X1 , X2 , , Xd } Rtd , Xi =(xi (1),
, xi (t)), cest lensemble des variables explicatives, et Y loutput, Y = (Y1 , , Yu )
Rtu , Yi = (yi (1), , yi (t)), il sagit de la cible, ce que lon cherche apprendre.
Selon la problmatique, Y pourra tre les rendements de lactif que lon cherche
reproduire, le cours brut, ou uniquement le signe des rendements. Comme nous
venons de le dire, X pourra tre rempli de variables macroconomiques, mais aussi
des retards de Y, dautres dactif financier, davis dexperts, diverse stratgies
de trading. A la diffrence dune simple agrgation par vote majoritaire ou par
moyenne pondre, nous pourrons essayer de trouver des rgles de dcisions en
ne regardant pas uniquement directement les directions donnes mais les valeurs
des indicateurs, lalgorithme se chargera de trouver des relations, du moins, sil en
trouve.
Le premier outil mathmatique prsent est le rseau de neurones multicouche
91

Trading Haute Frquence

feed forward, (multilayer perceptron feed-forward) et nous verrons quil peut scrire
comme un problme de classification ou de prvision.

3.1

Rseau de Neurones

3.2

Perceptron Multicouche

Figure 3.1 Structure typique dun rseau de neurones 2 couches, 4 inputs et 5 neurones
sur la couche cache.

Un MLP (Multilayer Perceptron) est organis en couches, chaque neurone


prend en entre tous les neurones de la couche infrieure. On dfinit alors une
"couche dentre", une "couche de sortie", et n "couches caches". Les inputs forment
la premire couche, ils passent aux travers des couches caches (sur la Figure (3.1),
une seule couche cache) avant de produire la sortie. Ce type de rseau est trs
rpandu du fait de son apprentissage ais. Il ne possde pas de connexions intraclasses ni de cycles de retour sur les couches, une couche m ne peut utiliser que
les sorties de la couche cache m 1 (feed-forward). Enfin, ils sont totalement
connects, chaque neurone de la couche est reli tous les neurones de la couche
prcdente.
Dfinition 3.2.1 (neurone). Un neurone est une fonction dfinie de Rd dans

92

Trading Haute Frquence

R par,

g(x) =

d
X

w j xj + w 0 ,

(3.2.1)

j=1

o wj , j = 1, 2, , d est le vecteur des poids et est la fonction dactivation.


On a donc un oprateur de sommation qui est activ sil dpasse un certain seuil
dpendant de la fonction dactivation. Les fonctions sigmodes sont trs utilises
pour cette problmatique.
Dfinition 3.2.2 (sigmode). Une sigmode est une fonction croissante vrifiant,

(x)

(x)

x
x+

(3.2.2)

par exemple,
1
, R.
1 + ex
Dautres fonctions dactivation sont possibles,

(3.2.3)

(x) =

(x) = 1x0 ,

(x) = tanh x.

(3.2.4)

Dfinition 3.2.3 (perceptron multicouche feed-forward). Un rseau de neurones une couche cache et c < neurones sur cette couche est dfini par,
y(t) := f (w, X(t)) =

c
X
j=1

(2)

wj

d
X

(2)
(1)
(1)
wj xj (t) + w0 + w0 ,

t = 0, 1, .

j=1

(3.2.5)
w(1) et w(2) sont respectivement les poids des liaisons entre les inputs et la couche
(i)
cache et, de la couche cache vers loutput. w0 , i = 1, 2 sont les biais rajouts au
rseau, ils jouent le mme rle que lintercept dans une rgression linaire. yt est
la sortie du rseau.
Pour le cas dun problme de rgression, on peut rajouter une liaison directe
entre les inputs et la sortie,
y(t) := f (w, X(t)) =

d
X
i=1

(0)
wi xi (t)

c
X
j=1

(2)
wj (1)

d
X

(1)
wjk xk (t)

(1)
wj0

(2)

+ w0 ,

k=1

(3.2.6)
93

Trading Haute Frquence

sigmode

x>0
1.0
0.6
y
0.4

0.0

0.0

1.0

0.2

0.2

0.5

0.4

0.0

0.6

0.5

0.8

0.8

1.0

1.0

tangente hyperbolique

10

10

10

10

10

10

Figure 3.2 De gauche droite, tangente hyperbolique, sigmode avec = 1/2 (noir), = 2
(rouge), = 10, verte et, indicatrice.

w(0) est le vecteur des poids des inputs vers loutput (liaisons directes non reprsentes sur la figure (3.1)),
Le but dun algorithme dapprentissage, et donc dun rseau de neurones est
de minimiser le risque de la fonction de prdiction g : X Y, ` tant comme dans
la section prcdente une fonction de perte,
w) = E(`(Y, g(w, X))),
R(g,

(3.2.7)

approxime par,
R(g, w) =

t
1X
`(y(s), g(w, x(s))).
t s=1

(3.2.8)

Une fonction ligible devra donc vrifier,


g arg mingG R(g, w).

(3.2.9)

o G est un sous-ensemble de F(X , Y), lensemble des fonctions de prdiction.

94

Trading Haute Frquence

Dans le cadre dun problme de prvision, en notant Y = (y(1), y(2), , y(t))


le cours dun actif et Y = (
y (1), y(2), , y(t)) le rsultat de la modlisation
sur la phase dapprentissage, on peut chercher minimiser lerreur quadratique,
`(u, v) = (u v)2 ,
R(f, w) =
=

t
X

(y(s) f (w, x(s)))2

s=1
t
X

(3.2.10)
2

(y(s) y(s)) .

s=1

Pour un problme de classification, on peut choisir de calculer la cross-entropy,


R(f, w) =

t
X

y(s) log f (w, x(s)).

(3.2.11)

s=1

Bien sr, pour pouvoir produire la sortie Y il faut pouvoir dterminer les poids
w. La minimisation de lerreur nest pas un problme doptimisation convexe
cause de la forme particulire de la fonction dactivation (cf (3.3)), une manire
commune est dappliquer une descente de gradient (voir appendix pour plus de
dtails).
Pour notre problmatique on parlera de rtro-propagation , cest--dire que lon
calcule dabord les erreurs pour tous les chantillons sans mettre jour les poids
(on additionne les erreurs) et lorsque lensemble des donnes est pass une fois
dans le rseau, on rtro-propage lerreur totale. Cette faon de faire est prfre
pour des raisons de rapidit et de convergence. Si nous reprenons lalgorithme de
descente de gradient,
wk+1 = wk w,

(3.2.12)

avec w = k Rw , est le paramtre dapprentissage.


Les quations, dans le cadre o u = 1 scrivent,
R(s)
(0)
wi

R(s)

= 2(y(s) f (w, x(s)))

(1)

= 2(y(s) f (w, x(s)))

(2)

= 2(y(s) f (w, x(s)))

wjk
R(s)
wj

f (w, x(s))
(0)

wi
f (w, x(s))
(3.2.13)

(1)

wjk
f (w, x(s))
(2)

wj

.
95

Trading Haute Frquence

La mise jour des poids par la descente de gradient scrit alors,


(i)
wk+1

(i)
wk

t
X

R(s)
(i)

s=1

wk

, i = 0, 1, 2.

(3.2.14)

Dfinition 3.2.4 (sur-apprentissage). Un problme trs frquent et ennuyeux


est le phnomne de sur-apprentissage, i.e. quand le risque sur la partie empirique
est bien infrieure au risque rel. Il existe presque une infinit de fonctions g
pouvant rpondre au critre (3.2.9). Sur la figure (3.3), la courbe rouge apprend
par coeur les donnes mais a de fortes variations entre les points, elle sur-apprend
Y, la verte quant elle semble mieux coller aux donnes.

10

price

15

20

25

overfitting

time

Figure 3.3 Deux fonctions minimisant le risque empirique. Dans les deux cas R =
1
n

Pn

i=1 (y(i)

y(i))2 = 0

Des poids w avec des valeurs trop importantes ont tendance over-fitter le
modle, on pense au cas dune rgression ridge (rgularisation de Tikhonov) et on
rajoute un terme de pnalit lerreur pour rgulariser la solution afin dviter
des coefficients instables,
RPen (f, w) = R(f, w) + ||w||22 ,

R,

(3.2.15)
96

Trading Haute Frquence

est le paramtre dajustement. Une autre manire de voir (3.2.15) est que lon ne
prend jamais G = F(X , Y), on se restreint une classe de fonction ayant des paramtres pas trop levs, on retrcie lensemble, on shrink. Un moyen complmentaire
et ncessaire pour viter le sur - apprentissage est deffectuer une cross-validation,
utiliser avec parcimonie car cette mthode est trs coteuse en temps de calculs.
Pour pouvoir appliquer lalgorithme du gradient on a besoin dinitialiser les
poids. Sils sont trop prs de zro, la fonction dactivation disparat et on se
rapproche dune rgression linaire. Nanmoins, on commence avec des poids alatoires proches de zro, et donc dans un cadre linaire, la mise jour des poids
permet de passer progressivement dans un cadre non linaire. Des poids initiaux
strictement gaux zro ne permettent pas lalgorithme de sajuster, on reste
toujours avec des poids zro, contrario, commencer avec des poids trop levs
donnent des rsultats faibles.
Un point (un seul ?) na toujours pas t tudi, celui du nombre de couche
cache et du nombre de neurones sur chacune dentre elles.
Thorme 3.2.1 (Approximation universelle). Soit g une fonction C borne sur un compact de Rd dans Rd . Alors pour tout > 0, il existe un MLP f (w, x)
une couche cache et c < neuronnes sur cette couche tel que,
Z
Rd

||g(x) f (w, x)||dx < .

(3.2.16)

Ce thorme explique le succs des perceptrons pour lapproximation de fonction. Dautant plus que le nombre de paramtres optimiser est bien infrieur
celui dun polynme.
Il nexiste malheureusement pas de thorme donnant clairement ce montant.
Certainement la meilleure manire pour dterminer ce nombre est deffectuer une
cross-validation, donner trop de choix lalgorithme augmenterait le coup de calcul. Trois sont retenus, prendre 75%, la racine carre, ou le nombre gal dinput.
Comme il sagit dun apprentissage supervis, on a besoin de dterminer les
positions
(T N ), ,
(T 1) pour construire le rseau. La manire la plus
simple est de prendre
(s) = sign( X(s)), t N s < t, nanmoins, il est
possible que le rseau ait du mal apprendre parfaitement chacune des positions,
on risque surtout de sur-apprendre. Une ide simple est de dcomposer le rseau
en deux "sous-rseaux", lun dterminant uniquement les positions longues et flat,
lautre short et flat.
97

Trading Haute Frquence

(t) =

(
f (w, X)

{1, 0}
.
f (w, X) {0, 1}
+

(3.2.17)

Il faut bien faire la distinction entre le pourcentage de "bonne position" et la


moyenne des rendements. On ne cherche pas forcment avoir un pourcentage le
plus lev possible, mais surtout avoir un rendement moyen le plus lev possible.
On peut alors rduire la problmatique,

si X(s) < q
0 si q X(s) q 0

s =

1 si X(s) > q 0 ,

(3.2.18)

q et q 0 sont les seuils partir desquels on estime que le rendement de lactif est
suffisant pour le prendre en considration, on peut par exemple les dterminer en
prenant les quantiles historiques 20% et 80%.
Pour conclure cette section, nous prsentons un autre moyen de dterminer les
poids dun rseau de neurones, cette fois nous navons plus besoin de dterminer
la drive (ou une approximation) de la fonction maximiser (ou minimiser).
Dfinition 3.2.5 (algorithme gntique). Un algorithme gntique est une
fonction heuristique doptimisation pour les cas extrmes o le maximum (minimum) ne peut pas tre dtermin analytiquement. Lide est de reprendre la thorie
de lvolution, slection naturelle, croisement et mutation. Il existe beaucoup de
versions diffrentes des algorithmes gntiques (il sagit en fait dune classe dalgorithme), on prsente ici un algorithme appartenant cette classe pour optimiser
les poids dun rseau de neurones.

3.3

Arbre de Dcision

Dans la section prcdente on a prsent une manire de construire son automate de trading en utilisant un rseau de neurones. Cette fois on va uniquement
prsenter comment constuire un arbre de dcision, la mise en place dun automate
de trading avec cet algorithme est sensiblement la mme.

98

Trading Haute Frquence


Algorithme Gntique
Paramtres : q, p, p0 .
i
),
Initialisation : On gnre une population de possibilits wi = (w1i , , wm
i = 1, , P avec m le nombre de paramtres optimiser et P la taille de la
population. Chacun des wi est appel un chromosome.
(1) Oprateur de slection. On slectionne les [P/2] chromosomes donnant les
meilleurs rsultats par rapport la fonction dvaluation, pour nous, la fonction
dutilit. Les autres chromosomes sont enlevs de la population.
1
2
(2) Oprateur de croisement. Soit w1 = (w11 , , wm
) et w2 = (w12 , , wm
) deux
chromosomes (en tout q% de chromosomes sont croiss), on choisit un entier
alatoirement tel que 0 r m et,
0

w1 = {wj | si j r, alors wj w1 , sinon wj w2 }


0

w2 = {wj | si j r, alors wj w2 , sinon wj w1 }.


1
) un chromosome (en tout p%
(3) Oprateur de mutation. Soit w1 = (w11 , , wm
de chromosomes sont muts), on choisit de muter p0 % du chromosome, on tire
alors mp0 /100 = r entiers alatoirement compris entre 0 et N et,
00

wi = {wj | si j 6= r, alors wj = wji , sinon wj = random}.


(4) on rgnre [P/2] nouveaux chromosomes et on rpte les tapes 2 3 jusqu
convergence.

3.3.1

CART

Il existe plusieurs types darbre, celui prsent ici est lagorithme de Breiman,
CART, Classification And Regression Tree. Lide est trs simple, lespace darrive est Y = {1, 0, 1}, on cherche en fonction des inputs X Rtd quelle
classe on appartient en posant uniquement des questions binaires sur chacun des
Xi = (xi (1), xi (2), , xi (t)), i = 1, , d.
On prend chacun des Xi et pour toutes les valeurs du vecteur, on cre deux
feuilles avec la question, xi < xi (s) et xi xi (s). Pour dterminer limpuret des
99

Trading Haute Frquence

deux feuilles produites on calcule lindice de Gini,


G(m) =

pmk pmk0 ,

(3.3.1)

1 X
1y =k ,
Nm xi Rm i

(3.3.2)

k6=k0

avec,
pmk =

o k est la classe considre, m est le noeud, Rm est la rgion correspondante et


Nm est le nombre total dlments dans la rgion.
La valeur de x qui sera choisie pour crer le premier noeud sera celle qui
minimisera lindice de Gini sur les deux rgions,
x = arg min {G(md ) + G(mg )} ,
x

(3.3.3)

o md et mg sont naturellement les feuilles droite et gauche issues de la rgion m.


Le noeud cr est donc celui qui donne les feuilles les plus homognes possibles.
On continue poser les mmes questions pour dployer larbre jusqu ce quil ne
soit plus possible dhomogniser les noeuds.

100

Trading Haute Frquence

Xi a

Xi < a

Xj < b

Xj b

Flat

Xk < c

Short

X` < d

X` d

Flat

Short

Xk c

Long

Figure 3.4 Arbre de dcision. X X , i, j, k, ` 1, 2, , d, et a, b, c, d R sont des valeurs


appartenant X .

Sur la figure (3.4) on a construit un arbre avec lalgorithme prsent prcdemment. On notera cet arbre A, en fait il sagit de Amax puisque que toutes les feuilles
possibles ont t dployes, il a la ramification maximale. Le premier noeud, la racine de larbre, est reprsent par la question "est ce que xi (t) est suprieur a ou
infrieur ?", auquel cas on descend un niveau au dessous. La rgle de dcision est,

101

Trading Haute Frquence

t =

1 si

0 si
1 si

{xi (t) < a} {xj (t) b} {xk (t) < c} {xi (t) a} {x` (t) d}
o

{xi (t) < a} {xj (t)} {xi (t) a} {x` (t) < d}
{xi (t) < a} {xj (t) b} {xk (t) c}.

(3.3.4)
Prendre Amax pour notre automate nest pas une bonne ide, il sur-apprend
normment, les relations trouves sont beaucoup trop prcises et ne se reproduiront probablement plus, de plus les feuilles nont pas assez dlments pour tre
significatives. On doit laguer larbre.
On note R(A) lerreur de larbre A, on peut naturellement lcrire comme la
P
somme des erreurs de chacune des feuilles R(A) = mi A R(mi ), i = d, g. Un
premier moyen est de minimiser le nombre de feuilles " la main" en considrant
lerreur,
X
R (A) =
R(mi ) + |A|,
0.
(3.3.5)
mi A

avec |A| le nombre de feuilles sur larbre. On a bien videment R(Amax ) = 0, mais
R (Amax ) 6= 0. Selon la valeur de choisie on a donc un sous arbre, Fig (3.3.1).
Une bonne manire de dterminer la valeur de optimale est de faire une
cross-validation par rapport aux dviances.

3.3.2

Boosting

Lide de dployer un arbre de dcision pour avoir la position prendre


linstant t en fonction dun ensemble dinputs est assez sduisante. Nanmoins, en
tant que tel, CART ne donnera pas forcment de bonnes prvisions et peut tre
apparent un classifieur faible. Lalgorithme AdaBoost.M1 propose doptimiser
la performance de lalgorithme en crant un ensemble darbre, A1 , A2 , , AM ,
chacun ayant des poids sur ses inputs issus de lerreur de classification de larbre
prcdent. En faisant cela, on contraint le classifieur donner plus dimportance
aux donnes les plus difficiles ajuster. Limportance dune observation restera
donc inchange si elle est bien classe, sinon, elle crot proportionnellement lerreur du modle. Au final, la dcision sera,
t = sign

M
X

m Am ,

(3.3.6)

i=1

102

Trading Haute Frquence

X i0 a

Xi 0 < a

Short
0

X i0 < b

X i0 b

00

Xi00 < a
1

Flat

Xi00 a

00

00

Xi00 d

Flat
0

Xi0 < c
3

Short

Xi0 c
3

Long

Xi00 < d
4

Flat

00

Short

Table 3.1 Exemple de deux sous arbres extraits de (3.4) pour des valeurs de diffrentes.
o m est dtermin par lalgorithme de boosting. Lagrgation nous permet dviter le sur-apprentissage. On prsente dans lencadr suivant la construction des
classifieurs et des poids associs. Par abus de notation on notera Am (X(s)) la
position donne par le classifieur m linstant 0 < s T .
Remarquons que pour les inputs mal classs qui doivent tre boosts, on doit
avoir une erreur du classifieur infrieur 1/2, sinon m est ngatif et les poids
de lalgorithme sont mis jour dans la mauvaise direction. Pour un problme 2
classes, cette condition est similaire prendre un ala et est facilement atteignable.
Pour un problme K classe, cette prcision peut tre plus complique atteindre.
Lalgorithme AdaBoost.M1 ne pourra donc pas rpondre notre problmatique
puisque Y {1, 0, 1}, K = 3.
Une solution simple pour passer dans un problme multi-classe est de dcomposer le problme K classes en sous problme binaire. On pourra donc sparer
lespace de dcision en Y1 = {1, 0} et Y2 = {0, 1} et appliquer lalgorithme Ada-

103

Trading Haute Frquence


AdaBoost.M1
Initialisation : w(s) = 1/t, s = 1, , t
pour m = 1, 2,
(1) On construit le classifieur Am (X) en utilisant les poids wi .
(2) On calcule lerreur,
Pt

errm =


(3) On calcule m = log

s=1

w(s)1y(s)6=Am (X(s))
.
Pt
s=1 w(s)

1 errm
.
errm


(4) On rinitialise les poids,




w(s) = w(s) exp m 1y(s)6=Am (X(s)) ,

s = 1, , t.

Output :
A(X) = sign

PM

m=1

m A(X).

Boost.M1.
Une modification de lalgorithme AdaBoost.M1 pour avoir des rsultats corrects dans le cas o K > 2 sans crer de sous problmes Yi est lalgorithme Stagewise Additive Modeling using a Multi-class Exponential loss (SAMME), Zhu et
al., 06. En reprenant exactement le mme algorithme que prcdemment, la seule
modification est,


m = log

3.3.3

1 errm
+ log(K 1).
errm


(3.3.7)

Bootstrap

Avant dintroduire les forts alatoires, nous avons besoin dexpliquer le principe de bagging. Il sagit simplement de faire une estimation bootstrap pour rduire
la variance du modle. A la diffrence du boosting o chaque nouvel arbre construit
dpendait de lerreur du prcdent, cette fois, chaque arbre est construit partir
dun chantillon bootstrap de lensemble dapprentissage Z = {(X(1), y(1)), ,
104

Trading Haute Frquence

(X(t), y(t))}. On effectue un tirage avec remise de Z que lon note Zb . La rgle de
dcision est alors, aprs B bootstrap,
t = sign

B
X

A(Zb ) .

(3.3.8)

b=1

3.3.4

Fort Alatoire

Une fort alatoire prolonge cette ide en apportant une nouvelle partie randomize chaque arbre. Pour chacun des chantillons bootstrap on tire de manire
alatoire q inputs dans X . Lintrt est une nouvelle fois de diminuer la variance
du classifieur ainsi que son biais. A la diffrence du bagging, les arbres construits
vont pouvoir prendre en compte tous les inputs. Un modle CART construit classiquement ne prendra pas en compte tous les inputs mais uniquement les plus
importants, les moins dpendants ne peuvent pas donner leurs avis. En randomizant X , on laisse lopportunit tous les inputs dtre pris en compte. En fixant
un nombre q dinput relativement bas, on vite larbre trop profond et, le surapprentissage. Nanmoins, il ne faut pas alimenter la fort par des inputs nayant
aucun rapport au risque du data-snooping (vrai quelque soit la mthodologie utilise).

105

Chapitre 4
Pair Trading
Le pair trading, anctre de larbitrage statistique, est une stratgie permettant
de dtecter une opportunit darbitrage entre deux actifs financiers. En tudiant
le spread, i.e. la diffrence entre deux actifs, on peut voir si lun est sur-valu par
rapport lautre et inversement, si lun est sous-valu par rapport lautre. Lide
du pair trading est donc darbitrer certaines des fortes variations du spread dues
un shock temporaire en supposant quil revienne dans son intervalle historique bien
dfini. Cette stratgie est intuitivement assez simple mais nanmoins trs risque
(cf. LTCM). En dehors de la stratgie en elle-mme, i.e. savoir quand acheter ou
shorter tel ou tel actif et quel montant, il faut trouver deux instruments ligibles
au pair trading. Le spread des deux instruments doit tre mean reverting, cest
vraiment ce point qui mrite le plus dattention quand on sessaye au pair trading.
Si cette dernire proprit nest pas respecte, on risque de se retrouver avec en
portefeuille deux actifs et attendre indfiniment davoir un ordre de dnouement
ou dinversement de la pose si le spread ne revient pas sa moyenne. En dehors
de cette caractristique qui doit tre respecte, il faut intgrer un stop-loss la
stratgie. Enfin, une fois quune paire est slectionne, donc que le spread est
mean-reverting, on a naturellement envie de le modliser par un processus du type
Ornstein Uhlenbeck. Pour commencer nous donnons une dfinition stricte de la
stationnarit et du retour la moyenne pour effectuer la slection.

106

Trading Haute Frquence

4.1

Cointgration

Dfinition 4.1.1 (stationnarit stricte). Un processus alatoire Y = (Yt , t


T ) est strictement stationnaire si n N , (t1 , t2 , , tn ) [0, T ]n , k [0, T ],
L(Yt1 , Yt2 , , Ytn ) = L(Yt1 +k , Yt2 +k , , Ytn +k ).

(4.1.1)

En dautre termes, la translation T (k) : t t + k laisse la loi de Y invariante.


Dfinition 4.1.2 (Stationnarit faible). Un processus alatoire Y = (Yt , t
T ) est faiblement stationnaire (ou stationnaire au second ordre) si ses premiers et
seconds moments sont indpendants du temps,
EYt2 < , t T .
EYt = m, t T .
cov(Yt , Yt+k ) ne dpend pas de t mais uniquement de k.
Proposition 4.1.1. Un processus strictement stationnaire et du second ordre
est faiblement stationnaire, linverse nest pas forcment vrai, except pour les processus gaussiens.
Dfinition 4.1.3 (Intgration). Soit (Yt ) une srie temporelle, si aprs d
diffrenciations la srie est stationnaire, on dira que la srie est intgre dordre
d, not Xt I(d),
dn Yt nest pas stationnaire 1 n < d
d Yt est stationnaire .

(4.1.2)

Dfinition 4.1.4 (cointgration). Soit (Xt ) et (Yt ) deux sries temporelles


respectivement intgres de mme ordre d. Alors sil existe , R tel que Xt +
Yt I(d b) pour 0 < b d, les sries (Xt ) et (Yt ) sont cointgres dordre
db < d. Le vecteur (, ) est appel vecteur de cointgration. En dautres termes,
les sries temporelles sont cointgres si leur spread, form avec les coefficients et
est stationnaire. Au lieu de parler de vecteur de cointgration, on peut galement
construire le spread avec juste un coefficient, c, le coefficient de cointgration, dans
ce cas, le spread scrit Yt + cXt , ce qui est compltement quivalent la forme
prcdente.
La notion de cointgration a t introduite par deux prix Nobel, R. Engle et
C. Granger, [EnGr87].

107

Trading Haute Frquence

Une paire dactif ligible au pair trading devra tre cointgre (attention, cela
na rien voir avec la corrlation !). Une manire de construire notre algorithme de
slection serait de dterminer lordre dintgration de chacune des sries (sil existe
bien sr), de les classer par rapport ce dernier, puis de tester la cointgration
avec un test de Dickey-Fuller. Cette manire de faire vite de tester des paires avec
des ordres dintgration diffrents et qui ne pourraient pas tre cointgres.
Proposition 4.1.2 (Test de Dickey-Fuller). Soit (y1 , y2 , , yt ) une srie
temporelle. Le test de DF propose de tester lhypothse nulle, lhypothse de non
stationnarit, H0 : = 1, o est le paramtre du processus AR(1),
yt = + yt1 + t ,  BB,

(4.1.3)

si = 1, il sagit alors dune pure marche alatoire. Une forme quivalente faisant
apparatre une force de rappel est,
yt yt1 = yt = + yt1 + t ,  BB, = ( 1), , H0 : = 0.

(4.1.4)

De manire plus gnrale, on peut rajouter un terme de drive au modle,


yt = + t + yt1 + t ,  BB, = ( 1), , H0 : = 0.

(4.1.5)

Il est en fait recommand de tester en premier lieu cette dernire forme en appliquant un test de Student sur chacun des coefficients, quitte revenir la forme
plus restreinte dun AR(1).
Soit S1 et S2 deux actifs financiers et yt = log S1 (t) c log S2 (t) leur spread
linstant t, c > 0 est le coefficient dintgration. Pour pouvoir faire du pair trading
entre deux actifs il faut que leur spread prsente la proprit de retour la moyenne
pour pouvoir jouer sur les carts de variations en tant en droit de supposer quils
reviendront dans un intervalle bien dfini. En reprenant les dfinitions prcdentes,
une paire dactif ligible devra vrifier lhypothse de stationnarit, par suite de
retour la moyenne, dans le cas du test de DF,
yt = + t + yt1 + t ,  BB, H0 : = 0.

(4.1.6)

ici, on a test que yt tait directement stationnaire, on pourrait tester le cas I(db).
Une fois quune paire ligible a t dtecte, une stratgie simple est de se
mettre long de c sur S2 et short sur S1 (cela permet dtre market neutral pour
108

Trading Haute Frquence

ne pas supporter les risques du march mais uniquement le risque de retour trop
long la moyenne) quand le spread scarte de la moyenne de 2 fois son cart
type et annuler sa position au retour la moyenne.

Figure 4.1 Exemple dETF susceptible dtre "pair-traid".

Le cas prsent ci-dessus est un modle discret, plutt adapt pour du trading
basse frquence, pour un trading haute frquence, en remarquant que pour t =
t + 1 t et yt = yt yt1 ,
yt = ( yt )t + zt ,

(4.1.7)

est bien un AR(1) avec = , = 1 et zt suit une loi normale centre rduite,
on peut alors tendre cette mthodologie au cas continu en modlisant Y par un
processus de Vasicek,
dY (t) = ( Y (t))dt + dW (t),

Y0 = x,

(4.1.8)

o W est un processus de Wiener.

109

Trading Haute Frquence

2
spread
0
2
4

spread

Stratgie Pair Trading I

Stratgie Pair Trading I

20

40

60

80

100

temps

20

40

60

80

100

temps

Figure 4.2 Deux exemples de stratgies possibles de pair trading. Dans le cas I on dnoue
sa position ds le retour la moyenne, dans le cas II on attend de sortir de lautre borne du
spread pour se dnouer et reprendre une position dans la descente. Le cas I est videmment
moins risqu.

4.2
4.2.1

Contrle Optimal
Fonction dUtilit

Avant de continuer sur le pair trading, faisons quelques rappels sur la notion de
fonction dutilit. En notant V la richesse et u la fonction dutilit, nous pouvons
crire la problmatique par,
max E[u(Vt+1 )|Ft ],

(4.2.1)

o Vt est la richesse de lagent linstant t. Pour tre ligible, la fonction u : R R


doit vrifier quelques proprits, la premire tant quelle doit tre au moins de
classe C 2 , ensuite,
u
> 0.
(4.2.2)
V
La fonction u doit donc tre croissante, ce qui signifie quune augmentation de
richesse augmentera toujours lutilit du gestionnaire, mme aussi petite soit-elle
110

Trading Haute Frquence

(hypothse de non-saturation). La troisime proprit que doit vrifier la fonction


dutilit est,
2u
< 0.
(4.2.3)
V 2
La fonction u est donc concave, ce qui signifie que les premiers gains donnent une
plus grande satisfaction au gestionnaire que les gains suivants. Lingalit stricte
implique que le gestionnaire ne perdra pas son temps avec un gain qui ne lintresse
plus, cest la notion daversion au risque.
Au sens de Arrow-Pratt, laversion absolue au risque (ARA) est,
u00 (V )
.
u0 (V )

(4.2.4)

u00 (V )
V.
u0 (V )

(4.2.5)

ARAu (V ) =
Laversion relative au risque est donne par,
RRAu (V ) =
Enfin, la tolrance absolue au risque est,

u0 (V )
.
(4.2.6)
u00 (V )
Notons que pour deux agents A et B ayant respectivement pour fonction dutilit u et v, alors si A est plus averse au risque que B,
ARTu (V ) =

ARAu (V ) > ARAv (V ), V.

(4.2.7)

Un exemple simple et dj vu prcdemment est de maximiser lesprance de


gain et diminuer la variance,
2
E[u(Vt+1 )|Ft ] = E[Vt+1 Vt+1
|Ft ].
2
La fonction dutilit exponentielle est donne par,
E[u(Vt+1 )|Ft ] = E[1 eVt+1 |Ft ].

(4.2.8)

(4.2.9)

Un autre exemple connu est la fonction dutilit CRRA (constant relative risk
aversion),
#
" 1

Vt+1

E
|Ft
si > 1
E[u(Vt+1 )|Ft ] =
.
(4.2.10)
1

E[ln Vt+1 ] si = 1
111

Trading Haute Frquence

Dans les trois cas, est le paramtre daversion au risque.

4.2.2

Problmatique

Nous nallons pas rentrer dans les dtails et mener terme les modles que
nous allons exposer mais juste crire le problme sous forme dun problme de
contrle stochastique, cela pourra donner lieu des projets. Supposons dj que
les rendements des deux actifs S1 et S2 sont cointgrs et quils peuvent scrire
sous la forme,
dS1 (t) = 1 (S1 , S2 , t)dt + 1 (S1 , S2 , t)dW1 (t)
dS2 (t) = 2 (S1 , S2 , t)dt + 2 (S1 , S2 , t)dW2 (t),

(4.2.11)

o 1 , 2 sont les termes de drive usuels et 1 , 2 les volatilits respectives. On


crit le spread sous la forme,
Y (t) = S1 (t) cS2 (t),

(4.2.12)

o c est le coefficient de cointgration. Puisque les deux actifs sont cointgrs le


spread devrait pouvoir scrire sous la forme dun processus mean-reverting,
dY (t) = ( Y (y))dt + y dWy (t),

(4.2.13)

bien sur il faudrait prendre des formes particulires de 1 , 2 , 1 , 2 , et W1 , W2


pour arriver une quation de ce type et que soit positif pour assurer la stationnarit du processus.
Maintenant, notons i , i = 1, 2 le montant investi dans lactif i, lun des intrts
du pair-trading est dtre neutre face au march, alors,
2 = c1 .

(4.2.14)

Rajoutons un actif sans risque notre portefeuille,


dS0 (t) = rS0 (t)dt,

(4.2.15)

S0 est par exemple un bon du trsor amricain long terme, Treasury Bond, le
22/08/11 le taux tait 3.40, le 16/08/2012 2.941 (vers 19h CET (=GMT+2h)).
La dynamique de la richesse du portefeuille auto-financ est ainsi donne par,

112

Trading Haute Frquence

dV (t)
dS1 (t)
dS2 (t) dS0 (t)
= 1 (t)
+ 2 (t)
+
.
V (t)
S1 (t)
S2 (t)
S0 (t)

(4.2.16)

Maintenant que les quations de dynamique sont crites, nous allons essayer
de maximiser une fonction dutilit, en esprance, pour dterminer la stratgie
optimale (le contrle optimal) .

P:

sup(t) E(u(V (t))|V (t) = w, Y (t) = y)


sc V (0) = w, Y (0) = y
.
dY (t) = ( Y (t))dt + y dWy (t)
dS1 (t)
dS2 (t) dS0 (t)
dV (t)
= c1 (t)
+ 2 (t)
+
V (t)
S1 (t)
S2 (t)
S0 (t)

(4.2.17)

notons G(t, w, y) = max E{G(t + dt, W (t + dt), Y (t + dt))} la fonction valeur


optimiser que lon peut rcrire
G(t, w, y) = max
E{G(t, W (t), Y (t)) + dG}.

(4.2.18)

En appliquant le lemme dIt, la fonction G ne dpendant que de V et Y , on


a,
1
dG(t) =G + Gw (dW (t)) + Gy (dY (t)) + Gww (d(W (t)))2
2
(4.2.19)
1
2
+ Gyy (dX(t)) + Gyw (dY (t)dW (t)).
2
en galisant (4.2.18) et (4.2.19), avec dt 0, le problme revient rsoudre,
max
EdG = 0.

(4.2.20)

Aprs quelques calculs trs simples, on trouve des formules explicites pour
les montants investir, il sagit dun problme de contrle stochastique, et les
quations rsoudre sont dites quations de Hamilton-Jacobi-Bellman. Pour laisser
lopportunit de faire des projets sur le pair trading et le contrle stochastique,
nous nous arrtons ici sur les quations, pour plus de dtail voir par exemple
[MuPrWo08], [An11] et les rfrences lintrieur.

113

Chapitre 5
Portefeuille Multi-Actifs
Dans les sections prcdentes on a prsent des stratgies pour traiter un seul
actif la fois. On prsente maintenant des stratgies multi-actifs. Lobjectif est
de tirer un gain de la diversification. Dans la premire section la problmatique
est de minimiser le regret, on reprend les ides dveloppes dans la partie sur
lagrgation des stratgies, exploration/exploitation. La construction se focalise sur
la maximisation du rendement, la minimisation de la variance est implicite. Dans la
seconde partie, on cherche maximiser les rendements et minimiser la variance.
Il sagit de construire le portefeuille de Markowitz, point central de la Thorie
Moderne du Portefeuille.

5.1

Exploration/Exploitation

Lenvironnement est compos de N actifs, Y = (y1 , y2 , , yN ), Y RT+N .


Le comportement du march linstant t, cest dire les variations journalires, le
close linstant t sur lopen linstant t est donn par la srie x(t) = (x1 (t), ,
>
xN (t)) RN
+ et X = (x1 , , xN ) . On note = (1 , 2 , , N ), i 0,
P
i = 1 la proportion investie dans chaque actif. On prsente ici une procdure
pour allouer squentiellement un montant i sur les N actifs dans le but de faire
au moins mieux que la meilleure stratgie Buy-and-Hold (B&H) o la stratgie
B&H est dfinie par,
i (u) =

1 Qu
s=1 xi (s)
N
.
PN 1 Qu
k=1 N
s=1 xk (s)

(5.1.1)

Pour tout t u on garde le mme portefeuille, la richesse linstant t est alors


114

Trading Haute Frquence

donne par,
WT (, X) =

N
X

k (1)

k=1

T
Y

xk (s).

(5.1.2)

s=1

Ici, on a choisi dinitialiser sa pose initiale en fonction des rendements passs ,on
aurait aussi pu intgrer les notions de volatilit (risque de march) et de corrlation (risque de diversification). Lide sous-jacente cette stratgie est lhypothse
defficience des marchs financiers, i.e. que les cours des actifs sont toujours leur
juste prix et quils suivent donc une marche alatoire. Il nest donc pas possible
desprer battre le march mais plutt de dtenir un ensemble dactif pour leur
valeur intrinsque (cest dailleurs pour cela quil nest pas fondamental de prendre
en compte les risques du march dans linitialisation) et par suite la perception de
dividendes.

Figure 5.1 Cours de laction Citigroup de 1987 2007, le capital initial investi avec la
stratgie buy and hold aurait t multipli par 30 !

Dfinition 5.1.1. Soit une stratgie, pour tout ce chapitre la richesse et


la richesse logarithmique normalise seront donnes par,
115

Trading Haute Frquence

Figure 5.2 mais en suivant la stratgie, il aurait fallu avoir besoin de liquidit avant la fin
2007 pour avoir un gain...

WT (, X) =

T
Y

(s) x(s),

LWT (, X) =

s=1

5.1.1

T
1X
log((s) x(s)).
T s=1

(5.1.3)

Portefeuille Universel

La premire classe de portefeuille tudie est le portefeuille rebalanc constamment (CRP). Cette stratgie a des poids rebalancs chaque priode de trading,
aucun rajout de capital nest effectu, on investit constamment le mme montant,
(s) = , s = 1, , T.

(5.1.4)

116

Trading Haute Frquence

Prenons lexemple dun environnement fictif deux actifs selon la distribution


(1,1/2), (1,2), (1,1/2), (1,2), etc., avec = (1/2, 1/2),
1 1
+
2 2
1
1 +2
2
1 1
1 +
2 2
..
.
1

1
3
=
2
4
1
3
=
2
2
1
3
=
2
4
..
.

(5.1.5)

Donc S1 () = 3/4, S2 () = 9/8, S3 () = 27/32, on peut montrer par rcurrence


quaprs 2n priode de trading la richesse atteint (9/8)n . Plus gnralement, la
richesse linstant t est donne par,
WT (, X) =

T
Y

N
X

s=1

i=1

i xi (s) .

(5.1.6)

La valeur de maximisant la richesse pour lenvironnement x = (x1 , x2 , , xN )


est donne par,
= arg max WT (, X).

(5.1.7)

on notera cette stratgie bcpr et on appellera ce portefeuille le meilleur portefeuille rebalanc constamment (BCRP), [BlKa97], [BeCo88], [BuGoWa06], [Co91],
[CoOr96], [He98].
Dfinition 5.1.2 (Portefeuille universel). Un portefeuille universel au sens
de Cover (91) est un portefeuille qui vrifie,
lim max(LWT ( bcpr , X) LWT (, X)) 0.

xt

(5.1.8)

Il sagit donc dun portefeuille qui a asymptotiquement au moins le mme taux de


croissance que le BCRP.
La dfinition suivante nous permet de gnraliser ce cadre un problme de
borne min/max.

117

Trading Haute Frquence

Dfinition 5.1.3 (Regret externe). Soit Q une classe de stratgie de portefeuille. On dfinit le regret externe de la stratgie, le worst case logarithmic ratio,
P par,
WT (u, X)
.
(5.1.9)
RT (v, Q) = sup sup log
WT (v, X)
xT uQ
Le but est de trouver une stratgie donnant un ratio aussi petit que possible.
Rt (v, Q) = O(t) signifie que la stratgie dinvestissement a au moins le mme
taux de croissance que la meilleure des stratgies de la classe Q. En se restreignant
au cas o u = v bpcr , si le ratio tend vers 0 en t, on retrouve la dfinition dun
portefeuille universel au sens de Cover. La difficult est bien entendu que nous
devons investir squentiellement, tandis que le BCRP ne peut tre dtermin que
rtrospectivement. Nous avons affaire un problme dapprentissage squentiel.
On se propose de construire une stratgie de portefeuille t , o t est dtermin
au regard du pass x1 , , xt1 , qui performe asymptotiquement aussi bien que le
BCRP. Vouloir prendre en compte le pass est contradictoire avec lhypothse de
E. Fama puisque la squence des prix est arbitraire, le futur na aucune relation
avec le pass. La stratgie propose repose sur les performances passes,
Z

(t + 1) = Z

Wt (, x(t 1))d()
,

(5.1.10)

Wt (, x(t 1))d()

le vecteur des poids est initialis uniformment, 1 = ( N1 , N1 , , N1 ) et () est


une fonction de distribution dans le simplexe D, lensemble des stratgies admissibles qui sont comprises dans le simplexe dfini par,
D = { RN : i 0,

N
X

i = 1},

(5.1.11)

i=1

on interdit donc les ventes dcouverts. La richesse finale est,


WT (, X) =

T
Y

(s) x(s).

(5.1.12)

s=1

On peut prouver que dans le cas o est une densit uniforme sur le simplexe
D de RN ,
Rt ( univ , Q) (N 1) ln(1 + T ).

(5.1.13)
118

Trading Haute Frquence

Si le portefeuille est construit selon la densit de Dirichlet (1/2, ,1/2) on a la


borne,

Rt ( univ , Q)

5.1.2

(1/2)N
N 1
N 1
ln T + ln
+
ln 2 + O(1).
2
(N/2)
2

(5.1.14)

Exponentiated Gradient

On prsente maintenant lalgorithme Exponentiated Gradient (EG) [He98], on


dtermine les poids en connaissant uniquement le vecteur de valeurs relatives et
les poids linstant t, x(t), (t).
Lide est de reprendre une mthode pour dterminer les poids dans une rgression linaire, Kivinen et Warmuth [KiWa97], montrent quun bon rsultat est
obtenu en gardant des poids "proches" chaque nouvelle priode. Pour notre problmatique on cherche maximiser la richesse logarithmique, on cherche donc
maximiser la fonction F dfinie par,
F ((t + 1)) = log( t+1 x(t)) d((t + 1), (t)),

(5.1.15)

o > 0 est le taux dapprentissage et d est une mesure de distance servant


de terme de pnalit servant garder t+1 dans un voisinage de t . La distance
utilise est lentropie relative,
DRE (u||v) =

N
X

ui log

i=1

ui
vi

(5.1.16)

Cette mesure est issue de la thorie de linformation, elle reprsente la quantit


dinformation dlivre par les deux vecteurs, il sagit de la distance de KullbackP
Leibler. Rappelons que nous sommes sous la contrainte N
i=1 i = 1. Enfin, pour
rsoudre (approximativement) le problme, on fait un dveloppement de Taylor
au voisinage de (t + 1) = (t),
x(t)((t + 1) (t))
F ((t + 1)) = log((t) x(t)) +
(t) x(t)
N
X

d((t + 1), (t)) + (

(5.1.17)

i (t + 1) 1),

i=1

119

Trading Haute Frquence

est le multiplicateur de lagrange pour la contrainte de sommation. La condition


du premier ordre scrit,
xi (t)
d((t + 1), (t))
F ((t + 1))
=

+=0
i (t + 1)
(t) x(t)
i (t + 1)
!
xi (t)
i (t + 1)

log
+=0
(t) x(t)
i (t)
!
xi (t)
+1 ,
i (t + 1) = i (t) exp
(t) x(t)

(5.1.18)

en normalisant, on obtient le portefeuille exponentiated gradient EG(),




xi (t)
i (t) exp (t)x(t)

i (t + 1) = Pm

xj (t)
j=1 j (t) exp (t)x(t)

.

(5.1.19)

Un choix raisonnable pour le portefeuille initial est de prendre (1) = (1/N, 1/N,
, 1/N ).
Thorme 5.1.1. Soit u Q un portefeuille et x(1), , x(t) une squence
de prix relatifs avec xi (t) r > 0, i, t et maxi xi (t) = 1 pour tout t. Alors pour
tout > 0, le pire ratio de richesse logarithmique pour la stratgie EG est born
par,
WT (u, X)
DRE (u|| 1 ) T
RT ( EG , Q) = log

+ 2,
(5.1.20)
EG
WT ( , X)

8r
et pour le cas o (1) = (1/N, 1/N, , 1/N ),
RT ( EG , Q)

ln N
T
+ 2,

8r

1
pour optimal, la borne minimale est alors
r

(5.1.21)

T
ln N .
2

Preuve de (5.1.20). Posons t = DRRE (u||(t + 1)) DRRE (u||(t)) et

120

Trading Haute Frquence

Zt =

xi (t)
EG
),
j=1 j,t exp (t)x(t) , alors (avec =

PN

(t) =

ui log

i (t + 1)
i (t)
!

xi (t + 1)
log Z(t)
=
ui
t x(t)
i
u x(t)
=
+ log Z(t).
(t) x(t)
X

(5.1.22)

Pour tout [0, 1], > 0, x R et y [0, 1],


log(1 (1 ex )) (x + x2 /8)

y (1 (1 )y)

(a),

(b).

Alors, comme xi (t) [0, 1], daprs (b) on a,


Z(t) =

xi (t)
i (t) exp
(t) x(t)

i (t)(1 (1 exp
)xi (t))
(t) x(t)

(5.1.23)

= 1 (1 exp
)(t) x(t),
(t) x(t)
et daprs (a),
log Z(t) +

2
.
8((t) x(t))

(5.1.24)

Ainsi,
!

2
u x(t)
+
(t) 1
(t)x(t)
8((t) x(t))2
2
u x(t)
log
+
.
(t) x(t) 8((t) x(t))2

(5.1.25)

Enfin, comme xi (t) r, en sommant sur t on obtient,


DRE (u|| 1 ) DRE (u||(t + 1)) DRE (u||(1))

T
X

(log((s) x(s)) log(u(s) x(s))) +

s=1

2T
.
8r2

(5.1.26)

121

Trading Haute Frquence

Preuve de (5.1.21). Daprs (5.1.20) et remarquant que DRE (u||(1)) log m


quand (1) est le vecteur uniforme, la preuve est vidente.
EG() requiert de connatre la valeur de r (le minimum des prix relatifs normaliss) lavance pour calculer , pour pallier ce problme Helmbold et al. [He98]

propose une version modifie de EG() que lon notera EG(,


). La premire
modification consiste shrinker par un rel [0, 1] les prix relatifs,
(t) = (1 /N )x(t) + (/N )1.
x

(5.1.27)

Ce qui nous permet davoir une borne minimale xi (t) /N . On construit un


(t),
sous portefeuille identique EG() en remplaant x(t) par x


(t)
i (t) exp xit(t)
x

i,t+1 = PN

x
j (t)
j=1 j (t) exp (t)x(t)

.

(5.1.28)

Enfin, on reparamtrise le portefeuille,

(t)
= (1 )(t) + (/N )1.

(5.1.29)

Thorme 5.1.2. Soit u Q un portefeuille et x(1), , x(t) une squence


de prix relatifs avec xi (t) r > 0, i, t et maxi xi (t) = 1 pour tout t. Pour tout
(0, 1/2] et > 0, le pire ratio de richesse logarithmique du portefeuille
EG
est born par,
RT (
EG , Q) 2T

T
DRE (u||
EG )

8(/N )2

(5.1.30)

et pour le cas o (1) = (1/N,q1/N, , 1/N ), T 2N 2 log m, avec


= (N log N/(8T ))1/4 et = 82 log N/(N 2 T ) on a,
RT (
EG , Q) 2(2N 2 log N )1/4 T 3/4 .

(5.1.31)

Preuve de (5.1.30). Comme maxi xi,t = 1,

(t) x(t)
(1 )(t) x(t) + /N

,
(t) x(t)
(1 /N )(t) x(t) + /N

(5.1.32)

122

Trading Haute Frquence

le membre de droite est une fonction dcroissante en (t)x(t) et est donc minimum
pour (t) x(t) = 1, donc,

(t) x(t)
(1 ) + /N,
(t) x(t)

(5.1.33)

et de manire quivalente, sachant que ln(1 + /N ) ln(1 ) 2 pour


tout (0, 1/2],

(t) x(t)
ln((1 ) + /N )
log
(t) x(t)
(5.1.34)

(t) x(t)
log
2.
(t) x(t)
(t) on obtient,
En appliquant le thorme 5.1.1 au prix relatifs x
RLST (
EG , Q)

DRE (u||(1))
T

8(/N )2

(5.1.35)

car xi (t) /N . Pour conclure la preuve, on combine les deux dernires ingalits
en sommant sur t.
Preuve de (5.1.31). Comme pour la preuve du thorme 5.1.1, on utilise le fait
que DRE (u, (1)) N quand (1) est le vecteur uniforme.

Corollaire 5.1.1. Le portefeuille EG(,


) est un portefeuille universel.
Preuve. Soit b = dlog2 (T /(2N 2 log N ))e, par le thorme 5.1.2 on ,
RLST (

EG

, Q) 4N log N +

b
X

21/4 (2i )3/4 2N 2 log N

i=1
5/4

N log N 1 +

b
X

!
3/4 i

(2

i=0
3/4 b+1
5/4

=2

N log N 1 +

(2

1
23/4 1
)

(5.1.36)

6N 2 log N (1 + (23/4 )b )

T
6N 2 log N 1 +
2N 2 log N

!3/4
.

123

Trading Haute Frquence

Comme lingalit est vraie pour toute stratgie u Q, elle est galement vraie
pour le cas o u = bcrp , on a alors,


log

ST ( bpcr , X)

ST (
EG , X)

6N 2 log N 1 +

T
2N 2 log N 2

3/4 

0 quand T .
(5.1.37)

Pour conclure ce chapitre nous prsentons un nouvel algorithme du type EG


que nous appellerons EG-univ cf [StLu05], cette fois ne connaissant pas la valeur
finale de T , cest--dire la priode de trading lavance. En initialisant toujours
avec = (1/N, , 1/N ), et avec et adaptatif au cours du temps,
(t) = (1 (t)/N )x(t) + ((t)/N )1,
x
(

t+1

t
X

(t) = t1/3 /2,

(5.1.38)

t = t2/3 /4.

(5.1.39)

s
x
,
= exp t
s x
s
s=0

Le portefeuille est alors,


+ 1)
(t
(t + 1) = (1 (t)) PN
+ ((t)/N )1.
i=1 i (t + 1)

(5.1.40)

Thorme 5.1.3. Soit u Q un portefeuille et x(1), , x(t) une squence


de prix relatifs avec xi (t) r > 0, i, t et maxi xi (t) = 1 pour tout t. Le regret
externe de EG-univ est born par,
Rt 10N T 2/3 .

(5.1.41)

Preuve.
T
X

(log(u x(t)) log( EG-univ x(t)))

t=1

T
X

(t)))
(log(u x(t)) log(u x

t=1
T
X

(t)) log(
EG-univ x
(t)))
(log(u x

t=1
T
X

EG-univ x
(t))
(log(

t=1

(t))).
log( EG-univ x
(5.1.42)
124

Trading Haute Frquence

Pour le terme de droite, comme x(t) est renormalis tel que ses composants
soient infrieurs ou gaux 1, la premire somme est ngative. La troisime somme
est infrieure 2((1) + + (T )) car,
EG-univ (t) x
(t)) 2(t).
log( EG-univ (t) x(t)) log(

(5.1.43)

xi (t)
Il nous reste donc travailler sur la seconde somme. Notons `i (t) = EG-univ (t),

x
alors,
T 
X

(t)) log(
EG-univ x
(t))
log(u x

t=1

N
X

uj

j=1

T X
N
X

iEG-univ (t)`i (t) `j (t) ,

t=1 i=1

(5.1.44)
(t) est croissant, et comme (on assume lingalit suivante),
N
T X
X

T
X

1
2

log N
xi (t)
(t) x(t) max
i
(T + 1) (1)
t=1 i=1
t=1

N
X
1
i (t) exp (t (xi (t) i (t)xi (t))) .
log
t=1 (t)
i=1
(5.1.45)

T
X

On a,
T 
X

(t)) log(

log(u x

t=1

EG-univ

1
2
(t))

log N
x
(T + 1) (1)


T
X

N
X
1
log
i (t) exp (t (xi (t) i (t)xi (t))) .
t=1 (t)
i=1
(5.1.46)
Pour continuer lalgorithme on a besoin dintroduire la proposition suivante (on
omet la preuve),

Proposition 5.1.1. Soit (x1 (t), , xN (t)) le vecteur des prix relatifs, alors
pour tout (t) 0 on a,
N
X

N
X

1
N
exp(t (xi (t)i (t)xi (t))) 8(t) i (t)x2i (t)
log
i=1
(t)
i=1
i=1

N
X

!2

i (t)xi (t)

i=1

(5.1.47)
125

Trading Haute Frquence

EG-univ x
(t) (t)/N et comme
Alors daprs lalgorithme de EG-univ on a
`i (t) [N/t , 0], le choix de (t) avec la proposition 5.1.1 et N (t)/(t) 1,
T 
X

(t)) log(

log(u x

EG-univ

t=1

2
1
(t))
x

log N
(T + 1) (1)


T
X

N
X

x2i (t)
,
EG-univ x
(t))2
(
t=1
i=1
(5.1.48)
EG-univ

(t) (t)/N et N (t)/(t) 1,


rutilisant le fait que
x
+8

T 
X

EG-univ

T
X
1
(t)
2
log N + 8

,
(T + 1) (1)
t=1 (t)
(5.1.49)

EG-univ

(t))
x

EG-univ

T
X
2
1
(t)
x(t))

log N + 8N
(T + 1) (1)
t=1 (t)

(t)) log(

log(u x

t=1

et enfin,
T 
X

log(u x(t)) log(

t=1

+2

T
X

(t),

t=1

(5.1.50)
le remplacement de (t) et (t) par les valeurs proposes conclut la preuve.
Pour conclure, notons que lalgorithme initial de Cover a un regret externe de
de lordre de T 3/4 et EG-univ de lordre de T 2/3 .
lordre de T , EG

5.2
5.2.1

Portefeuille de Markowitz
Moyenne - Variance

Dans cette partie, on va essayer de maximiser le rendement du portefeuille et


de minimiser son risque. On va parler de portefeuille de variance minimum, au lieu
de chercher maximiser son rendement ou de minimiser son regret, on cherche
minimiser la variance. Le problme scrit simplement,

min >

>
=
P:
(5.2.1)

= 1.

i=1

126

Trading Haute Frquence

o est le vecteur des poids, la moyenne des rendements, la matrice de


covariance et le rendement espr. Il sagit du portefeuille de Markowitz. Le
lagrangien scrit, avec et les multiplicateurs,
1
L = > ( > ) ( > 1 1).
2

(5.2.2)

La condition du premier ordre scrit,


dL
=0
d
dL
=0

dL

=0
d

1 = 0
> = 0

(5.2.3)

> 1 1 = 0,

ainsi,
= 1 ( + 1).

(5.2.4)

En arrangeant les quations on obtient,


> 1 1 + 1> 1 1 = 1,

(5.2.5)

= > 1 + 1> 1 .

(5.2.6)

et
En crivant sous forme matricielle les deux dernires quations on a,

> 1 + 1> 1
> 1 + 1> 1 1

> 1 1> 1
> 1 1> 1 1

. (5.2.7)

En posant
A = > 1 ,

B = > 1 1,

C = 1> 1 1,

(5.2.8)

on a

1
=
AC BB

C B
B A

(5.2.9)

Les multiplicateurs sont donc,


=

C B
,
AC BB

B + A
AC BB

(5.2.10)
127

Trading Haute Frquence

La stratgie optimale est alors,


=1 ( + 1)
(A1 B) + (C B1)
,
=1
AC BB
avec pour variance minimale,

(5.2.11)

= >
= +
(5.2.12)
C 2B + A
=
.
AC BB
Le point qui mrite le plus dattention est lestimation de la matrice de covariance. On rappelle dj que pour X et Y deux variables alatoires relles on
a,
Cov(X, Y ) = E(X EX)(Y EY ),

(5.2.13)

et pour N variables alatoires, X1 , , XN , Xi RT , i = 1, , N , la matrice de


covariance est,

VarX1

Cov(X2 , X1 )
..
.

VarX2

Cov(XN , X1 )

Cov(X1 , X2 )

Cov(X1 , XN )
..
.
..
...
.

VarXN

(5.2.14)

Notons la vraie matrice de covariance et S son estimation. Le risk in-sample,


donc construit avec S, est donn par,
Rin = wS> SwS .

(5.2.15)

Le vrai risque minimal, quand est connu parfaitement est,


>
Rtrue = w
w .

(5.2.16)

Le risque out-of-sample, finalement celui qui nous intresse le plus, est naturellement,
128

Trading Haute Frquence

Rout = wS> wS .

(5.2.17)

Rin Rtrue Rout .

(5.2.18)

Intuitivement, on a,

On peut montrer que [PoBoLa05],


q

Rin = Rtrue 1 N/T = Rout (1 N/T ).

(5.2.19)

Supposons que nous essayons de construire un portefeuille consitu de tous les


lments de S&P 500 et que nous ayons t = 2500, ce qui correspond 10 ans dhistorique, alors on a q := N/t = 0.2, or, pour que lestimation ait quelques degrs
duniversalit, il faudrait que q 0, ainsi, Rin = Rtrue = Rout . Intuitivement,
les donnes ne contiennent pas assez dinformation pour estimer la vraie matrice
de covariance. On propose deux manires distinctes pour donner une meilleure
estimation de la matrice de covariance.

5.2.2

Shrinkage

Une fois de plus dans ce cours, on va shrinker lestimateur pour avoir un rsultat
plus stable. Une ide simple est de prendre comme estimateur,
SH = F I + S,

(5.2.20)

o et sont les paramtres de shrinkage (on verra par la suite que seul est
le paramtre de shrinkage), I RN N la matrice identite et S est lestimateur
classique de la matrice de covariance,
1
Xc X>
c ,
T
o Xc est la matrice des sries centres.
S=

(5.2.21)

Il nous faut maintenant dterminer les valeurs optimales de et . On cherche


toujours minimiser une fonction de perte.
Dfinition 5.2.1 (norme de Frobenius). Pour Z = {zij }i,j=1, ,N une matrice
N N symtrique avec pour valeurs propres (i )i=1 ,N , la norme de Frobenius est
dfinie par,

129

Trading Haute Frquence

||Z||2 = trZ2 =

N X
N
X
i=1 i=1

zij2 /N =

N
X

2i /N.

(5.2.22)

i=1

Le scalaire associ est, pour Z1 et Z2 deux matrices symtriques,


< Z1 , Z2 >= tr(Z1 Z>
2 )/N.

(5.2.23)

Proposition 5.2.1. Utilisant (5.2.21) comme estimateur de la matrice de


covariance et la norme de Frobenius comme fonction de perte, `(, ) = ||SH
||2 , le problme scrit,

min
P : ,
s.c

E||SH ||2
SH = I + (1 )S.

(5.2.24)

La solution est donne par


|| < , I > I||2
E||S ||2
<
,
I
>
I
+
S,
E||S < , I > I||2
E||S < , I > I||2

(5.2.25)

et le risque est,
E||SH ||2 =

|| < , I > I||2 E||S ||2


.
E||S < , I > I||2

(5.2.26)

Preuve.
E||SH ||2 =E||(I + (1 )S) ||2
=E||I + + (1 )S ||2
=E||I + (1 )(S )||2
=E||I ||2 + E||(1 )(S )||2
+ 2(1 )E < I , S >
=2 E||I ||2 + (1 )2 E||S ||2 ,

(5.2.27)

comme ||I ||2 = 2 2 < , I > +||||2 , la condition du premier ordre pour
scrit,
E||SH ||2
= 2 2 < , I >= 0.
(5.2.28)

Ainsi,
=< , I > .
(5.2.29)
130

Trading Haute Frquence

En drivant maintenant par rapport on trouve,


E`(, )
= 2E||I ||2 2(1 )E||S ||2 .

La condition du premier ordre est,

(5.2.30)

2E||I ||2 2(1 )E||S ||2 = 0


=

E||S ||2
.
E||I ||2 + E||S ||2

(5.2.31)

Remarquons maintenant que,


E||S I||2 =E||S + I||2
=E||S ||2 + E|| I||2 + E < S , I >
=E||S ||2 + E|| ( + I)||2
=E||S ||2 + E|| + I||2 .

(5.2.32)

Ainsi,
E||S ||2
.
=
E||S I||2

(5.2.33)

Le pourcentage de gain relatif du shrinkage est,


E||S ||2 E||SH ||2
E||S ||2
=
.
E||S ||2
E||S < , I > I||2

(5.2.34)

Les paramtres et dpendent de , la vraie matrice de covariance, qui


est inobservable, on ne peut donc pas effectuer le shrinkage tel quel. On a les
estimateurs suivants,
a = < St , It >t < t , It >t
b =||St aIt ||2 E||St aIt ||2t
t
1 X
2
2
c = min 2
||Xk X>
k St ||t , b E||Sn t ||
t k=1

(5.2.35)

d =b c ||t aIt ||2t .


131

Trading Haute Frquence

Dans cette partie on a suppos aucune distribution particulire des rendements,


ce qui est agrable. Nanmoins, pour que les convergences (5.2.35) se produisent,
il faut que pour chacun des rendements le moment dordre 4 existe.
On peut maintenant effectuer un autre shrinkage, un peu plus intuitif, on estime
deux manires diffrentes la matrice de covariance, une premire fois classiquement
avec lestimateur non biais (5.2.21) et en prenant la covariance de la modlisation
des rendements,

xi (t) = 0,i + m,i xm (t) + i (t),

i = 1, , N, t = 1, , T,

(5.2.36)

o xm est le rendement du march et i est un bruit blanc de variance ii . Il sagit


( une constante prs, le taux sans risque devrait tre retranch des rendements)
du modle CAPM. est le fameux "beta" du march, il sagit de la sensibilit
de lactif par rapport au march. On linterprte souvent comme une mesure de
risque, sil est proche de 1, cest quil va dans le mme sens que le march, si
proche de 0, cest quil va dans "nimporte quel" sens. Bien sr, si on pense que
cest une mesure de risque, cest que lon pense que le march est non risqu et
quil crot de manire constante et bien gentiment... Habituellement, on ne note
pas 0 mais , il sagit du de Jensen, cest--dire le rendement espr de lactif
ceteris paribus. En dautre termes, cest lexcs de rendement en dehors du march,
nous pourrons nous reporter aux travaux de Fama, Tobin, etc. pour plus de dtails.
Enfin, pour continuer dans la parenthse du modle CAPM, notons que le portefeuille au sens de Markowitz nous permet de construire ce que lon appelle la
frontire efficiente, cest--dire lensemble des portefeuilles optimaux en fonction
du risque et du rendement. Intuitivement, plus le risque augmente, plus le rendement du portefeuille augmente. Il faut donc faire un choix, soit on augmente le
rendement et donc mcaniquement le risque, mais nous allons un peu plus transpirer le soir avec une formule offensive (comprendra les initis) soit on diminue
les deux. La frontire nest pas linaire mais forme un ensemble convexe, un U
tourn, la partie ouverte droite. En bas, on parle de portefeuilles domins, en
haut, de portefeuilles dominants. Pour trouver le meilleur choix, on peut tracer
la droite issue du rendement sans risque et pour coefficient directeur . Le portefeuille optimal tant le point de rencontre du CAPM avec la frontire efficiente.
En rcrivant le modle (5.2.36) sous forme vectoriel en i on a,
132

Trading Haute Frquence

x(t) = 0 + xm (t) + (t),

t = 1, , T,

(5.2.37)

en utilisant lindpendance des on obtient la matrice de covariance,


=Cov(x(t), x(t))
=Cov( 0 + xm (t) + (t), 0 + xm (t) + (t))
=Cov(xm (t), xm (t)) + 2Cov(xm (t), (t)) + Cov((t), (t))

(5.2.38)

2
=m
> + ,
2
o m
est la variance du march et est la matrice de covariance des bruits
blancs, = {ij }i=j=1, ,N si i = j.

Bien videmment S 6= puisque est construite uniquement partir du march.


Le shrinkage tudi va tre,
CAP M = + (1 )S.

(5.2.39)

Pour dterminer le coefficient de shrinkage nous rutilisons la norme de


Frobenuis et la fonction de perte est,
`() = || + (1 )S ||2 .

(5.2.40)

En notant ij les i j entres estimes de , sij celle de S, et ij celle de ,


le risque minimiser est,

133

Trading Haute Frquence

E`() =

N X
N
X

E(ij + (1 )sij ij )2

i=1 j=1

N X
N
X

Var(ij + (1 )sij ) + (E(ij + (1 )sij ij ))2

i=1 j=1

N X
N
X

2 Var(ij ) + (1 )2 Var(sij ) + 2(1 )Cov(ij , sij )

i=1 j=1

+ (E(ij + sij sij + ij ij ij ))2


=

N X
N
X

(5.2.41)

2 Var(ij ) + (1 )2 Var(sij ) + 2(1 )Cov(ij , sij )

i=1 j=1

+ (2 E(ij ij ))2
=

N
N X
X

2 Var(ij ) + (1 )2 Var(sij ) + 2(1 )Cov(ij , sij )

i=1 j=1
2

+ (ij ij )2 .

La drive du risque par rapport est,


N X
N
X
E`()
=2
Var(ij )(1)Var(sij )+(12)Cov(ij , sij )+(ij ij )2 .

i=1 j=1
(5.2.42)
La condition du premier ordre nous donne,

Var(sij ) Cov(ij , sij )


.
Var(ij sij ) + (ij ij )2

PN

= PN

i,j

i,j=1

(5.2.43)

Comme prcdemment, lintensit de shrinkage optimale dpend de paramtre


non observable. Aprs quelques calculs, voir [LeWo00] pour plus de dtails, on peut
montrer
est un estimateur consistant de , o,

1 pr
,
T c

(5.2.44)

134

Trading Haute Frquence

avec,
pij =

T n
X

((xit mi )(xit mi ) sij )2

t=1

sjm smm (sit mi ) + sim smm (sjt mj ) sim sjm (smt mm )

s2mm
(xmt mm )(xit mi )(xjt mj ) fij sij
cij =(ij sij )2 .

rijt =

(5.2.45)

Pour conclure, notons que la drive seconde du risque est,


N X
N
X
2 E`()
=
2
Var(ij sij ) + (ij ij )2 ,
2

i=1 j=1

(5.2.46)

2 E`()
est donc positif, donc est bien un minimum.
2

5.2.3

Matrice Alatoire

La thorie des matrices alatoires a t originellement dveloppe pour la


physique nuclaire et la reprsentation des interactions dans un noyau. Une matrice alatoire est constitue dlments alatoires rels de variance unitaire et
de moyenne zro. Dans une tude portant sur une centaine dactifs du NYSE
[LaCiBoPo99], il est montr que la distribution spectrale des valeurs propres de la
matrice de covariance empirique, sauf les plus importantes, est trs proche de la
distribution spectrale dune matrice alatoire symtrique semi-dfinie positive. Si
lensemble dactifs tudis peut tre prdit par la thorie des matrices alatoires,
alors aucune information ne peut tre extraite et (5.2.21) ne peut tre applique.
En revanche, si quelques valeurs propres dvient de cette thorie, on peut essayer
de se focaliser sur celle-ci puisque les autres ne donnent pas dinformation. Le
problme adress est dextraire linformation "importante" et denlever le bruit,
on parlera de cleaning matrix. Ltude de la statistique des valeurs propres est le
point central de cette thorie.
Dfinition 5.2.2 (matrice hermitienne). Une matrice hermitienne, ou autoadjointe, est une matrice carre avec des lments complexes dont la transpose de
la matrice conjuge est gale la matrice. En particulier, une matrice lments
rels est hermitienne ssi elle est symtrique. Notons de plus quune telle matrice
est orthogonalement diagonalisable et toutes ses valeurs propres sont relles.
135

Trading Haute Frquence

F. Dyson a introduit une classification pour les ensembles de matrices gaussiennes. Nous prsentons les trois classes. Pour toute la suite on se place sur lespace
probabilis (, F, P) o est lensemble des matrices, F est une -algbre et P
est une mesure dfinie sur cet espace.
Dfinition 5.2.3 (gaussien orthogonal). Soit X une matrice N N avec
pour entre des variables relles iid N (0, 1). Lensemble des matrices gaussiennes
orthogonales (GOE) est lensemble des matrices Hermitiennes tel que HN = (X +
X> )/2. Les lments sur la diagonale sont iid N (0, 1) et en dehors iid N (0, 1/2).
On peut crire les entres de la matrice comme suit,
!

hlm

1 + lm
, 1 l m N,
N 0,
2

(5.2.47)

avec lm le symbole de Kronecker.


Dfinition 5.2.4 (gaussien unitaire). Soit X une matrice N N constitue
dlments complexes iid N (0, 1). Lensemble des matrices gaussiennes unitaires
(GUE) est lensemble des matrices Hermitienne tel que HN = (X + X )/2 o X
est la transpose Hermitienne de X,
ji .
(X )ij = (X)

(5.2.48)

Les entres de HN sont donc N (0, 1) iid sur la diagonale et iid N (0, 1/2) en
dehors de la diagonale. On peut crire les entres de la matrice comme suit,
<hlm , =hlm
hkk

1
N 0,
, 1l<mN
2
N (0, 1), 1 k N.


(5.2.49)

Ces deux premiers ensembles appartiennent lensemble des matrices de Wigner, [Wi55], relle ou complexe. Dans cet ensemble, les entres ne sont plus ncessairement gaussiennes, mais nous nous contenterons pour ce cours du cas gaussien.
Avant dintroduire la dernire classe rappellons quun quaternion rel q est
construit par,
q = a + ib + jc + kd, a, b, c, d R,
(5.2.50)
et i, j, k vrifient,
i2 = j 2 = k 2 = ijk = 1.

(5.2.51)

136

Trading Haute Frquence

Dfinition 5.2.5 (gaussien symplectique). Soit X une matrice N N constitue de quaternions rels et iid N (0, 1). Lensemble des matrices gaussiennes symplectiques (GSE) est lensemble des matrices Hermitiennes tel que HN = (X +
XD )/2 o D est loprateur de transpos dual. Les lments diagonaux de HN
sont iid N (0, 1) et en dehors iid N (0, 1/2). On peut crire les entres de la matrice
comme suit,
hlm = alm + iblm + jclm + kdlm , 1 l m < N
hkk N (0, 1), 1 k N,

(5.2.52)

o chacun
 lments des matrices A, B, C, D, sont donns par, alm , blm , clm , dlm
 des
1
i.i.d.N 0, 2 , 1 l m < N
Les matrices prsentes ont une densit de probabilit du type,
p(HN ) exp{trV (HN )},

(5.2.53)

o V est une fonction de HN . Le coefficient dpend de la nature de la matrice,


= 1 pour le cas rel, = 2 pour le cas complexe et = 4 pour le cas quaternion
P
rel. Si V (HN ) H2N , alors, tr(HN ) = i,j h2ij ce qui correspond lensemble
gaussien.
Proposition 5.2.2 (distribution jointe). Pour le cas dune matrice Hermitienne GOE ( = 1), GUE ( = 2) ou GSE ( = 4), la densit jointe des valeurs
propres 1 > 2 > N de HN est donne par,
p (1 , , N ) =

c0(N,)

N
Y

[w (j )]1/2

j=1

|j k | ,

(5.2.54)

1j<kN

avec
2

w () = e ,
et

c0(N,)

(5.2.55)

est la constante de normalisation,


c0(N,) = (2)N/2 N/2+N (N 1)/4

N
Y

1+

i=1

1+

2
.
i
2

(5.2.56)

Dfinition 5.2.6. Soit X une matrice N N avec pour valeurs propres


1 > > N . La fonction de rpartition empirique des valeurs propres de X est
donne par,
N
1 X
GN (x) :=
1 x .
(5.2.57)
N i=1 i
137

Trading Haute Frquence

Au sens des distributions, la fonction de Dirac, , est la drive de la fonction


indicatrice. La densit des valeurs propres est donne par,
g(x) =

d
1X
(x i ).
d i=1

(5.2.58)

Thorme 5.2.1 (loi du semi-cercle de Wigner). Soit HN une matrice de


Wigner, complexe ou relle, gaussienne ou non. Si les moments dordres 2 des
lments en dehors de la diagonale existent, la fonction de rpartition empirique
converge presque surement quand N tend vers linfinie vers G() avec pour densit
de probabilit,
(
2
1 x2 |x| 1
(5.2.59)
g(x) =
0
|x| > 1.

0.20
0.15

Density
0.0

0.00

0.05

0.1

0.10

0.2

Density

0.3

0.25

0.4

0.30

0.5

0.35

Cette densit forme un semi-cercle de rayon 2.

Eigenvalues

Eigenvalues

Figure 5.3 Matrices alatoires normales et le semi-cercle Wigner par dessus. A gauche 500
ralisations, droite, 4000 ralisations.

Ce qui nous intresse cest dtudier la distribution de la plus grande des valeurs
propres pour la limite N . En posant,
FN, (t) := P,N (max < t), = 1, 2, 4,

(5.2.60)
138

Trading Haute Frquence

la fonction de distribution de la plus grande valeur propre, alors, les lois limites
basiques nous donnent,


F (x) := lim FN,


N

x
2 N + 1/6 , = 1, 2, 4,
N


(5.2.61)

et sont donnes explicitement par,




F2 (x) = exp

(y x)q 2 (y)dy ,

(5.2.62)

o q est lunique solution de lquation de Painlev II


d2 q
= xq + 2q 3 ,
qx2

(5.2.63)

satisfaisant la condition au borne,


q(x) Ai(x), x .

(5.2.64)

Ai(s) tant la fonction spciale de Airy,


1
1Z
cos( t3 + xt)dt.
Ai(x) =
0
3

(5.2.65)

La solution de lquation de Painlev II est,


r

x
1
1
1+ 3 +O 6
2
8x
x




, si x .

(5.2.66)

1Z
q(x)d(y) (F2 (x))1/2
2 x



1Z
F4 (x/ 2) = cosh
q(x)d(y) (F2 (x))1/2 .
2 x

(5.2.67)

q(x) =

Pour les ensemble GOE et GSE on ,




F1 (x) = exp

Introduisons maintenant les deux fonctions E et F ,


1Z
F (x) = exp
(y x)q 2 (y)dy
2
x


1Z
E(x) = exp
q(y)dy .
2 x


(5.2.68)

139

Trading Haute Frquence

Ainsi,
F1 (x) = E(x)F (x)
F2 (x) = F 2 (x)
!

1
1
F4 (x/ 2) =
E(x) +
F (x),
2
E(x)

(5.2.69)

Alors, pour x ,
4 3/2

e 3 x
1
F (x) = 1
1 + O 3/2
3/2
32x
x


23 x3/2 
e
1
E(x) = 1 3/2 1 + O 3/2
,
4 x
x




(5.2.70)

On peut maintenant crire les lois asymptotiques F pour x ,


F1 (x) = 1

1
|x|3
24

o,

1
1
+ O(|x|3 )
24 2|x|3/2

|x|1/16

e 12 |x|
F2 (x) = 2
|x|1/8
F3 (x) = 4

|x|3/2
3 2

1
24
|x|3 +

1
1 + 6 3 + O(|x|6 )
2 |x|
3

|x|3/2

1
1
+ O(|x|3 ) ,
3/2
24 2|x|

|x|1/16
1 0

(5.2.71)

1 0

1 = 211/48 e 2 (1) , 2 = 2 24 e (1) , 4 = 235/48 e 2 (1) ,

(5.2.72)

et 0 (1) = 0, 1654211437 est la drive de la fonction zeta de Riemann au


point -1.
On vient de voir quil existe des lois limites pour caractriser les matrices de
Wigner, des matrices construite par la somme dune matrice alatoire avec sa
transpose. Nous allons maintenant nous intresser non la somme, mais la
multiplication. Rappelons tout dabord que pour notre problme doptimisation
du portefeuille de Markowitz nous devons estimer la matrice de covariance, avec

140

Trading Haute Frquence

maintenant X une matrice alatoire de taille N T


= E(X )(X ),
= EX,
1
> (X X)

S = (X X)
T
1
1
1
= (X(IT JT ))> (X(IT JT ))
T
T
T
1 >
= Xc Xc ,
T

(5.2.73)

o JT = 1>
T 1T .
Dfinition 5.2.7 (matrice de Wishart). Soit Xc une matrice alatoire Xc
NT,N (0, ), alors T S = X>
c Xc suit la distribution de Wishart de paramtre dchelle
et T degrs de liberts. Ce que lon note,
T S WN (T, ).

(5.2.74)

Si = IN , alors on dira que la matrice suit une distribution de Wishart


blanche.
La densit dune telle matrice est donne par,
p(S) = cN,T ||1/2 |S|

T N 1
2

e 2 tr(

1 S)

(5.2.75)

avec,
c1
N,T

N T /2 N (N 1)/4

=2

N
Y

T i+1

.
2
i=1


(5.2.76)

Avant de continuer nous faisons un petit rappel sur la fonction hypergomtrique multivarie.
Dfinition 5.2.8 (Fonction hypergomtrique multivarie). Soit X CN N ,
= (k1 , , N ) est une partition de lentier k tel que k1 kN 0 et
k = k1 + + kN . On dfinit []j par,
[a] =

N
Y

(a i + 1)ki ,

(5.2.77)

i=1

avec (a)k = a(a + 1) (a + k 1). La fonction hypergomtrique multivarie dune


matrice complexe est donne par,
p Fq (a1 ,

, ap ; b1 , , bq ; X) =

X
X
k=0

[a1 ] [ap ] C (X)


,
[q1 ] [bq ] k!

(5.2.78)
141

Trading Haute Frquence

o est la somme sur toutes les partitions de k. C est le polynome zonal


complexe dfini par,
C (X) = [] (1)[] (X),
(5.2.79)
avec [] (1) et [] (X) donne par,
QN

i<j (ki kj i + j)
,
[] (1) = k! Q
N
i=1 (ki + m i)!

(5.2.80)

et,
det(k+mj
)
i
.
mj
det(i )
On peut retenir en plus deux points particuliers,
[] (X) =

(5.2.81)

0 F0 (X)

= etr(X)
a
1 F0 (a; X) = det(I X) .

(5.2.82)

Proposition 5.2.3 (densit jointe). Comme pour les matrices de Wigner,


on peut crire la densit jointe des valeurs propres 1 > , > N dune matrice
de covariance S WN (T, ), en posant t = T 1,

p(1 , . . . , N ) = cN,t

N
Y

T N 1
2

j=1

1
|j k |0 F0 tL, 1 ,
2
1j<kN


(5.2.83)

o
2 /2

(det)t/2 ttN/2
 
,
t
2
N N

(5.2.84)

1
1
(z (k 1)), <z > (N 1),
2
2
k=1

(5.2.85)

cN,t =

 
2

p est la fonction gamma multivarie,


N (z) = N (N 1)/4

N
Y

enfin, 0 F0 est la fonction hypergomtrique multivarie.


Proposition 5.2.4. Soit S une matrice de covariance N N constuite avec
des variables NT N (, ). Alors, les valeurs propres 1 > 2 > > N de S
convergent en distribution vers,

(5.2.86)
T (i 0i ) N (0, 20i ), i = 1, , N,
o {0i } sont les valeurs propres distinctes de la matrice .
142

Trading Haute Frquence

Il y a une sorte danalogie la loi du semi cercle de Wigner pour les matrices de
covariance dans le cas dune distribution gaussienne, la distribution de Mar
cenko
et Pastur, la loi du quart de cercle.
Thorme 5.2.2 (Mar
cenko et Pastur). Le thorme de Mar
cenko et Pastur
tablit que pour une matrice de covariance S WN (T, IN ), avec q = N/T ,
GN Gmp (, q), p.s.,

(5.2.87)

o GN est la fonction de rpartition des valeurs propres i de S/T ,


GN : x

N
1 X
1 x ,
N i=1 i

(5.2.88)

et Gmp est la fonction de rpartition de Mar


cenko et Pastur,
Leb
Gmp (x, q) = GDir
mp (x, q) + Gmp (x, q),

R,

(5.2.89)

la partie de Dirac tant donne par,


(

GDir
mp (x, q)

:x

1q
0

si x 0, 0 < q < 1
sinon,

et la partie de Lebesgue par GLeb


mp (, q) : x
Leb
gmp
(, q)

1
:x
2q

R + Leb
g (x, q)dx
0

mp

(5.2.90)

, avec,

(+ x)+ (x )+

avec, enfin,
= (1

q)2 .

(5.2.91)

(5.2.92)

Comme on le voit sur la figure (5.2.3), on parle bien cette fois-ci de quart de
cercle.
Notons que 1 et min{T,N } convergent vers le support [ , + ],
1 (1 + q 1/2 )2 p.s.
min{t,d} (1 + q 1/2 )2 . p.s.

(5.2.93)

et si T < N , alors les valeurs propres t+1 , , d sont gales zro.

143

3.0
2.5
2.0
MC

1.5
0.0

0.5

1.0

1.5
0.0

0.5

1.0

MC

2.0

2.5

3.0

Trading Haute Frquence

Density

0.4

0.6

0.0

0.0

0.2

0.2

0.4

Density

0.8

0.6

1.0

0.8

1.2

Figure 5.4 Exemple de diffrentes densits de Marcenko et Pastur pour diffrentes valeurs
de q. A gauche q 1, droite q 1.

0.5

1.0

1.5

2.0
Eigenvalues

2.5

3.0

0.5

1.0

1.5

2.0

2.5

3.0

Eigenvalues

Figure 5.5 Exemple de deux histogrammes issus correspondant des matrices de covariances
construitent partir de loi normale et la densit de Mar
cenko et Pastur prdite.

Thorme 5.2.3 (comportement asymptotique de la plus grande valeur


propre). Soit W une matrice de Wishart blanche relle et 1 sa plus grande valeur
144

Trading Haute Frquence

propre. Alors,
P(T 1 N T + N T x|H0 = W WN (T, IN )),

(5.2.94)

o les constantes de normalisation sont,


s

N T

1
= T +
2

1
N
2

N T

1
= ( N + T ) q
N

(5.2.95)

1/3

1
2

+
T 21

et F1 est la fonction de rpartition de la loi de Tracy-Widom dordre 1 (5.2.67).


Nous avons montr quelques thormes de convergence des plus grandes valeurs
propres dune matrice de covariance. Le cas o la matrice S est de Wishart blanche
correspond une matrice de corrlation. En effet, rappelons que la corrlation est
donne par,
Cov(X, Y )
.
(5.2.96)
rX,Y =
X Y
donc pour pouvoir utiliser le thorme de Mar
cenko et Pastur, il suffit de rduire
les sries dactifs et construire S comme (5.2.73), et,
i

1
j=1 ci,j
PN PN
1
i=1
j=1 cij
PN
1
j=1 ri,j /xj
.
PN PN
1
i=1
j=1 rij /(xi xj )

PN

=
=

(5.2.97)

Pour rsumer, si q 0 et, si les sries utilises pour la construction de la


matrice de covariance suivent des lois normales iid, alors il ne devrait pas y avoir
de valeurs propres lextrieur de lintervalle [ , + ]. Remarquons que nous avons
la dcomposition suivante,
TrC =

N
X
k=1

k =

X
i[ ,+ ]

i +

j ,

(5.2.98)

j (
/ ,+ )

j [1 , ) (+ , N ] est lensemble des valeurs propres qui nobissent pas aux


conditions de la thorie des matrices alatoires. On vient de dcomposer la trace
en la partie bruite et la partie contenant linformation.
145

Trading Haute Frquence


Seules les valeurs propres suprieures + comportent de linformation. 0
car on peut chercher la main la valeur de q de (5.2.91) permettant de fitter au
mieux la densit trouve en regardant par exemple le coefficient de dtermination,
le R2 ,
P
(
yi y)
2
.
(5.2.99)
R = Pi
)
i (yi y
Nanmoins, il serait bien que la trace initiale soit conserve, on peut par
exemple ajouter une valeur propre permettant de satisfaire cette condition,
= tr

(5.2.100)

j 1j [ ,+ ] ,

ainsi, la trace de la matrice de covariance est conserve. La dernire tape consiste


donc calculer les vecteurs propres partir des nouvelles valeurs propres et reconstruire la matrice de covariance nettoye du bruit.
On prsente sur la figure (5.2.3) la densit des valeurs propres de la matrice de
covariance construite avec 88 des composants de lindice NYSE 100 du 02/04/2004
au 15/08/2011, 1856 points, q = 0.047. On voit clairement que le march se dtache des autres valeurs propres et que la plus forte concentration dcrit la densit
dune matrice de correlation alatoire.
En lisant ce cours, il peut paratre tonnant que nous ayons prsent cette thorie avec des entres gaussiennes alors que toute la premire partie nous indique le
contraire que les fluctuations financires ne sont pas normales.
Il est un peu plus compliqu de se placer dans un cadre plus raliste, nongaussien. Rappelons que la distribution de Student est donne par,
1

f (x) = q
()

1+
2
 

a
(x2 + a2 )

1+
2

(5.2.101)

avec et a des paramtres positifs, pour notre problmatique on suppose gnralement entre 3 et 5 et la fonction dEuler,
(t) =

tz1 et dt.

(5.2.102)

Lestimation de la matrice de corrlation peut se faire par maximum de vraisemblance. La distribution jointe de (x1 , , xN ) est
146

Trading Haute Frquence

density

density

Market

10

20

30

40

50

Figure 5.6 Densit des valeurs propres de la matrice de covariance construite avec 88 des
composants de lindice NYSE 100 du 02/04/2004 au 15/08/2011, 1856 points. A gauche la densit
totale, droite un zoom de la partie gauche.

f (x1 , , xN ) =

N +
2

 q

()N |S| 1 +


1 ) x
ij j
i,j xi (S

(5.2.103)

 N + .
2

o |A| dnote le dterminant de A. La log vraisemblance est donc,

log L = log

T
Y
t=1

N +
2

 q

()N |S| 1 +

T log |S|1/2 +

T
X
t=1

log 1 +

 N +

i,j

xi (t)(S 1 )ij xj (t)

N +
2

xi (t)(S )ij xj (t)


.

i,j

(5.2.104)
Pour plus
de
clart
nous
drivons
les
deux
termes
sparement.
Pour
le
premier


1/2
terme, log |S|
, nous avons besoin de noter que,

147

Trading Haute Frquence

log |A|
= A1 .
A

(5.2.105)

1 log (|S1 |)
1
= Sij .
1
2 (S )ij
2

(5.2.106)

|A1 | = |A|1 ,
Alors,


log |S|1/2

(S 1 )ij
Pour le second terme,

PT

t=1

log

1+

 N +

i,j

xi (t)(S 1 )ij xj (t)

, sachant

que,
X

xi (t)(S 1 )ij xj (t) = tr(S1 xx> ),

i,j

tr(AB)
= B>,
A

(5.2.107)

alors,

log

1+

i,j

xi (t)(S

)ij xj (t)

 N +

(S 1 )ij

N +
2 1+

xi (t)xj (t)/
.
1 ) x (t)
ij j
i,j xi (t)(S
(5.2.108)

Ainsi la condition du premier ordre est,


T
N +X
xi (t)xj (t)
Sij
= 0.
P
1 ) x (t)
2
2
ij j
i,j xi (t)(S
i,j +

(5.2.109)

Lestimateur du maximum de vraisemblance est,


T
N +X
xi (t)xj (t)
Sij =
.
P
T t=1 + i,j xi (t)(S1 )ij xj (t)

(5.2.110)

Comme nous le voyons, nous ne disposons pas de formule ferme pour la distribution de Student. Le calul se faisant rcursivement, demandant ainsi un certain cot
de calcul. Nanmoins, nous avons un rsultat trs intressant, dans [BuGoWa06],
nous avons la densit des valeurs propres pour le cas dune matrice de corrlation
avec des entres suivant une loi de Student multivarie,
 /2

g() =

2q

  /21

Z + q

(+ x)(x )e 2 x/21 dx,

(5.2.111)
148

Trading Haute Frquence

avec q, dfini comme prcdement.


Pour conclure cette section, notons simplement que dans la partie sur la modlisation des donnes financires, le modle de marche alatoire multifractale apparat
comme un srieux candidat aujourdhui. Il existe un thorme du type Mar
cento
Pastur pour cette loi [AlRhVa], il donnera lieu un projet.

5.2.4

Donnes Asynchrones

Dans cette partie nous navons pas parl de la frquence. Est-ce que la thorie
des matrices alatoires sapplique toutes les frquences ? Nous avons prsent
une thorie pour des variables gaussiennes, et, dans la premire partie, nous avons
vu que les actifs financiers tendent vers une loi gaussienne pour des lags importants, un mois par exemple. Tout de mme, pour une distribution de Student,
nous avons un rsultat trs intressant (si on suppose que la RMT est intressante
et/ou utile pour notre problmatique bien sr) de densit thorique des valeurs
propres. La distribution de Student est mieux adapte pour les donnes plus
hautes frquences que mensuelles. Idem pour le cas des marches alatoires multifractales.
Si lon se place une frquence beaucoup plus leve, lors de la formation
des prix, au tick, les choses sont bien diffrentes. Quelque soit la frquence, nous
avons fait la supposition que nous regardions des barres et non des donnes tick
by tick. Construire une matrice de covariance avec des donnes pr-sampl nest
pas cohrent, nous navons pas forcment de transactions chaque minute prcisment, donc quelles donnes prendre ? A trs haute frquence, les donnes arrivent
ponctuellement, sans prendre ncessairement des actifs non liquides, les donnes
tant sampl la milli-seconde, nous ne pouvons fondamentalement pas voir les
transactions arriver aux mmes instants. Nous retrouvons ici les concepts deffet
Epps et lead-lag.
Notons X i (t) = ln S i (t) le log-prix de lactif S i lintant t, i=1,2. La covariance
des actifs S 1 et S 2 est donne par,
Cov =

T
X

(X 1 (s) X 1 (s 1))(X 2 (s0 ) X 2 (s0 1)).

(5.2.112)

s0 =s=1

A trs haute frquence, nous navons donc pas ncessairement s = s0 et lqua149

Trading Haute Frquence

tion (5.2.112) na plus de sens. La manire la plus simple de traiter les donnes asynchrones est de faire une interpolation, [GeDaMuOlPi01]. Il sagit de resynchroniser les observations.
La premire ide est de prendre le dernier prix,
ti = arg max{ti t}, i = 1, 2, , n.
ti

(5.2.113)

Cette mthode est linterpolation previous-tick. Nous pouvons bien sr penser


interpoler entre les deux dates les plus proches. En supposant que ti , est construit
par (5.2.113) pour tout i,
S(t) = S(ti ) +

t ti
(S(ti+1 ) S(ti )).
ti+1 ti

(5.2.114)

Cette mthode est dites dinterpolation linaire.


Les deux mthodes sont intressantes. Linterpolation previous-tick nutilise
que le pass, linformation disponible avant et gale la date t, elle est donc causale. Linterpolation linaire utilise linformation future, nous devons connatre la
valeur de la transaction arrivant juste aprs la date t. Dans le cas dune longue
priode de creux, linterpolation previous-tick peut nous donner une valeur extrme et fausser les analyses statistiques de lactif en question, particulirement
pour les valeurs extrmes puisquil ne sagirait que dun artefact. Linterpolation
linaire semble donc mieux approprie pour mener bien des analyses de march.
Nanmoins, si lon utilise les donnes dans un contexte de temps rel, comme pour
une stratgie passant des ordres sur le march et non en backtest, il est impossible dutiliser cette mthode, uniquement le previous-tick. Nous avons prsent
ces deux mthodes sur la figure (5.7)
Nous prsentons maintenant deux des estimateurs les plus courament utiliss pour les donnes asynchrones, lestimateur de Fourier et de Hayashi-Yoshida.
Pour ces deux estimateurs nous supposons que les fluctuations suivent des processus dIt. Commencons par lestimateur de Fourier [MaMa02].
Soit (X(t) = (X1 (t), , Xd (t))) d les log-prix de d actifs financiers observs
sur [0, T ]. On suppose quils ont pour diffusion,
dXi (t) = i (t)dWi (t), i = 1, , d,

(5.2.115)
150

Trading Haute Frquence

t1

t2

t3

t4

t5

Figure 5.7 Reprsentation des schmas dinterpolation. Les ti sont equidistants, les autres
tirets reprsentent les instants darrives des transactions. Les points correspondent a linterpolation previous-tick, les croix linterpolation linaire.

avec i la volatilit instantane de lactif i et Wi deux mouvements browniens de


corrlation constante, d < Wi (t), Wj (t) >t = ij dt, pour tout i, j = 1, , d. La
matrice de covariance (t) a donc pour lments, ij (t) = ij i (t)j (t). Lestimation de la matrice de covariance se fait alors en utilisant lanalyse harmonique.
Commenons par crire les coefficients de Fourier associs aux rendements dXi ,
1 Z 2
dXi
2 0
1 Z 2
aq (dXi ) =
cos(qt)dXi
0
1 Z 2
aq (dXi ) =
sin(qt)dXi .
0

a0 (dXi ) =

(5.2.116)

Il ne sagit pas des coefficients usuels mais leurs quivalents sous forme dintgrale
stochastique. Introduisons les deux conditions,
1. Le processus de prix Xi (t) est observ n fois aux instants 0 = t0 < t1 < <
tn = T , non ncessairement espac uniformment.
151

Trading Haute Frquence

2. Le processus de prix Xi (t) est constant et continue gauche sur lintervalle


[tk1 , tk ], i.e. Xi (t) = Xi (tk1 ) pour t [tk1 , tk ] et k = 1, , n.
Alors en intgrant par partie,
Xi (2) Xi (0) q Z 2
1 Z 2
cos(qt)dXi =

sin(qt)Xi (t)dt.
aq (dXi (t)) =
0

0
(5.2.117)
Et,
q Z tk1
q Z tk
sin(qt)Xi (t)dt =Xi (tk1 )
sin(qt)dt
tk1
tk
1
=Xi (tk1 ) (cos(qtk ) cos(qtk1 )).

Xi (2)Xi (0)
En considrant que
est le drift du log-prix,

i (t) = Xi (t) Xi (2) Xi (0) t


X

il est ainsi gal zro et,


aq (dXi )

n
1X
[cos(qtk ) cos(qtk1 )]X(tk1 )
k=1

n
1X
[sin(qtk ) sin(qtk1 )]X(tk1 ).
bq (dXi )
k=1

(5.2.118)

(5.2.119)

(5.2.120)

La transforme de Fourier inverse de la matrice de covariance est donne par,


N
X

1
[aq (dXi )aq (dXj ) + bq (dXi )bq (dXj )],
M
q=1 2

i,j = a0 (ij ) + lim

N,M

(5.2.121)

les coefficients tant donn par,


N
1
X
[aq (dXi )aq (dXi ) + bq (dXi )bq (dXj )]
N N
q=1 2

a0 (ij ) = lim

s
NX
1
[aq (dXi )aq+s (dXi ) + bq (dXi )bq+s (dXj )]
N N
q=1 2

as (ij ) = lim

(5.2.122)

s
NX
1
bs (ij ) = lim
[aq (dXi )bq+s (dXi ) bq (dXi )aq+s (dXj )].
N N
q=1 2

152

Trading Haute Frquence

avec N la frquence choisie, on choisira infrieur T /2 (voir e.g. [GeRe04] et


[MaTuIoMa11] pour un choix de la valeur). 5.2.121 tant la covariance instantane,
en integrant nous obtenons,
(F ourier )ij =

Z 2
0

ij (t)dt = 2a0 (ij ).

(5.2.123)

Il sen suit que la matrice de corrlation est quant elle estime par,
a0 (ij )
(F ourier )ij = q
, i, j = 1, , p.
a0 (ii )a0 (jj )

(5.2.124)

Lestimateur de la matrice de correlation de Hayashi-Yoshida, [HaYo05] peut


tre appliqu directement sur les transactions boursires, sans quelles aient t
redfinies sur une mme grille. Les instants de transactions sont supposs tre
distribus selon un processus ponctuel, {t1i : i = 1, , n1 }, {t2j : j = 1, , n2 },
{tdk : k = 1, , nd }, n1 , n2 , nd tant donc le nombre de transactions des actifs
S 1 , S 2 , , S d de t0 = 0 jusqu tn1 = tn2 = tnd = T . En notant I k lintervalle
I k =]tk1 , tk ], la covariance est alors donne par,
HY

)ij =

nj
ni X
X
i

XIi i XIjj 1I i I j 6= , i, j = 1, , d.

(5.2.125)

Nous avons donc chaque rendement de lactif i, disons linstant tk , multipli


par tous les rendements de lactif j compris entre ]tk1 , tk ]. Lestimateur est ainsi
consistant.
Lestimateur de la matrice de corrlation est alors,
nj
ni X
X
i

XIi i XIjj 1I i I j 6=

(HY )ij = v
uX
ni 
u
t

XIi i

nj 
2 X

, i, j = 1, , d.

(5.2.126)

2
XIjj

Notons enfin que dans le cas o les actifs sont des processus dIt,
dS k (t) = S k (t)(k (t)dt + k (t)dW k (t)),

(5.2.127)

Si les processus k et k sont adapts, les mouvements browniens corrls entre


eux, d < W k , W l >t = k,l (l)dt et les instants darrives I k , k = 1, , d pouvant
153

Trading Haute Frquence


tre dpendant entre eux mais indpendant de S k , k = 1, , d, alors il est possible
que lestimateur soit consitant et asymptotiquement normale.

154

Bibliographie
[AlRhVa] R. Allez, R. Rhodes et V. Vargas, Marchenko Pastur type Theorem for
Independent MRW Processes : Convergence of the Empirical Spectral Measure.
Arxiv : 1106.5891, 2011.
[An11] B. Angoshtari, Portfolio Choice With Cointegrated Assets, The OxfordMan Institute, University of Oxford Working paper, OMI11.01, 34, 2011,
arXiv.org.
[AuCeFrSc01] P. Auer, N. Cesa-Bianchi, Y. Freund et R. E. Schapire, The NonStochastic Multi-Armed Bandit Problem. SIAM Journal on Computing, 32 :4877, 2001.
[BeCo88] R. Bell et T.M. Cover, Game-Theoretic Optimal Portfolio, Mgmt. Sci.
34, 724-733, 1988.
[BlKa97] A. Blum, A. and A. Kalai, Universal Portfolios With and Without Transaction Costs, in Proceedings of the Tenth Annual Conference on Computational Learning Theory, pages 309-313. ACM Press, 1997.
[BuGoWa06] Z. Burda, A. Grlich et B. Waclaw, Spectral Properties of Empirical
Covariance Matrices for Data with Power-Law Tails, Phys. Rev. E 74, 041129,
2006, arXiv.org.
[CeLu06] N. Cesa-Bianchi et G. Lugosi, Prediction, Learning, and Games, Cambridge University Press, 406, 2006.
[Co91] T.M. Cover, Universal Portfolio, Mathematical Finance, 1 :1-29, 1991.
[CoOr96] T.M. Cover and E. Ordentlich, Universal Portfolios With Side Information, IEEE Transactions on Information Theory, 42 :348-363, 1996.
[EnGr87] R. Engle, et C.W. Granger, Co-Integration and Error Correction : Representation, Estimation, and Testing, Econometrica, Vol. 55(2), 251-276
[GeDaMuOlPi01] R. Gencay, M. Dacorogna, U. Muller, R. Olsen, O. Pictet, An
Introduction to High-Frequency Finance, Academic Press, New-York, 383 pp,
2001.
155

Trading Haute Frquence

[GeRe04] C. Genovese et R. Ren, Modeling International Market Correlations


with High Frequency Data, Correlated Data Modelling 2004, Franco Angeli
Editore, Milano, Italy (2008) 99-113.
[HaTiFr09] T. Hastie, R. Tibshirini and J. Friedman, The Elements of Statistical
Learning : Data Mining, Inference and Prediction (Second Edition). SpringerVerlag, New York, 2009.
[HaYo05] T. Hayashi, et N. Yoshida, On Covariance Estimation of NonSynchronous Observed Diffusion Processes, Bernoulli, 11, 359-379, 2005.
[He98] D. P. Helmbold et al., On-line Portfolio Selection Using Multiplicative Updates, Mathematical Finance, 8 :325-344, 1998.
[LaCiBoPo99] L. Laloux, P. Cizeau, J.P. Bouchaud et M. Potters, Noise Dressing
of Financial Correlation Matrices. Phys. Rev. Lett. 83, 1467, 1999, arXiv.org.
[KiWa97] J. Kivinen et M.K. Warmuth, Additive versus Exponentiated Gradient
Updates for Linear Prediction, Info Computation 132(1), 1-64, 1997.
[LeWo00] O. Ledoit et M. Wolf, A Well-Conditioned Estimator for LargeDimensional Covariance Matrices. Working paper, Departamento de Estadistica y Econometria, Universidad Carlos III de Madrid, 47pp, 2000.
[LeWo00] O. Ledoit et M. Wolf, Improved Estimation of the Covariance Matrix
of Stock Returns With an Application to Portfolio Selection, Working paper,
Departamento de Estadistica y Econometria, Universidad Carlos III de Madrid,
21pp, 2000.
[MaMa02] P. Malliavin et M. Mancino, Fourier Series Method for Measurement
of Multivariate Volatilities. Fin. Stoch., 6, 2002. 4961.
[MaTuIoMa11] V. Mattiussi, M. Tumminello, G. Iori et R.N. Mantegna, Comparing Correlation Matrix Estimators Via Kullback-Leibler Divergence, 20 pp,
2011, SSRN.
[MuPrWo08] S. Mudchanatongsuk, J.A. Primbs et W. Wong, Optimal Pairs Trading : A Stochastic Control Approach, 2008 American Control Conference Westin Seattle Hotel, 5, 2008.
[PoBoLa05] M. Potters, J.P. Bouchaud, L. Laloux, Financial Application of Random Matrix Theory : Old Laces and New Pieces, Acta Phys. Pol. B 36, 2767,
2005, arXiv.org.
[stockcharts.com] http ://stockcharts.com/school/doku.php ?id=chart_school :technical_indicators.
156

Trading Haute Frquence

[StLu05] G. Stoltz et G. Lugosi, Internal Regret in On-Line Portfolio Selection,


Machine Learning, 59 :125-159, 2005.
[Wi55] E. P. Wigner, Characteristic Vectors of Bordered Matrices with Infinite
Dimensions, Annals of Mathematics, 62, 548-564, 1955.

157

Troisime partie
Appendix

158

Chapitre 6
Optimisation non linaire
Dfinition 6.0.9 (descente de gradient). Soit f : Rd R une fonction C 1
minimiser. La drive partielle de f scrit,
f
f (x + x) f (x)
= lim
,
x x0
x

x Rd ,

(6.0.1)

f
< 0 cela signifie
xi
quune augmentation infinitsimale du paramtre xi ferait baisser la fonction f .
On cherche donc changer x dans la direction du vecteur de gradient f ,
cela nous indique comment un changement de x affecte f . Si

x0 Rd
,
xk+1 = xk k f

(6.0.2)

> 0 est le pas de dplacement, sil est assez petit on sera assur davoir une
rduction de f chaque itration, mais si trop petit, la convergence sera trs lente
vers un minimum local, si trop grand, divergence possible.
On peut proposer une autre interprtation de cet algorithme, si on crit le
dveloppement de Taylor de f lordre 1 par rapport xk on obtient,
1
||x xk ||2 .
(6.0.3)
2
Comme on aboutit une forme quadratique (le fait quil sagisse dun min ou dun
max sera fait en cours), on peut chercher minimiser simplement (6.0.3),
f (x) = f (xk ) + f (xk )(x xk ) +

159

Trading Haute Frquence

x (f (xk ) + f (xk )(x xk ) +

1
1
||x xk ||2 ) = f (xk ) + (x xk ).
2

(6.0.4)

On cherche donc rsoudre,


f (xk ) +

1
(x xk ) = 0

xk+1 = xk f (xk ).

(6.0.5)

On retrouve bien lalgorithme de descente du gradient.


Il sagit dun exemple simple dun algorithme de descente. Les ides gnrales
dun algorithme de descente sont les suivantes :
Recherche dune direction de descente dk , direction dans laquelle il est possible de faire dcrotre f
Recherche dun certain qui permet une dcroissance significative
La forme usuelle est,
xk+1 = xk + dk .

(6.0.6)

Une fois la direction dk dtermine, il faut soccuper de dterminer le pas


de dplacement optimal, . Comme on cherche minimiser f , on peut vouloir
minimiser le critre le long de dk et donc de dterminer le k comme solution du
problme,
k = arg min f (xk + dk ).
(6.0.7)

Il sagit de la rgle de Cauchy. La rgle suivante sappelle la rgle de Curry,


k = inf{ 0 : f 0 (xk + dk ) = 0, f (xk + dk ) < f (xk )}.

(6.0.8)

Dans ce cas, k est donc choisi parmi les points stationnaires.


Ces deux manires de dterminer le pas optimal k sont dites de recherche
exacte. Prenons le cas dune fonction quadratique, i.e. f (x) = Ax + b, nous
avons simplement,
>
>
d>
k (Axk + b + k Adk ) = dk f (xk ) + k dk A(dk ) = 0,

(6.0.9)
160

Trading Haute Frquence

si A est dfinie positive, et donc que la fonction est convexe, la valeur du pas de
dplacement est simplement donne par,
k =

d>
k f (xk )
.
||dk ||2A

(6.0.10)

Si la fonction minimiser na pas toutes les bonnes proprits requises, alors


il se peut que les rgles (et donc les pas fournis) de Cauchy ou Curry nexistent
pas. De plus, la dtermination exacte de k (au sens de Cauchy ou Curry) peut
savrer trs coteuse en temps de calcul, ce qui nest pas forcment compens
par le gain de temps dans la minimisation de f . On va naturellement essayer de
construire des algorithmes peu gourmands approchant au moins lune des deux
quations (6.0.7), (6.0.8).
Pour essayer dapprocher la condition de Cauchy on peut rechercher k tel que,
f (xk + k dk ) f (xk ) + w1 k f( xk )d>
k,

(6.0.11)

o w1 ]0, 1[. Il sagit de la condition dArmijo. Pour arriver trouver un pas de


dplacement qui vrifie lquation prcdente on applique lalgorithme suivant,
Algorithme : Recherche Linaire approche - Armijo
Initialisation : k1 > 0, ]0, 1[
Tant que (6.0.11) nest pas vrifie i.e.,
f (xk + ki dk ) > f (xk ) + w1 ki f (xx )d>
k.
(1) On prend
ki+1 [ ki , (1 )ki ].
(2) i=i+1
Le pas dtermin par cet algorithme a la fcheuse tendance tre trop petit et
donn une convergence trop lente. La rgle de Goldstein est,
0

f (xk + k dk ) f (xk ) + w1 k f (xk )d>


k.

(6.0.12)

o w1 [w1 , 1]. Cette rgle permet de ne pas choisir de k trop petit. Les conditions
de Wolfe permettent galement davoir un pas de dplacement pas trop petit et
vrifient la condition de dcroissance linaire (6.0.11),
161

Trading Haute Frquence

f (xk + k dk ) f (xk ) + w1 k f (xk )d>


k.
f (xk + k dk ) w2 gk d>
k

(6.0.13)

Pour dterminer vrifiant les conditions de Wolfe, on peut appliquer lalgorithme de Fletcher-Lemarchal
Algorithme : Recherche Linaire approche - Fletcher-Lemarchal
Initialisation : k1 = 0, Soient 1 =0, 1 = , ]0, 21 [ et e > 1
(1) Si
f (xk + ki dk ) f (xk ) + w1 ki f (xk )d>
k.
nest pas vrifie, alors i = i et,
i [(1 )i + i , i + (1 )i ].
(2) Sinon,
(2.1) Si
f (xk + ki dk ) w2 gk d>
k.
est vrifie, alors stop.
(2.2) Sinon, i = i .
(2.3) Si i = +, alors prendre i [e i , ], sinon,
i [(1 )i + i , i + (1 )i ].
Prcdemment nous avions montr que dk pouvait tre gale f (xk ), si
nous faisons maintenant le dveloppement de Taylor de f au second ordre (on doit
donc avoir une fonction f de classe C 2 ) nous obtenons,
1
f (x) = f (xk ) + f (xk )(x xk ) + (x xk )> Hf (xk )(x xk ),
2

(6.0.14)

o Hf (x) est le hessien de f au point x. Les conditions doptimalit sont,


f (xk ) + Hf (xk )(xk+1 xk ) = 0.

(6.0.15)

Et donc, la mise jour est donne par,


xk+1 = xk Hf (xk )1 f (xk ).

(6.0.16)
162

Trading Haute Frquence

Il sagit de la mthode de Newton. Le problme ici est le temps de calcul de la


matrice hessienne Hf , on essaye dapproximer Hf , ou directement H 1 f ,
xk+1 = xk Bk f (xk ),

(6.0.17)

o Bk est lapproximation de H 1 f (on parle alors de quasi Newton).


Pour toute la suite on pose yk = f (xk+1 ) f (xk ) et sk = xk+1 xk .
Lapproximation de Broyden est donne par,
Bk+1 = Bk +

(sk Bk yk )(sk Bk yk )>


.
(sk Bk yk )> yk

(6.0.18)

Algorithme : Quasi Newton - Broyden


Initialisation : 0 = 1, H0 = I
pour k = 1, 2,
(1) Calcul de la direction de descente, dk = Bk f (xk )
(2) On dtermine k en appliquant une recherche linaire de Wolfe.
(3) On calcule
(sk Bk yk )(sk Bk yk )>
Bk+1 = Bk +
.
(sk Bk yk )> yk
(4) Stop si ||f (xk )|| , alors x = xk , sinon, retour ltape 1.

Le problme ici est que les Bk ne sont pas forcment dfinis positifs. La mise
jour de Davidson, Fletcher et Powell permet de pallier ce problme, elle est
donne par,
Bk+1

Bk yk yk> Bk
sk s>
k
>
.
= Bk +
sk y k
yk Bk yk

(6.0.19)

Nous prsentons enfin la mthode de Broyden, Fletcher, Goldfard et Shanno


(BFGS),
On peut montrer dans ce cas que la convergence est superlinaire, i.e. que,
||wk+1 w ||
= 0.
||w w ||
k
lim

(6.0.20)

163

Trading Haute Frquence


Algorithme : Quasi Newton - BFGS
Initialisation : 0 = 1, H0 = I
pour k = 1, 2,
(1) Calcule de la direction de descente, dk = Hk1 f (xk )
(2) On dtermine k en appliquant une recherche linaire de Wolfe.
(3) On calcul
!
sk yk> Bk + Bk yk s>
yk> Bk yk sk s>
k
k
Bk+1 = Bk
+ 1+
.
yk >sk
yk>
yk> sk
(4) Stop si ||f (xk )|| , alors x = xk , sinon, retour ltape 1.

Notons quil existe une version modifie de lalgorithme BFGS ne ncessitant


pas de calculer explicitement Hf et donc davoir stocker un trop grand nombre
de donnes, il sagit de lalgorithme Low Memory BFGS.

164

Chapitre 7
Introduction R
7.1

Premiers Pas (ou pas !)

R est un logiciel libre sous la licence GNU GPL disponible sur la plupart des
OS. Il sagit dun langage de haut niveau principalement utilis pour les statistiques, mais on peut facilement, comme on le verra, coder tout type de fonction
mathmatique.
La premire tape consiste bien sr au tlchargement du logiciel, il suffit de
se rendre sur : http ://cran.r-project.org/, choisir son OS et, se laisser guider pour
linstallation. Une fois la procdure termine et R lanc, nous pouvons avoir besoin dinstaller des packages, rien de plus simple ! Il suffit de cliquer sur longlet
Packages, slectionner installer le(s) package(s), une liste de site miroir est propose, on pourra par exemple choisir Lyon 1 puis, slectionner le package dsir.
Prenons par exemple RExcelInstaller, on voit que linstallation a ncessit
linstallation des packages rcom et rscproxy. Une autre procdure possible pour
installer un package aurait t de se rendre sur la page web de la liste des packages
disponibles, de slectionner RExcelInstaller, de le charger au format zip, et
de linstaller partir de R en slectionnant installer partir du fichier zip. Mais
cela aurait t plus fastidieux puisque nous aurions d rpter les mmes tapes
pour les dpendances rcom et rcsproxy. Pour charger le package dans la session
ouverte, il suffit de taper dans la console, library(RExcelInstaller).
On pourra manipuler des objets : vecteurs, matrices, tableaux de donnes,
listes, etc. Commenons par dfinir un vecteur :
x=c ( 1 , 4 )

165

Trading Haute Frquence

Deux possibilits, soit on tape la ligne de code prcdente directement dans la


console et la ligne est compile, soit on la tape dans un script, et pour la compiler
il suffit de slectionner la ligne et ctrl + R. Si on tape x dans la console, on obtient
naturellement le vecteur 1 2. Pour vrifier quelle classe appartient lobjet x,
on tape class(x), le rsultat sera numeric. Pour modifier un lment du vecteur
x, disons le premier :
> x [1]=2
> x
[1] 2 4

Pour multiplier deux vecteurs entre eux, on pourra utiliser les oprateurs * ou
%*% :
x=c ( 1 , 4 )
y=c ( 2 , 3 )
> xy
[ 1 ] 2 12
> x%%y
[1]
14

On a donc bien compris que loprateur * multiplie lment par lment et que
%*% effectue un produit scalaire, de mme, laddition, +, la soustraction - et
la division /, se font lment par lment :
> x /2
[ 1 ] 0.5 2.0
> x/y
[ 1 ] 0.500000 1.333333

Les mmes rgles sappliquent aux matrices,


x=matrix ( c ( 1 , 3 , 4 , 2 ) , n c o l =2, nrow=2)
y=matrix ( c ( 2 , 3 , 1 , 5 ) , n c o l =2, nrow=2)
> x
[ ,1] [ ,2]
[1 ,]
1
4
[2 ,]
3
2
> xy
[ ,1] [ ,2]
[1 ,]
2
4
[2 ,]
9
10

|
|
|
|

> y
[ ,1] [ ,2]
[1 ,]
2
1
[2 ,]
3
5

|
|
|
|

|
|
|
|

> x%%y
[ ,1] [ ,2]
[1 ,]
10
21
[2 ,]
12
7

|
|
|
|

> x+y
[1 ,]
[2 ,]

[ ,1] [ ,2]
1
5
0
7

> x/y
[ ,1] [ ,2]
[ 1 , ] 0.5 4 . 0
[ 2 , ] 1.0 0 . 4

Au passage, on vient dcraser lobjet x initialement dfini comme le vecteur


(1 ;4), pour afficher la liste dobjets en mmoire on tape ls() et pour effacer lobjet
x, rm(x). Il existe dautres oprateurs matriciels, par exemple :

166

Trading Haute Frquence

> t (x) # transpose


[ ,1] [ ,2]
[1 ,]
1
3
[2 ,]
4
2

| > s o l v e ( x ) #i n v e r s i o n
|
[ ,1] [ ,2]
| [ 1 , ] 0 . 1 4 2 8 5 7 1 0.28571429
| [ 2 , ] 0.2142857 0.07142857

|
|
|
|

> det ( x )
[ 1 ] 14

v=e i g e n ( x ) # v a l e u r s e t v e c t e u r s p r o p r e s
> v$values
[ 1 ] 1 . 5 + 3 . 4 2 7 8 2 7 i 1.5 3.427827 i
> v$vectors
[ ,1]
[ ,2]
[ 1 , ] 0.7559289+0.0000000 i 0.7559289+0.0000000 i
[ 2 , ] 0 . 0 9 4 4 9 1 1 + 0 . 6 4 7 7 9 8 5 i 0.0944911 0.6477985 i

Si on souhaite importer un fichier de donnes, deux solutions, soit laide du


package rcom install et charg prcdemment, il suffit alors sur un fichier excel
daller dans -> complments -> RExcel -> connect R (ou start R si R nest pas
encore ouvert ou que le package na pas t charg. Pour obtenir de laide sur le
package rcom, ou nimporte quel package machin, on tape ?machin.) puis de
slectionner la plage de donnes souhaites et Put R var ou R DataFrame selon.
Lautre moyen dimporter un jeu de donnes est de taper,
data=r e a d . c s v ( "C: / chemin / f i c h i e r . c s v " , h e a d e r=TRUE, s e p = " ; " , dec = " . " )

Dtaillons un peu la fonction read.csv, largument header, dfini TRUE ou


FALSE signifie que la premire ligne du fichier comporte les noms des colonnes,
sep notifie quel est le symbole qui spare les colonnes (usuellement un ; pour un
csv) et dec pour le symbole des dcimales, si franais une virgule, si anglosaxon, un
point. Pour afficher les autres arguments disponibles de la fonction read.csv, ou
tout autre, soit encore une fois on affiche laide ?read.csv, soit on tape simplement
le nom de la fonction dans la console, mais il faut dj avoir une ide des arguments
et de leurs rles pour que cela soit utile. Si le fichier .csv (R narrivera pas
importer un .xls, .xlsx, etc., inutile de sacharner) ne contient pas de nom, on aura
donc renseign header comme FALSE et pour pouvoir en rajouter,
colnames ( data ) [ 1 ] = Date
colnames ( data ) [ 2 ] = Open
etc .

pour dfinir un lment comme un character nous lavons donc entour de . Sans
grande surprise, rownames permet de mettre des noms aux lignes. Il est possible
que laffectation dun nom une colonne soit laborieux, une solution rapide est de
changer le type de data en data.frame,
data=a s . data . frame ( data )

Passons maintenant des fonctions un peu plus sophistiques proposes par R.


Supposons que le fichier de donnes charg prcdemment est lhistorique dune
action contenant 6 colonnes, date, open, high, low, close et volume et que lon
souhaite calculer la moyenne du close, on pourra avoir recourt une boucle :
167

Trading Haute Frquence

c l o s e=data [ , Close ]
somme=0
for ( t in 1: length ( close ) ) {
somme=somme+c l o s e [ t ]
}
moyenne=somme/ l e n g t h ( c l o s e )

Plusieurs remarques, data est une matrice, ou une data frame mais peu importe,
lobjet comporte donc des lignes et des colonnes -> data[ligne, colonne], comme
on souhaite faire la moyenne sur le close et que la colonne comportant le close
sappelle Close, on cherche data[,Close] (tonnant non ?) comme il sagit de
la 5me colonne, data[,5] revenait au mme. La fonction length(x) nous donne
le nombre dlments de x (dim(X) nous renvoit les dimensions de la matrice
X), la boucle for va donc faire varier t sur toute la srie de donnes, loprateur
: permet de construire la suite de nombre entier partant du terme sa gauche
jusquau terme sa droite, on aurait pu mettre c(a :b) mais cela revient au mme
que a :b. Nous pouvons aussi aller bien plus rapidement,
c l o s e=data [ , Close ]
moyenne=sum ( c l o s e ) / l e n g t h ( c l o s e )

|
|

c l o s e=data [ , Close ]
moyenne=mean ( c l o s e )

Nous voulons maintenant calculer la moyenne de lopen, du high, du low et du


close, comment faire rapidement ? On fait du calcul parallle ! ! Pas proprement
parler car cela serait un peu compliqu expliquer en quelques lignes (qui voudra
pourra regarder le package snowfall) mais on peut dj se servir de la fonction
apply de R. Avant de faire ce petit exemple, nous allons introduire la notion de
fonction pour faire quelque chose de plus clair. Pour dfinir une fonction en R il
suffit de taper :
m a f o n c t i o n=f u n c t i o n ( arguments ) {
l i s t e commandes
return ( r s u l t a t )
}

Revenons notre problme de moyenne, nous crivons tout sous forme de


fonction, nous verrons pourquoi aprs, la solution nave serait de faire simplement,
moyenne_une_boucle=f u n c t i o n ( t a b l e , sur_quoi ) {
moyenne=c ( ) #on d f i n i t l e type , i c i un v e c t e u r
j =0
f o r ( i i n sur_quoi ) {
j=j +1
moyenne [ j ]=mean ( t a b l e [ , i ] )
}
r e t u r n ( moyenne )

168

Trading Haute Frquence

ou pire encore :
moyenne_deux_boucles=f u n c t i o n ( t a b l e , sur_quoi ) {
moyenne=c ( )
j =0
f o r ( i i n sur_quoi ) {
j=j +1
somme=0
for ( t in 1: length ( table [ , i ] ) ) {
somme=somme+t a b l e [ t , i ]
}
moyenne [ j ]=somme/ l e n g t h ( t a b l e [ , i ] )
}
r e t u r n ( moyenne )
}

On a ici deux boucles imbriques, cest exactement ce quil faut viter tout
prix pour que les temps de calculs nexplosent pas ! Une solution propre est :
moyenne_pas_de_boucle=f u n c t i o n ( t a b l e , sur_quoi ) {
moyenne=apply ( t a b l e [ , sur_quoi ] , 2 , mean )
r e t u r n ( moyenne )
}

Nous allons comparer les temps dxecution, le fichier utilis comporte 30446
lignes,
> c o l o n n e s=c ( Open ,

High ,

Low , Close )

> system . time ( moyenne_une_boucle ( t a b l e=data , sur_quoi=c o l o n n e s ) )


utilisateur
systme
coul
0.02
0.00
0.02
> system . time ( moyenne_deux_boucles ( t a b l e=data , sur_quoi=c o l o n n e s ) )
utilisateur
systme
coul
6.99
0.00
6.99
> system . time ( moyenne_pas_de_boucle ( t a b l e=data , sur_quoi=c o l o n n e s ) )
utilisateur
systme
coul
0.01
0.00
0.01

On vient seulement de montrer le temps de calcul ncessaire pour les trois


fonctions, comme on peut le voir, avoir imbriqu deux fonctions fait compltement exploser les temps de calculs. Pour avoir le rsultat, cest quand mme notre
premier objectif,
> c o l o n n e s=c ( Open , High , Low , Close )
> moyenne_une_boucle ( t a b l e=data , sur_quoi=c o l o n n e s )

169

Trading Haute Frquence

[ 1 ] 1186.041 1186.806 1185.253 1186.038

on obtient le mme rsultat quelle que soit la fonction utilise, seuls les temps de
calculs changent. Notons que pour dfinir des arguments par dfauts, par exemple
si dans la majorit des cas on souhaite effectuer la moyenne uniquement sur le
close,
moyenne_pas_de_boucle=f u n c t i o n ( t a b l e , sur_quoi = Close ) {
moyenne=apply ( t a b l e [ , sur_quoi ] , 2 , mean )
r e t u r n ( moyenne )
}

dans ce cas, inutile de renseigner sur quelle colonne vous souhaitez effectuer le
calcul. Pour (presque) terminer cette prsentation du logiciel R nous allons regarder
la fonction lm car un bon nombre de fonctions R ont la mme structure. Rappelons
quune rgression linaire multiple est,
yt = 0 + 1 x1,t + , N xN,t ,

t = 1, , T

(7.1.1)

ou sous forme matricielle,


Y = X

(7.1.2)

o X est la matrice T (N + 1), la premire colonne tant constitue uniquement


de 1 pour faire apparatre le coefficient 0 , lintercept. La solution par minimisation
de lerreur quadratique, aprs quelques calculs,
= (X> X)1 X> Y

(7.1.3)

Si on code tout la main on a,


>
>
>
>

Y=data [ , Close ]
var_exp=c ( Open , High , Low )
X=c b i n d ( r e p ( 1 , dim ( data ) [ 1 ] ) , data [ , var_exp ] )
b e t a=s o l v e ( t (X)%%X)%%t (X)%%Y

La fonction lm de R nous permet de faire la mme chose, les dtails statistiques


en plus,
> f i t _ s i m p l e=lm ( data [ , Close ] ~ data [ , Open ] )
> f i t _ m u l t i p l e=lm ( data [ , Close ] ~ data [ , Open , High ,

Low ] )

Attention lexemple de rgression multiple propos, dans la vraie vie, si vous


faites une rgression linaire pour essayer de prvoir le close, vous pouvez connatre
lopen selon quel moment vous souhaitez prendre un pari, mais vous ne connaissez
ni le plus bas ni le plus haut de la journe avant la fermeture, il sagit juste dun
exemple ! la fonction lm nous retourne un ensemble de valeurs, premirement, les
170

Trading Haute Frquence

betas, ensuite, en tapant summary(fit) on obtient un ensemble de statistiques


propres la rgression, vous de tester ! Pour tracer les valeurs reconstruites par
le modle de rgression linaire sur lapprentissage on utilise la fonction plot,
>
>
>
>

v a l e u r s=f i t _ m u l t i p l e $ f i t t e d . v a l u e s
p l o t ( data [ , Close ] , type = l , y l a b = machin , x l a b = t r u c ,
main = Cours l a f e r m e t u r e )
l i n e s ( y=v a l e u r s , type =p , c o l = red )

lobjet rsultant de la rgression linaire, fit_multiple, comporte plusieurs lments comme les coefficients, le R2, etc. nous, nous voulons les valeurs reconstruites, pour extraire uniquement cette information on utilise loprateur $ suivi
de ce qui nous intresse,
> c o e f= f i t $ c o e f f i c i e n t s

Pour la fonction plot nous avons crit directement le rsultat sans se soucier
de laxe des abscisses, pour crire la date on aurait crit,
> p l o t ( data [ , Date ] , data [ , Close ] , type = l ,

y l a b = machin , . . . )

par dfaut R comprend que le premier argument de la fonction plot est x et le


deuxime y. Enfin, pour faire une prvision du close partir du modle construit,
prev=p r e d i c t ( f i t _ m u l t i p l e , newdata )

bien sr, newdata doit avoir trois colonnes comme lors de la construction.
Par exemple, le perceptron deux couches nnet du package ponyme et larbre
CART, rpart, toujours issu du package ponyme fonctionnent de la mme manire.
Il existe normment de packages proposant un tas de fonctions, nanmoins,
il est quand mme parfois utile de vraiment savoir coder proprement et de ne pas
se reposer uniquement sur lexistant, par exemple le perceptron nnet ne permet
davoir quune seule couche cache, mais comme on la dj dit prcdemment, le
thorme de Cybenko nous assure que nous navons pas besoin de plus de couches,
en revanche, on pourrait peut tre avoir envie de dfinir une autre fonction de
minimisation que lerreur quadratique pnalise, et le package ne nous permet
pas cela, on pourra donc avoir besoin de dvelopper nous-mme. En revanche,
il est vivement dconseill de vouloir coder nous-mme un produit matriciel par
exemple, pour les plus septiques, je vais essayer dexpliquer pourquoi. Bien sr que
si lon utilise loprateur %*%, il y a des boucles derrire, mais les personnes
qui lont cod sont bien meilleures que nous ! Faisons des tests ! On va se contenter
de regarder le produit scalaire de deux matrices carres A et B de taille N N ,
P
le rsultat est Cij = N
k=1 Aik Bkj . Le code le plus naf est,
171

Trading Haute Frquence

prod1=f u n c t i o n (A, B) {
N=dim (A ) [ 1 ]
C=matrix ( nrow=N, n c o l=N)
f o r ( i i n 1 :N ) {
f o r ( j i n 1 :N ) {
C [ i , j ]=0
f o r ( k i n 1 :N ) {
C [ i , j ]=C [ i , j ]+A[ i , k ] B [ k , j ]
}
}
}
r e t u r n (C)
}

Le problme ici est la gestion de la mmoire, on prfrera,


prod2=f u n c t i o n (A, B) {
N=dim (A ) [ 1 ]
C=matrix ( nrow=N, n c o l=N)
f o r ( i i n 1 :N ) {
f o r ( j i n 1 :N ) {
tmp=0
f o r ( k i n 1 :N ) {
tmp=tmp+A[ i , k ] B [ k , j ]
}
C [ i , j ]=tmp
}
}
r e t u r n (C)
}

Enfin, la dernire ide que nous allons tester est quau lieu de lire de la premire
ligne la dernire, idem pour les colonnes, nous allons faire le chemin inverse, de
la dernire la premire,
prod3=f u n c t i o n (A, B) {
N=dim (A ) [ 1 ]
C=matrix ( nrow=N, n c o l=N)
f o r ( i i n N: 1 ) {
f o r ( j i n N: 1 ) {
tmp=0
f o r ( k i n N: 1 ) {
tmp=tmp+A[ i , k ] B [ k , j ]
}
C [ i , j ]=tmp
}
}

172

Trading Haute Frquence

r e t u r n (C)
}

Pour faire le test nous construisons deux matrices alatoires de taille 100 par
100
P=100
A=matrix ( rnorm (PP , 0 , 1 ) , n c o l=P , nrow=P)
B=matrix ( rnorm (PP , 0 , 1 ) , n c o l=P , nrow=P)

Bien sr, nous allons comparer par rapport au produit matriciel de R :


> system . time ( prod1 (A, B) )
utilisateur
systme
4.11
0.00
> system . time ( prod2 (A, B) )
utilisateur
systme
2.03
0.00
> system . time ( prod3 (A, B) )
utilisateur
systme
1.99
0.00
> system . time (A%%B)
utilisateur
systme
0
0

coul
4.11
coul
2.03
coul
2.00
coul
0

Les rsultats sont donc sans appel ! Comment expliquer cela, un peu compliqu
vrai dire. Ce que vous devez retenir de ces exemples, utiliser pleinement le calcul
matriciel de R ! Eviter tout prix dimbriquer des boucles ! Ne pas aller de 1 N
mais plutt de N 1 !
Sur les packages, tre bien critique et vrifier que la fonction propose correspond bien votre problmatique, ne pas hsiter faire votre code si ncessaire. Et
pour information, le produit matriciel de R nest en fait pas cod en R mais dans
un langage de bien plus bas niveau. Lalgorithme utilis nest pas celui que nous
avons appris durant nos premires annes dtudes et utilis plus haut, il est de
complexit bien plus basse (on pourra par exemple travailler non pas avec A et B
mais plutt avec la transpose pour diminuer les chemins, travailler par blocs et
non par lments (O(n2.807 )) au lieu de n3 pour le produit naf), etc.
Nous concluons (pour de vraie !) cette introduction par un tableau rcapitulatif
de quelques fonctions R qui, esprons le, vous sera utile.

173

Trading Haute Frquence


Gnral
ls()
rm(x)
save.image()
library(machin)
?machin
< ; > ; <= ; >= ; == ; !=
x<1 & x>=0
x&y (x|y)
x&&y (x||y)

affiche la liste des objets en mmoire


supprime llment x
sauvegarde une image de la session courante
charge le package machin
affiche laide du package machin
oprateur de comparaison
0x<1
ET (OU) logique oprant sur tous les lments de x et y
ET (OU) logique oprant sur le premier lment de x et y

On prsente un code R pour lalgorithme de descente du gradient pas constant


pour optimiser la fonction f (x1 , x2 ) = x21 + x2 ,
#############################
#
#
# On c h o i s i t une f o n c t i o n #
#
#
#############################
f=f u n c t i o n ( x ) {
f=x [ 1 ] ^ 2 + x [ 2 ]
return ( f )
}
############################
#
#
# On c a l c u l e l e g r a d i e n t #
#
#
############################
grad=f u n c t i o n ( g , x , d e l t a ) {
y=x
d e r=c ( )
for ( i in 1: length (x )){
y [ i ]=x [ i ]+ d e l t a
d e r [ i ]=( g ( y)g ( x ) ) / d e l t a
y=x
}
return ( der )
}

174

Trading Haute Frquence


Vecteur
x=c(1,2,3)
x=1 :10
x=rep(1,10)
x=rep(1 :2, 10)
x=seq(1, 10, by=0.1)
x=seq(1, 10, length=100)
%/%
%%
x=c(a, b)
x=c(y,z)
x[i]
x[-i]
x[x>1]
unique(x)
round(x, p)
floor(x) (ceiling(x))
rev(x)
sort(x)
length(x)
sum(x)
prod(x)
cumsum(x)
cumprod(x)
max(x) (min(x))
which.max(x) (which.min(x))
which(x==p)
sin(x) (cos(x))
exp(x)
log(x, a)

vecteur (1,2,3)
suite dentier de 1 10
rpte 10 fois le chiffre 1
rpte 10 fois la squence 1, 2
squence allant de 1 10 avec un pas de 0.1
squence allant de 1 10 de taille 100
division entire
congrue
vecteur contenant les caractres a et b
vecteur qui concatne les vecteurs y et z
ime lment du vecteur x
supprime le ime lment de x
uniquement les lments de x suprieur 1
donne les lments uniques du vecteur x
arrondi les lments de x p chiffres aprs la virgule
entier le plus bas (haut)
inverse lordre des lements du vecteur x
tri croissant des lments de x
taille du vecteur x
somme des lments de x
produit des lments de x
somme cumule des lments de x
produit cumul des lments de x
max (min) des lments de x
position du maximum (minimum) du vecteur x
donne la position des lments de x gaux p
sinus (cosinus) de tous les lments de x
exponentielle de tous les lments de x
logarithme de tous les lments de x en base a

############################
#
#
# Algorithme de d e s c e n t e #
#
#
############################

175

Trading Haute Frquence


Matrice
x=matrix(c(1,...), ncol=, nrow=) matrice
x[i,j]
lment de la matrice la ime ligne et jme colonne
x[,-j]
matrice x sans la jme colonne
cbind(x,y)
concatne les matrices x et y par colonnes
rbind(x,y)
concatne les matrices x et y par lignes
apply(x, 1, machin)
applique la fonction machin toutes les colonnes de x
apply(x, 2, machin)
applique la fonction machin toutes les lignes de x
x*y
produit de x par y lment par lment
x%*%y
produit scalaire de x y
as.matrix(x)
change le format de x en matrice, pareil pour
.vector, .numeric, etc.
is.matrix(x)
renseigne si x est une matrice ou non, pareil pour
.vector, etc.
diag(n)
matrice identit n n
diag(1 :n)
matrice diagonale avec le vecteur 1 :n sur la diagonale
t(x)
transpose de x
det(x)
dterminant de x
eigen(x)
valeurs et vecteurs propres de x
solve(x)
inverse de x
dim(x)
dimension de la matrice x
qr(x)
dcomposition QR de x
chol(x)
dcomposition de Cholesky de x
svd(x)
dcomposition en valeur singulire de x

xk=r e p ( rnorm ( 1 ) , 2 )
n a b l a=grad ( f , xk , 0 . 0 0 0 1 )
a l p h a =0.001
i =1
w h i l e ( s q r t ( sum ( n a b l a ^ 2 ) ) > 0 . 0 0 0 1 ) {
n a b l a=grad ( f , xk , 0 . 0 0 0 1 )
xk=xka l p h a n a b l a
i=i +1
i f ( i ==10000) break
}

176

Trading Haute Frquence

Statistique
mean(x)
moyenne de x
median(x)
mdianne de x
quantile(x, c(0.1,0.2) )
quantile 10 et 20% de x
sd(x)
cart type de x
corr(x,y)
corrlation de x et y
cov(x,y)
covariance de x et y
sample(x, n, replace=TRUE) tirage alatoire de x nombre du vecteur n avec remise,
sans si replace=FALSE.
rLOI(n, paramtres)
gnre n variables alatoires de la LOI (norm pour normal,
unif pour uniforme, etc.)
qLOI(q, paramtres)
quantile q% de la LOI
ecf(x)
fonction de rpartition de x
density(x)
densit de x
hist(x)
histogramme de x
qqplot(x, y)
qqplot du vecteur x par rapport au vecteur y
lm(xy)
rgression de x par y

Boucle
for ( i in vecteur ) { commandes }
if ( conditions ) { commandes }
else { commandes }

boucle sur lments du vecteur


excute les commandes si conditions est TRUE
excute les commandes si les conditions
prcdentes sont FALSE
if else ( conditions ) { commandes } excute les commandes si la condition est TRUE
while ( conditions ) { commandes } excute les commandes tant que les conditions
sont vrifies
repeat { commandes }
boucle infinie rptant les commandes
if ( conditions ) { break }
stop les commandes si conditions vrifies

177