Expérimentation Trading Auto en Réel

Forum sur le trading automatique et algorithmique : systèmes, backtests, robots de trading, résultats et limites, code à l'appui.
Avatar du membre
Gacanga
Chevalier Émérite Jedi
Messages : 3676
Enregistré le : 30 sept. 2016 13:50

Expérimentation Trading Auto en Réel

Message non lu par Gacanga »

Bonjour à toutes et tous,

Depuis Lundi 09 Octobre, j'ai mis en route un robot de trading et je n'interviens plus manuellement sur le marché.
Sur cette file je vous propose de partager l'avancée de la mise au point du robot ainsi que les résultats obtenus au jour le jour.
Les remarques sont les bienvenues.
A toutes fins utiles je rappelle que tout ce qui sera décrit ci-après n'est en aucune façon un conseil en investissement.

La Stratégie de départ:

Pour décider d'entrer en position, voici les conditions recherchées lors de la mise en route du robot Lundi matin.
Horaires de trading:
9h10(on laisse passer l'ouverture)-11h00(on évite les moments trop :zzz: ): le matin
14h00-16h30: l'après-midi mais on coupe de 14h25 à 14h35 et de 15h25 à 15h30. On évite 14h30 pour ne pas subir les news souvent publiées à cet horaire et on évite l'ouverture US.
Le Setup de départ:
A l'achat, on cherche 2 chandeliers Heiken Ashi haussiers consécutifs en UT5min et UT1min simultanément avec un corps de la deuxième bougie haussière supérieur au corps de la première. Illustration :
Heiken Ashi.png
Heiken Ashi.png (8.32 Kio) Vu 2245 fois
On cherche donc cette "figure" sur UT5min et UT1min en même temps. J'ai codé un indicateur maison pour la détecter.
Evidemment on inverse le tout pour la vente.
On ajoute le critère suivant:
On veut un Stochastic inférieur à 75 pour entrer à l'achat et supérieur à 25 pour entrer à vente.
Le but de ce critère est d'éviter de rentrer à la fin d'un mouvement.
Enfin on autorise un seul trade par bougie et 2 positions simultanées maximummum
TP/SL:
On place un Take Profit à +20 points et un StopLoss à -14 Points
On utilise un Stop Suiveur qui se déclenche si la position est gagnante de plus d'un point et vient se coller à 0.01 point du prix. Le but est de travailler comme si on avait un TP +1 mais de pouvoir bénéficier d'un mouvement brusque dans notre sens pour gratter quelques points ou dixième de points si possible.
ATTENTION: Mon broker n'impose pas de distance minimum entre le prix et le stop. Ce n'est pas le cas de tous.

Le robot est lancé sur le Dax C.F.D et est codé en MQL4 puisque je trade sur MT4. Le tout tourne sur un VPS virtuel Google Cloud qui offre un bien meilleur ping que chez moi.

Voilà, notre robot est prêt, GO !
Avatar du membre
Gacanga
Chevalier Émérite Jedi
Messages : 3676
Enregistré le : 30 sept. 2016 13:50

Re: Expérimentation Trading Auto en Réel

Message non lu par Gacanga »

Résultat du Jour 1: Lundi 09/10

Durant cette journée, je n'étais pas présent et j'ai donc constaté les résultats en fin de journée:
Précisions: Les horaires des trades sont basés sur l'heure serveur qui est décalé de 2 heures:
Lorsqu'un trade est affiché à 7h30, il est en réalité passé à 9h30 heure française.
Jour1.png
Jour1.png (69.69 Kio) Vu 2244 fois
Bilan -29.5 points en étant passé par -56.7 points.
Profit Brut: 34.7 points
Perte brute: 64.2 points

En observant le graphique, je m'aperçois que 2 améliorations évidentes peuvent être apportées.
D'abord le critère Stochastique est incomplet:
On demande d' entrer à l'achat si le Stochastique est inférieur à 75 et à la vente si il est supérieur à 25.
C'est bien mais on ajoute que l'on veut un stochastique haussier sur les 2 dernières bougies à l'achat et baissier à la vente.
Deuxième point, le robot prend parfois des positions sur 2 bougies consécutives et la deuxième s'avère perdante.
Pas le temps de coder ça tout de suite, je garde en tête.
Je constate aussi que les coupures entre 14h25 et 14h35 puis 15h25 à 15h35 ne fonctionnent pas. Je n'ai pas trouvé pourquoi.
Avatar du membre
takapoto
Membre du Conseil Jedi
Messages : 7801
Enregistré le : 16 déc. 2013 15:56

Re: Expérimentation Trading Auto en Réel

Message non lu par takapoto »

Merci pour ton partage !
J'espère que ton robot va donner satisfaction.
En quel langage l'as-tu développé ?
As-tu fait des backtests auparavant ?
Avatar du membre
Gacanga
Chevalier Émérite Jedi
Messages : 3676
Enregistré le : 30 sept. 2016 13:50

Re: Expérimentation Trading Auto en Réel

Message non lu par Gacanga »

Résultat du jour 2: Mardi 10/10

Journée passée devant l'écran mais sans intervenir manuellement. La modification Stochastique envisagée la veille a été codée, reste le problème des coupures qui ne fonctionnent pas, je cherche toujours pendant que le robot trade. Et bien sur l'espacement des trades à coder
jour2.png
jour2.png (99.2 Kio) Vu 2231 fois
Bilan +5.6 Points en étant passé par -8.9 points et +17.1 points.
Profit Brut: 51.2 points
Perte Brute:43.3 points

On a donc bien améliorer la sélection des trades (à moins que le marché n'ait été plus favorable) par contre dommage de n'avoir pas gardé les 17 points et de finir à 5.

un axe d'amélioration possible à travailler.

Pour le jour suivant, on va coder l'espacement des trades de 3 bougies minimum et voir si ça aide.

Il semble également évident que le StopLoss est trop éloigné et pourrait être réduit diminuant mécaniquement la perte brute.
Toutefois, on se concentre d'abord sur les entrées, on essaiera de travailler ce stoploss plus tard.

On remarque aussi que le stop suiveur apporte un plus comparé à un TP1 puisque malgré qu'il colle au prix on arrive à plusieurs trades profitables supérieurs à 1 point et même un très beau +6.1 sachant que le stop est à 0.01 point du prix dès qu'on dépasse 1 point de gain.

Enfin j'ai l'impression (mais ce n'est qu'une impression pour l'instant) que le robot est meilleur l'après midi, à voir...
Avatar du membre
Gacanga
Chevalier Émérite Jedi
Messages : 3676
Enregistré le : 30 sept. 2016 13:50

Re: Expérimentation Trading Auto en Réel

Message non lu par Gacanga »

takapoto a écrit :Merci pour ton partage !
J'espère que ton robot va donner satisfaction.
En quel langage l'as-tu développé ?
As-tu fait des backtests auparavant ?
En MQL4 je suis sur MT4, non pas de backtest, la stratégie est dérivée de ce que je fais en manuel.
ticktack
Compagnon Jedi
Messages : 1147
Enregistré le : 11 nov. 2016 22:29

Re: Expérimentation Trading Auto en Réel

Message non lu par ticktack »

Oui merci du partage !

J'ai une question sur les trades du dernier jour je vois un +0.6 (slippage je suppose par rapport au stop) , il serait intéressant de savoir si le stop peut entrainer la clôture de trades en négatif ?
Avatar du membre
Gacanga
Chevalier Émérite Jedi
Messages : 3676
Enregistré le : 30 sept. 2016 13:50

Re: Expérimentation Trading Auto en Réel

Message non lu par Gacanga »

Salut ticktack,

pour répondre à ta question:
Le stop suiveur se place lorsque le gain atteint +1.01 point et il est placé à +1 point.
Si un reflux violent se produit, il est possible que le trade soit clôturé en dessous de 1 point de gain comme dans le cas que tu vois(+0.6) et ce n'est pas un cas isolé, il y a pas mal de +0.9 ou +0.8.
D'ailleurs, on peut voir la colonne SL qui correspond au niveau du StopLoss au moment où le trade est fermé et la colonne Price la plus à droite qui correspond au prix de clôture réel du trade. Il y a quasi systématiquement un écart défavorable.
Donc on peut imaginer que sur un mouvement très violent il clôture négatif.
pour l'instant je n'ai pas eu le cas.
Avatar du membre
Gacanga
Chevalier Émérite Jedi
Messages : 3676
Enregistré le : 30 sept. 2016 13:50

Re: Expérimentation Trading Auto en Réel

Message non lu par Gacanga »

Résultats Jour 3: Mercredi 11/10:

Journée passée en grande partie devant l'écran. Aucune intervention manuelle de ma part.
Petit bémol sur cette journée: J'ai essayé de corriger les problèmes de coupures à heure choisies et cela n'a pas fonctionné. Pire cela à bloquer le robot, donc il n'a pas trader pendant 20 minutes ce matin au démarrage(le temps de comprendre et de modifier le code en direct) et idem en début d'après midi, j'ai essayé de nouveau et blocage de nouveau.
Sinon voilà la journée:
Jour3.png
Jour3.png (66 Kio) Vu 2116 fois
Bilan: -22 points en passant par +2.6 points et - 22 points
Profit Brut: 21 points
Perte Brute: 43 points

Seulement 23 trades contre plus de 30 habituellement

une mauvaise journée, je pense qu'il manque peut-être un outil de mesure de volatilité pour soit désactiver si pas la volatilité suffisante, soit ajusté un stop suiveur déclenché plus tôt (+0.5?) plus serré dans ces moments là.
Les 2 dernières positions perdantes ont été vertes mais pas assez pour déclencher le stop suiveur. Dommage, ça change tout le résultat sinon.
Twux
Padawan
Messages : 372
Enregistré le : 09 oct. 2017 07:16

Re: Expérimentation Trading Auto en Réel

Message non lu par Twux »

Etant développeur et passionné de trading je veut suivre ce fil avec impatience :)
Avatar du membre
Gacanga
Chevalier Émérite Jedi
Messages : 3676
Enregistré le : 30 sept. 2016 13:50

Re: Expérimentation Trading Auto en Réel

Message non lu par Gacanga »

Résultats Jour 4: 12/10

Aujourd'hui, avant de commencer la journée, des modifications ont été apportées:
D'abord le StopLoss initialement de 14 Points a été ramené à 10 Points. En observant la semaine, jamais un trade arrivé à -10 n'est remonté vert.
Ensuite en consultant le journal détaillé, je m'aperçois que beaucoup d'ordres sont loupés (off quotes) ce qui signifie que le prix demandé n'est plus valable lorsque le robot veut entrer en position. Effectivement je n'y avais pas prêté attention jusque là. Du coup j'ai élargi le "slippage" toléré pour une entrée. cela évite que le trade soit pris plus tard et donc sur un "reliquat" de signal".
J'ajoute aussi un filtre pour la prise de position:
indicateur ADX (average directional mouvement) haussier pour l'achat et baissier pour la vente.
En deuxième parti de journée (l'après-midi) j'ai également ajouté une possibilité de clôturer un trade "manuellement" par le robot (hors TP/SL ou stop suiveur). Tout simplement si notre nouveau filtre ADX se retourne quelle que soit le gain ou la perte.

Sans plus attendre les trades du jour:
Jour4.png
Jour4.png (84.69 Kio) Vu 1992 fois

Bilan: -11.1 points en passant par +6.8 et - 14.35.
Profit brut 24.15
Perte brute: 35.25
25 trades

Les modifications apportées réduisent le nombre de trades et permettent des pertes moins fortes qui devraient apportées une amplitude Plus Haut/Plus Bas journalier moins violente.
En effet les 2 pertes du matin auraient été coupée à -3 et -5 soit 8 points de perte au lieu des 21.
On avance !!
Demain on laisse le robot tel quel pour voir les modifications en action sur une journée pleine.

Enfin, à garder en tête pour la semaine prochaine, les pertes du matin semblent systématiquement se produire après 10h. peut-être qu'il faudra envisagé de ne pas trader après 10h le matin.

Bonne lecture et n'hésitez pas à apporter votre critique.
ticktack
Compagnon Jedi
Messages : 1147
Enregistré le : 11 nov. 2016 22:29

Re: Expérimentation Trading Auto en Réel

Message non lu par ticktack »

Essaie de te poser un peu plus car tu sembles vouloir corriger tout ce que tu observes chaque jour, c'est un rythme trop rapide tu ne peux pas tirer de conclusions aussi vite ;)

Je te dis ça car j'avais tendance à faire pareil il y a longtemps ...
Avatar du membre
Gacanga
Chevalier Émérite Jedi
Messages : 3676
Enregistré le : 30 sept. 2016 13:50

Re: Expérimentation Trading Auto en Réel

Message non lu par Gacanga »

Tu as surement raison.
Mais le robot de départ n'était pas aboutit. Par exemple le Stop a été décidé de manière totalement arbitraire et aucune stratégie de gestion de position.
Mais là je compte bien le laisser faire.
Avatar du membre
Euraed
Chevalier Jedi
Messages : 2276
Enregistré le : 19 juin 2016 19:52

Re: Expérimentation Trading Auto en Réel

Message non lu par Euraed »

Bonjour Gacanga

Pour ma part, j'ai du mal à envisager que l'on puisse se passer de backtest.
Ce que tu as cité, tu l'aurais identifié avant de lancer le robot en réel
Le backtest te ferait gagner du temps de mise au point. Par exemple, faut il considérer seulement la position absolue du stochastique ou y ajouter également sa dynamique est une question à laquelle le backtest permet de répondre et pas uniquement sur quelques jours de tradings qui sont trop courts pour tirer une conclusion fiable.
Avatar du membre
Gacanga
Chevalier Émérite Jedi
Messages : 3676
Enregistré le : 30 sept. 2016 13:50

Re: Expérimentation Trading Auto en Réel

Message non lu par Gacanga »

Bonjour,
Le backtest a ses avantages mais il m'a toujours poussé à sur optimiser.
cette fois j'essaie de prendre une façon de trader en discrétionnaire et de la transformer en automatisme.
Avatar du membre
trappiste73
Membre du Conseil Jedi
Messages : 5208
Enregistré le : 08 déc. 2016 11:38

Re: Expérimentation Trading Auto en Réel

Message non lu par trappiste73 »

Je suis d'accord : le backtest, ça doit rester un filtre aux larges mailles et l'optimisation fine doit se faire au réel.
Avatar du membre
takapoto
Membre du Conseil Jedi
Messages : 7801
Enregistré le : 16 déc. 2013 15:56

Re: Expérimentation Trading Auto en Réel

Message non lu par takapoto »

On ne pourra jamais trouver un système générant des signaux gagnants à 100%.
Le challenge et donc d'éliminer le maximummum de faux signaux.
Et pour les détecter, rien de mieux que le backtest.
Pour moi, lancer un système automatique sans l'avoir backtesté, c'est comme courir sur un lac gelé sans avoir sondé l'épaisseur de la glace auparavant...
Avatar du membre
trappiste73
Membre du Conseil Jedi
Messages : 5208
Enregistré le : 08 déc. 2016 11:38

Re: Expérimentation Trading Auto en Réel

Message non lu par trappiste73 »

Ah oui sans aucun backtest, c'est ... risqué. :shock:
Avatar du membre
Gacanga
Chevalier Émérite Jedi
Messages : 3676
Enregistré le : 30 sept. 2016 13:50

Re: Expérimentation Trading Auto en Réel

Message non lu par Gacanga »

Bonjour à tous et merci de vos remarques,

Je ne peux pas dire qu'aucun backtest n'existe puisqu'il s'agit d'une stratégie que j'utilisais en manuel avec des résultats positifs.
Je n'ai pas fait de backtest machine.
Toutefois, si le setup de départ reste le même c'est dans la gestion des positions ouvertes que réside pour moi le challenge. lorsque je pilote ma position moi-même, la décision de stopper, de laisser courir ou de hedger est prise sur le vif, parfois pour des bonnes raisons, parfois pour des mauvaises. Souvent les mauvaises raisons sont d'ordres psy pour moi (impatience, rage d'avoir raté un beau profit pour un moins beau, etc....)
Je pense que cette stratégie peut-être bonne si elle est automatique et je n'arrive pas à être moi-même suffisamment "automatique" dans le temps.

J'ai donc lancé le robot avec uniquement le setup de prise de position volontairement et en sachant qu'il allait commencer par perdre.
Le but maintenant est d'observer chaque position et de déterminer quels sont les signes mécaniques (s'il existent) d'une bonne position ou d'une mauvaise sans biais humain (qui généralement m'ont amené à diminuer le résultat ou à le rendre au marché).

Voilà, continuez à commentez, c'est toujours intéressant !
Avatar du membre
Gacanga
Chevalier Émérite Jedi
Messages : 3676
Enregistré le : 30 sept. 2016 13:50

Re: Expérimentation Trading Auto en Réel

Message non lu par Gacanga »

Résultats Jour 5: 13/10

Aujourd'hui, journée complète devant l'écran sans intervenir. Les modifications apportée hier ont donc été testées toute la journée.

Voici les trades du jour:
Jour5.png
Jour5.png (68.01 Kio) Vu 1316 fois
Bilan: -5.35 Points (+2.2 positifs de positive slippage) je ne les compte pas dans le suivi. En passant par +6.5 points et -14.6 points
Profit Brut:28.55 Points
Perte brute:33.9 Points
Total de 27 trades

Une fois de plus la tranche horaire 10h - 11h nous plombe bien la journée puisque qu'on réalise une "performance" de -16.8 points sur ce timing. Comparé à la journée, c'est beaucoup.

voilà, je compile la semaine pour la publier.
Avatar du membre
Gacanga
Chevalier Émérite Jedi
Messages : 3676
Enregistré le : 30 sept. 2016 13:50

Re: Expérimentation Trading Auto en Réel

Message non lu par Gacanga »

Résultats Complet Semaine 1:

Voilà la première semaine est achevée pour le robot et voici les résultats:
Semaine1.png
Semaine1.png (22.84 Kio) Vu 1517 fois
J'ai calculé la performance sur la tranche 10h-11h,
En la supprimant, on est quasi flat.
Elle pèse très lourd sur les 2 derniers jours où elle représente 50% ou plus des pertes brutes

Bien sûr cela fait peu de recul pour décider de supprimer cette tranche horaire.
J'attends donc la semaine prochaine pour voir si cela se confirme.

Sur un autre sujet, il apparaît que mon seuil de stop suiveur ainsi que la distance de 0.01 point ne sont pas pertinents.
En effet, le pas de cotation est de 0.05 points, aussi lorsque le stop est placé à 0.01 point du prix, il n'est en réalité pas exécuté au prix prévu mais en dessous. Je pense d'ailleurs que du coup, il y a un délai de réaction pour clôturer le trade qui occasionne un slippage supplémentaire car lorsque le stop suiveur se déclenche le prix l'a déjà franchi et j'ai pu observer que cela provoque une erreur dans l'ordre de clôture qui est donc renouvelé.

Je vais donc modifier la distance du stop suiveur à 0.05 du prix et le déclenchement à 1.05 points. Cela ne devrait pas changer le déclenchement car actuellement je lui demande +1.01 point mais cela correspond à +1.05 étant donné le pas de cotation.

Voilà, je vous souhaite un bon week end et vous dit à la semaine prochaine pour la suite ..