Le temps d'exécution est l'ennemi des baktests des algos

Forum sur le trading automatique et algorithmique : systèmes, backtests, robots de trading, résultats et limites, code à l'appui.
Avatar du membre
trappiste73
Membre du Conseil Jedi
Messages : 5208
Enregistré le : 08 déc. 2016 11:38

Le temps d'exécution est l'ennemi des baktests des algos

Message non lu par trappiste73 »

Le temps d'exécution en réel est l'ennemi des baktests des algos.

PRT insiste bien : « lors d’un backtest, les prix d’exécution des ordres sont estimés depuis les données historiques afin d’être aussi proche que possible d’une exécution réelle sur le marché ».
Proche oui mais pas équivalent. La différence avec le réel : le temps d'exécution d'un ordre.

ProOrder est du trading automatique et non haute-fréquence : aucune garantie n'est donnée quant à la vitesse d'exécution des ordres donnés par un algo.

J'ai eu le cas sur un algo qui tournait sur 2 comptes. Il s'est exécuté à 13h00min 01sec 680c sur un compte et à 13h00 min 01sec 406c sur l'autre. Une différence qui a conduit l'algo à aller au tapis à cause du slippage de plusieurs points que cette différence a entraîné. Il n'a pas atteint son TP et a fini en SL. Cela a été ma plus grosse perte 2021.

Les backtest d'algos sont donc malheureusement à prendre avec des pincettes. Il faut du coup à la fois réduire son levier, sa perte max et simuler en démo tout algo lancé en réel pour pouvoir vérifier son fonctionnement.

Une sacré limite ...
Avatar du membre
Francis1
Le Sage
Messages : 30212
Enregistré le : 20 mars 2019 15:50

Re: Le temps d'exécution est l'ennemi des baktests des algos

Message non lu par Francis1 »

:mercichinois:
Avatar du membre
HellionReign
Membre du Conseil Jedi
Messages : 8596
Enregistré le : 24 oct. 2016 15:00

Re: Le temps d'exécution est l'ennemi des baktests des algos

Message non lu par HellionReign »

:merci: :mercichinois:
Avatar du membre
falex
Le Gladiateur
Messages : 34269
Enregistré le : 12 févr. 2013 15:41

Re: Le temps d'exécution est l'ennemi des baktests des algos

Message non lu par falex »

Ça me rappel des échanges sur le sujet avec Kero (il me semble, ou un membre avec pseudo du style Juno…) qui avait déjà relevé cette limite il a quelques années.
Regarde dans le forum , il y a peut-être des éléments intéressant en complément.

Est-ce que cela remet en cause ton utilisation de pro-order ?

-
Marrant ta remarque sur le temps d’exécution car en fait j’ai le même problème sur un programme qui récupère les bougies UT1 à la clôture de celle-ci.
J’ai une fonction de « synchro » pour déclencher la récupération de la bougie à :00secondes mais en pratique mon programme va mettre aléatoirement quelques micro a milliseconde à se déclencher. Et après j’ai le problème du temps de transit sur internet et du traitement par les serveurs en face.

Je pense qu’il faut intégrer cette variabilité d’exécution/réaction car à moins d’être chez le brocker directement on est obligatoirement tributaire de ce genre de problème.
Avatar du membre
trappiste73
Membre du Conseil Jedi
Messages : 5208
Enregistré le : 08 déc. 2016 11:38

Re: Le temps d'exécution est l'ennemi des baktests des algos

Message non lu par trappiste73 »

Je ne sais pas encore si ça remet en cause mon trading auto mais c'est une sérieuse limite.
Je ne vois pas bien comment l'intégrer dans le code : le slippage peut être négligeable dans 99,99% des cas et très important exceptionnellement. Pro-order ne garantit aucun délai d'exécution.
La seule possibilité viable est de simuler parallèlement en démo pour pouvoir intervenir manuellement en cas de dérapage. Encore faut-il être devant ses écrans lorsque le pb survient ...
Avatar du membre
Benoist Rousseau
Trader Futures / CME Member
Messages : 174758
Enregistré le : 06 sept. 2011 22:45

Re: Le temps d'exécution est l'ennemi des baktests des algos

Message non lu par [phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/src/Extension/CoreExtension.php on line 570: strtr(): Ignoring replacement of empty string
Benoist Rousseau
»

la prochaine version de PRT va arranger cela, tu peux m'écrire si tu veux en savoir plus, je ne peux pas donner les détails publiquement pour le moment, c'est en BETA testeur
Avatar du membre
ChristelleP
La Battante
Messages : 69050
Enregistré le : 23 janv. 2018 09:53

Re: Le temps d'exécution est l'ennemi des baktests des algos

Message non lu par ChristelleP »

:mercichinois: :oops:
Avatar du membre
kelly
Maître Jedi
Messages : 4956
Enregistré le : 17 mai 2016 16:43

Re: Le temps d'exécution est l'ennemi des baktests des algos

Message non lu par kelly »

Bien coder un système n'est pas facile du tout ! Plein de causes de différences entre backtest et réalité.
Tu soulèves un cas très particulier car finalement, les algos impactants, on ne les croise pas si souvent , me semble-t-il sauf en ce moment de période de crise.
Perso, le système que j'ai écrit est sur du UT15' avec TP et SL très lointains ce qui permet d'éviter les brusques variations.
Pour rappel ce système est un "Graal" : 85% de positif ! mais pour 1% annuel de gain en 2021 :gloups: Non, vous aurez beau le réclamer à corps et à cris, je ne le vendrai à personne et surtout pas à mes amis ! :)
Je ne vois pas comment lutter contre les algos hedge fund depuis nos stations avec des temps de transmission longs (et chez moi "très longs").
Si PRT peut améliorer c'est bien (cf Benoist) mais de toute façon , on ne pourra pas atteindre leur vitesse donc en système automatisé ... ils auront toujours le premier/dernier mot.
Avis perso.
Avatar du membre
ChristelleP
La Battante
Messages : 69050
Enregistré le : 23 janv. 2018 09:53

Re: Le temps d'exécution est l'ennemi des baktests des algos

Message non lu par ChristelleP »

Ne pas lutter contre les algos, mais aller dans leur sens.