Accueil Trading Systématique Publication

Générez des Signaux de Trading avec MQL5 Wizard : Modèles de Chandeliers et Stochastique

Pièce jointe
327.zip (7.01 KB, Télécharger 2 fois)

Description :

Avec MQL5 Wizard, les traders peuvent désormais générer automatiquement le code d'un Expert Advisor basé sur des classes de signaux de trading, le suivi des positions et la gestion des risques. En utilisant 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 vous suffit d'écrire un module de signaux de trading.

Le livre "Les Stratégies des Meilleurs Traders du Monde" (en russe) décrit des indicateurs et des stratégies de trading pour l'analyse technique utilisant le logiciel MetaStock. En plus des signaux de trading conventionnels, le livre traite de ceux basés sur l'utilisation combinée de modèles de chandeliers de retournement avec des confirmations de Stochastique, CCI, MFI et RSI.

Utiliser des modèles de chandeliers de retournement en conjonction avec les signaux des oscillateurs permet de réduire le nombre de faux signaux et d'augmenter l'efficacité du système de trading.

Dans nos précédentes publications, nous avons examiné des signaux de trading basés sur des modèles de chandeliers avec une confirmation du Stochastique :

  1. 3 Corbeaux Noirs/3 Soldats Blancs
  2. Couverture de Nuage Sombre/Ligne Pénétrante
  3. Englobante Haussière/Englobante Baissière
  4. Harami Haussier/Harami Baissier
  5. Marteau/Homme Pendu
  6. Lignes de Réunion Haussier/Baissier
  7. Étoiles du Matin/Étoiles du Soir

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


1. Modèles de Chandeliers Haussiers et Baissiers et Leur Détection

CandlePattern dispose également de fonctions pour détecter la formation de certains modèles de chandeliers haussiers et baissiers (sauf pour la combinaison Marteau/Homme Pendu).

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 avec l'Indicateur Stochastique

L'ouverture d'une position longue ou courte se fait lorsqu'un des modèles haussiers ou baissiers se forme et qu'il y a confirmation de l'oscillateur Stochastique. La valeur de la ligne de signal %D doit être au-dessus ou en dessous du niveau critique approprié (30 et 70).

Un signal de sortie se forme dans deux cas :

  1. Lorsqu'un modèle de chandelier opposé se forme (un modèle baissier pour une position longue et vice versa).
  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 position courte.

La vérification des conditions d'entrée et de sortie sur le marché se fait dans les méthodes suivantes :

  • int CCP_Stoch::LongCondition() - vérification des conditions pour ouvrir une position longue (m_pattern_0) et fermer une position courte (m_pattern_1);
  • int CCP_Stoch::ShortCondition() - vérification des conditions pour ouvrir une position courte (m_pattern_0) et fermer une position longue (m_pattern_1).

2.1. Ouverture d'une Position Longue et Fermeture d'une Position Courte

  1. Le signal pour ouvrir une position longue se forme lorsque se crée une combinaison de chandeliers haussiers et que la condition StochSignal(1)<30 est remplie (la valeur de la ligne de signal de l'Stochastique à la dernière barre clôturée est inférieure à 30);

  2. Le signal pour fermer une position courte se forme lorsqu'un des modèles de chandeliers haussiers se crée ou lorsque la ligne de l'indicateur croise le niveau 20 Stochastique (vers le haut) ou le niveau 80 (vers le haut).

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

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

2.2. Ouverture d'une Position Courte et Fermeture d'une Position Longue

  1. Le signal pour ouvrir une position courte se forme lorsque l'un des modèles de chandeliers baissiers est créé et que la condition StochSignal(1)>70 est remplie (la valeur de la ligne de signal de l'Stochastique à la dernière barre clôturée est supérieure à 70);

  2. Le signal pour fermer une position longue se forme lorsqu'un des modèles de chandeliers baissiers se crée ou lorsque la ligne de l'indicateur croise le niveau 80 Stochastique (vers le bas) ou le niveau 20 (vers le bas).

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

//--- vérifier les conditions de fermeture de position longue
//---- formation d'un modèle 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 fermer position longue 
//---
   return(res);
  }

2.3. Création d'un Expert Advisor Basé sur les Signaux de Trading des "Modèles de Chandeliers + Stochastique" Utilisant MQL5 Wizard

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 également être copié dans le même répertoire que ccp_stoch.mqh. Ensuite, relancez MetaEditor pour pouvoir utiliser le fichier dans MQL5 Wizard.

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

Fig. 1. Sélection du type de signal basé sur les modèles de chandeliers + stochastique dans MQL5 Wizard

Fig. 1. Sélection du type de signaux basés sur les Modèles de Chandeliers + Stochastique dans MQL5 Wizard

Aux étapes suivantes, spécifiez le type de trailing stop nécessaire et le système de gestion de l'argent. Le code de l'Expert Advisor est généré automatiquement. Il doit ensuite être compilé pour être prêt à être testé.


2.4. Résultats des Tests

Résultats des tests de l'Expert Advisor sur des 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 avec Lot Fixe). Le trailing stop n'est pas utilisé (Trailing non utilisé).

Fig. 2. Résultats du test de l'Expert Advisor basé sur les signaux de chandeliers + stochastique

Fig. 2. Résultats du test de l'Expert Advisor basé sur les signaux de Chandeliers + Stochastique

Le meilleur ensemble de paramètres pour le système de trading peut être trouvé en utilisant le Testeur de Stratégies de MetaTrader 5.

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


Articles connexes

Commentaire (0)