Indicateurs: Cycle de tendance Schaff

 

Cycle de tendance Schaff:

L'indicateur Schaff Trend Cycle est un oscillateur cyclique dont le principe de fonctionnement repose sur l'utilisation des mécanismes stochastiques par la ligne MASD, en utilisant des cycles. En conséquence, les développeurs de cet indicateur ont réussi à obtenir des résultats plus stables et plus fiables du script.

Cycle de tendance Schaff

Author: Nikolay Kositsin

 

Indicateur très intéressant, lui et ses modifications (double Schaff Trend Cycle) ont servi de complément à mon système de prise de décision pendant une demi-année. Il ne peut être utilisé que sur H4 et plus.

 
rsni:

Indicateur très intéressant, lui et ses modifications (double Schaff Trend Cycle) ont servi de complément à mon système de prise de décision pendant une demi-année. Il ne peut être utilisé que sur H4 et plus.

Que s'est-il passé après six mois ?
 

Cet indicateur est vraiment excellent - regardez l'image ci-dessous : si nous utilisons cet indicateur, nous obtiendrons 135 pips pour 1 jour (4 pips à chiffres) pour une seule paire !

Captures d'écran de la plateforme de trading MetaTrader

EURUSD, M15, 2013.07.30

MetaQuotes Software Corp, MetaTrader 5, Démo

135 pips

EURUSD, M15, 2013.07.30, MetaQuotes Software Corp, MetaTrader 5, Démo


 

Il existe de nombreux systèmes de trading basés sur cet indicateur. Voici donc l'un d'entre eux :

Cycle de tendance Schaff avec EMA 100

1. Cadre de temps: 15 min et plus

2. Paires: N'importe lesquelles

3. Indicateurs:

  • Cycle de tendance Schaff
  • Ema 100
  • Stochastich (21, 9,9)

Règles pour entrer dans un trade long

  1. La moyenne mobile exponentielle 100 est inclinée vers le haut.
  2. Attendez que le cycle de tendance Schaff atteigne un territoire survendu sur le graphique (-10 +10), entrez en position longue lorsque le cycle de tendance Schaff repasse au-dessus de 10, et que les croix Stocastich s'alignent vers le haut.
  3. Placez le stop 10 pips en dessous du niveau de support le plus récent.
  4. Prenez vos bénéfices : Clôturer la transaction si l'indicateur Schaff Trend Cycle passe en dessous de 90

Règles pour entrer dans une position courte

  1. La moyenne mobile exponentielle 100 est inclinée vers le bas.
  2. Attendez que le cycle de tendance de Schaff atteigne le territoire de surachat sur le graphique (90-110), prenez une position courte lorsque le cycle de tendance de Schaff repasse en dessous de 90, et que la ligne de Stocastich croise la ligne vers le bas.
  3. Placez le stop 3 pips au-dessus du niveau de résistance le plus récent.
  4. Prenez vos bénéfices : Clôturer la transaction si l'indicateur Schaff Trend Cycle descend à -10 et remonte ensuite au-dessus de +10.

Le modèle est joint. Si vous installez des indicateurs et utilisez ce modèle, vous obtiendrez un graphique de ce type :

Captures d'écran de la plateforme de trading MetaTrader

USDJPY, H1, 2013.07.30

MetaQuotes Software Corp, MetaTrader 5, Démo

schaff ema 100

USDJPY, H1, 2013.07.30, MetaQuotes Software Corp, MetaTrader 5, Démo


Le système est vraiment très rentable - regardez l'autre graphique avec l'échelle de temps D1 : +439 pips (pips à 4 chiffres) :

Captures d'écran de la plateforme de trading MetaTrader

USDJPY, D1, 2013.07.30

MetaQuotes Software Corp, MetaTrader 5, Démo

439 pips de profit

USDJPY, D1, 2013.07.30, MetaQuotes Software Corp, MetaTrader 5, Démo


Dossiers :
schaffema.tpl  15 kb
 

Voici l'autre système de trading tiré de ce site:

Stratégie du cycle de la tendance de Schaff: Voici une stratégie qui recherche une hausse de la 50 SMA et une hausse de la tendance de Schaff pour entrer en position longue. Elle entrera en position courte lorsque la 50 SMA se déplace vers le bas comme le fait la tendance de Schaff.

Pour l'installer, vous n'avez besoin que d'un indicateur Schaff Trend Cycle et d'un fichier modèle (ci-joint) :

  • Placez Schaff Trend Cycle dans le dossier indicators (par exemple dans C:\NProgram Files\NMetaTrader 5\NMQL5\NIndicators),
  • et placez le fichier de modèle dans le dossier templae (par exemple dans C:\Program Files\MetaTrader 5\Profiles\Templates),
  • redémarrer Metatrader 5 ou compiler l'indicateur Schaff Trend Cycle dans MetaEditor,
  • Ouvrez n'importe quel graphique, cliquez avec le bouton droit de la souris et sélectionnez notre modèle par son nom, et vous obtiendrez des graphiques comme celui-ci :

Captures d'écran de la plateforme de trading MetaTrader

GBPUSD, M30, 2013.07.30

MetaQuotes Software Corp, MetaTrader 5, Démo

schaff simple

GBPUSD, M30, 2013.07.30, MetaQuotes Software Corp, MetaTrader 5, Démo


Captures d'écran de la plateforme de trading MetaTrader

GBPUSD, D1, 2013.07.30

MetaQuotes Software Corp, MetaTrader 5, Démo

schaff simple d1

GBPUSD, D1, 2013.07.30, MetaQuotes Software Corp, MetaTrader 5, Démo


Veuillez noter que ce système utilise également les niveaux de surachat/survente des indicateurs Schaff Trend Cycle.

 

Il peut y avoir de nombreuses variations de ce simple système de Schaff, mais la plupart d'entre elles sont liées aux niveaux de surachat/survente de cet indicateur. Alors, que sont les niveaux de surachat/survente et comment les utiliser ? Lisez ce petit article :

============

Voici ce que vous devez savoir sur les notions de "surachat" et de "survente":

Si vous êtes en train de cuisiner quelque chose et que vous constatez que c'est "trop cuit", quelle est votre réaction immédiate ? Exactement... vous sortez le plat du four. Retirez-le de ce qui a causé son état trop cuit, et le plus tôt sera le mieux.

Et si le moteur de votre voiture est "surchauffé" ? Même chose... vous faites ce qu'il faut pour refroidir le moteur. Cessez immédiatement de faire ce qui a provoqué la surchauffe du moteur.

Compte tenu de ces réactions naturelles, il est facile de comprendre pourquoi la réaction initiale et presque immédiate de nombreux traders débutants face à un scénario de surachat ou de survente est de faire le contraire dans ce cas également.

Ils se disent que puisque de nombreux ordres d'achat (long) ont fait monter le prix et poussé l'indicateur en territoire suracheté, nous devons faire l'inverse et prendre une position courte (vente). Inversement, si de nombreux ordres de vente ont fait chuter le prix et fait passer l'indicateur en territoire survendu, nous devons commencer à prendre des positions longues. C'est un peu comme s'ils s'attendaient à ce que le prix revienne comme un élastique lorsqu'il atteindra ces zones de surexploitation.

Eh bien... ce qui est la bonne réaction pour les casseroles et les moteurs de voiture n'est pas nécessairement la bonne réaction pour le trading.

Lorsqu'un indicateur entre dans les zones de surachat/survente, n'oubliez pas qu'il peut y rester pendant un certain temps. Ce n'est pas parce que l'indicateur RSI ou Slow Stochastics indique suracheté, par exemple, que l'action des prix sur la paire est comme un ressort fortement comprimé qui va immédiatement revenir vers la zone de survente.

Regardons le graphique journalier du NZDJPY ci-dessous pour un exemple...


Remarquez sur ce graphique que la première fois que la stochastique lente a dépassé 80 dans la zone de surachat, le prix a continué à monter pendant plus de 780 pips et la stochastique est restée surachetée pendant tout ce temps. Il est clair qu'un trader qui aurait pris une position courte lorsque le cours est entré dans la zone de surachat aurait raté un grand mouvement. Il aurait également été stoppé dans sa position courte dans un délai assez court.

Pour voir un exemple de recul des prix lorsque la stochastique lente entre en zone de surachat, il suffit de regarder la zone "A" sur le graphique. Dans ce cas, les chandeliers autour de "A", les dojis, les toupies, l'étoile filante et le marteau, indiquent la possibilité d'un repli.

Le point à retenir est que les deux scénarios peuvent se dérouler et qu'il ne faut donc pas avoir une réaction instinctive aux zones de surachat et de survente d'un indicateur.

Rappelez-vous...

Ne prenez les signaux d'entrée d'un indicateur que s'ils vont dans le sens de la tendance à long terme.

Par exemple, si la tendance a été forte et prolongée à la hausse, il est logique que l'indicateur se trouve en zone de surachat puisqu'il reflète la poussée haussière de l'action des prix. Prendre une position courte à ce moment-là reviendrait à négocier contre la tendance et à introduire plus de risque dans la transaction.

=================

Voici la vidéo sur les niveaux de surachat/survente.

 

Si vous connaissez un système concernant cet indicateur Schaff Trend Cycle, merci de le poster ici.

C'est tout ce qu'il y a à savoir

 

Bonjour,

J'ai téléchargé les 2 fichiers schafftrendcycle.mq5 et smootalgorithms.mqh et j'ai essayé de les compiler.

Je reçois des avertissements :

"check operator precedence for possible error ; use parentheses to clarify precedence" à la ligne 3137

et des avertissements similaires dans les procédures BarCheck2 à BarCheck5.

Pour améliorer les choses, j'ai ajouté beaucoup de parenthèses dans les expressions if des procédures BarCheck1 à BarCheck5 :

//+------------------------------------------------------------------+
//| Vérifier si une barre se trouve dans la plage de calcul |
//+------------------------------------------------------------------+
bool CMovSeriesTools::BarCheck1(int begin,int bar,bool Set)
// BarCheck1(begin, bar, Set)
  {
//----
   //si(!Set && bar<begin || Set && bar>begin) return(true) ;
   // Bobcat
   if(((!Set) && (bar<begin)) || (Set && (bar>begin))) return(true);
//----
   return(false);
  }
//+------------------------------------------------------------------+
//| Vérification de la barre pour le début du calcul |
//+------------------------------------------------------------------+
bool CMovSeriesTools::BarCheck2(int begin,int bar,bool Set,int Length)
// BarCheck2(begin, bar, Set, Length)
  {
//----
   //if(!Set && bar==begin+Length-1 || Set && bar==begin-Length+1)
   // Bobcat
   if(((!Set) && (bar==(begin+Length-1))) || (Set && (bar==(begin-Length+1))))
      return(true);
//----
   return(false);
  }
//+------------------------------------------------------------------+
//| Vérification de l'absence de barres pour le lissage |
//+------------------------------------------------------------------+
bool CMovSeriesTools::BarCheck3(int begin,int bar,bool Set,int Length)

// BarCheck3(begin, bar, Set, Length)
  {
//----
   //if(!Set && bar<begin+Length-1 || Set && bar>begin-Length+1)
   // Bobcat
   if(((!Set) && (bar<(begin+Length-1))) || (Set && (bar>(begin-Length+1))))
      return(true);
//----
   return(false);
  }
//+------------------------------------------------------------------+
//| Vérification de la barre au moment de l'enregistrement des données.
//+------------------------------------------------------------------+
bool CMovSeriesTools::BarCheck4(int rates_total,int bar,bool Set)
// BarCheck4(rates_total, bar, Set)
  {
//----
//---- Sauvegarde des valeurs des variables
   //si(!Set && bar==rates_total-2 || Set && bar==1) return(true) ;
   // Bobcat
   if(((!Set) && (bar==(rates_total-2))) || (Set && (bar==1))) return(true);
//----
   return(false);
  }
//+------------------------------------------------------------------+
//| Vérification de la barre au moment de la restauration des données |
//+------------------------------------------------------------------+
bool CMovSeriesTools::BarCheck5(int rates_total,int bar,bool Set)
// BarCheck5(rates_total, begin, bar, set)
  {
//----
//---- Restauration des valeurs des variables
   //si(!Set && bar==rates_total-1 || Set && bar==0) return(true) ;
   // Bobcat
   if(((!Set) && (bar==(rates_total-1))) || (Set && (bar==0))) return(true);
//----
   return(false);
  }

Est-ce correct ? J'espère que oui.

Un autre avertissement apparaît à la ligne 742 dans la procédure bPriceSeries :

"cannot be used for static allocated array"

J'ai supprimé l'instruction "ArraySetAsSeries(series,true) ;". Je pense que ce n'est pas nécessaire puisque la taille du tableau des séries est d'une seule unité.

Est-ce que c'est correct et dans votre intention ?

Bobcat

 

Je ne vois pas très bien, ou plutôt pas du tout, comment utiliser cet indicateur. S'agit-il d'un indicateur ? La deuxième ligne de la description dit"J'ai réussi à obtenir des résultats plus stables et plus fiables avec le script". Mais ce n'est pas grave. En quoi ce Schaff Trend Cycle peut-il être utile ?

 

Bonjour,

Lorsque je compile l'indicateur, l'erreur suivante apparaît :

'MODE_EMA' - cannot convert enum schafftrendcycle.mq5 92 32

Que puis-je faire ?