Marchés à Terme d’Indices et plateforme de trading...
-
Upload
hoangthien -
Category
Documents
-
view
215 -
download
0
Transcript of Marchés à Terme d’Indices et plateforme de trading...
1
Page 1
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 1
Marchés à Terme d’Indiceset
plateforme de trading automatiqueIntraday
IIGestion du risque, levierSystèmes automatiques
Architecture & Développement
Daniel HERLEMONT, [email protected]: 06 10 48 02 99
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 2
Sommaire partie II
m Rappels :F Plateforme de tradingF biais comportementaux et faits stylisésF Styles de trading
m Gestion du risque :F Var Intraday FuturesF Gestion du levier, … stratégies "optimales"
m Estimations : volatilité , temps de passage, plus haut, plus bas, …m Aspects techniques:
F trading manuel vs automatiqueF analyse stats vs prédiction temps réel,F backtesting, optimisation , datasnooping, model trading, …F prédictibilités et patterns
F Architecture système, standard, gestion des données, programmations'automates (en JAVA)
2
Page 2
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 3
Biais comportementaux
m Excès de confiance (Overconfidence) => prise de risque
m sur réaction (aux statut quo) / sous réaction (aux changements inattendus)m Point de référence (Anchoring)m Aversion aux pertes - asymétrie négative
m Mimétisme - semble plus prononcé en période calme que sous stress, atteint un maximum justeavant un krach
m Anomalies : effet Janvier, effet lundi, situation spéciales (entrée sortieIndice, OPA, fusion, annonces, etc …)
m Dans un système de trading, peu importe l'origine, de l'inefficience:expérience, modélisation, data mining, il est souhaitable de pouvoirl'expliquer par des biais comportementaux et/ou fondamentaux et/ou« techniques » …pour juger de la robustesse, pertinence et stabilité dans le temps
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 4
Faits "stylisés"
Absence d'auto-corrélation des rendementsLa traduction la plus immédiate de l'Hypothèse des Marchés Efficients (EMH)rend inefficace toute méthode dite "linéaire" : moyenne mobile, analyse de Fourier,
"Fat tails" (queues épaisses) la distribution des prix ne suit pas une gaussienne, comme le prédit l'EMH.Les pertes sévères ne sont pas aussi rares …relation directe entre : mimétisme, liquidité et kurtosis (mesure de l'aplatissement)
Asymétrie négative: biais vers les pertes plus élevées. Lié à plusieurs facteurs : aversion aux pertes, analystes, politique de communication : les blue ships étantplus sujettes à une forte asymétrie négative.
Clustering de volatilité les périodes calmes alternent avec des périodes de grande activité
Effet de levier : corrélation négative rendement / volatilité :si le prix baisse, le ratio d'endettement augmente et donc le risque et donc la volatilité, et inversement …discutable …
Corrélation volume / volatilité: une augmentation du volume correspond, en général, à une augmentationde l'intensité (fréquence) de trading
Auto-corrélation valeur absolue des rendementsc'est l'autocorrélation la plus forteles mesures dite robustes (valeur absolue, range, .. ) donnent de meilleurs estimations
source: Rama Cont
3
Page 3
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 5
Importance de l'asymétrie
rendements élevé <=> asymétrie négative élevés
La prime marginale de risque augmente avec l'asymétriecohérent avec une fonction d'utilité dont l'aversionabsolue décroît avec la richesse U'''>0
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 6
70% des day traders perdent de l'argent
Les rendements des prix suivent (en première approche) un mouvement brownien géométrique :- indépendance = la meilleure prédiction possible est le cours actuel.- facteur d'échelle ~ racine carré du temps (conséquence de l'indépendance) :
volatilité jour = volatilité annuelle / 2600.5
rendement jour = rendement annuel / 260
Les données intradaysont dominées par la volatilité (bruit)
La tendance apparaît clairementa des horizons de temps de l'ordre de plusieurs années
rendement volatilité signal/bruit = r/σ ~ t1/2
annuel 5% 20% 0.25jour 0,02% 1.26% 0,016
temps caractéristique = σ 2 /µ2 temps pour lequel signal ~ bruitexemple précédent T=16 ans !!!
signal/bruit = r/σ ~ t1/2
→ 0 lorsque ∆t → 0
4
Page 4
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 7
Styles
m trend following / momentumF suivi de tendance :F joue une auto corrélation > 0
m contrarian / valueF Achète (resp vend) les valeurs "sous évaluées" (resp sur-évaluées)F joue une auto corrélation < 0
m Long/short, marché neutre, risque neutre, etc ...
Achat
vente
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 8
Momentum vs Contrarien ?
m Momentum: acheter les winners, vendre les loosersF en général: asymétrie négative
gains réguliers mais faibles, pertes élevées mais raresF investisseurs impatients
F Explications comportementale: sous réaction aux nouvelles, transmissiond'information, persistence dans les cycles économiques, … ?
m Contrarien: acheter les loosers, vendre les winnersF en général: asymétrie positive:
pertes faibles mais régulières, gains élevés mais raresF investisseurs patients et plus prudent (?)F Tentative d'explication: sur réaction à très court terme, retour à la moyenne à
très long terme
m Évidences empiriques:
< 1 semaine 1 mois 3 à 12 mois 3 à 5ansContrarien Contrarien Momentum Contrarien
Porte en général sur des sociétés de faible taille et peu liquidesTentatives d'explication de retours anormaux par une rémunération d'un risque plus élevé de- de capitalisation- d'endettement- de liquidité
5
Page 5
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 9
m But : limiter les risques
m Long/short: achat et vente simultanée de titres différentsF Peut être basé sur une stratégie de type contrarien (achat simultané des losers
et vente à découvert des winners ) ou momentum (vente à découvert des loserset achat des winners ): si les stratégies sont les bonnes, on est gagnant sur les 2pattes.
F pas nécessairement hedgé contre divers risques, mais limite au moins la casseen cas de problèmes: co mouvement directionnel suite à un krach, pannes,indisponibilité, …
m arbitrages classiques (actif coté sur différentes place, options, etc …)m Autres arbitrages (avant/après OPA, entrée/sortie dans un indice, , …)m Convergence trading: « pari » sur un "retour à la moyenne » (spread …)
F exemple: pairs trading, cointégration, VAR
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 10
Risques
m Risque de marché :F C’est l’exposition d’un portefeuille due aux mouvements et aux changements
des facteurs du marché : taux d’intérêt, cours des actions, taux de change…
m Risque de crédit :F Exposition au risque qu’une contrepartie fasse défaut à ses engagements :
payer la dette d’un créancier, ou les coupons d’une obligation émise,restructuration de la dette.
m Risque de liquidité:F C’est le risque lié à la détention d’un actif peu liquide, ce qui ne permet plus de
faire une couverture aux prix du marché, et nécessite une durée beaucoup plusgrande pour la liquidation des positions. C’est le cas particulièrement pour lemarché des OTC.
m Risque de modèle :F Les pertes dues à l’utilisation d’un modèle erroné, ou pas assez précis pour le
pricing, et la gestion du risque. La validation par des modèles indépendants estla procédure la plus utilisée pour éluder ce genre de problèmes.
m Risque Opérationnel:F Cela comprend un grand nombre de sources de risque, allant de la fraude au
risque technologique, au risque lié au changement de législature entre lesdifférentes filières d’une banque dans plusieurs pays. En raison de la diversitéet la disparité de ces sources, le risque opérationnel est très difficile àquantifier.
Source: ENSAE
6
Page 6
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 11
Gestion du risque
m Gestion du risque = identifier les risque, les mesurer, mettre en place desmoyens (procédures, gestion) pour éviter des pertes inacceptables
m les principaux risques en trading sur futuresF risques opérationnels: en premier lieu:
Ä personnel: erreurs humaines, autres défaillances,Ä matérielles, logicielles, réseau, … anomalies/pannesÄ broker, place de marché : risque de défaut, litiges, pannes, ..
F risque de marché
m EstimationsF VaR, Expected Shorfall
F Fonction d'utilitéF Gestion du levierF ratios: Sharpe, Sterling (rendement/maxDrawDown), Omega...
m Contrôle: procédures, reporting, ajustements, mesures (stop loss, arrêt), …
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 12
VaR
m VaR = Value at Risk =perte potentielle maximale pour une probabilitéfixée sur une période donnée.F Exemple si VaR(95%,10jours)=1 Million €,
la perte maximale sera inférieure à 1 Million €, avec une probabilité de 95%
m Très utilisé, carF rend bien compte de la notion de risque, y compris et surtout extrêmesF facile à comprendre, même par les managers …
F devient réglementaire :
m Bâle (1995)F VaR 1 %, à 10 jours, sur historique de 1 an au moins.F Besoin en capital = Max [VaR(jour-1), 3*MA(VaR,6jours)]
F Mesure sévère …
7
Page 7
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 13
Estimation de la VaR
m Un double défi :F manque de données: comment estimer des probabilités d'événements qui ne
sont que très rarement observés ?F dont on ne connaît pas la loi de distribution
m Méthodes:F VaR historique : quantile de l'échantillon
Ä encore faut il avoir suffisamment de données ….
F VaR normaleÄ ne tient pas compte des queues épaisses
F Approximations (Cornish Fisher)Ä mieux que la VaR normale, mais pb de validité de l'approximation et intervalle de
confiance car basé l'estimation de moments d'ordre 3 et 4F Théorie des valeurs extrêmes (Frechet, Gumbel, Weibull, Pareto Généralisé,
…)
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 14
Estimation VaR naïve
pic au centre + queues épaisses
= Distribution leptokurtique
Histogramme des incréments de 1 heure sur 500 jours de cotations Gaussienne sigma=18.5
Var 1 heure 90% 95% 99% 99.90% 99.99%Normale 23.7 30.5 43.1 57.2 68.5Historique 21.0 29.5 53.0 98.0 129.0hist/normal 0.9 1.0 1.2 1.7 1.9 divergence
Note: on travaille en incréments et points de base, et non pas en %, car plus adapté au trading sur futures.Finalement assez peu de différence entre incréments et incréments des log (à cette echelle de temps)
8
Page 8
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 15
Tout sauf normal !!!
qqplot incréments de 1 heure
Perte à -3 sigma
attendue ~ 50
réalisée ~ 100~ 8 sigma !!!quasiment impossibleavec l'hypothèsenormale
Idem pour les haussessans doute moins marqué(asymétrie négative- a voir …. )
La perte "normale" -50à -3 sigma ( ~ 0.14%), se produit en réalitéà -2 sigma ( ~ 2.28%)soit en réalité, ~ 16 fois plus d'évènements à 3 sigma que dans le modèle normal
Lecture verticale
Lecture horizontale
Queues de distribution "anormales"
Centre de distribution ~ gaussien
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 16
Déviation normalité en fonction de la durée
N ticks > 5 millions
1 minute 10 minutes10 secondes
|incrément| ~ 25 pts en moins de 10 secondes
La divergence est d'autant plus marquée que l'intervalle de temps est court
Les fortes pertes à 10 secondes sont sensiblement les mêmes que les pertes en 1 minutes …. Les mouvements de très forte ampleur se produisent à des instants précis et très rapidement …ce qui laisse très peu de temps pour réagir …fonctionnement par bursts: pic d'activié+forts mouvements alternent avec des périodes de calme
9
Page 9
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 17
Exemples distributions
Toutes les distributionsn'ont pas des queues épaisses: exemple la loi uniforme
autres exemples: binomialegaussienne tronquéequi sont des profils de P&L de systèmes de trading avecprofit exit et stop loss.
Student, degré deliberté = 3peut être utilisépour modéliserla distributiondes incréments
Cauchy
à l'extrêmepossède une moyenneet varianceinfinies
Exponentielle:également utilisée pour modéliser les cours
Rappel normal=
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 18
VaR CAC40 Future Intraday
Étude empirique portant sur le contrat CAC40 Future, étude de la queue de distribution d'un portefeuille de Futures
L ’approximation normale semble correcte pour 1-alpha < 95%
le centre de distribution est à peu près gaussien, conséquence du Théorème de la Limite Centrale
pour 1-alpha >> 95%La VaR gaussienne (212) sous estime la VaR historique (305) qui sous estimel ’approximation de Cornish Fisher (505)
Le TCL n ’est pas applicable auxqueues de distributionL ’approximation normalesous estime largement lesévènements rares :
A noter : déposit exigé, de l ’ordre de 4500€ ≈ VaR(99%,1jours)/3cf exigence de Bâle, sauf que le capital exigé est sur 10 jours:3*VaR(99%,10jours) >> déposit requis
10
Page 10
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 19
Exemple: VaR contrat CAC40 Future
Approximation de Cornish Fisher
VaR CAC40 Future sur 600 jours de cotationsdu 24/8/99 au 2/1/2002, entre 8h et 22hnombre de ticks=7 500 00
historicalVaR99(t) = 1,15 t 0,48
ln(historicalVAR99)=0,14 + 0,48*ln(seconds) R2=1,00
sigma(t) = 0,39 t 0,50
ln(sigma)=-0,95 + 0,50*ln(seconds) R2=1,00
VaR Historique = quantile échantillon
Etude de la VaR Intraday pour différents intervalles de temps de qqes secondes à 8 heures.
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 20
VaR CAC40 Future à différents moments de la journée
période calme
entre 11h et 14h30 17/9/2002 au 26/6/2003
VaR(99%,2h) ~ 40
période agitéeentre 14h30 et 19h3017/9/2002 au 26/6/2003
VaR(99%,2h) ~ 80
Var Historique ~ VaR Cornish Fisher >> VaR gaussienne
historicalVaR99(t) = 0,92 t 0,49 ln(historicalVAR99)=-0,09 + 0,49*ln(seconds) R2=1,00
sigma(t) = 0,64 t 0,40 ln(sigma)=-0,45 + 0,40*ln(seconds) R2=0,95
historicalVaR99(t) = 0,92 t 0,42 ln(historicalVAR99)=-0,08 + 0,42*ln(seconds) R2=0,99
sigma(t) = 0,69 t 0,33 ln(sigma)=-0,38 + 0,33*ln(seconds) R2=0,91
Anti persistence marquée en période "creuse"
11
Page 11
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 21
Exposant de queue de distribution
P(X>x)=1-F(x) ~ C x-α
P( x<X<x+dx) ~ C x-α-1Plus α est petit et plus la queue est épaisseα est aussi l'exposant de queueles moments d'ordre k >= α sont infinisLes moments d'ordres k : E[xk] ne sont définis que si k-α-1<-1, c'est a dire k < αsi α >= 2 la variance est infiniesi α >= 1 la moyenne est infinie
CAC40 Future intraday
Estimateur de Hill
α ~ 3 à 6µ=1/α ~ 0.15 à 0.3
La variance de l'estimateur est grande
CAC40 Future intraday2 ans (2002/2003)
dépend de la périodeen cours de journée
08:00:00 à 22:30:00
11:00:00 à 14:30:00
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 22
Théorème des Valeurs Extrêmes
Comnent estimer des probabilités d'évènements rares dont on manque de données ?
Théorème des Valeurs Extrêmes:
Il existe µ, σ, ξ tels que le (Mn- µ)/σ converge vers
ξ=0 Weibullξ>0 Frechetξ<0 Gumbel
Les actifs financiers sont dans la classe de Frechet ξ>0, avec ξ entre 0.2 et 0.5, soit un exposant de queue entre 2 et 5
estimation par méthode de block maxima et maximum de vraisemblancesuppose un historique important et échantillon iid
pour une estimation plus précise de la VaR, on pourra utiliser les lois de Pareto Généralisées
12
Page 12
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 23
Estimation des queues de distribution par les valeurs extrêmes
incréments prixξ σ µ 0.23 15 35
Échantillon: sur 500 jours, fin = 30/9/2003, de 10h00 à 17h30, n ticks > 8 millionsincréments = 1 heure
Estimation du modèle GEV (Generalized Extreme Value)
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 24
Distribution de Pareto Généralisée - GPD
On s'intéresse à la distribution des pertes au delà d'un certain seuil u:
Pour les distributions vérifiant le théorème des valeurs extrêmes et pour un seuil u suffisamment grand, Il existe ξ, β tel que Fuconverge vers la distribution de Pareto Généralisée
Si n est le nombre total de l'échantillon et Nu le nombre de valeurs dépassant u ,alors
On peut aussi estimer l'espérance de la perte en cas de dépassement de la VaR (Expected Shortfall)
13
Page 13
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 25
GPD fit
Échantillon: sur 500 jours,fin = 30/9/2003,de 10h00 à 17h30,n ticks > 8 millionsincréments = 1 heure
u=20, n=3388, Nu=303ξ= 0.144 ± 0.06β= 11.7 ± 1.
Excellent fit …
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 26
VaR exemple avec GPD
Pareto
Historique
Normal
Cornish Fisher
14
Page 14
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 27
Estimation du seuil pour Pareto Généralisé
Détermination du seuil u: compromis entre un seuil élevé et signification de l'estimation:
Estimation du paramètre de forme (ξ) et Var en fonction du seuil montre une excellente stabilité du résultat dans les zones -/-3 sigma ξ ~ 1.5 VaR(99%,1h;GPD) ~ 50
Intervalle de confiance : il n'est pas possible d'obtenir de très grandes précisions pour le paramètre de forme (xi)L'intervalle de confiance dans l'estimation GPD est obtenu par la méthode de "Profile Likelihood"
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 28
Détermination des intervalles de confiance par la fonction de vraisemblance
θθ0
+θ0*θ0
-
L*
L*-1.92
La fonction de vraisemblance peut être utilisée pour déterminer les intervalles de confiance, la fonction G^2 suit une loi du khi2 à un degré de liberté:
15
Page 15
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 29
Conclusion étude VaR Future Intraday
1. La VaR normale à des seuils < 90% semble être une bonne approximationvoire une sur estimation de la VaR historique
2 La VaR extrême (>0.99) est largement sous estimée par la VaR normale
3 les meilleurs résultats sont obtenus par l'utilisation des distributions de la théorie des valeurs extrêmes (Pareto Généralisé, …)
Nota: L'utilisation des incréments semble donner de meilleurs résultats que les incréments en % (logarithme). De fait, sur les marchés futures, on raisonne plus souvent en points de base qu'en %
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 30
Sigma(t)
H=0.33 => Anti-persistence intradaysemble + prononcée en périodes les pluscalmes
H de l ’ordre de 0.6 suractions et indices:persistence à des échellesde temps plus longues(>journée)
σ(T) ~ t H H = exposant de Hurstinduit, des auto-corrélations "longues", souvent modélisé par des processus de type"fractals", H est coef. de similarité H.
>1/2 Persistence: auto-corrélation positive, les forteshausses (resp. baisses) ont tendance à se succéder,plus souvent le cas pour des actions/indices (actions/indices H ~ 0.6 - 0.7)
H = 1/2 Gaussien
<1/2 Anti Persistence, auto-corrélation négative: une forte hausse (resp.baisse) sera plutôt suivie d ’une forte baisse (resp. hausse), semble être lecas intraday en période calme
exemple: intraday CAC40 Futures en période"calme"de 11:00:00 à 14:30:00 :sigma(t) = 0,69 t 0,33
ln(sigma)=-0,38 + 0,33*ln(seconds) R2=0,91
Estimation de H : Statistique R/S, Ondelettes, … H=0.33 Semble en désaccord avec la littérature H=0.6-0.7a vérifier de plus près ….
16
Page 16
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 31
GARCH(1,1)
Coefficientsα0 α1 β1 3.087e+02 1.474e-01 2.555e-12
Échantillon: sur 500 jours, fin = 30/9/2003, de 10h00 à 17h30, n ticks > 8 millionsincréments = 1 heure
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 32
Kurtosis
La kurtosis est probablement infinie, ce quiremet en cause toute approximation du typeCornish Fisher, dépend de l'exposant de la queuede distribution,
distribution gaussienne ou exponentielle: tous lesmoments sont finis
loi puissance d'exposant α P(X>x) ~ C x-α-1 :les moments d'ordre supérieurs à α sont infinisavec α ~3 la kurtosis est infinie …
Normalement nulle, pour une gaussienne
K(t) ~ K1/t1/2
Interprétation classique: l'épaisseur de la queue est aussi une signature d'inefficience due à la présence despéculateurs
La kurtosis est directement liée au mimétisme ? Cf. modèle Cont-BouchaudModèle Hwang : le mimétisme est mesuré par la dispersion transversale (atteint son maximum avant un krach).
Instabilité de l'estimation: l'intervalle de confiance de la kurtosisempirique dépend des moments théoriques d'odre 8 !!! Sans douteinfinis …
ref: "empirical porperties of asset returns: stylized facts and statistical issues", Rama Cont.
17
Page 17
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 33
Utilité espérée
↑ Rendement↓ Risques
↓ Rendement↑ Risques
U ’(w) > 0U ’ ’(w) < 0
w
U
Agent risquophobe: préfère un revenu certain à un même revenu espéré (et donc aléatoire)
L'utilité est censée mesurer la satisfaction de l ’agent, fonction d'un revenu aléatoire
Il y autant de f.u. que d ’agents …. Dépend de l ’aversion pour le risque de l ’agent
ma préférée : f.u. en logarithme ….Indice relatif d ’aversion au risque = 1,
On tentera donc de maximiser la satisfaction de l ’agent: maximun E [U(w)]
Aversion relative pour le risque = -w U"/U' = γne dépend pas du niveau de la richesse
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 34
Utilité - exemple
104 16
UU(w)=ln(w)loterie : w1=4 avec p=0.5, w2=16 avec 1-p=0.5E[w]=p w1 + (1-p) w2 = 0.5*4+0.5*16=10E[U(w)] = p U(w1) + (1-p) U(w2) = 0.5*ln(4)+0.5*ln(16)=ln(8)=U(8)
Aversion aux risques : concavité de la f.u.à revenu égal, préférence pour le certain sur l’aléatoireE[U(w)] < U(E[w])
Quel est le revenu certain équivalent au revenu aléatoirerevenu aléatoire = équivalent certain + prime de risque 10 = 8 + 2
8
Cas général: λ = prime de risque U(E[w]-λ) = E[U(w)]prime risque absolue ≈ - 1/2 U"/U' variance(W)prime risque relative (en %) ≈ - 1/2 W U"/U' variance(W)pour faibles variations, par un développement de Tayloraversion relative = - <W> U"/U' = 1 pour une f/u. en log
Exemple : portefeuille d'actions, avec rendement=10% volatilité=40%,prime de risque = variance/2 = 0.42/2= 8%, équivalent certain (salaire) = 10%-8%=2%pour un équivalent salaire de 100 000 € par an,il faut générer une performance 5 fois plus grande 500 000 € sur un portefeuille de 5 millions €et encore l'aversion au risque est faible
U(w)
w
Quel revenu certain (salaire) souhaiteriez vous en échange d’un revenu incertain (investissement) ?
E[U(w)]
U(E[w])
Indifférence: équivalent certain (8) vs revenu aléatoire (10)préférence revenu certain si revenu certain > 8préférence revenu aléatoire si revenu certain < 8
18
Page 18
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 35
Var, Utilité, Espérance-Variance ?
m Espérance/VarianceF <=> Utilité espérée
Ä si Utilité quadratiqueÄ et/ou variations faibles.
F <=> VaRÄ dans le cas gaussien seulement.
m Le plus souvent, les rendements restent « négligeables » devant les risquesextrêmes => Maximiser un f.u. avec des queues épaisses est assez proche dela recherche du minimum d ’une VaR
m Dans le cas de stratégies « risque neutre » (ex: pairs trading), on tente de seprotéger contre les risques extrêmes, les rendements sont faibles et desleviers nécessaires …l ’ajustement du levier devient un facteur essentiel ….
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 36
Gestion du levier
m Comment déterminer la fraction de capital à investir dans l'actif risqué ?m En fonction
F du rendement et risques attendus
F du capitalF l'aversion aux risques …
m SoientF S un actif risquéF W un portefeuilleF f la fraction investie dans S
m une stratégie possible : optimiser le taux de croissanceF Kelly, Vince, Thorp, Merton, Maslov, Baviera, Cover, …F stratégie très souvent citée parmi les traders sur futures, hedge funds, …
19
Page 19
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 37
Kelly
m Kelly (1956 Bell Labs) avec Shannon, pose le problème suivant:F gain = doublement de la mise, avec une probabilité 1/2<p<1F perte de la mise, avec probabilité q=1-p
m Quelle proportion f du capital doit on miser ? f =levierm si p=1 : levier infini …m si p<1
F Si f=1, c'est la ruine assurée dès la première perte ….
F Si f=0, on ne profite pas d'un réel avantageF => f compris entre 0 et 1 …
m Solution de Kelly : maximiser le taux de croissance ….
Wn = valeur du portefeuille à la période n
On cherche à maximiser la moyenne du taux de croissance <=>
maximiser la moyenne géométrique <=>
Taux de croissance équivalent certain
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 38
Kelly (formules)
-0.15
-0.1
-0.05
0
0.05
0.1
0.15
0.2
0.25
0.3
0 0.2 0.4 0.6 0.8 1
G
f
f*
G*
En étroite relation avec la notion d'entropie …. H= -p log p - q log qMaximiser G <=> minimiser l'entropie H <=> maximiser la prédictibilité d'un signal (au sens Shannon)
20
Page 20
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 39
Kelly (exemple)
p=0.7 q=0.3f*=p-q=0.4 et G* ~ 8%soit
Il vaut mieux sous estimer que surestimer f*pour f ~ 2*f* G<0, on perd …par contre pour f ~ f*/2 G ~ 6%,soit 25% de manque à gagner,seulement
-0.04
-0.02
0
0.02
0.04
0.06
0.08
0.1
0 0.2 0.4 0.6 0.8
G
f
f*
1.Pour un avantage aussi minime soitil (p=0.53), le taux de croissancereste respectable G*~ 1.8%(doublement en 385 coups) mais lelevier doit rester très faible : 6%2. Les pertes interviennent dès 12%de levier. à f ~ 60%, taux decroissance probable ~ -18% après 12périodes, le capital restant le plusprobable n'est plus que 11% ducapital initial … exp(-0.18*12)
-0.2
-0.18
-0.16
-0.14
-0.12
-0.1
-0.08
-0.06
-0.04
-0.02
0
0.02
0 0.2 0.4 0.6 0.8
G
f
p=0.53 q=0.47 f*=0.06
G*=0.01801
-0.05
0
0.05
0.1
0.15
0.2
0.25
0.3
0.35
0.4
0 0.2 0.4 0.6 0.8 1
G
p=0.9, q=0.1f*=0.8 et G~36.8%gains très élevés,G chute très rapidement au delà de f*encore une fois mieux vautsous estimer f*
Il vaut mieux "sous-parier" que "sur-parier"En trading, faut faire comme les anglais: roulez à gauche
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 40
Mieux comprendre KellyPortefeuilles exponentiels, fortement improbables
Quasi nul, mais pas derisque de ruine ….
L'espérance du portefeuilleE(Wn/W0) = E(W1/W0)n=((2p-1)f+1)n
est constituée de termes exponentiellement grandset fortement improbables
Propriétés analogues à la distribution log normale : de fait, log (Wn/W0) peut être approché par une loi normale
moyenne
variance
log (Wn/W0) ≈ gaussienne
(1+f)4
(1+f) 4(1-f)
(1+f)5
(1+f) 3(1-f)2
(1+f) 2(1-f)3
(1+f)(1-f)4
(1-f)5
(1+f)3
(1+f) 3(1-f)
(1+f) 2(1-f)2
(1+f)(1-f)3
(1-f)4
(1+f)2(1-f)
(1+f)(1-f)2
(1-f)3
(1-f)2
(1+f)(1-f)
(1+f)2
(1+f)
(1-f)
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p1-p
1-p
1-p
1-p
1-p
1-p
1-p
1-p
1-p
1-p
1-p
1-p
1-p
1-p
Kelly ⇔ Maximiser le portefeuille le plus probable ⇔ Maximiser le portefeuille médian⇔ Maximiser la moyenne géométrique des P&L
Ce portefeuille le plus probable est aussi le portefeuille médian
Le portefeuille le plus probable (maximum de la probabilité)correspond à la moyenne géométrique
21
Page 21
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 41
Kelly - Application modèle binomial et Futures (suite)
gain: w %, avec probabilité=p, perte: l %, avec probabilité=q=1-pg=p log(1+fw)+q log(1-fl) f*=(pw-ql)/(wl) = a/(wl) avec a= pw-ql espérance arithmétique
Exemple: contrat Future CAC40, stratégie de type brackettrading encadrement des gains + des pertesprofit exit à +20 pts et stoploss à -20pts, un trade par jour …
Capital par contrat = WL / (p W-qL)= Kn contrats = arrondi.inf(Capital/K)
0%
10%
20%
30%
40%
50%
60%
0 50 100 150 200 250
jours
cro
issa
nce
Kelly Buy&Hold
sous jacent en pts S 3000multiplicateur m 10valeur contrat m*S 30000Systeme de tradingdelta pts pts 20cout c 4gain/contrat W=m*pts-c 196perte/contrat L=m*pts+c 204proba gain p 0,54proba perte q=1-p 0,46probacritique pc=L/(W+L) 0,510gain en % sous jacent w 0,65%perte en % sous jacent l 0,68%Espérance a=p w-q l 0,040%Kellyf* f*=a/(w l) 9,00taux de croissance / trade G*=p ln(1+f w)+q ln(1-f l) 0,180%nb trades n 250taux de croissance global exp(nG*) 1,57% 56,96%catipal requis par contrat W L /(pW-qL) 3332capital 10 000nombre de contrats 3marge / contrat 2400n contat/marge 4,2
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 42
Kelly - Exemple Futures (suite)
Suppose être investi avec levier 22 sur future DAX :quasiment 100% de la marge !!!Avec 55 contrats en fin de période !!!
problèmes ?
P(gain) trop optimiste ?Stationnarité des probabilités ?slippage ? (gain et pertes réelles != attendues)avantage vs taille des ordres vs Liquidité ?Complexité opérationnelle avec la taille ?
Soit plus de 1000% / an !!!! Cherchez l'erreur …..
Exemple type contrat DAX, multiplicateur = 25delta trading à +/- 20 pts, probabilité gain = 0.58
0%200%400%600%800%
1000%1200%1400%1600%1800%2000%
0 50 100 150 200 250
jours
cro
issa
nce
Kelly Buy&Holdsous jacent en pts S 3 000multiplicateur m 25valeur contrat m*S 75 000Systeme de tradingdelta pts pts 20cout c 4gain/contrat W=m*pts-c 496perte/contrat L=m*pts+c 504proba gain p 0,58proba perte q=1-p 0,42probacritique pc=L/(W+L) 0,504gain en % sous jacent w 0,66%perte en % sous jacent l 0,67%Espérance a=p w-q l 0,101%Kellyf* f*=a/(w l) 22,80taux de croissance / trade G*=p ln(1+f w)+q ln(1-f l) 1,161%nb trades n 250taux de croissance global exp(nG*) 18,21% 1720,67%catipal requis par contrat W L /(pW-qL) 3 289capital 10 000nombre de contrats 3marge / contrat 2 400n contat/marge 4,2capital en fin de periode 182 067n contrats 55Buy & Holdf*/2 11G(f*/2) 0,87%
8,77
22
Page 22
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 43
Sensibilité
0
10
20
30
40
50
60
0.5 0.55 0.6 0.65 0.7
levier
p succès
Très grande sensibilité du levier enfonction de la probabilité de succès
delta(levier) = 2S/pts delta(p) = 600 delta(p)delta(p)=0.01 => delta(levier)=6 !!!
Grande sensibilité du levier vs estimation des gains et pertes.
exemple précédent : bracket trading autour de 20 pts sur DAX, avec p(succès)=0.58 => f* ≈ 22si le gain passe à 19 pts au lieu de 20 pts,ou la perte passe à 21 pts au lieu de 20,f* passe à 7 au lieu de 22 !!!
Or: l'espérance d'un perte est plus souvent plus grande qu'attendue et celle d'un gain plus faible …les raisons peuvent être multiples :spread (bid/ask), chasse aux ordres stop, pb de liquidité, stoploss en situation de krach, …
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 44
Désir et réalité
Taille des positions
Performance
Les positions ne peuvent par être multipliées àl'infinie sans tenir compte de facteurs quidétériorent la performance:- liquidité- profondeur de marché (impacts)
La stratégie de Kelly suppose le même succès avec 55 contrats qu'avec un seul: c'est faux … La probabilité gain décroît avec la tailleRappelez vous sur-estimer le levier est catastrophique …. or le levier est très sensible à la probabilité de gain ...
=>
estimation réaliste des probabilités de gain en fonction de la liquidité et autres facteurs de risquestratégie moins agressive (Kelly Fractionnel)diversification multi supports / multi stratégies
23
Page 23
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 45
Exemple levier optimal - marché action
LES DANGER D'UN LEVIER TROP ELEVE: exemple:
+ 25% ou -15% par mois avec probabilités 50/50
Avec une levier de 5, pour une mise de départ de 100, au bout de 12 mois, le capital probable est de 3 !!!!
Le levier optimal est 1.33 = (.5.025-.5*.15)/(.25*.15), gain géométrique moyen = 3%, gain probable au bout de 12 mois = 47%ce qui est fort différent d'une perte de -97% avec un levier de 5 !!!
Ruine certaine si levier = 1/perteMax = 6.67,
risque élevé et perte , si on utile un levier = 2 * levier optimal
En revanche : utiliser un levier prudent = levierOptimal/2, entraine un manque a gagner de 25% seulement.
!!!! Les rendements sont multiplicatifs ….Après une perte de 50%, il faut 100% de hausse pour se "refaire" ...
Le critère de Kelly est la stratégie optimale: le portefeuille le plus probable croit de manière exponentielleW(T)=exp(T sharpe 2) W0sharpe= µ/σ
Comparaison Buy&Hold et stratégie optimale active:
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 46
Exemples
Fonctionne mieux en ajustement intraday sur futures avec faibles coûts de transaction:levier de 2 du sous jacent <=> nContrats = 0.2 Capital / valeurSousJacentnContrats= levier Capital / multiplicateur * valeurSousJacent
Un levier constant amplifie les hausses
… et les baisses
un levier trop grand (5)conduit a des pertes rapides
24
Page 24
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 47
Exemples (suite)
NASDAQ
S&P 500Utilisation d'un levier constant ~ 2
Peut mieux faire en intraday future,avec une estimation dynamique des volatilités:taux sans risque : r ≈ 2%µ= rendement+σ2/2, rendement ≈ 5%levier optimal (σ)= (µ-r)/σ2 = ½ + 0.03/ σ2
Opportunités en ce moment (Nov. 2003) ?car faible volatilité (historique) et reprise économique=> autorise des leviers plus élevés …
Plus de 60 fois la valeurdu NASDAQ et pourtantle levier n'est que de 2
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 48
NASDAQ en levier 5
Levier 5démontre le caractère exponentielde la stratégie :NASDAQ * 3500 !!!bien loin de NASDAQ*5explosion à la hausse …
mais implosion à la baisse ….
Reste quelques cents …
25
Page 25
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 49
Ajustements dynamiques
Les stratégies de type Kelly (ou basées sur une fu isoélastique) nécessitent des ajustements permanents, afin demaintenir une proportion constante ("Constant Rebalanced Portfolios"):
f<1 ⇒ δq δS < 0 ⇒ CONTRARIENon doit ajuster en sens inverse de la variation:acheter lorsque l'actif baisse, vendre lorsquel'actif est en hausse.
f>1 ⇒ δq δS > 0 ⇒ SUIVEURon doit acheter lorsque l'actif monte et vendrelorsqu'il baisse.
f=1: on est investi à 100% dans l'actif risqué,et on le restera même en cas de hausse ou debaisse de l'actif.
Soit un portefeuille d'une valeur 1000 avec seul actif risqué de valeur unitaire 10, avec un levier de 4. On détient donc 400=(1000/10)*4unités de l'actif. Le mois suivant, l'actif perd 20%, l'actif passe à 80. Le levier étant de 4, la perte en capital est quatre fois plus importante,la valeur du portefeuille devient 3200=400*80 !!! Pour maintenir un levier constant de 4, il faut ajuster le nombre d'unités en fonction : desnouvelles valeurs du portefeuille (3200) et l'actif 80, soit un nombre d'unités : 160=(3200/80)*4, il faut donc alléger de 400-160=240 unités,soit de 60% =(4-1)*20% (cf ci dessous)
On doit ajuster la quantité pour vérifier :
Donc
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 50
Kelly - Distribution quelconque
f* ≈ <r>/<r2>2 f*f*/2
G*
3/4 G*
f
GG ≈ f<r>- f2 <r2>/2
p(r) distribution des rendements discrète ou continue
solutions approchées au second ordre:
Exemple:perteMax=20%alors f* << 5
Solution approchée (très grossière)
Distribution discrète desrendements ri, avec probabilité pi
f* solution de :f* solution de :
Distribution continue
26
Page 26
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 51
Allocation optimale inter-temporelle en temps continu
Merton - Continuous Time Finance
Recherche de l'allocation optimale x
On retrouve les mêmes résultats que dans le cas mono-périodiqueavec Γ la matrice de covariance, ρ le vecteur des rendements (ρi = µi-r),r le taux sans risque, γ l'aversion relative au risque.Solution par contrôle optimal stochastique (Hamilton-Jacobi-Bellman)
Cas d'actifs (ou stratégies) non corrélées
Résultat remarquable, sachant que µ et σ peuvent dépendre du temps
Mais: 1. suppose que les proportions sont ajustées en continu2 ne tient pas compte des coûts de transaction.
Cas mono actifrésultats analogues au CAPMà la différence essentielle que:- le CAPM est mono périodique- Kelly (ou Merton) est multi-périodique- dans le cas de Merton, les pondérationsvarient , mais faiblement=> réajustements toujours nécessaires
Applicable à tout processus,pas seulement I(1)Merton est applicable à des processus de retour à la moyenne(OU), …
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 52
Levier optimal - cas continu - exemple mono actif
Exemple d ’un modèle lognormal
la stratégie optimale consiste à maintenir un ratio constant dans l ’actif risqué :γ = aversion au risque γ=1, pour un f.u. en logarithme.
Exemple: action/indice classique: CAC40rendement R ≈ 5%,taux sans risque =2%σ = volatilité ≈ 30%µ = R + σ2 /2 = .05+0.3 2 /2 = 9.5%=> f=(µ-r) /σ2 = (.095-.02)/0.09 = 0.83=> investi à 83% en CAC40 (si fu en log) :
f* ~ 1 : traduit une hypothèse de non arbitrage Kelly vs Buy& Hold ?
Exemple f* tels que mesuréf* mesuré depuis
CAC40 0.91 1990DAX 1.3 1990E50 1.72 1990
DJI 1.54 1930NASDAQ 2 1984
27
Page 27
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 53
DJI
y = 0.7479x + 6E-05R2 = 0.3834
0
0.0005
0.001
0.0015
0.002
0.0025
0.003
0 0.0005 0.001 0.0015 0.002
<r>
sim
ga^
2
<r>/sigma^2pour les actions composant le DJI, depuis le 2 janvier 1962 au 6 mars 2002.
levier moyen f* ≈ 1.4
0 0.5 1 1.5 2 2.5 3
AA
AXP
BA
C
CAT
DD
DIS
EK
G E
G M
HD
HON
HWP
IBM
INTC
IP
JNJ
JPM
KO
MCD
MMM
M O
MRK
MSFT
PG
SBC
T
UTX
WMT
XOM
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 54
Comment gagner sur une actif qui perd …
si Rendement = 0, l'action reste stable
Une stratégie active permet néanmoins de gagneren restant investi à 50% à tout instant …
car R=0 => µ= σ2 /2 > 0 => levier f*=µ/σ2 =0.5taux de croissance optimal G*(r=0) = ½ µ2/σ2 = σ2 /8
si σ=40% G*(r=0)=2% / anpas trop mal pour une action qui stagne …et plus elle est volatile meilleure est la performance !!!si σ=100% G*(r=0)=12.5% / an
Source maslov, Zhang
Kelly gagnetout en restantà l'achat sur un actifqui perd !!!
!!! ln ST/S0 ~ gaussienne moyenne (µ - σ2/2)T et variance σ 2 T
La stratégie de type Kelly (portefeuille CRP)peut être vue comme un système de "capture"de la volatilité …
Compatible avec l'efficience des marchés: l'effet dela stratégie de Kelly sera de réduire de la volatilité …"une centrale hydraulique qui va capturer une énergieproduite par la hauteur des vagues, aura pour effet deréduire la hauteur des vagues, mais peut on imaginerun océan sans vagues ni tempêtes …. " COVER
Fonctionne aussi pour R<0, dans la limite µ>0 donc µ < σ2 /2, dans ce cas f<1/2
f* peut être négatif (vente à découvert)
Le rendement moyen peut donc être ≤ 0, mais µ>0
Non seulement on peut battre le sous jacent avec un levier < 1 …mais on peut gagner sur un sous jacent qui décline …
28
Page 28
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 55
Levier et Sharpe
Sharpe ~ µ/σ, une autre mesure du rendement corrigé du risque …
Relation Kelly avec Sharpe:
Optimiser le taux de croissance est assez proche de l'optimisation du ratio de Sharpe ….
Sharpe dépend du temps :
si un facteur d'échelle en 0.5le levier optimal ne dépend pas du temps f*(intraday)=f(jour)=f(mois)=f(année)
pour être considéré comme une bonne stratégie, le Sharpe annuel doit être > 2
f ~ µ/σ2 => f=Sharpe/ σ
donc si Sharpe=2 et σ=10%, sur un seul actif, suppose un levier f= 20 !!!
(En première approche)
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 56
Drawdowns
Drawdowns = perte historique depuis le dernier plus hautmesure de risque agressive: A
B
CE
DF
H
G
I
drawdownsA/BC/DC / FC / H…..
Drawdown
Loi universelle: les queues de distribution des drawdowns suivent une loi puissance
Avec Γ solution de
Modèle binomial: gain Λ avec probabilité p, perte - Λ avec 1-p
Cas gaussien
1/Γ représente le drawdown probable.
Le Drawdown s'exprime aussi en %: D% = (Wmax-W)/Wmax=1-1/D, Probabilité (D%>x%) = P(D>1/(1+x))
ratio de sterling = rendement / maxDrawDown%exemple exigence forte: 30% rendement annuel, max drawdown 10% (Sterling=3)
29
Page 29
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 57
Kelly et les drawdowns
Portefeuille de Kelly se comporte comme un processus gaussien multiplicatif:
Exposant de la densité des Drawdowns
Hypothèse : investissement dans un actif risque de rendement (instantané) µ et volatilité σ2
Le drawdown est sur le point de divergerespérance et variance infinies
Justifie, encore une fois, l'intérêt d'utiliser des stratégies moins agressives (kelly fractionnel)
Avec f*/2, l'espérance et la variance sont finies
⇒
Résultat universel: indépendant de la distribution des rendements !!!
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 58
Drawdowns (suite)
Exemplesτ = 4 Prob(perte historique > 50%) ~ 12,25%50% <=> capital/2 depuis le plus haut historique τ = 4 correspond à un Kelly/2
τ = 2 Prob(perte historique > 50%) ~ 50% !!!τ = 2 correspond à Kelly
Une méthode simple pour définir une gestion cohérente:
exigences de gestion:rendement 30% par anmax drawdown, ne doit pas dépasser 10% (au seuil de 5%)
=> τ > 30 DD%=10% DD=1/(1-0.1) P(> DD) ~ DD^(- τ-1)< 5% τ > 1+log(0.05)/ log(1-0.1)=29.43,
τ =2µ/σ2 et µ=30%=> σ < 15%=> sharpe = µ/σ > 2
P(D>-drawdown)DD% 10% 20% 30% 40% 50% 60% 70% 80%DD=Wmax/W 1.11 1.25 1.43 1.67 2.00 2.50 3.33 5.00tau 2 0.9000 0.8000 0.7000 0.6000 0.5000 0.4000 0.3000 0.2000
3 0.8100 0.6400 0.4900 0.3600 0.2500 0.1600 0.0900 0.04004 0.7290 0.5120 0.3430 0.2160 0.1250 0.0640 0.0270 0.00805 0.6561 0.4096 0.2401 0.1296 0.0625 0.0256 0.0081 0.00166 0.5905 0.3277 0.1681 0.0778 0.0313 0.0102 0.0024 0.00037 0.5314 0.2621 0.1176 0.0467 0.0156 0.0041 0.0007 0.00018 0.4783 0.2097 0.0824 0.0280 0.0078 0.0016 0.0002 0.00009 0.4305 0.1678 0.0576 0.0168 0.0039 0.0007 0.0001 0.0000
DD% = (Wmax-W)/Wmax=1-1/DDDD=1/(1-DD%)Probabilité (DD%>x%) = P(DD>1/(1+x))
Si une stratégie de type Kelly (proportion constante), sous entend d'utiliser un levier 15 fois inférieur à celui de Kellyaversion relative pour le risque de l'ordre de 15
30
Page 30
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 59
Kelly Fractionnel
Malgré la prise en compte des risques, le levier optimal de kelly reste agressif,
Une mauvaise estimation des paramètres peut conduire à une sur estimation du levier et donc:décroissance rapide du capital dans des drawdowns sévères
Il est plus "prudent" d'utiliser des fractions du levier optimal: se placer à f*/2, f*/4.
Kelly Fractionnel: utiliser un levier f=δ f*, avec 0<δ<1<=>maximiser la fonction d'utilité U(w)= w 1- γ /(1- γ)
γ est l'indice d'aversion relatif pour le risque: plus γ est grand et plus l'agent est risquophobe.
À la limite γ = 1, la fonction d'utilité est le logarithme.
δ γ utilité G*(δ )/G*1/2 2 -w - 1 .751/3 3 -w - 2 .561/4 4 -w - 3 .44
le levier optimal est f*(γ)= 1/ γ µ/σ2
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 60
Investissement "optimal" et coûts de transactions
Cette stratégie exige un ajustement permanent pour maintenir un ratio constant dans l'actif risqué: soit "f" ce ratio,l'ajustement quotidien devrait être de l'ordre de (f-1)*variationActif
f=1 on est investi à 100% en permanence.f<1, on est contrarien ... hausse => vente, baisse => achatf>1 on est suiveur de tendance: hausse => achat, baisse => vente
Il existe des "no trade regions" : re-équilibrage uniquement lorsque le ratio sort de bornes fmax, fmin,
exemple µ=12,5%, σ=20%, f=0.6, avec des coûts de 0,5%, ne pas faire réajuster tant que f reste dans un intervalle del'ordre de 10% autour de f.
La région de "non trading est proportionnelle à la racine cubique des coûts (ref: Leland, Baviera, … )si c= coût %
Si µ/σ2 ≈ 0 ou 1, ∆f ≈ 0∆f maximum pour µ/σ2 ≈ 0.5, le sous jacent est quasi stable (rendement = µ - 0.5 σ2 ≈ 0)
permet de retrouver la variationnécessaire de l'actif pour sortir de la zone de "non trading"
Impact très important des coûts de transaction sur une gestion active
31
Page 31
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 61
Quantités
Les quantités ne sont pas indivisibles …. Pour justifier d'un réajustement encore faut il que δq soit entier(peut poser probl ème sur futures notamment … )δq=1 ⇒
la pondération optimale w* réalise le maximum du taux de croissance =>
Conclusion : en raison des coûts et des quotités, il n'est pas possible d'ajuster en permanence:Quelle conséquence sur le taux de croissance ?
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 62
Kelly en intraday ?
Faire du CRP en intraday est délicat en raison:
- des coûts de transaction - courtage- spread
- des quantités indivisibles
Possible si• les variations sont importantes: se placer immédiatement encontrarien (tjrs pour maintenir le ratio constant)• si les coûts de transaction sont suffisamment faibles, la stratégiede Kelly (ou CRP) peut alors se coupler à une stratégie de tenuede marché, car on connaît à l'avance les prix limitesd'intervention, ce qui aura pour effet de réduire l'impact desfrictions
Vente
Achat
Exemple simple de tenue de marché: Placer des ordres limites d'achat et vente à cours ± ∆cette stratégie peut être bénéficiaire en elle même (tenue de marché), ce qui annule l'effet négatif des coûts de transaction
∆
∆
∆
Achat
Vente
Attention, à l'effet Mickey …. il faut tenir compte des priorités à l'exécution, il peut y avoir un forte anti-autocorrélationcas de spread trop large, (penny stocks, Eurotunnel, Eurodysney)avec accumulation des ordres limites sur la fourchette donc sans véritable opportunité
S∆i série des prix, obtenue en retirant toute |variation| < ∆
p+ = Proba (hausse S∆i) p- = Proba (baisse S∆
i)p-+ = Proba (hausse S∆
i | S∆i-1 =baisse)
p+- = Proba(S∆i baisse | S∆
i-1 = hausse) Proba(gain) = p = p-+ p- + p+- p+p-=p+ =.5 et p-+=p+- =.7 => p=.7Espérance=p (∆+2c) + (1-p) (-∆-2c)= ∆(2p-1) -2c, c= cout de transaction En pratique on trouve E(∆) ≈ 0 ∀∆exemples:future ∆= 10€, p=.7 c=2€ / share (IB)E= ∆(2p-1) -2c = 10 (2*0.7-1)-2*0.02 = 0 action ∆= 0.1$, p=.7 c=0.02$ / share (IB)E= ∆(2p-1) -2c = 0.1(2*0.7-1)-2*0.02 = 0action ∆= 0.5%, p=.7 c=0.1% E= ∆(2p-1) -2c = 0.5(2*0.7-1)-2*0.1 = 0 bref … p=0.7 => ∆0 = 5c
32
Page 32
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 63
Retour vers le future
Stratégiede trading
Calcul du levier optimalanalyse correlations, ...
Séries Trades/ncontrats
Les mêmes principes de gestion du levier s'appliquent auprofil des P&L
Soient Ri les profits (et pertes) absolus par contratles Ri sont issus:- de l'historique des opérations,- ou d'une distribution espérée- ou les deux ….
W richesseSoient S le prix du contrat, M = multiplicateur1 contrat ≡ investissement M Sγ = aversion relative aux risques
Stratégie corrigée: levier → nombre de contrats par opérationon/off
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 64
Kelly tout simplement …
Vince présente Kelly d'une manière simple:
soit TWR = valeur terminale du portefeuille après N périodes
Le levier se traduit directement terme de niveau de risquesigma(levier) = levier * sigma, si bien que l'on peut représenterla valeur terminale probable TWR en fonction du risque.La performance n'est pas croissante avec le risque, mais atteintun maximum correspond au levier optimal.
33
Page 33
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 65
Le levier optimal est très sensible aux plus fortes pertesdonc aux queues de distribution:
Levier optimal, asymétries, valeurs extrêmes
Cas d'une distribution, avec queue en loi puissance
Source: Thèse de Baviera
Le levier optimal est d'autant plus faible que:- la distribution a une asymétrie négative- la kurtosis est grande… ce qui est le cas de la plupart des actifs financiers !!! Mn= moment d'ordre n
=E(rn)
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 66
Estimation du levier optimal
Estimations indépendantes de µ et σ (voir après)
Estimation directes: résoudre
Méthodes adaptatives et itératives: voir Portefeuilles Universels
Cas multivarié et cas général:
Les contraintes pouvant être arbitraires (vente à découvert ou pas, contraintes sur actif particulier, secteurs, coût de transactions, …) : nécessite des programmes complexes d'optimisation dans le cas général
sinon, on pourra utiliserune premièreapproximation, du mondegaussien sans contraintes
Monde gaussien avec contraintes
L'erreur d'estimation du levier est en 1/σ ⇒ estimation d'autant meilleure que l'actif est volatile !!!
34
Page 34
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 67
Kelly-Conclusion (provisoire ….)
m Stratégie optimaleF avec le meilleur taux de croissance (si iid)F Le taux de croissance = taux de croissance certain équivalent (peut être comparé
au taux sans risque)F minimise aussi la durée pour atteindre un objectifF le risque de ruine n'existe pas … en principe
m Points critiques :F Stratégie très active : maintenir un ratio constant a tout moment => tenir
compte des coûts de transaction.F Risque importants en cas de dépassement du levier optimal, les drawdowns
peuvent être sévères …F Positions pouvant être importantes => Kelly FractionnelF Suppose une modélisation correcte: nécessité une estimation correcte des
rendements et risques attendus. le plus délicat étant l'estimation des rendementsF mais …. Il existe aussi des méthodes "non paramétriques"
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 68
Kelly - Méthodes non paramétriques, adaptatives et universelles
Portefeuilles Universels (Thomas Cover - prof. Théorie de l'information - successeur de Shannon)Méthodes non paramétrique, adaptative et optimale (universelle)
approche classique: - Modélisation- stratégie optimale | modèle -> G*(modèle) = µ/σ2
Inconvénients:- problèmes d'estimations des paramètres (surtout µ)- risque de modèle: mauvaise adéquation, variation des paramètres dans le temps
Approche Non paramétrique, on-line et universelle
- non paramétrique : pas besoin de spécifier un modèle "let's the data speak""- online: adaptation en fonction de nouvelles données
- universel: convergence vers la stratégie optimale a posteriori (Hindsight )
L'algorithme de COVER garantit que le taux de croissance du portefeuille universel (UNI)converge vers le taux de croissance optimal rétrospectif du meilleur portefeuille CRP (BCRP)
lim G (UNI)= G(BCRP)t → ∝
Comme si on était capable de se projeter dans l'avenir et sélectionner un portefeuille qui aurait donné les meilleurs résultatsa posteriori !!! Avec des hypothèses minimales sur les distributions: la seule hypothèse est |E log(rendement) |<∞
Attention la convergence peut être longue (résultat asymptotique) …. et comme toute méthode non paramétrique, nécessite un grand nombre de données … la méthode est complexe et coûteuse en temps de caclul
Exemple d'algorithme universel: compression en gz, zip tend vers le taux maximal de compression ∀ fichier
Méthode dite compétitive:convergence même dans le pire cas
35
Page 35
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 69
Propriétés remarquables du meilleur CRP et fondements
Note: concavité du logarithme ⇒ la performance de tout CRP est meilleur que la moyenne des performances
BCRP = meilleur portefeuille CRP au temps t
xt = performances relatives des actifs au temps tnormalisation W0=1, w=pondération constante sur toute la duréePerformance d'un CRP:
Taux de croissance optimal
Théorème fondamental:si les xt sont IID, la meilleure stratégie est une stratégie CRP, c'est celle qui maxime le taux de croissance = BCRPla distribution des rendements peut être quelconque, multivariée, pas nécessairement lognornales, avec ou sans correlations, … En pratique les rendements ne sont pas iid, mais suffisamment proches pour que ce théorème puisse s'appliquer avec succèsCe théorème est d'autant plus pertinent que l'efficience des marchés s'accroît
BCRP bat le meilleur actif …. le buy & hold dans un seul actif est aussi une stratégie CRP particulière
Tout portefeuille buy & hold (BAH) est moins performant que le meilleur actif:
BCRP fait mieux que la gestion indicielle BCRP bat les indices classiques du type DJI ou CAC40 … Et tous les portefeuilles BAH, en général … On peut toujours générer de la performance absolue par une couverture BAHadéquate en fonction des objectifs (dollar neutre, marché/bêtas neutre)
le portefeuille BCRP bat la moyenne géométrique (indice Value Line)(en raison de la concavité du logarithme)
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 70
Portefeuilles Universels (suite)
0.001
0.01
0.1
1
1 10 100 1000 10000
t
ln(t
)/t
Le temps de calcul du portefeuille universel croit de manière exponentielle avec le nombred'actifs !!! Incalculable au delà de 9 actifs …
Mais il existe des méthodes approchées linéaires avec le nombre d'actifs et historique
La convergence peut être longue …
Quoiqu'il en soit, fournit des fondements théoriques importants pour justifier des méthodes non paramétriques et adaptativespourvu qu'elles vérifient certaines propriétés (universalité et compétitivité)S'agissant de marché actions, il est difficile de prétendre à des modélisations précises, on doit accepter une large classes de distribution et processus candidats : les hypothèses des ptf universels fournit un tel cadre … ce faisant on ne peut donc espérer guère mieux que ces résultats … ce qui n'est pas si mal … La pratique montre que ce type d'algorithmes donne des résultats bien meilleurs que la limite du pire cas.
ln(t)/t ~ 1% au bout de 2 ansmais il s'agit du pire cas …
Algorithme YATS
36
Page 36
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 71
Portefeuilles universels (suite)
Avec des résultats spectaculaires en pratiqueLe portefeuille universel est très prochedu meilleur portefeuille CRP rétrospectifbat la meilleure valeur de l'indice !!!
Les meilleurs résultats sont obtenus par la recherche du meilleur CRP en tentant compte de dépendances … résultats spectaculaires
même en présence de coûts de transaction
capital x 1 million, avec coût de transaction à 0.15% !!! (*)
mais tombe à capital x 100 si coût à 1%(*) On rouve actuellement des brokers avec coûts bien plus faibles, ex: 0.02$/share, soit 0.02% pour une action à 100$
Univers = actions du DJI (36 actions) sur 22 ans …avec différents coûts de transaction de 0 à 1.2%
combinent deux phénomènes:- contrarien à très court terme, par effet des réajustements- momentum et suivi de tendance à moyen terme, par apprentissage des pondérations
capital multiplié par plus de 100 000 Exemple coût=0.2%
croi
ssan
ce d
u ca
pita
l
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 72
Exemple Kelly adaptatif (et universel)
Phase d'apprentissage
Mesures de performance: Sharpe, Sterling
Sterling= performance/maxDrawDown
37
Page 37
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 73
Kelly adaptative (suite)
Krach de 87le levier est très sensible aux fortes pertesaura du mal a s'en remettre
Richesse finale = 737 506, soit ~ un facteur de l'ordre de 1000Échelles logarithmiques !!!
Gain > x 1000
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 74
^FCHI from:19900301 to:20031110constant leverage (f) Terminal wealth return: W(T)/W0
asset (f*=1.0) 1 3425.19 1.872 3232.15 1.765 41.52 0.02
optimal F in Hindsight 0.92 3335.66 1.82Adaptative 0.92 11888.23 6.49
^GDAXI from:19901126 to:20031110constant leverage (f) Terminal wealth return: W(T)/W0
asset (f*=1.0) 1 3746.24 2.62 4683.13 3.245 100.55 0.07
optimal F in Hindsight 1.3 4332.21 3Adaptative 1.3 23823.55 16.51
^SSMI from:19901109 to:20031110constant leverage (f) Terminal wealth return: W(T)/W0
asset (f*=1.0) 1 5242.2 3.782 12377.27 8.925 9128.01 6.58
optimal F in Hindsight 2.8 17488.59 12.61Adaptative 2.8 46167.76 33.28
^STOXX50E from:19911231 to:20031114constant leverage (f) Terminal wealth return: W(T)/W0
asset (f*=1.0) 1 2656.94 2.662 4024.5 4.025 449.04 0.45
optimal F in Hindsight 1.73 3807.99 3.81Adaptative 1.73 32526.78 32.53
A noter, la méthode adaptative fait mieux que le meilleure CRP a posteriori !!!
38
Page 38
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 75
^DJI from:19800102 to:20031110constant leverage (f) Terminal wealth return: W(T)/W0
asset (f*=1.0) 1 9756.53 11.832 54780.81 66.435 -119420.7 -144.82
optimal F in Hindsight 2.78 118110.9 143.23Adaptative 2.78 737506.85 894.38
^IXIC from:19841011 to:20031110constant leverage (f) Terminal wealth return: W(T)/W0
asset (f*=1.0) 1 1941.64 7.932 5600.85 22.895 232.77 0.95
optimal F in Hindsight 2.03 5682.84 23.22Adaptative 2.03 10296.69 42.08
^GSPC from:19821020 to:20031111constant leverage (f) Terminal wealth return: W(T)/W0
asset (f*=1.0) 1 1046.57 7.522 4143.77 29.765 -737.56 -5.3
optimal F in Hindsight 2.79 7525.45 54.05Adaptative 2.79 42632.57 306.2
Pas trop malmalgré un Krachcomme celuide 87
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 76
Historique
Pour le fun …sur la base de ces théories, Thorp et Shannon créent le premier ordinateur "prêtà porter" (habillable) en 1966 pour battre le casino !!! autre aventure dans le même style:Eudaemonic Enterprise Doyne Farmer, Norman Packard, mathématiciens spécialisé en théoriedu chaos. réalisent un ordinateur à pied ! Pour exploiter les biais de la roulette au casino …
puis ils créent la société "Prediction" pour développer des modèles de prédiction sur lesmarchés financiers (contrats avec UBS)
Le critère de Kelly a été utilisé par Ed. Thorp (Élève deShannon), hedge fund (Princeton Newport Partners)arbitrages long-short, Sharpe=3 ….
Utilisé couramment par les traders sur Futures et hedgeFundDéfaillance LTCM : pari/levier > levier optimal de Kelly
39
Page 39
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 77
Estimations
m Généralités:F Les méthodes d'estimation des paramètres:
Ä Méthodes fréquentielles (maximum de vraisemblance, méthode des moments, etc … ): requière souvent des hypothèses d'indépendances pas toujours conformes à laréalité.
Ä Méthodes bayesiennes, plus adaptées sans doute aux environnements de trading online
Ä Méthodes non paramétriques (Noyau, KNN, ..): évite à modéliser, nécessitent ungrand nombre de données.
F qualité d'estimation et intervalles de confiance
m Exemples:F rendements, drift (µ)F volatilité
F maximum, minimum, temps de passage, ….
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 78
Estimation de la tendance
Finalement, pour appliquer Kelly, dans un modèle paramétrique en f=µ /σ2 il faut estimer deux paramètres essentiels: µ et σle plus délicat est l'estimation de µ …
Estimation à partir des rendements historiques: le meilleur estimateur est la moyenne:r = (∑ ri)/navec ri = ln(Si /Si-1)se réduisant à r = ln(Sn /Sà) /nles valeurs intermédiaires ne servent pas !!!On a interet à choisir la période la plus longue possible.
Pour un actif ~ lognormal (5%,20%)intervalle de confiance an à 95% ~ 5% ± 1.64*20% !!!N'est pertinent que lorsque r devirent ~ σ, c'est à dire au bout de T tq Tr ~ T½ σ, ie. T ~ σ2/r 2 =0.22/0.052 = 8 ans
nota: temps caractéristique = 1/sharpe2
Si Sharpe annuel = 2, on pourra juger de la pertinence du rendement au bout de 3 mois de tracking seulement !!!
Vous avez dit tendance ?
40
Page 40
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 79
Estimations de la volatilité
L'estimation de la volatilité est essentielle: gestion du risque, pricing dérivés, leviers, …
Estimateur utilisant tous les ticks:
Zhouet variantes …
Les estimateurs utilisant les plus haut / plus bas sontbeaucoup plus efficaces (x10) et réactifs
La mesure du range (plus haut - plus bas) est parmi lesmeilleurs estimateurs de volatilité
Estimation à partir des cours de clôture (ou last)
Riskmetrics (JP Morgan)
µ=0.94 soit temps caractéristique de 16 jours ouvrés, soit 3 semaines environ≈ GARCH(1,1)
Méthodes utilisant les extremums:Rogers Satchell, Parkinson, Garman Klass, True RangeMaximum de vraisemblance de la distribution des +hautet +bas
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 80
Estimations de la volatilité (suite)
Pourquoi utiliser les plus haut et plus bas ?
- utilise toutes les données disponibles
- les extremum sont des mesures agrégées sur toute une période: les open/close ne sont que photos à des moments précis
- permet d'effecteur des mesure plus précises, robustes et réactives (meilleur résultat avec moins d'historique)
41
Page 41
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 81
Estimateur de volatilité par maximum de vraisemblance avec Open/Close/High/Low
Source: Malik MagdonIsmail, Amir F. AtiyaVolatility Estimation Using High, Low, and Close Data(Algorithmes implémentés dans YATS)
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 82
Distributions plus haut, plus bas, temps de passage, etc ...
m Intérêts des distributions des plus haut, plus bas, temps de passage, …F les statistiques basée sur les valeurs absolues,, les plus hauts et plus bas, … sont
plus robustes (cf estimation volatilité)F renseignements pour le placement des ordres de sortie (stop, limites, …)
F base d'un style de trading (bracket trading)
m Quelques questions classiques:F des temps de passage pour atteindre un objectif donné.
F temps de sortie d'une double barrièreF timing des plus haut / plus bas
42
Page 42
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 83
Temps de passage
Brownien sans drift : en application du principe de réflexion
densité du temps de passage
temps pour atteindre un niveau donné x:
Mais le temps le plus fréquent ne dépend que de la volatilité et la barrière
Exemple: un stop à -3% avec une volatilité de 32% (0.02/jour) temps typique = 0.032/3* 0.022= 0.75 d ’une journée detrading, soit 6 heures … Trailing stop à temps constant T est proportionnel à σ : TrailingStop ≈ 1.73 T σ
Le temps typique de passage peut être vu comme l ’horizon optimal d ’investissement étant donné un objectif
Le temps de passage d'une diffusion "anormale"
la densité est en H=0.5 pour une diffusion normale, on retrouve bien une densité en t -3/2
H<0.5 => temps de passage > normal , H>0.5 => temps de passage < normal
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 84
distribution des plus bas, plus haut
P(low-open < -L) ≈ 2P(close-open < -L) E[ (high-low) / open] = 2 E[ |close-open|/open ]
Cas d'un un actif sans drift (µ=0)
Densité de la valeur absolue
43
Page 43
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 85
La loi Arcsinus
La loi arcsinus : le timing du plus haut et du plusbas sur un intervalle de temps T est régi par la loi :
Contrairement à l'intuition, il y a plus de chance que le plus haut ou plus bas se produise en débutou fin de période (jour, semaine, mois ….).Les plus haut et plus bas se trouveront le plus souvent aux extrêmes : 30% dans le 2 décilesextrêmesc'est a dire les premiers ou derniers 3/4 d'heures d'un jour de trading,le premier jour ou dernier jour sur deux semaine de trading, etc ...à droite ou a gauche et à l'opposé l'un de l'autre.
En pratique les PH et PB se produisent bien avant ou bien après que la loi de l'arcsinus le prédit.L'extremum se produit dans la premiere heure dans 30% des casou la denrière heure dans 20% des cas …
conséquences: breakout de la première heure et mean reversion en milieu de journée ?
Src : Timing the highs and lows of the day , Emmanuel Acar, Pierre Lequeux and Stephane Ritz, Banque Nationale de Paris Plc
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 86
Double barrière
m Dualité temps / rendement:F au lieu d'examiner les rendements à des intervalles de temps réguliers,F on intéresse à la durée nécessaire pour atteindre un rendement fixé à l'avance ou
sortir d'une barrière,
m Utile pour définir des stratégies de trading:F placement des ordres limites , ordres stop, …
avec horizon de tempsF bracket trading: estimation des profits exit et stop loss
T0
Référence=0
L
Hdistribution de la durée pour atteindre etdépasser H ou L la première fois ?
Probabilité(H soit atteint avant L) ?
Distribution de la durée de sortie de labarrière ?
Problèmes classiquesoptions exotiques (barrière, lookback, …)
44
Page 44
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 87
Temps de sortie d'une double barrière
Espérance du temps de sortie d'une double barrière x1<0 , x2>0(σ=1)
T=0
x1
x2
0
Dans le cas µ≠0 l'espérance et surtout la variance du temps de sortie dépendent peu du drift (second ordre)
Avec p = probabilité de sortie par le haut (x2)
Dans le cas µ=0
Encore une façon pour estimer une volatilité:mesurer les durées dans un tunnel
offre l'avantage de fonctionner avec desséries irrégulièrement espacées (intraday)
Pas si évident …. En pratique
peut être considéré comme une mesure du temps de tradingcertains auteurs parlent de temps intrinsèque
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 88
Temps de sortie
CAC40 FutureTemps de sortie d'une double barriere ∆=5ptsn 52321, mean 300s, std dev 528s, skewness 5,767 kurtosis 61,77 median 128 auto-correlation 0,3 E(τ) = 300s
temps typique = 2 minutes pour franchir 5 pts à la hausseou la baisse
<τ> ~ |∆|α
avec α de l'ordre de 1.5 à 1.8
(1.5 plutôt en période agitée)
< 2 (cas gaussien)
tendance à sortir plus rapidement que la diffusionnormale à comparer à |r| ~ tH ou t ~ |r| 1/H
α=1/H < 2 => H > ½ => persistence
time = 8.70 delta 1.76 régression: ln(time)=2.16 + 1.76*ln(barrier) R2=1.00
CAC40 sur 2003
45
Page 45
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 89
Automatique vs Manuel
m Automatique:F l'automatisation de stratégies nécessite une approche rigoureuse, dans toutes
les phases: modélisation, backtests, opérations, … ne laisse pas de place auhasard ..
F réduction des erreurs de tradingF nécessairement "simpliste", pour des raisons de:
Ä difficultés de calibrage, stabilité, robustesse vs paramètresÄ de la complexité opérationnelle et de développement: gestion multi actifs, mutli
quantité, exécution partielle, incohérences des états,Ä risques de bugs ou spécifications incomplètes, il n'est pas possible de prendre en
compte tous les évènements possibles (exit all dès le moindre avènement inattendu)
F un travail long et complexe à mettre au point …
m Manuel:F Prise en compte d'une multitude de paramètres issues de l'expérience,
approche plus "intuitive",
F pas souvent "formalisable": il n'est pas toujours possible, ni souhaitable dechercher à automatiser des méthodes manuelles
F peut réagir à toute situation.
m Semi automatique:F marche:arrêt, surveillance des automatismes par un opérateur ...
F une approche plus sûre
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 90
Trading vs Études Statistiques
m Objectifs différents :F le trader est surtout intéressé par les prédictions et la dynamique, En trading
on est surtout intéressé par les dépendancesF statisticien modélise pour décrire, éventuellement expliquer, il s'intéresse
surtout aux aspects statiques, En analyse, on fait tout pour retirer lesdépendances, la plupart des analyses statistiques s'effectuent avec des variablesaléatoires "Indépendantes et Identiquement Distribuées"
m Des méthodes différentes :F Les méthodes statiques fréquentielles en analyses statiques (ex: Maximum de
Vraisemblance), Études statiques portant sur un grand nombre de données …Les probabilités objectives existent, …
F vs les méthodes Bayesiennes en dynamique:
Ä Posterior = Prior * VraisemblanceÄ Ne soufre pas du pb d'échantillon de faible tailleÄ Mise à jour en fonction de nouvelles donnéesÄ plus adaptées dans le cas d'estimation on-line et trading temps réel.
46
Page 46
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 91
Utilisation d'indicateurs
m Indicateurs, mis à jour au fur et à mesure de l'arrivée des données, sensésdonner des indications sur l'état du marché:F Moyennes mobiles, momentumF RSI(Relative Strength Index)F Bandes de Bollinger
F CCI (Commoditiy Channel Breakout)F etc, ….
m En réalité la plupart des indicateurs sont redondants, privilégier lesindicateurs simples, et significatifs, si possible robustes,F du type range, valeur absolueF discrétisation (du type p(+|+-+)=0.68),
Ä simplifie, les procédures de tests tout en enrichissant les modèlesÄ simplifie les analyses numériques, permet un traitement sous la forme de Chaîne de
Markov,Ä réduit les degrés de liberté.
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 92
Backtests et Data Snooping
Risque de Data Snooping: Trouver des stratégies qui ne sont que des artefacts dans les données.
Essayer de très nombreux systèmes avec de très nombreux paramètres, éventuellement optimiser ces paramètresne sélectionner que les meilleurs, sans savoir pourquoi ils fonctionnent=> forte probabilité pour ne sélectionner que des Snoopy: c'est à dire des systèmes qui fonctionnent à merveille sur le passé et vont se révéler catastrophiques en réel.
DATA SNOOPING dans une marche aléatoire:Prenons le cas d'une marche aléatoire, avec un certain nombre de data générée, représentant un historique de marchédans ce cas E[gain de tout système] est <0 = coût de transactionon réalise des backtests de 900 trades de quoi donner confiance au trader, confiance illusoire …Essayons plusieurs milliers de systèmes …disons 10 000 (il suffit de tester un système avec 4 paramètres pouvant prendre 10 valeurs différentes)avec des performances additives: perf globale =∑ perf tradesla performance globale est une v.a. (gaussienne, le théorème de la limite centrale)de moyenne nulle et variance(perf globale)=n variance(trade) (1+2ρ)supposons σ(trade)=1500, et autocorrélation ρ=0.3> 0, car on utilise des stop loss.variance(900 trades) = 56921 au lieu de 45000 si pas d'AC (l'AC > 0 des trades entraîne un risque plus élevé)les 10 meilleurs systèmes sur 10 000 essayés correspondent au quantile 10/10000 de la gaussienne N(0, 45000)soit une espérance de gain de 195 par trade pour le plus mauvais des 10 meilleurs !!! Avec une bonne t-stat=3.9Si on a affaire à des queues plus épaisses, l'illusion sera encore plus aveuglante ….
Comment éviter le data snooping ?- modélisation + explication des anomalies
47
Page 47
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 93
Trading et modélisation
Modélisation = simplification du réel
Exemple de modèles:mean reversion (series AR(1), ARIMA, avec coefficient de rappel)Pairs trading, co intégration,Chaînes de Markov,
recherche de solutions analytiques ou par simulation de Monte Carlo
Fit: Data réelle = Modèle + ε0
Simulations: Data Synthétiques = Modèle + ε1, avec ε1 ≡ ε0A la différence essentielle que l'on peut générer autant de données que nécessaire pour"résoudre" le système, trouver les paramètres optimaux, le maximum de la fonctionobjectif (exemple utilité horaire), sans soupçon de data snooping ou suroptimisation.
On reporte le risque de data snooping sur le risque de modèle: Inadéquation du modèle,Mauvais usage du modèle, Approximations grossières, Bugs dans le développement,Données instables, …
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 94
backtesting
m Définir le système de trading: traduire l'idée en modèle, puis en règlesF claires et non ambiguës, pouvant donner lieu a programmationF cohérentesF complètes: prévoir tous les cas
m Définir sa fonction d'utilitém Se placer dans des conditions les plus fidèles (cas du simulateur
YATS/RAPT)F Prise en compte des coûts de transactionF de la fourchette bid/ask, ou sinon du slippage (ersatz de spread lorsqu'on ne
dispose pas de tous les ticks)F délais de transmission des ordres et des priorités à l'exécution, …
m Tester et backtester sur les données du marché ou par simulation de montecarlo.
m Optimisations, avec prudence sur les données réelles, sans modération surles modèles.
m études de sensibilitéF aux valeurs des paramètresF à des étalons : au système de trading idéal et parfait, au système aléatoire
48
Page 48
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 95
Critères de performance et contraintes
On doit choisir une fonction d'utilité à optimiser parmi:
- la fonction d'utilité classique : isoélactique (logarithme, puissance), …
- une utilité terminale ou utilité par unité de tempsexemple: on pourra chercher à optimiser l'utilité/jouren principe, l'utilité/jour devrait donner une idée du revenu certain équivalent (à comparer à un salaire, par exemple)
- le ratio de Sharpe : rendement/volatilité
- le ratio de Sterling : rendement/maxDrawDown
- une pénalisation des performances (pessimistic ratio de Pardo)
- minimiser la VaR
Ajouter à cela des contraintes Sur la fonction objectif: exemple: rejet de toute solution dont - le maxDrawDown serait > 10%- le nombre de trades serait jugé insuffisant (pour des raisons de signification statistiques, …)- etc … Sur les paramètres du système:marge ? la somme des pondérations libre ou contraintes = 1 ou =X avec X = levier uatorisévente à découvert ? (pondération<0?)maximum/minimum sur certaine actifs, classes d'actifs, contraintes sur les paramètres des indicateurs techniques, …
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 96
Exemple
Exemple: système de retour à la moyenne le plus simple possible:
On a déjà défini 4 paramètres : longueur moyenne mobile, seuil de volatilité, valeur du stopLoss et exitTime, on peut y ajouter : la tranche horaire, etc …
chacun pouvant prendre 10 valeurs au moins, le nombre de cas à tester croit de manière exponentielle avec le nombre deparamètres ….
Donc de fortes chances pour trouver un système de mean reversion qui va fonctionner sur les données disponibles
EXIT RULE // retour à la moyenne SI position=achat et last < µ ou position=achat et prix > µ ou profitAndLoss > stopLoss ou dureePosition > stopTime
µ= moyenneMobile (1h)σ =volatilité(1h)
ENTRY RULE
ACHAT si last - µ > 2σ
VENTE si last - µ < 2σ
Nota: on peut faire exactement l'inverse pour un système de breakout
49
Page 49
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 97
Optimisations
YATS inclut des méthodes d'optimisation globales permettant de trouver des optimumsde fonctions objectifs à plusieurs variables (paramètres) et sous contraintes arbitrairesMéthodes utilisées =
recuit simulé combiné avec des optimisations locales (BFGS, Hooke, … )
(ces mêmes méthodes sont utilisés dans les estimateurs de maximum de vraisemblance)
Maximum global
Optimum locaux
- directement sur les prix du marché pour tester et optimiser des stratégies avec un risque important de sur-optimisation- sur des données synthétiques issus d'un modèle pour trouver la stratégie optimale du modèle.
Les fonctions (avec contraintes) à optimiser n'ont pas souvent les belles propriétésque l'on trouve dans le livres: ne sont pas toujours continues (a fortiori ni différentiables), les solutions peuvent être entières (quantités)
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 98
Stop Loss
Le Stop Loss est une pratique courante pour limiter les pertes
Exemple: position sur CAC40 Future, stop loss à -10pts deperte=> permet de s'assurer que la perte ne dépassera jamais 10pts….
Oui mais … si on continue et sans traitement complémentaire,le résultat sera le même
Si une stratégie est mauvaise, elle restera mauvaise, mêmeavec stop loss.
En général, le stop loss fait apparaître des autocorrélationspositives.
Stop loss
Stop loss
Stop loss
50
Page 50
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 99
Auto corrélation des trades
perte constatéearrêt trading réel, passage en mode virtuelgain virtuel:reprise du trading réel
Après traitement, il n'y a plus d'autocorrélation évidente
En général la série des trades d'un système de trading présente de fortes auto corrélations positives (mauvaisemodélisation, …). Tout n'est pas perdu: on peut appliquer un système "anti autocorrélation"
exemple: Win=20, Loss=-20 Cost=4 probabilité(win)=0.5Système brut : perte -1080 : Avec traitement Anti AC: gain de 544 !!!
Système ultra simpliste: si AC >0, alors les proba(perte|perte)>0.5,il suffit alors d'arrêter après une perte, et reprendre après le premier gain ...
Utilisation possible d'algorithmes plus sophistiqués de prédiction on line …
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 100
Exemples de patterns prédictibles
Après le pattern "caacaac", on peut vendre le SMI, en plaçant un profitExit et stop loss +/- 4 pts, la probabilité du modèle étant (0.72) > à la probabilité critique (0.68) avec une espérance de gain de 3.48 € par contrat et par trade (aller retour)
51
Page 51
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 101
Pairs Trading
Stratégies Long/Short pour réduire les risques, rechercher la performance absolue:
Soient wi = pondérations dans l'actif iw0= ponderation actif sans risque
long/short dollar neutre : montant investi en long = montant en short Σ wi = 0, i≥1long/short marché neutre:
exemple: r1=α + βr2 + εle portefeuille vérifiant w2 = -β w1 sera ~ neutre aux variations de si β ≈ 0, à la fois dollar et beta neutre
co intégration / pairs tradingrecherche de retour à la moyenne dans les ratios des prix x1/x2y=ln(x1)-ln(x2)régression: y(t)=µ+ρ y(t-1)+ερ = 1 marche aléatoireρ < 1 y(t) est stationnaire et y(t) prévisible mais σ2 (y) = σε
2/(1-ρ2) peut être très grand si ρ proche de 1test statistique de racine unitaire (Dickey Fuller): H0: ρ = 1co integration != corrélation :
penser à un homme ivre qui se promène avec son chien en laisseils vont nulle part … mais ils y vont ensemble …
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 102
Trading de spread sur futures indices en intraday
?Sn= 43,801 - 0,055 Sn-1 + eavec Si =spread = CAC40(i*10seconds) -ESTX50(i*10seconds) et ? Si=Si-Si-1Augmented Dickey Fuller Test t-stat : -10,532 =>LE SPREAD EST STATIONAIRE (Dickey Fuller pvalue: 0,01)
Le spread est stationnaireon peut donc mettre en œuvreune stratégie de retour à la moyenne du spread: exemple achat si spread < µ +2σvente si spread > µ +2σµ=moyenne mobile
vente
achat
vente
Exemple de pairs trading sur future:
Dans tous les cas une position long/shortsemble préférable sur futures ne serait ce que pour rendre ces instruments moins risquéslimiter les risques opérationnels (pannes, krach, …)
52
Page 52
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 103
Trading de spread sur futures indices en intraday (suite)
Mais pas si évident, en raison du véritable couts : la fourchette
Prix vente du spread
Prix achat du spread
Le spread peut aussi être unindicateur pour négocier un seulinstrument en utilisant desrelations d'équilibrese placer en cas de ruptured'équilibreexemple achat du CAC40
Les instruments le plus liquidessont en avance sur les moinsliquides … (causalité Granger)
exemple:?CAC40t= 0,007+ 0,487 ?ESTX50t+ 0,195 ?ESTX50t-10s+ e
en clair: les variations duCAC40 à t dépendent aussi desvariations du E50 à t-10s
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 104
Programmation dynamique et apprentissage
Les systèmes de simulation/backtests sont myopes …une opération (achat/vente) commence par une pertenette: coûts de transaction, spread, …la récompense éventuelle n'intervient que plus tard …pb classiques des jeux (échecs, backgammon, …)
A quel moment est il intéressant de prendre une positionpuis sortir pour en prendre une autre, en fonction desétats, gains espérés et incertitudes (risques)
Systèmede trading
Marché+
Portefeuille
Reward- coûts de transaction immédiats± P&L trades avec retard
Actions: Vente, Achat
États: rendements des actifs, indicateurs, position courante du ptf
Modèle Continu de Mertonavec consommation/épargneoptimisation conjointedu flux des revenus Cet du capital W qui procure ces revenus …
U (C) = salaire équivalent du traderρ = taux d'actualisation des revenus futurspas nécessairement le taux sans risque,permet de définir une fen être mobile ≈ moyenne mobile pondérée
Modèle discret et mis sous la forme d'un processus dedécision de Markovπ = politique = fonction Etats → ActionsSolution : programmation dynamique ou apprentissagetrouver les actions optimales en fonction de l'étatIl existe des algorithmes qui garantissent uneconvergence vers la solution unique (Q-learning,SARSA, TD-learning,...)
53
Page 53
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 105
Programmation dynamique et apprentissage (suite)
Parmi les problèmes les plus complexes:
- explosion combinatoire,- risque d'overfitting (si appliqué directement aux data)
- solution analytique, si modèles analytiques simples ou le plus souvent par simulationexemple solution analytique dans le cas de process lognormaux (Merton), avec mean reversion (Ornstein-Uhlenbeck, AR), avec coût de transaction(le modèles les plus simples se traduisent par des équations puissante mais horriblement complexes)
- extractions de modèles non paramétriques (exemple chaîne de Markov) et solution par des techniquesd'apprentissage
- devient rapidement inextricable …
=> application réaliste dans des cas relativement simples:trading sur un seul instrument (1 devise, 1 future, …),
Sujets d'etude /stage: trading sur futures indices par apprentissage automatique
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 106
Architecture
IB Trader Work StationStandalone configuration
Excel
DDE link
Socket port 7496
Internet
IB FIX/XML server
other quotes, news feed serverFIXML engine server
Slect socket Port = default is 7496
Enable socket clients checkbox
Plateforme de trading
DCOM bridge
54
Page 54
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 107
Gestion des données haute fréquence
La plupart des outils statistiques ne sont adaptésqu'aux données régulièrement espacées dans letemps=> régularisation des données haute fréquence:méthodes:
précédent,interpolation linéaire,spline cubique …
en temps réel … => performance et stockage(surtout en mode simulation et backtests)
T0 +1 +2 +3 +4 +5 +6 +7
Le temps d'accès disque demeure le principal goulet d'étranglement (assez peu de progrès vs CPU)
Les bases de données SQL sont mal adaptées à la gestion des données haute fréquencepb de performance et encombrement (produits intéressant : KDB)
Utiliser plutôt des structures de fichiers « plats » optimisées pour des accès rapides par instrumentet en cross section (à une date donnée)
autres problèmes: gestion des mauvais ticks, gestion des interruptions, duplications, suspensions, …
La gestion des données est très lourde … représente plus de 50% du temps consacré à l'élaboration et opération d'un système
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 108
FIX / XML et ISO15022
http://www.fixprotocol.org
55
Page 55
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 109
MVC architecture
Data Model instrumentsquoteson going ordersaccount information
Data Model instrumentsquoteson going ordersaccount information
View = Trading Algorithms+ (User interface)
quotes, buy/sell buttonscharts, etc …
View = Trading Algorithms+ (User interface)
quotes, buy/sell buttonscharts, etc …
Controller- maps user actions to model updates- monitor external events(price, orders, etc …)
Controller- maps user actions to model updates- monitor external events(price, orders, etc …)
Query state
Notify change
Trading (& user) actions
State change
External eventsticks, order status
View selection
user orders, request market data account information,etc ...IB TWS API
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 110
Trading manager
Broker managerQuotes manager
Event queue
Posting events
Read /scheduleand timely dispatch events
USER INETRFACE
tables
charts
Manual orAutomated trading
Buy/sell/cancel requests
Actual or simulated
Historicalquotes
Live quotes feed
Simulatedquotes
Order status
Plateform Scheduler
56
Page 56
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 111
Order State Diagram
Placed
onStatus = filled
Filled
Cancel Placed
Cancelled
On decision:timeout, etc...
onStatus = cancelled
Notes:Transitions from “Placed” to “Cancelled” may be due to the market, orportfolio constraints (margin, etc …)Transition from Placed to cancel placed may be due to decisions to cancelthe order, but a filled status may arrive while cancel is sentIn conclusion: states should be based on recieved order status.
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 112
Exemple de Diagramme d'état d'un automate de trading
stopped
readyEntry placed
evalEntry
Entry filled
Entry cancel placedtimeout
Status=filled
Exit placed
Stop lossinit
Stop loss
Exit cancel placed
Exit filled
Stop lossplaced
Some principles:- wait for cancel confirmation before entering a new order- set to stopped on any error or unexpected state / event
Stop loss cancel placed
Entry cancelled
Exit cancelled
Stop lossfilled
Stop loss cancelled
Status=filled
Status=filled
Redo cancel
timeout
57
Page 57
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 113
Évènements
package com.yats.trading.event;import java.util.*;/** * Trading listener. * can be registered within the Manager, via standard java method * manager.addListener . * <p>all "callbacks" method names start with "on" : onTick, onOrderStatus, * .... * @author <a href=mailto:[email protected]>Daniel Herlemont</a> */public interface TradingListener extends EventListener, TickListener, com.yats.trading.TradingConstants {
public void onMarketDepth(MarketDepthEvent te); public void onOrderStatus(OrderStatusEvent te); public void onConnectionClosed(TradingEvent te); public void onConnectionOpened(TradingEvent te); public void onError(ErrorEvent te); public void onOpenOrder(OpenOrderEvent te); public void onUpdateAccountTime(UpdateAccountTimeEvent te); public void onUpdateAccountValue(UpdateAccountValueEvent te); public void onUpdatePortfolio(UpdatePortfolioEvent te); public void onTradingAction(TradingActionEvent te);
}
il faut réagirà différents évènementséventuellement asynchrones:tick data status des ordresinformations (compte, positions, ..)connections….
Architecture push: on ne maîtrise pas l'arrivée des évènements
S'oppose à la programmation procédurale: on ne peut pas écrire un seul programme linéaireil faut écire es bouts de procédures qui vont partager des mêmes données, avec tous les pbsde synchronisation afférents l'environnement est thread safe (cad que l'on peut programmercomme si il n'y avait qu'un seul processus (thread) actif
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 114
Programmation
/** Copyright 2001 YATS, All rights reserved.* Use is subject to license terms.*/
package com.yats.trading.studio.daniel;
import java.util.logging.*;import java.beans.*;
import com.yats.trading.*;import com.yats.math.*;import com.yats.trading.event.*;import com.yats.trading.studio.*;import com.yats.trading.indicator.*;import com.yats.commons.util.*;
/** * A simple mean reversion system. * <p>settings: * <li>Max = maximum on b bars. * <li>Min = minimum on b bars. * <p>entries: * <li>Sell if price hits the Max * <li>Buy if price hits the Min * <p>exits: * trailing stop at Max-Min * @author <a href=mailto:[email protected]>Daniel Herlemont</a> */
public class MeanReversionTS extends InstrumentEESTS {
static Logger logger=Logger.getLogger(MeanReversionTS.class.getName());
TimeSeries maximum; TimeSeries minimum; TrailingStopOrderExecutor trailingStop;
int bars=15; double profitExitPts=4; double stopLossPts=4;
public void init() { super.init(); bars=getProperties().getInteger("bars",bars); profitExitPts=getProperties().getDouble("profitExitPts",profitExitPts); stopLossPts=getProperties().getDouble("stopLossPts",stopLossPts);
maximum=TickIndicators.chainByListener(Functions.maximum(bars), getLastsLiveTimeSeries());
minimum=TickIndicators.chainByListener(Functions.minimum(bars), getLastsLiveTimeSeries());
}
58
Page 58
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 115
Programmation (suite)
protected void evalEntry(TradingEvent event) {
double max=maximum.getLastValue(); double min=minimum.getLastValue(); if (getLast()>=max) { entryOrderExecutor.sellAtLimit(getAsk());// entryOrderExecutor.sellAtBid(); } if (getLast()<=min) { entryOrderExecutor.buyAtLimit(getBid());// entryOrderExecutor.buyAtAsk(); }
}
protected void evalExit(TradingEvent event) { double plPts=getProfitAndLossPoints(); if (plPts>=profitExitPts || plPts<-stopLossPts) { placeExit(); } }
void placeExit() { boolean isBuy=entryOrderExecutor.isBuy(); if (isBuy)// exitOrderExecutor.sellAtBid(); exitOrderExecutor .sellAtLimit(getAsk()); else// exitOrderExecutor.buyAtAsk(); exitOrderExecutor.buyAtLimit(getBid()); }
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 116
Librairies YATS
- Time séries (estimation ARMA, générateur, …)- Calcul stochastique- Options classiques et exotiques (barriere, lookback)- Gestion de risque, estimation des queues de distribution (Pareto Generalisé,valeurs extrêmes, …)VaRfonctions d'utilité- gestion de portefeuille CRP, critères de Kelly, - portefeuilles universels- estimation de la volatilité et co dépendance en utilisant les plus haut plus bas, par maximum devraisemblance - ondelettes- estimation Hurst (R/S, Variance ratio, …)- filtre de Kalman - chaine de markov à longueur variable- interfaces avec logiciel d'apprentissage automatique (Weka)et non linéaires (KNN, densité non paramétrique à noyau)- algorithmes de prédictions universelles- régressions linéaire, ANOVA, - co intégration : test Dickey Fuller, régression VAR/VECM- tests statistiques (normalité, BDS, …)- optimisations locales: BFGS, Hooke et globales: recuit simulé, - calcul matriciel- programmation fonctionnelle
Analyse technique/statistiques de systèmes de trading: moyenne mobiles, RSI, MACD, volatilité, range, …et moins classiquesenvironnement de backtestingoptimisations de stratégies….- Réutilisations de stratégies, avec paramètres- programmation en javascript,
59
Page 59
Copyright 2003, Daniel HERLEMONT, tous droits réservés http://www.yats.com 117
Quelques Références
index.htmlSource commenté Application WEB http://localhost/trading/rapt/study/