Voir comment télécharger gratuitement des robots de trading
Retrouvez-nous sur Facebook !
Rejoignez notre page de fans
Un script intéressant ?
Poster un lien vers celui-ci -
laisser les autres l'évaluer
Vous avez aimé le script ? Essayez-le dans le terminal MetaTrader 5
Experts

Assistant MQL5 - Signaux de Trading Basés sur des Modèles de Retournement de Bougies + Stochastique - expert pour MetaTrader 5

Vues:
431
Note:
(44)
Publié:
2022.01.31 09:40
\MQL5\Include\Expert\Signal\MySignals\
Besoin d'un robot ou d'un indicateur basé sur ce code ? Commandez-le sur Freelance Aller sur Freelance

La description:

Avec l'Assistant MQL5, les traders peuvent désormais générer automatiquement le code de l'Expert Advisor en fonction des classes de signaux de trading, du suivi des positions et de la gestion de l'argent. Avec les classes de signaux de trading de la Bibliothèque Standard, vous pouvez développer et tester vos propres systèmes de trading. Pour ce faire, il suffit d'écrire un module de signaux de trading.

Le livre "Les stratégies des meilleurs traders du monde (The Strategies of the Best Traders in the World)" (en russe) décrit les indicateurs et les stratégies de trading pour l'analyse technique impliquant le progiciel MetaStock. Outre les signaux de trading conventionnels, le livre traite de ceux basés sur l'utilisation combinée de modèles de chandeliers d'inversion avec des confirmations de stochastique, CCI, MFI et RSI.

L'utilisation de modèles de chandeliers "de retournement" avec des signaux d'oscillateur permet de réduire le nombre de faux signaux et d'augmenter l'efficacité du système de trading.

Dans les publications précédentes, nous avons considéré les signaux de trading basés sur des modèles de chandeliers avec confirmation avec l'indicateur Stochastique :

  1. 3 Corbeaux Noirs/3 Soldats Blancs
  2. Couverture de Nuage Sombre/Ligne de Perçage
  3. Engloutissement Haussier / Engloutissement Baissier
  4. Harami Haussier/Harami Baissier
  5. Marteau/Pendu
  6. Lignes de Rencontre Haussières/Baissières
  7. Étoiles du Matin/du Soir

Dans cette description, nous considérerons les résultats de l'utilisation combinée de tous ces modèles avec des signaux de l'indicateur Stochastique.


1. Modèles de chandeliers haussiers et baissiers et leur détection

La classeCandlePattern a également les fonctions de détection de la formation de certains modèles de chandeliers haussiers et baissiers (à l'exception de la combinaison Hammer/Hanging Man).

La formation d'un modèle de chandelier baissier est vérifiée par la fonction CheckPatternAllBullish() :

//+------------------------------------------------------------------+
//| Vérifie la formation de modèles haussiers                        |
//+------------------------------------------------------------------+
bool CCandlePattern::CheckPatternAllBullish()
  {
   return(CheckPatternThreeWhiteSoldiers()  || 
          CheckPatternPiercingLine()       || 
          CheckPatternMorningDoji()        || 
          CheckPatternBullishEngulfing()   || 
          CheckPatternBullishHarami()      || 
          CheckPatternMorningStar()        || 
          CheckPatternBullishMeetingLines());
  }

La formation d'un modèle de chandelier haussier est vérifiée par la fonction CheckPatternAllBearish() :

//+------------------------------------------------------------------+
//| Vérifie la formation de modèles baissiers                        |
//+------------------------------------------------------------------+
bool CCandlePattern::CheckPatternAllBearish()
  {
   return(CheckPatternThreeBlackCrows()     || 
          CheckPatternDarkCloudCover()     || 
          CheckPatternEveningDoji()        || 
          CheckPatternBearishEngulfing()   || 
          CheckPatternBearishHarami()      || 
          CheckPatternEveningStar()        || 
          CheckPatternBearishMeetingLines());
  }

2. Signaux de trading combinés à un indicateur stochastique

L'ouverture d'une position longue/courte est effectuée lorsqu'un des modèles haussier/baissier est formé et qu'il y a une confirmation de l'oscillateur stochastique. La valeur de la ligne de signal %D doit être supérieure ou inférieure au niveau critique approprié (30 et 70).

Un signal de sortie est formé dans deux cas :

  1. Lorsqu'un modèle de chandelier opposé se forme (un modèle baissier pour une position longue et un modèle haussier pour une position courte).
  2. Selon le comportement ultérieur de %D. Si %D atteint le niveau opposé au marché (80 en cas de position longue et 20 en cas de position courte) ou si %D ne confirme pas le signal de retournement et atteint 20 en cas de position longue et 80 en cas de cas d'un court.

La vérification des conditions d'entrée et de sortie du marché s'effectue selon les méthodes suivantes :

  • int CCP_Stoch::LongCondition() - vérification des conditions d'ouverture d'une position longue (m_pattern_0) et de fermeture d'une position courte (m_pattern_1) ;
  • int CCP_Stoch::ShortCondition() - vérification des conditions d'ouverture d'une position courte (m_pattern_0) et de clôture d'une position longue (m_pattern_1).

2.1. Ouvrir une position longue et fermer une position courte

  1. Le signal d'ouverture d'une position longue forme une combinaison de chandeliers haussiers et remplit la condition StochSignal(1)<30 (la valeur de la ligne de signal de l'indicateur Stochastique à la dernière barre complétée est inférieure à 30) ;

  2. Le signal de clôture d'une position courte forme l'un des modèles de chandelier haussier ou le cas où la ligne de l'indicateur croise la ligne stochastique à 20 niveaux (vers le haut) ou celle à 80 niveaux (vers le haut).

//+------------------------------------------------------------------+
//| Méthode pour vérifier si les modèles de marché sont formés       |
//| Vérifie les conditions pour                                      |
//|   l'entrée (position courte ouverte, m_pattern_0)                |
//|   la sortie (fermer la position longue, m_pattern_1)             |
//+------------------------------------------------------------------+
int CCP_Stoch::LongCondition()
  {
   int res=0;
//---- vérifie les conditions pour ouvrir une position courte
//---- formation d'un motif haussier et ligne de signal de l'indicateur stochastique<30 
   if(CheckPatternAllBullish() && (StochSignal(1)<30)) res=m_pattern_0; // signal to open long position 

//--- vérifier les conditions de clôture de la position courte
//--- formation d'un motif baissier ou croisement de la ligne de signal (vers le haut de 20, vers le haut de 80)
   if(CheckPatternAllBullish() ||
      ((StochSignal(1)>20) && (StochSignal(2)<20)) || 
      ((StochSignal(1)>80) && (StochSignal(2)<80)))    res=m_pattern_1; // signal pour fermer la position courte
//---
   return(res);
  }

2.2. Ouvrir une position courte et fermer une position longue

  1. Le signal d'ouverture d'une position courte forme l'un des modèles de chandelier baissier et remplit la condition StochSignal(1)>70 (la valeur de la ligne de signal de l'indicateur Stochastique à la dernière barre terminée dépasse 70) :

  2. Le signal de clôture d'une position longue forme l'un des modèles de chandelier baissier ou le cas où la ligne de l'indicateur croise la ligne stochastique à 80 niveaux (vers le bas) ou celle à 20 niveaux (vers le bas).

//+------------------------------------------------------------------+
//| Méthode pour vérifier si les modèles de marché sont formés       |
//| Vérifie les conditions pour                                      | 
//|   l'entrée (position courte ouverte, m_pattern_0)                |
//|   la sortie (fermer la position longue, m_pattern_1)             |
//+------------------------------------------------------------------+
int CCP_Stoch::ShortCondition()
  {
   int res=0;
//--- vérifie les conditions pour ouvrir une position courte
//---- formation d'un motif baissier et ligne de signal de l'indicateur stochastique>70
   if(CheckPatternAllBearish() && (StochSignal(1)>70)) res=m_pattern_0; // signal to open short position 

//--- vérifie les conditions de fermeture des positions longues 
//---- formation d'un motif baissier ou croisement de la ligne de signal (vers le bas 80, vers le bas 20)
   if(CheckPatternAllBearish() || 
      ((StochSignal(1)<80) && (StochSignal(2)>80)) || 
      ((StochSignal(1)<20) && (StochSignal(2)>20)))    res=m_pattern_1; // signal pour clôturer la position longue 
//---
   return(res);
  }

2.3. Création d'un Expert Advisor basé sur les signaux de trading du modèle de retournement "Chandeliers + Stochastique" à l'aide de l'Assistant MQL5

La classe CCP_Stoch n'est pas incluse dans la Bibliothèque Standard des signaux de trading. Par conséquent, téléchargez le fichier ccp_stoch.mqh (ci-joint) et enregistrez-le dans le répertoire \terminal_folder\Include\Expert\Signal\MySignals pour l'utiliser. Le fichier Candlepatterns.mqh doit être copié dans le même répertoire que ccp_stoch.mqh. Après cela, relancez MetaEditor pour pouvoir utiliser le fichier dans MQL5 Wizard.

Pour créer un robot de trading suivant cette stratégie via l'Assistant MQL5, sélectionnez le type de signal "Signaux basés sur les modèles de bougies + Stochastique" à la deuxième étape :

Fig. 1. Sélection du générateur de signaux de trading "Signaux basés sur des modèles de chandeliers + stochastiques" dans l'Assistant MQL5

Fig. 1. Sélection du générateur de signaux de trading "Signaux basés sur des modèles de chandeliers + stochastiques" dans l'Assistant MQL5

Aux étapes suivantes, spécifiez le type de stop suiveur et le système de gestion de l'argent nécessaires. Le code de l'Expert Advisor est généré automatiquement. Maintenant, il doit être compilé pour être prêt à commencer les tests.


2.4. Résultats des Tests

Résultats de l'Expert Advisor Testing sur données historiques (EURUSD H1, période de test : 1.1.2000-02.02.2011, PeriodK=33, PeriodD=37, PeriodSlow=30, MA_period=25).

Cet Expert Advisor utilise le module pour trader un volume fixe de 0,1 lot (Trading Fixed Lot). Le stop suiveur n'est pas utilisé (Trailing not used).

Fig. 2. Résultats des tests de l'Expert Advisor basés sur le générateur de signaux de trading "Signals based on Candlestick Patterns+Stochastic"

Fig. 2. Résultats des tests de l'Expert Advisor basés sur le générateur de signaux de trading "Signals based on Candlestick Patterns+Stochastic"

Le meilleur ensemble de paramètres du système de trading peut être trouvé en utilisant le Strategy Tester de MetaTrader 5.

Le code de l'Expert Advisor créé par l'Assistant MQL5 est joint dans le fichier expert_cp_stoch.mq5.


Traduit du russe par MetaQuotes Ltd.
Code original : https://www.mql5.com/ru/code/327

Demo_BitmapOffset (OBJPROP_XOFFSET et OBJPROP_YOFFSET) Demo_BitmapOffset (OBJPROP_XOFFSET et OBJPROP_YOFFSET)

Si vous avez besoin de n'afficher qu'une partie de l'image pour le moment et d'en masquer une autre, vous pouvez utiliser la fenêtre mobile en spécifiant la zone visible de l'image.

Assistant MQL5 - Signaux de Trading Basés sur les Etoile du Matin/Etoile du Soir + RSI Assistant MQL5 - Signaux de Trading Basés sur les Etoile du Matin/Etoile du Soir + RSI

Les signaux de trading basés sur les modèles de chandelier "Etoile du Matin/Etoile du Soir", confirmés par l'indicateur Relative Strength Index (RSI) sont pris en compte. Le code de l'Expert Advisor basé sur cette stratégie peut être généré automatiquement à l'aide de l'Assistant MQL5.

Création de fractales dans MQL5 à l'aide des Systèmes de Fonctions Itérées (Iterated Function Systems - IFS) Création de fractales dans MQL5 à l'aide des Systèmes de Fonctions Itérées (Iterated Function Systems - IFS)

La bibliothèque cIntBMP permet la création d'images graphiques BMP. Nous considérerons l'exemple de son utilisation dans la création d'ensembles fractals auto-similaires à l'aide du système de fonctions itérées (IFS).

DRAW_NONE DRAW_NONE

Le style de dessin DRAW_NONE est utilisé dans les cas où vous devez calculer et afficher les valeurs de l'indicateur dans la "Fenêtre des Données", mais le traçage n'est pas nécessaire.