Ce que nous avons appris de l'analyse de 1,2 million de stratégies de change

Partie 1 : Complexité et nombre de transactions

Il y a environ un an et demi, je suis arrivé à la conclusion que la limite de mon flux de travail en matière d'élaboration de stratégies se réduisait. . En 2014-2015, gagner 40-55% par an sur le marché des changes était une évidence. En 2016-2017, il est devenu de plus en plus difficile de faire des profits avec le flux de travail standard. J'ai donc décidé d'examiner et d'analyser certains paradigmes de certaines procédures en détail sur le plan statistique.

Nous avons donc généré environ 1,2 million de stratégies en utilisant uniquement des filtres de base tels qu'un nombre minimum de transactions et une stabilité SQ3 > 0,6. Nous avons utilisé le plus grand échantillon de données possible pour la période 1987-2017 IS + OS et pour la période 2017-2020. ( WFOS )
Comme True Out-of-sample (WFOS), nous avons utilisé la période 2019-2020 - deux ans. Au cours de cette période, nous avons observé les effets de la sélection, des tests de robustesse et d'autres analyses.

Nous avons développé des stratégies pour un horizon de 1 heure et un horizon de 4 heures, nous avons utilisé la structure de frais de Darwinex et nous avons eu 1 pip de slippage sur chaque marché.

L'objectif était d'explorer :

quels sont les facteurs qui influencent le choix de la stratégie Performance hors échantillon ( WFOS )

Fonctionnement des tests de robustesse de base

  • complexité par rapport à la performance de True Out-of-sample (WFOS)
  • l'effet du nombre de transactions sur la performance de la stratégie
  • Analyse de l'étalement par rapport à la performance de l'échantillon réel (WFOS)

Comment cela fonctionne-t-il ?

  • Filtrage de Monte Carlo
  • SPP
  • Tests multimarchés

Pour concevoir l'analyse, je me suis inspiré d'entretiens avec des traders de Better System ainsi que de plusieurs autres entretiens avec divers gestionnaires de fonds spéculatifs, et bien sûr des outils de test de robustesse disponibles dans StrategyQuant X.

J'ai utilisé l'outil Python, au moins la bibliothèque Pandas, et j'ai travaillé avec l'IDE Jupyter Notebook.
La génération d'un tel ensemble de stratégies a nécessité 3 ordinateurs Strong avec environ 150 cœurs au total. La génération elle-même a pris un mois et un autre mois et demi pour la préparation et les tests. Deux personnes travaillaient sur ce projet. La première forme d'analyse a consisté à tester manuellement les facteurs en Python, puis j'ai utilisé des méthodes d'apprentissage automatique pour valider mes résultats.

 

 

Nous avons généré les honneurs suivants sur ces marchés :

Edition : Ajout d'informations supplémentaires :

 

  • Dans le constructeur, nous avons activé tous les types de sortie possibles, à l'exception de la règle de sortie. Nous avons également activé la sortie le vendredi pour éviter les trous dans le week-end.
  • Le seul type d'entrée utilisé dans nos stratégies est l'entrée au stop.

Complexité

Je me suis d'abord intéressé à la complexité. Si nous considérons la stratégie comme un modèle obtenu par l'exploration de données, nous pouvons utiliser le paradigme de l'apprentissage automatique et diverses autres sources sur la façon dont la complexité du modèle affecte la performance hors échantillon. Dans notre cas, nous pouvons supposer que la complexité de la stratégie obtenue par l'exploration de données a un impact sur la performance de la stratégie dans sa véritable performance hors échantillon (WFOS - une partie des données qui n'a jamais été utilisée dans le développement ou la sélection de la stratégie).

Dans la figure ci-dessus, nous voyons toutes les stratégies classées par complexité et leur effet sur la stratégie médiane dans un intervalle de complexité donné (l'intervalle 2-3 signifie toutes les stratégies de complexité 2, etc.)

  • Bénéfice net médian de WFOS
  • Facteur de profit médian de WFOS

Dans le cadre orange, nous voyons deux colonnes

  • Rel. freq : fréquence relative des stratégies dans un intervalle donné ("bucket")
  • Nombre : nombre de stratégies dans un intervalle donné ("bucket")

Il convient de noter que les stratégies très complexes présentent des valeurs médianes plus faibles pour le bénéfice net et le facteur de profit dans le WFOS (True Out-of-sample ). Inversement, les stratégies plus complexes ont des valeurs médianes plus faibles.

Examinons maintenant la représentation graphique du tableau ci-dessus

Complexité vs. WFOS Bénéfice net médian

Note : La ligne rouge représente la valeur moyenne de la complexité dans l'ensemble des données.

Le graphique ci-dessus montre que les stratégies de complexité 2 et 3 ont obtenu des résultats médians hors échantillon très faibles. Les stratégies les plus complexes (19) ont également obtenu des résultats exceptionnellement faibles, mais il est important de noter qu'il s'agit de valeurs aberrantes, c'est-à-dire de stratégies très peu nombreuses.

Complexité vs. facteur de profit WFOS

Si nous nettoyons l'ensemble des données des valeurs aberrantes (je ne sélectionne que les valeurs de complexité pour lesquelles le plus grand nombre de stratégies est trouvé), nous voyons encore plus clairement les observations des graphiques précédents.

Je ne sélectionne que les stratégies dont la complexité est supérieure à 3 et inférieure à 13.

Dans la figure ci-dessus, nous voyons que plus la complexité est faible, plus les valeurs médianes du bénéfice net et du facteur de profit sont bonnes (complexité 4, 5, 6 et valeurs médianes dans le cadre vert).

Jetons un coup d'œil à la représentation visuelle du tableau ci-dessus

Plus la complexité de la stratégie est faible, meilleur est le résultat du WFOS Median Net et du WFOS Median Profit Factor.

Dans l'analyse, j'utilise également des tests déductifs paramétriques et non paramétriques. L'hypothèse nulle a été formulée : il n'y a pas de différence statistiquement significative entre les stratégies WFOS NP et PF de complexité 4, 5 et 6 par rapport aux stratégies de complexité 7 à 13. Les résultats du test montrent que nous pouvons rejeter l'hypothèse nulle et accepter l'hypothèse alternative. Un grand nombre de stratégies réduit de manière significative l'écart-type et renforce la signification du test.

Nombre de transactions

En analysant le nombre de transactions, j'ai supposé que plus le nombre de transactions est élevé (plus l'échantillon de transactions est important), plus nous obtenons des informations significatives sur la qualité finale du modèle. ( Stratégies )

Quel résultat de la stratégie générée dans SQX est le plus crédible ? Celle qui génère 10 transactions en 10 ans ou celle qui réalise 1000 transactions en 10 ans ?

Examinons une analyse de base de notre ensemble de données :

Distribution des stratégies en fonction du nombre de transactions dans l'ensemble du backtest

Distribution des stratégies par plusieurs transactions classées par déciles

Nous pouvons voir les caractéristiques de base de la distribution du nombre de transactions. Notez le 1er décile et le 10e décile. Ils représentent les intervalles 97-470 transactions ( 1 décile ) et 1598 à 9575 transactions. (10e décile)
Je vais essayer de résoudre ce problème en supprimant les valeurs aberrantes.

Dans la figure ci-dessus, je vois que même après le nettoyage de l'ensemble des données, l'augmentation du nombre de transactions et donc de la signification statistique n'est pas favorable à la performance du bénéfice net médian WFOS et du facteur de profit WFOS.

Dans le graphique ci-dessus, nous pouvons voir qu'un plus grand nombre de transactions ne conduit pas à de meilleurs résultats en termes de bénéfice net médian et de facteur de profit WFOS. En particulier, gardez à l'esprit que je ne fais qu'une sélection. Nous ne sélectionnons pas les stratégies en fonction d'autres paramètres.
Au contraire, les résultats montrent qu'un nombre réduit de transactions peut se traduire par de meilleurs résultats dans le cadre du WFOS.

Complexité + NoT

Essayons de combiner les résultats de l'analyse de complexité précédente et sélectionnons des stratégies avec une complexité de 4 à 6 et plusieurs transactions entre 480 et 2600.

Le changement est notable. La combinaison de stratégies moins complexes et moins nombreuses dans les intervalles 1326-1708 et 1708-2599 permet d'obtenir des résultats nettement meilleurs en termes de bénéfice net médian WFOS et de facteur de profit WFOS.

Conclusion de la première partie

On peut constater que la complexité de notre ensemble de données peut affecter les stratégies True Out-of-sample 1,2. Le nombre de transactions sans combinaisons n'a pas d'influence, mais en combinaison avec la complexité, c'est un facteur important. Nous vous rappelons qu'il s'agit de la première partie d'une série plus importante.

Le nombre d'opérations sans combinaisons n'a pas d'influence, mais en combinaison avec la complexité, c'est un facteur important.

Qu'est-ce que cela signifie exactement ? Il s'agit d'élaborer des stratégies aussi simples que possible tout en produisant autant de transactions que possible.
Si vous souhaitez réduire la complexité de vos stratégies dans SQX, vous devez limiter le nombre de règles d'entrée et de sortie. Personnellement, je préfère que les conditions d'entrée maximale soient fixées à 1-2.

Vous pouvez ici spécifier le nombre de conditions d'entrée qui affectent directement la complexité :

Dans le prochain épisode, la semaine prochaine, nous examinerons la robustesse de la stratégie à un spread plus élevé. Dans les prochains épisodes, nous passerons en revue les mesures standard recommandées telles que le facteur de profit, le ratio Rer/DD, et d'autres. Dans les épisodes suivants, nous examinerons l'efficacité des tests de Monte Carlo et du SPP.

S'abonner
Notification pour
24 Commentaires
Le plus ancien
Le plus récent Le plus populaire
Commentaires en ligne
Afficher tous les commentaires
Oliver
13. 10. 2021 7:19 pm

Je suis curieux de savoir si les stratégies analysées sont symétriques ou seulement dans une direction ?

Emmanuel2
16. 10. 2021 8:52 am

Plus de 1300 transactions sur une seule stratégie, 1987-2017, c'est beaucoup !
il faut beaucoup de temps pour trouver cette stratégie

Quelle est la différence entre la stabilité et la stabilité de SQ3 ? La stabilité de SQ3 est-elle meilleure ?

tomas262
Administrateur
Répondre à  Emmanuel2
18. 10. 2021 10:14 am

Il s'agit simplement de formules légèrement différentes. Vous pouvez consulter SQ CodeEditor pour voir la différence.

Emmanuel2
16. 10. 2021 9:57 am

Une autre question intéressante serait de savoir quels sont les indicateurs les plus robustes.

Certains indicateurs peuvent être source de confusion dans le système, ce qui pourrait expliquer pourquoi nous devons éviter la complexité.

Dernière modification le 2 années il y a par Emmanuel2
Emmanuel2
16. 10. 2021 11:34 am

La période de rétrospection globale ne peut excéder 3, ce qui peut être source de complexité ?

Emmanuel2
17. 10. 2021 3:51 pm

Une façon de réduire la complexité serait de faire en sorte que SQX fonctionne soit à l'achat, soit à la vente, mais pas dans les deux sens dans la même stratégie.
La robustesse peut être renforcée en sélectionnant soigneusement les stratégies présentant les indicateurs les plus robustes.

Emmanuel2
18. 10. 2021 11:26 pm

Clonex, je suivrai très attentivement votre article ? ???
Votre article donne de nombreuses idées ! !!!
Merci pour votre réponse

Emmanuel2
18. 10. 2021 11:28 pm

Merci beaucoup Tomas pour votre réponse ! !!!
Je vais regarder dans l'éditeur de code
Vous faites un travail formidable ?

pequeno
22. 10. 2021 5:21 pm
Beau travail ! !! Mais ce qui était, c'était. Quand ferez-vous plus d'analyses et encore plus... ? Ce n'est pas le problème principal, car vous n'analysez que les paramètres du processus.
pequeno
Répondre à  clonex / Ivan Hudec
25. 11. 2021 8:26 pm

Selon moi, la réussite de l'élaboration de stratégies de trading automatisées dépend de la réponse à trois questions : 1. Quel marché choisir ? 2. Comment utiliser le QS ? 3. Quel courtier choisir ? qui représentent également 3 étapes procédurales de base. Nous pouvons ensuite diviser chacune de ces étapes en étapes plus détaillées. Pour chaque étape du processus, il est nécessaire de spécifier un ou plusieurs paramètres (une certaine métrique), que nous utiliserons pour évaluer cette étape. Nous répétons et ajustons ensuite l'ensemble du processus au fil du temps pour obtenir des résultats satisfaisants. Par conséquent, si nous n'analysons qu'une partie du processus, quelle que soit la nature de l'analyse, nous ne pourrons pas obtenir de résultats satisfaisants.... Lire la suite "

hannahis
27. 10. 2021 10:37 am

Des règles d'entrée moins strictes se traduisent par des nombres d'opérations plus élevés et, de même, des règles d'entrée plus strictes (stratégies plus complexes) se traduisent par des nombres d'opérations plus faibles. Il est donc contre-intuitif de s'attendre à ce que les stratégies plus complexes aient un nombre de transactions plus élevé. Ainsi, pour une même période de données, les stratégies à règles moins strictes auront plus de transactions que les stratégies à règles complexes. Par exemple, une stratégie "scapler" effectuera plus de transactions qu'une stratégie "swing" sur une période de test d'un mois. Le nombre de transactions n'est donc pas un facteur de causalité mais plutôt un facteur de corrélation, moins de règles = plus de transactions mais cela ne veut pas dire que plus de transactions = meilleure stratégie. "Les... Lire la suite "

Dernière modification le 2 années il y a par hannahis
hannahis
Répondre à  clonex / Ivan Hudec
27. 10. 2021 4:14 pm

Merci Ivan pour cet article intéressant qui offre une contribution précieuse aux utilisateurs pour appliquer les implications de vos conclusions. J'attends avec impatience votre mise à jour sur l'analyse de la qualité des stratégies complexes par rapport aux stratégies simples basées sur le même nombre de transactions.

Santé,
Hannah

Dernière modification le 2 années il y a par hannahis
hannahis
Répondre à  clonex / Ivan Hudec
31. 10. 2021 5:16 pm

Merci Ivan pour ces informations et conclusions supplémentaires ! C'est un bon point que vous avez soulevé, à savoir si les stratégies complexes négocient moins en raison de leurs règles d'entrée complexes qui limitent l'ouverture d'une transaction ou en raison de leurs règles de sortie qui prolongent la durée de la transaction et réduisent donc les opportunités d'ouverture. Ensuite, nous devons examiner la durée de la transaction, si les règles complexes ont une durée de transaction plus longue, cela peut signifier qu'elles négocient moins en raison de leur règle de sortie et pas tellement en raison de leurs règles d'entrée restrictives. Ensuite, nous devons examiner si les règles complexes ne sont pas simplement des duplications de la même règle de sortie et non des règles d'entrée restrictives.... Lire la suite "

Dernière modification le 2 années il y a par hannahis
hannahis
Répondre à  hannahis
31. 10. 2021 5:47 pm

Nous devons donc examiner les caractéristiques des stratégies simples par rapport aux stratégies complexes afin de savoir si le logiciel génère réellement des stratégies complexes ou s'il génère simplement des stratégies simples avec davantage de règles (nous pensons donc qu'il s'agit de règles complexes, mais en réalité, il peut s'agir simplement de règles plus simples, redondantes et inefficaces pour filtrer les bruits du marché). Pour quantifier véritablement une stratégie complexe, celle-ci doit présenter les caractéristiques de ce qu'une stratégie complexe vise à faire, c'est-à-dire réduire les pertes potentielles liées aux transactions en diminuant le nombre de transactions ou les transactions non souhaitées, et donc améliorer le PF et, par conséquent, améliorer la performance de l'entreprise.... Lire la suite "

Dernière modification le 2 années il y a par hannahis
hannahis
Répondre à  hannahis
31. 10. 2021 6:03 pm

Cependant, si un utilisateur ne se soucie pas du type de stratégies qu'il obtient, mais recherche uniquement des stratégies robustes qui génèrent le bénéfice net le plus élevé au cours de la même période de négociation, alors je suis plus enclin à croire que moins de règles font des stratégies plus robustes, mais qu'il faut supporter les mesures de performance médiocres telles qu'un faible pf et un rapport risque/récompense éventuellement négatif. En effet, les stratégies moins complexes sont plus susceptibles d'être en phase avec les conditions du marché que les stratégies complexes. Il y a plus de chances que les stratégies moins complexes "s'adaptent" ou soient en phase avec les conditions du marché qu'une stratégie complexe.... Lire la suite "

Dernière modification le 2 années il y a par hannahis
hannahis
Répondre à  hannahis
31. 10. 2021 7:34 pm

Je viens de commencer une expérience, en changeant simplement les règles de sortie, j'ai changé une stratégie de scalper en une stratégie intra day. Le but de cette expérience est de 1) Tester quelle règle d'ouverture de la stratégie est adaptée à quel type de méthodologie de trading, scalper vs intra day, 2) Tester quelles stratégies sont les mieux adaptées à quelles paires de devises, quelles devises sont plus volatiles et donc plus adaptées au scalper ou à l'intra day ? 3) Quelle règle d'entrée a une plus grande précision d'entrée, https://www.fxblue.com/users/hbs1ne/stats (stratégies scalper) vs https://www.fxblue.com/users/hb82bene/stats Ces 2 portefeuilles ont déployé les mêmes (règles d'ouverture) stratégies (template) mais ils ont... Lire la suite "

Poursuivre la lecture