A propos de l'optimisation des stratégies.

L'optimisation est un mot tabou quand on parle de systèmes de trading.

Pourtant à un moment donné, quand on travaille avec des indicateurs techniques, il faut bien faire un choix, celui de la durée de ces indicateurs. Une fois que ce choix est fait, il faut s'adapter au marché et c'est là que l'on parle d'optimisation.

Le problème avec l'optimisation c'est qu'elle peut conduire au pire excès.

En effet, en cherchant trop finement à s'adapter au marché dans le passé, la probabilité que ces paramètres nous permettent de gagner de l'argent à l'avenir devient pratiquement nulle. Il s'agit de la sur optimisation (en anglais over fitting).


Comment éviter la sur optimisation ?



 Le premier danger de ce type de raisonnement c'est de faire rentrer beaucoup de paramètre dans le modèle de trading. Plus on a de paramètres, plus on a de chance d'aller vers la sur optimisation. J'ai l'habitude de dire que 4 paramètres est un bon compromis. Mais chaque situation est particulière. Si les paramètres ne se cannibalise pas, il peut y en avoir plus.

L'autre solution pour éviter la sur optimisation, c'est de faire des tests sur une durée très importante. En fait quand je dis durée très importante, c'est surtout sur une durée ou des caractéristiques très différentes de marché se sont exprimées.

Par exemple je vois des gens faire des tests sur quelques mois en barre 1 min en pensant que c'est suffisant parce que il y a des milliers de barre. Je pense que c'est une démarche erronée. Pendant ces mois là, il y a de forte probabilité que le marché ait fonctionné à peu près toujours de la même façon. Les différences doivent être celle qu'on observe sur le marché à très long terme.

Idéalement il faut donc un marché volatile, puis non volatile, en tendance, sans tendance, haussier et baissier.


Il vaudrait mieux tester son modèle sur des barres de 1 minutes en 96 puis en 99 puis en 2000 puis en 2003 même si ce n'est que 1 ou 2 semaines de chaque année, plutôt que de prendre 6 mois qui se suivent.


Le luxe ultime dans ce genre de test, c'est de faire l'optimisation sur ce qu'on appelle des données vues, tout en gardant une partie de l'historique non vue. Une fois qu'on a trouvé des conditions idéales sur les données de test, on regarde ce que ça donne sur celles qui n'étaient pas dans le test. Dans ce cas, pour que tous les échantillons de donnés soient représentatifs, il faut un nombre vraiment très important de données.

Tant qu'on reste avec un nombre assez limité de paramètres, le risque de sur optimisation est assez réduit et l'expérience aide également à repérer les comportements anormaux.

Pour étudier l'impact des paramètres sur un modèle, on peut procéder de deux manières différentes.



Essayer au hasard différents couples de paramètres pour voir qui fait mieux que l'autre ou par esprit purement mathématique en demandant à une machine de passer en revue tous les paramètres un à un.

Waldata a mis en place un outil assez révolutionnaire avec la possibilité de voir en temps réel l'impact des paramètres sur les résultats. Pour cela il suffit d'utiliser ce qu'ils appellent les réglettes dynamiques. Il s'agit en quelque sorte d'une optimisation visuelle.

C'est un concept très intéressant car il correspond bien mieux à ce que nous cherchons réellement quand nous faisons de l'optimisation. Le test mathématique va certes nous renvoyer sans conteste le meilleur couple de paramètre. Mais il ne nous dira pas si cette performance n'est du qu'au fait qu'il nous a fait acheté au plus bas dans la crise du 11 septembre par exemple. Alors que d'autres paramètres seront probablement meilleurs sur le reste de la période mais avec une performance un peu moins bonne car ils n'auront pas bien géré cette crise.

Prenons le test d'un RSI 14 jours avec les seuils de sur achat et survente à 70 et 30 sur le CAC 40.

Voici 2 illustrations pour comprendre comment les réglettes fonctionnent :

cac

cac

Entre les deux, j'ai bougé le curseur qui détermine la position du seuil de surachat du RSI 14 en le diminuant, de 70 à 60. Immédiatement tout mon écran s'est mis à jour : les signaux et les résultats.