retour à la moyenne

Construire des stratégies de retour à la moyenne à l'aide de modèles et d'ordres limités

Dans ce tutoriel, nous vous présentons une approche simple pour configurer un modèle de construction qui vous permet de générer facilement des stratégies de retour à la moyenne. StrategyQuantX peut explorer des millions de combinaisons possibles d'un système de retour à la moyenne qui peuvent être facilement trouvées en utilisant son excellent système de templates.

Qu'est-ce qu'une stratégie de retour à la moyenne ?

Le concept est très simple. Imaginons que le prix du marché ne bouge pas beaucoup pendant un certain temps, qu'il évolue lentement ou qu'il soit agité, et que soudain une vente rapide se produise. Dans une telle situation, les négociants ont tendance à percevoir cette situation comme une opportunité d'acheter avec une décote et de "faire passer" cette action du marché en attendant que le prix du marché revienne à sa moyenne.

Cette approche est communément utilisé sur tous les marchés mais étonnamment fonctionne bien avec les actions et les contrats à terme sur indices boursiers naturellement. Dans notre exemple, nous essayons de tester l'idée en utilisant les données des contrats à terme sur l'indice américain pour un contrat e-mini, mais comme nous l'avons mentionné, le concept peut être utilisé sur n'importe quel marché.

Un exemple On peut le voir clairement sur l'image suivante. Le marché a évolué lentement à la hausse, puis a brusquement chuté. Une fois le mouvement observé, nous pouvons supposer que cet "extrême" est temporaire et essayer d'acheter sur la faiblesse du prix en espérant que le prix du marché remontera.

Comment construire un système de retour à la moyenne dans l'AlgoWizard de la SQ

Pour comprendre les informations suivantes, nous supposons que vous êtes déjà familiarisé avec les "modèles SQ et la randomisation". Si ce n'est pas le cas, veuillez sauter la lecture de cet article et consulter notre article sur les Modèles de stratégie.

Nous pourrions pousser l'idée un peu plus loin et, dans le cas d'une chute du marché, nous supposons également que la chute pourrait se poursuivre un peu plus bas avant qu'il ne rebondisse sur la moyenne, ce qui nous donnerait une réduction de prix supplémentaire pour l'entrée en position longue. C'est une excellente occasion de tester un ordre limite d'achat pour voir comment il peut fonctionner dans cette configuration et s'il peut offrir une opportunité de profit. Définissons donc quelques règles de base et conditions d'entrée.

Conditions d'entrée

Il est assez facile de créer un modèle pour cela. Pour garder les choses aussi simples que possible, nous construisons la stratégie pour le côté long seulement alors que nous voulons que StrategyQuantX construise des conditions en utilisant tous les blocs de construction disponibles (et activés). Nous ne voulons pas limiter le constructeur ici puisque nous ne savons pas encore quelles conditions de placement de l'ordre limite nous allons utiliser. Ceci peut être facilement réalisé en utilisant un modèle avec des conditions d'entrée comme suit :

  1. La taille de la dernière barre (du prix le plus haut au prix le plus bas) doit être supérieure à la valeur ATR (average true range) multipliée par un nombre fixe (par exemple High - Low > 1,5 x ATR).
  2. Nous avons également une barre baissière pour un signal valide (Close < Open)
  3. Nous ajoutons une "condition aléatoire 1" afin que le constructeur puisse la remplacer par n'importe quelle entrée possible et la meilleure condition de sortie (une ou plusieurs) telles que des indicateurs, des signaux, des conditions d'action de prix, etc. Cela peut servir, par exemple, à "filtrer" les signaux dans une direction de tendance, etc.
  4. Enfin, nous voulons déclencher l'entrée d'achat seulement s'il n'y a pas de position longue existante (nous sommes FLAT).

Notez les éléments de couleur verte qui représentent les blocs qui seront générés aléatoirement plus tard par le constructeur. Nous voulons que le constructeur l'optimise pour nous

C'est tout pour le signal d'entrée. Examinons maintenant l'onglet de l'ordre d'entrée long et comment configurer correctement l'ordre limite d'achat à l'aide de la randomisation.

Remarquez la partie en surbrillance où nous fixons la limite prix de l'ordre limite d'achat. Vous pouvez voir que nous soustrayons à nouveau la valeur ATR multipliée par une valeur fixe à partir de la clôture de la dernière barre. La valeur fixe sera générée plus tard de manière aléatoire par SQX dans la plage de 0,5 à 2 en utilisant le pas = 0,1 (0,5, 0,6, 0,7, ..., 1,9, 2). Nous souhaitons également que l'ordre d'expiration et stop-loss toujours activé dans le modèle, nous activons donc également cette option.

Construire des stratégies de retour à la moyenne à l'aide de modèles StrategyQuantX

Maintenant que le modèle est pratiquement terminé, nous pouvons mettre en place une configuration de construction simple pour tester ses performances.

Pour tester cette idée, nous utiliserons les données de Contrats à terme sur l'indice E-mini S&P 500 contrat. Vous pouvez facilement passer à la version micro de ce contrat (nom du symbole ET dans le StrategyQuant Data Manager) avec la commande valeur du point 10 fois plus petite par rapport à la version mini.

Nous utilisons la configuration la plus simple possible car nous voulons que StrategyQuantX génère juste un premier échantillon rapide de stratégies pour voir si cette stratégie de trading est efficace. peut fournir des systèmes rentables généralement. Ne réglons que l'essentiel :

Nous voulons également voir les transactions réelles qu'une stratégie crée sur un graphique de prix, c'est pourquoi nous activons l'option "Stocker les données du graphique".

Enfin, nous souhaitons définir des mesures de performance de base afin que seules les stratégies rentables soient stockées dans la banque de données.

Lorsque le mode de génération aléatoire est utilisé vous devriez obtenir les premières stratégies presque immédiatement après avoir lancé la construction. Vérifions la meilleure stratégie dans le premier échantillon pour voir si tout fonctionne comme prévu.

Nous pouvons également voir le Le pseudo-code montre une logique de stratégie correcte selon le modèle que nous avons utilisé.

Et nous pouvons vérifier les exécutions des transactions individuelles sur un graphique directement dans StrategyQuantX.

En utilisant ce modèle de base, vous pouvez explorer un grand nombre de stratégies possibles sur le forex, les actions et les matières premières et sur tous les horizons temporels possibles. Nous ne recommandons pas d'effectuer des tests sur de petits intervalles de temps. Bien que les modèles donnent de bons résultats sur les graphiques intrajournaliers, vous pouvez également les tester sur des échéances journalières ou hebdomadaires et appliquer le concept à un portefeuille de marchés plus large.

 

 

S'abonner
Notification pour
5 Commentaires
Le plus ancien
Le plus récent Le plus populaire
Commentaires en ligne
Afficher tous les commentaires
SG
SG
28. 8. 2021 12:53 pm

Bonjour Tomas, merci pour ce blog, je suis vos instructions 1 par 1, et j'ai quelques problèmes.
J'ai complété le modèle et mis le constructeur au travail, après 1 million de stratégie, il y a 0 accepté parce qu'il n'y a pas de filtre de trades.
Je suis retourné à l'assistant algo, et j'ai remarqué que vous avez obtenu random(multisignalD,0.5:2:0.1), je ne peux sélectionner que randomvalue.
Pouvez-vous m'indiquer ce que j'ai fait de mal ou où chercher ?

Van Aarde Krynauw
Van Aarde Krynauw
Répondre à  SG
4. 11. 2021 6:36 pm

Vous pouvez obtenir le Random(multisignalD,0.5:2:0.1) en donnant à l'élément la valeur Number, puis pour l'élément valeur de cet élément Number, utilisez "Generate Random" dans le menu déroulant.

Emmanuel2
9. 10. 2021 6:51 pm

génial ! !!! merci Tomas ! !!

tmantrader
22. 1. 2022 9:37 pm

Bonjour, pouvez-vous m'expliquer pourquoi vous utilisez la barre précédente High[1] - Low[1] et RSI[1] au lieu d'utiliser la barre actuelle ? J'essaie de comprendre - dans TradeStation, lorsque je crée des ordres limités, j'utilise généralement la clôture de la barre actuelle [0[ pour mes indicateurs, puis je négocie la barre suivante sur la base d'un ordre limité ou d'un ordre de marché à l'ouverture. Pouvez-vous m'expliquer ? J'ai l'impression de mal comprendre. J'ai l'impression de mal comprendre. -Tom C

Poursuivre la lecture