Vous manquez des opportunités de trading :
- Applications de trading gratuites
- Plus de 8 000 signaux à copier
- Actualités économiques pour explorer les marchés financiers
Inscription
Se connecter
Vous acceptez la politique du site Web et les conditions d'utilisation
Si vous n'avez pas de compte, veuillez vous inscrire
Bonjour,
Il s'agit de mon premier message ici, car je n'ai pas pu trouver ce sujet lors d'une recherche rapide.
J'utilise l'indicateur ZigZag sur plusieurs horizons temporels. J'ai réglé les paramètres de façon à ce qu'il suive les hauts et les bas appropriés pour moi, mais je voudrais que les valeurs des hauts et des bas soient affichées en texte sur le graphique.
J'ai fait une capture d'écran de ce que je veux (après avoir ajouté manuellement du texte pour montrer ce que je cherche).
Est-il possible d'avoir le texte P1, P2, P3 et les valeurs EUR/USD hautes et basses correspondantes imprimées sur le graphique comme ceci ?
Je comprends que la valeur de P3 changera en temps réel au fur et à mesure que le prix continuera à monter ou descendre.
Je n'ai besoin que des 3 dernières valeurs, les plus anciennes ne sont pas importantes.
Merci pour tout conseil ou suggestion. Je ne suis pas un grand codeur, mais je peux peut-être faire en sorte que cela fonctionne si ce n'est pas un travail trop difficile !Vous devez afficher le code que vous utilisez
J'utilise l'indicateur ZigZag standard. Je publie le code comme demandé, cependant :
//+------------------------------------------------------------------+
//| Zigzag.mq4 |
//| Copyright ฉ 2005-2007, MetaQuotes Software Corp. |
//| http://www.metaquotes.net/ |
//+------------------------------------------------------------------+
#property copyright "Copyright ฉ 2007, MetaQuotes Software Corp."
#property link "http://www.metaquotes.net/"
#property indicator_chart_window
#property indicator_buffers 1
#property indicator_color1 Yellow
//---- indicator parameters
extern int ExtDepth=12;
extern int ExtDeviation=5;
extern int ExtBackstep=3;
//---- indicator buffers
double ZigzagBuffer[];
double HighMapBuffer[];
double LowMapBuffer[];
int level=3; // recounting's depth
bool downloadhistory=false;
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int init()
{
IndicatorBuffers(3);
//---- drawing settings
SetIndexStyle(0,DRAW_SECTION);
//---- indicator buffers mapping
SetIndexBuffer(0,ZigzagBuffer);
SetIndexBuffer(1,HighMapBuffer);
SetIndexBuffer(2,LowMapBuffer);
SetIndexEmptyValue(0,0.0);
//---- indicator short name
IndicatorShortName("ZigZag("+ExtDepth+","+ExtDeviation+","+ExtBackstep+")");
//---- initialization done
return(0);
}
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
int start()
{
int i, counted_bars = IndicatorCounted();
int limit,counterZ,whatlookfor;
int shift,back,lasthighpos,lastlowpos;
double val,res;
double curlow,curhigh,lasthigh,lastlow;
if (counted_bars==0 && downloadhistory) // history was downloaded
{
ArrayInitialize(ZigzagBuffer,0.0);
ArrayInitialize(HighMapBuffer,0.0);
ArrayInitialize(LowMapBuffer,0.0);
}
if (counted_bars==0)
{
limit=Bars-ExtDepth;
downloadhistory=true;
}
if (counted_bars>0)
{
while (counterZ<level && i<100)
{
res=ZigzagBuffer;
if (res!=0) counterZ++;
i++;
}
i--;
limit=i;
if (LowMapBuffer!=0)
{
curlow=LowMapBuffer;
whatlookfor=1;
}
else
{
curhigh=HighMapBuffer;
whatlookfor=-1;
}
for (i=limit-1;i>=0;i--)
{
ZigzagBuffer=0.0;
LowMapBuffer=0.0;
HighMapBuffer=0.0;
}
}
for(shift=limit; shift>=0; shift--)
{
val=Low;
if(val==lastlow) val=0.0;
else
{
lastlow=val;
if((Low[shift]-val)>(ExtDeviation*Point)) val=0.0;
else
{
for(back=1; back<=ExtBackstep; back++)
{
res=LowMapBuffer[shift+back];
if((res!=0)&&(res>val)) LowMapBuffer[shift+back]=0.0;
}
}
}
if (Low[shift]==val) LowMapBuffer[shift]=val; else LowMapBuffer[shift]=0.0;
//--- high
val=High;
if(val==lasthigh) val=0.0;
else
{
lasthigh=val;
if((val-High[shift])>(ExtDeviation*Point)) val=0.0;
else
{
for(back=1; back<=ExtBackstep; back++)
{
res=HighMapBuffer[shift+back];
if((res!=0)&&(res<val)) HighMapBuffer[shift+back]=0.0;
}
}
}
if (High[shift]==val) HighMapBuffer[shift]=val; else HighMapBuffer[shift]=0.0;
}
// final cutting
if (whatlookfor==0)
{
lastlow=0;
lasthigh=0;
}
else
{
lastlow=curlow;
lasthigh=curhigh;
}
for (shift=limit;shift>=0;shift--)
{
res=0.0;
switch(whatlookfor)
{
case 0: // look for peak or lawn
if (lastlow==0 && lasthigh==0)
{
if (HighMapBuffer[shift]!=0)
{
lasthigh=High[shift];
lasthighpos=shift;
whatlookfor=-1;
ZigzagBuffer[shift]=lasthigh;
res=1;
}
if (LowMapBuffer[shift]!=0)
{
lastlow=Low[shift];
lastlowpos=shift;
whatlookfor=1;
ZigzagBuffer[shift]=lastlow;
res=1;
}
}
break;
case 1: // look for peak
if (LowMapBuffer[shift]!=0.0 && LowMapBuffer[shift]<lastlow && HighMapBuffer[shift]==0.0)
{
ZigzagBuffer[lastlowpos]=0.0;
lastlowpos=shift;
lastlow=LowMapBuffer[shift];
ZigzagBuffer[shift]=lastlow;
res=1;
}
if (HighMapBuffer[shift]!=0.0 && LowMapBuffer[shift]==0.0)
{
lasthigh=HighMapBuffer[shift];
lasthighpos=shift;
ZigzagBuffer[shift]=lasthigh;
whatlookfor=-1;
res=1;
}
break;
case -1: // look for lawn
if (HighMapBuffer[shift]!=0.0 && HighMapBuffer[shift]>lasthigh && LowMapBuffer[shift]==0.0)
{
ZigzagBuffer[lasthighpos]=0.0;
lasthighpos=shift;
lasthigh=HighMapBuffer[shift];
ZigzagBuffer[shift]=lasthigh;
}
if (LowMapBuffer[shift]!=0.0 && HighMapBuffer[shift]==0.0)
{
lastlow=LowMapBuffer[shift];
lastlowpos=shift;
ZigzagBuffer[shift]=lastlow;
whatlookfor=1;
}
break;
default: return;
}
}
return(0);
}
//+------------------------------------------------------------------+
Fibo en zigzag ( pas d'alerte ou alerte ajustée à vrai ou faux)
Quelques autres indicateurs en zigzag https://www.mql5.com/en/forum/178335/page14
Un grand travail est actuellement en cours ici et j'apprécie beaucoup tous les gars qui ont contribué au forum d'une manière ou d'une autre. Je ne suis que depuis quelques jours et je suis heureux de ce que j'ai vu jusqu'à présent.
J'ai besoin d'aide,
1) existe-t-il un zigzag avec un indicateur de niveau de fibonacci (pas d'alerte ou une alerte peut être fausse ou vraie) ?
vrai) ?
2) Je cherche sérieusement un indicateur qui montre le point de retournement exact ou approximatif lorsque l'oscillateur stochastique est dans la région de surachat/survente. En d'autres termes, chaque fois que la stochastique d'un paramètre quelconque entre dans la région de surachat/survente en utilisant n'importe quel cadre temporel, quelque chose d'autre (un autre indicateur) indiquera alors le niveau auquel le marché/prix est le plus susceptible de s'inverser.
Je serai heureux de recevoir de l'aide.
Un grand travail a été fait ici et j'apprécie beaucoup tous les gars qui ont contribué au forum d'une manière ou d'une autre. Je ne suis que depuis quelques jours et je suis heureux de ce que j'ai vu jusqu'à présent.
Juste pour vous aider,
1) existe-t-il un indicateur de zigzag avec niveau de fibonacci (pas d'alerte ou alerte fausse ou vraie) ?
vrai) ?
2) Je cherche sérieusement un indicateur qui montre le point de retournement exact ou approximatif lorsque l'oscillateur stochastique est dans la région de surachat/survente. En d'autres termes, lorsque la stochastique de n'importe quel paramètre entre dans la région de surachat/survente en utilisant n'importe quel cadre temporel, quelque chose d'autre (un autre indicateur) indiquera alors le niveau auquel le marché/prix est le plus susceptible de s'inverser.
Je serai heureux de recevoir de l'aide.Peut-être que l'un de ces fils de discussion pourrait vous intéresser
https://www.mql5.com/en/forum/173172
https://www.mql5.com/en/forum/173439
https://www.mql5.com/en/forum/173588
Un grand travail a été fait ici et j'apprécie beaucoup tous les gars qui ont contribué au forum d'une manière ou d'une autre. Je ne suis que depuis quelques jours et je suis content de ce que j'ai vu jusqu'à présent.
Juste pour vous aider,
1) existe-t-il un indicateur de zigzag avec niveau de fibonacci (pas d'alerte ou alerte fausse ou vraie) ?
vrai) ?
2) Je cherche sérieusement un indicateur qui montre le point de retournement exact ou approximatif lorsque l'oscillateur stochastique est dans la région de surachat/survente. En d'autres termes, chaque fois que la stochastique de n'importe quel paramètre entre dans la région de surachat/survente en utilisant n'importe quel cadre temporel, quelque chose d'autre (un autre indicateur) indiquera alors le niveau auquel le marché/prix est le plus susceptible de s'inverser.
Je serai heureux de recevoir de l'aide.Il n'y en a qu'un que j'ai trouvé qui est toujours correct mais malheureusement lent.
Bonjour, j'ai vu un indicateur ici mais il n'est pas complet. J'en ai un complet mais je ne connais pas certains mots, quelqu'un pourrait-il me faire une faveur en le traduisant en anglais en entier ? Merci beaucoup !!!!!.
Bonjour
voir page 1 de ce sujet
Merci à tous d'avoir posté tous les indicateurs de zigzag, en résumant le tout, il semble qu'il y ait fondamentalement 3 types de zigzag autour
1. Indicateurs basés sur le zigzag original
2. Les indicateurs basés sur le zigzag Dinapoli, c'est-à-dire le zigzag haut/bas.
3. Les indicateurs zigzag, gann et swing sans décalage, une sorte de compromis entre les deux.
Tous les indicateurs basés sur le zigzag se repeignent et vous pouvez les repérer car ils contiennent tous la base de code originale, qui comprend tous les pointeurs de zigzag, le zigzag aux points de retournement.
Les indicateurs basés sur Dinapoli incluent généralement l'instruction 'Barn' comme un int externe. Ces indicateurs ne se repeignent pas et sont très fiables, le problème est qu'ils travaillent à partir de l'historique et sont très lents à former la jambe suivante.
Le Non lag gann et le swing semblent être un zigzag avec une variation du code de type Dinapoli inclus, ils ne se repeignent pas la plupart du temps mais le font occasionnellement.
Eh bien, pour moi, c'est toujours le retour à la planche à dessin, et je suis sûr qu'il y en aura d'autres.
ou le dire comme ceci
il existe trois types de zz :
1. basé sur le zz original
2. basé sur un zz non original
3. autre
en voici un autre :
ou dites-le comme ceci
Il existe trois types de zz :
1. basé sur le zz original
2. basé sur un zz non original
3. autre
en voici une autre :C'est succinct
en voici un autre : un zz avec canal
Bonjour, référez-vous à la page 1 de ce sujet
Merci ! je sais cela, mais celui ci n'était pas complet, une partie du code a en quelque sorte disparu ! ce que je veux c'est un intégré.