Une stratégie sur le marché Forex CFD est-elle rentable sur le marché des futures ?

Michael RACINE/ mai 22, 2022/ day, daytrading, EA Studio, futures, NinjaTrader, stratégie automatique

Dernièrement, je me suis posé cette question. Alors oui, nous pouvons utiliser le flux futures (le vrai flux data) pour analyser les choses et prendre des positions sur le marché Forex/CFD des borkers proposant MT5 ou MT4.

Bien évidemment, au regard de la thématique, nous allons tester cela par l’approche de l’automatisation. Alors, étant plutôt orienté futures, j’ai plus d’indicateurs et de possibilités avec les plateformes NinjaTrader 8 ou Sierra Chart. Je vais donc me limiter volontairement aux indicateurs que MetaTrader 5 propose pour pouvoir faire le va et vient entre les plateformes.

Je prendrai l’outil EA Studio (lien ici) pour générer des stratégies pour MT5. Si vous ne le connaissez pas, je vous invite à lire d’abord cet article car vous pourriez être un peu perdu autrement.

Vous l’avez compris.

J’utiliserai EA Studio pour générer une stratégie MT5 puis je la coderai sur NinjaTrader 8. Nous en ferons le comparatif.

Cet article risque d’être long. J’espère que vous avez pris du pop-corn sinon cela va être très long.

 

Donc, arrêtez la lecture, allez chercher tout ce qu’il vous faut pour être bien installé et on continuera après.

 

C’est bon. Vous êtes prêt ? Allez, avant de commencer, faites vos paris. Est-ce que l’on va trouver des résultats proches ou pas ? Laquelle des approches sera la mieux ? Ou seront-elles toutes les deux perdantes ?

 

Alors, on y va.

Quels choix allons-nous faire pour effectuer la comparaison ?ci

Pour que l’instrument choisi correspond le plus possible dans un domaine comme dans l’autre, j’ai décidé de prendre le Gold (XAUSUD pour MetaTrader 5 – contrat GC pour le marché des futures sur NinjaTrader 8).

Au niveau des indicateurs qui seront utilisés, nous laisserons le choix avec ceux de bases :

– Un MACD

– Une moyenne mobile

– Un money flow index (indicateur basé sur les volumes)

– Les volumes (ben oui, c’est bien ça le carburant des mouvements). Il faut donc bien les prendre en compte. Et vous avez vu avec l’autre article que j’avais fait (lien ici ) qu’il pouvait y avoir une grande différence suivant les brokers MT4/MT5 car ils ne sont pas contrôlés comme le sont les brokers futures.

Autant le MACD, la moyenne mobile et les volumes sont facilement compréhensibles car c’est courant. Autant le money flow index (MFI en abrégé) est moins connu.

Pour calculer le MFI (Money Flow Index), voici les différentes étapes :

Typical Price = (High + Low + Close ) / 3

Donc la moyenne du High du Low et du Close.

Pour être remettre tout le monde à jour, un petit rappel sur les chandeliers

 

Ce prix moyen (Typical Price) va être multiplié par le volume pour donner le Raw Money Flow.

Raw Money = Typical Price * Volume

Il faut avoir une période de calcul (savoir le nombre de barres que l’on prend pour le calcul. Exemple une période de 7).

On calcule ensuite le Money Flow Ratio

 

Money Flow Ratio = (somme des 7 Money Flow Positive) / (somme des 7 Money Flow négative)

 

Pour faire simple, si les volumes et le prix ont monté, le money flow est positif et inversement.

 

Après, on le ramène en pourcentage. Le MFI est très proche d’un RSI mais a le très grand avantage d’être corrélé aux volumes ce qui change tout. Les divergences dans le MFI sont plus puissantes que celles dans le RSI mais ce n’est pas pour autant un indicateur magique. Ne nous éloignons pas.

 

Dans EA Studio, la sélection des indicateurs ressemble donc à cela.

 

Comme cet article a une visée pédagogique, je vais faire exprès de changer la recherche sur l’historique. Je vais faire les recherches entre janvier 2020 et fin juin 2021. Cela vous permettra de faire aussi vos recherches de votre côté pour avoir votre propre réflexion et de bien utiliser les 2 outils : EA Studio (lien ici ) et NinjaTrader 8 (lien ici).

Maintenant, demandons à l’ordinateur de travailler pour nous. Il faut qu’il recherche automatiquement les meilleures stratégies.

Les réglages qui vont être utilisés sont les suivants :

La recherche sera faite directement en « Reactor / réacteur » (un peu perdu, regardez l’article (lien ici ). Du coup, il sélectionnera uniquement les stratégies qui auront résistées également au Monté Carlo.

La recherche se fera sur un M5 dans l’historique choisi (2020 à juin 2021).

Les réglages pour la stratégie nous indiquent que nous utiliserons ou non un stop loss et un take profit. C’est lui qui recherchera ce qu’il y a de mieux. S’il y a un signal opposé alors que nous sommes dans un trade, alors ce signal sera opposé. En d’autres termes, si nous sommes en position, on y reste.

 

Le résultat sera trié pour avoir le maximum de profit.

Il y aura un Out of Sample (OSS) de 30%. Pour mémoire, un OSS de 30% signifie que 70% de l’historique servira à rechercher la stratégie la plus efficace possible et les 30% restant (les plus récents) serviront à appliquer la stratégie trouvée dans les premiers 70%.

 

Pour déterminer si nous devons prendre un trade, EA Studio pourra utiliser jusque 4 indicateurs et il en sera de même pour les sorties.

Je vais le laisser rechercher pendant 30 minutes tout seul et nous verrons le résultat.

 

Concernant la partie stress test, nous utiliserons un Monté Carlo avec les réglages suivants :

 

Le Monté Carlo effectuera 20 simulations différentes et il faudra que 80% des résultats réussissent pour qu’EA Studio retienne la stratégie.

 

Pour rentrer un peu plus dans les détails du Monté Carlo, voici les réglages (par défaut) :

Les tests changeront donc 20% de l’historique avec une volatilité qui changera de 20%. Idem pour le spread et le slippage. Ils changeront au cours des tests. Il enlèvera 2% des entrées et des sorties de manière aléatoire.

 

Bon, je vous avoue quelque chose. Je n’ai pas laissé tourner jusqu’au 30 minutes prévues initialement car EA Studio a réussi à me trouver 1076 calculs en 3 minutes ! ! !

Sur ces 1076 calculs, il a trouvé 551 stratégies dont 25 qui ont été positives (avant le Monté Carlo) et 17 ont résisté au Monté Carlo. Donc avec 17 stratégies, j’ai largement de quoi faire mon article. Je ferai peut-être une autre recherche ultérieurement mais là, j’ai déjà de la matière pour réfléchir.

Regardons maintenant la collection des stratégies. Vous n’allez pas être déçu.

 

Déjà rien qu’avec les 2 premiers résultats (ID 2.1 et ID 7.1), on en prend plein les yeux.

Continuons de regarder la suite.

Et ça continue. Les ID 12.1 et ID 14.1 sont très progressives. Ça donne vraiment une bonne base de réflexion. Pourquoi se casser la tête pour trouver une stratégie alors que là, nous en avons des intéressantes ? EA Studio facilite la recherche.

Attention tout de même à ne pas prendre cela pour argent comptant, une stratégie doit s’adapter aux différentes conditions de marché. Il faut donc revoir régulièrement pour voir s’il y a un trop grand écart qu’un ajustement est nécessaire et faire des tests sur un compte de démonstration puis sur un compte réel.

Notre stratégie gagnante MetaTrader 5 est trouvée. Regardons ce qu’elle contient

Je ne vais prendre qu’une seule stratégie. La voici :

J’ai pris celle-ci car elle mixe 2 types d’indicateurs : un basé sur les volumes et un autre qui lague.

Les conditions pour entrer sur un BUY :

Si le MFI passe sous le niveau 42, un signal d’achat est donné. Pour un signal SHORT, cela sera inversé. Si le MFI est supérieur à 58. Alors pourquoi 58 et pas 42 ?

Simplement parce que le logiciel fait la symétrie. Rappelez-vous, je vous ai expliqué le calcul du MFI et vous ai dit qu’il était en pourcentage. Le milieu est 50. Comme un signal d’achat (BUY) est effectué à 42 (50-8), alors un signal de vente (SELL) sera effectué à 58 (50+8). Et voilà le mystère résolut.

 

Regardons maintenant le signal de sortie.

Pour sortir d’un BUY, la ligne MACD change vers le haut.

Sur un graphique, cela ressemble à cela.

Sur cette capture d’écran, on voit l’enchaînement de 2 BUY. Le premier étant perdant et le second gagnant.

Cette stratégie est sans stop loss ni take profit. L’avantage est qu’elle peut s’adapter au marché mais l’inconvénient est que si elle ne s’adapte pas assez vite au marché alors le compte peut vite descendre et augmenter largement le Drawdown. Toutefois, dans l’historique pris en compte, regardons les mois en profit. Ayons une vision plus globale car dans toutes stratégies, il y aura forcément une période de pertes. A nous de limiter la casse.

Le graphique ci-dessus représente la répartition des trades en fonction de l’horaire. Les barres bleues représentent le nombre de trades. Les barres vertes sont les trades gagnants et les barres rouges sont les trades perdants. Nous pouvons donc voir que d’une manière générale (sur l’ensemble de la période considérée), il n’y a eu AUCUN créneau horaire perdant, ils ont tous été gagnants. Les barres vertes sont toujours supérieures aux barres rouges.

Qu’en est-il au niveau du profit répartis sur les différents mois ?

Et là, voilà le résultat auquel nous pouvions nous attendre après avoir regarder la répartition horaire. Sur un équivalent de presque 18 mois (1 an et demi), uniquement 1 mois est négatif. Je ne sais pas pour vous mais moi, après avoir laissé l’ordinateur travaillait pendant 3 minutes (car oui, c’était court au cas où vous l’auriez oublié), le travail est assez concluant. De plus, il faut aussi rappeler que j’ai réglé l’OSS à 30% car qui veut dire que les 70% premiers sont gagnants sont gagnants ce qui est normal vu qu’il a optimisé cette période mais cela veut dire que les 30% restant (soit entre février et juin), il n’a fait qu’appliquer bêtement la stratégie sans l’optimiser.

 

Donc même l’OSS est largement positif !

Même si le logiciel a fait les tests, j’aime bien revérifier si le Monté Carlo ressemble toujours à la courbe d’origine. Regardons donc cela.

Ça c’est notre courbe d’origine.

Est-ce que les itérations Monté Carlo seront identiques dans la forme ?

Le résultat, le voici.

Maintenant que nous avons le résultat pour EA Studio, il est temps de programmer sur NinjaTrader 8 pour voir si nous avons le même résultat.

La stratégie trouvée pour MetaTrader 5 donnera-t-elle le même résultat avec NinjaTrader 8 ?

 

Alors, vous êtes prêt ?

Est-ce que vous vous rappelez la forme de la courbe précédente sur MT5 ? Si non, remontez sur la page pour bien la garder en mémoire car maintenant voici le résultat sur NinjaTrader 8.

Alors on ne peut pas dire qu’elle soit exactement pareille mais en même temps, elle ressemble un peu à ce que l’on avait. Donc c’est plutôt bien au premier abord. Les courbes sont toutes les deux sur une pente ascendante.

 

Après, avons-nous la même rentabilité sur les créneaux horaires car pour mémoire, nous avions eu un 100% de réussite. Qu’en est-il de cette stratégie appliquée sur le marché des futures avec NinjaTrader 8 ?

 

En revanche, si nous regardons d’un peu plus près, les différences sont tout de même présentes. Une des raisons principales, selon moi et ce n’est que mon avis, vient de la différence des informations : pour l’un c’est un broker Forex CFD et pour l’autre c’est le marché régulé des futures. Sur le marché des futures, les volumes sont bien réels. Effectivement, la stratégie est plus rentable sur MT5 mais est-ce que notre résultat ne se base pas plus sur une « surinterprétation » des cours du broker et jouer avec cela ? je n’ai pas la réponse.

En tout cas, ce que l’on peut s’apercevoir c’est que si nous sommes embêtés pour trouver une stratégie intéressante, nous pouvons essayer EA Studio et prendre le résultat comme BASE pour une stratégie futures ce qui est déjà fort intéressant. Je vous épargnerai ici les analyses que j’ai pu faire avec NinjaTrader 8 en version Monté Carlo car l’article serait beaucoup plus long et vous commencez peut-être un peu marre de tout cela.

 

En manque d’idées pour les futures ? Utilisez une aide

Comme vous l’avez vu, l’outil EA Studio peut vous trouver pleins d’idées. L’objectif principal de cet outil est de pouvoir vous donner les projections (ATTENTION, il faudra les comparer avec votre flux de données, les faire en démonstration puis en réel car rappelez-vous, tout cet article n’a qu’une visée pédagogique. Il n’est en aucun cas un conseil ou tout autre obligation de suivre ce que je fais. Il vous appartient de prendre vos propres décisions).

 

Une fois ces projections effectuées, vous pouvez très bien les prendre pour les mettre en place sur une plateforme MetaTrader 4 / 5 puisque vous aurez accès au code source MQL. Mais, et cet article le démontre, EA Studio pour vous aider à vous donner des idées pour avoir des idées supplémentaires pour appréhender le marché des futures.

J’attire juste votre attention. Les plateformes futures (ex : NinjaTrader 8, Sierra Chart…) proposent des fonctionnalités plus abouties. Si vous manquez d’idées, il serait donc très dommage de prendre une stratégie copiée collée EA Studio (certes déjà rentable) pour la mettre sur les marchés futures. Alors qu’avec un peu de travail en plus, vous pourriez rendre cette stratégie ENCORE PLUS rentable.

Je dis cela, je ne dis rien. Chacun est libre de faire son choix.

Michael.

Share this Post