Indicatori a zig zag - pagina 15

 
DamonThailand:
Ciao,

Questo è il mio primo post qui, dato che non sono riuscito a trovare questo con una rapida ricerca.

Sto usando l'indicatore ZigZag su più timeframe. Ho impostato i parametri in modo che rintracci gli alti/bassi corretti per me, ma vorrei che i valori alti/bassi fossero visualizzati in testo sul grafico.

Ho fatto uno screenshot di ciò che voglio (dopo aver aggiunto manualmente del testo per mostrare ciò che sto cercando).

È possibile avere il testo P1, P2, P3 e i corrispondenti valori alti/bassi di EUR/USD stampati sul grafico in questo modo?

Capisco che il valore di P3 cambierà in tempo reale man mano che il prezzo continua a salire o scendere.

Ho bisogno solo degli ultimi 3 valori, quelli più vecchi non sono importanti.

Grazie per qualsiasi consiglio o suggerimento. Non sono un gran codificatore, ma forse posso farlo funzionare se non è un lavoro troppo difficile!

Devi postare il codice che stai usando

 

Sto usando l'indicatore standard ZigZag. Sto postando il codice come richiesto, tuttavia:

//+------------------------------------------------------------------+

//| 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 a zigzag (nessun allarme o allarme regolato su vero o falso)

newdigital:
Alcuni altri indicatori a zigzag https://www.mql5.com/en/forum/178335/page14

Un grande lavoro è stato fatto qui e apprezzo molto tutti i ragazzi che hanno contribuito al forum in un modo o nell'altro. Sono solo pochi giorni e sono contento di quello che ho visto finora.

Solo per aiuto,

1) c'è qualche zigzag con indicatore di livello fibonacci (nessun allarme o allarme può essere falso o

vero)?

2) seriamente alla ricerca di qualsiasi indicatore che mostrerà il punto di svolta esatto o approssimativo ogni volta che l'oscillatore stocastico è all'interno della regione di ipercomprato/ipervenduto. Cioè, ogni volta che lo stocastico di qualsiasi parametro entra nella regione di ipercomprato/ipervenduto usando qualsiasi time frame, qualcos'altro (un altro indicatore) indicherà allora il livello al quale il mercato/prezzo più probabilmente invertirà.

Sarò lieto dell'aiuto.

 
knmoore:
Un grande lavoro si svolge qui e apprezzo molto tutti i ragazzi che hanno contribuito al forum in un modo o nell'altro. Sono solo pochi giorni e sono contento di quello che ho visto finora.

Solo per aiuto,

1) c'è qualche zigzag con indicatore di livello fibonacci (nessun allarme o allarme può essere falso o

vero)?

2) seriamente alla ricerca di qualsiasi indicatore che mostri il punto di svolta esatto o approssimativo ogni volta che l'oscillatore stocastico è all'interno della regione di ipercomprato/ipervenduto. Cioè, ogni volta che lo stocastico di qualsiasi parametro entra nella regione di ipercomprato/ipervenduto usando qualsiasi time frame, qualcos'altro (un altro indicatore) indicherà poi il livello al quale il mercato/prezzo più probabilmente invertirà.

Sarò felice per l'aiuto.

Forse qualcosa di questi thread potrebbe piacerti

https://www.mql5.com/en/forum/173172

https://www.mql5.com/en/forum/173439

https://www.mql5.com/en/forum/173588

 
knmoore:
Un grande lavoro è stato fatto qui e apprezzo molto tutti i ragazzi che hanno contribuito al forum in un modo o nell'altro. Sono solo pochi giorni e sono contento di quello che ho visto finora.

Solo per aiuto,

1) c'è qualche zigzag con indicatore di livello fibonacci (nessun allarme o allarme può essere falso o

vero)?

2) seriamente alla ricerca di qualsiasi indicatore che mostri il punto di svolta esatto o approssimativo ogni volta che l'oscillatore stocastico è all'interno della regione di ipercomprato/ipervenduto. Cioè, ogni volta che lo stocastico di qualsiasi parametro entra nella regione di ipercomprato/ipervenduto usando qualsiasi time frame, qualcos'altro (un altro indicatore) indicherà poi il livello al quale il mercato/prezzo più probabilmente invertirà.

Sarò felice per l'aiuto.

Ne ho trovato solo uno che è sempre corretto ma purtroppo lento

 
bryant:
Ciao a tutti, ho visto un indicatore qui ma non è in completo.ho completo uno ma non so qualche parola in esso, qualcuno potrebbe farmi un favore per tradurlo in inglese in tutti.grandi grazie!!!!!

Ciao

fare riferimento alla pagina 1 di questo argomento

 

Grazie a tutti per aver postato tutti gli indicatori di zigzag, riassumendo tutto, sembra che ci siano fondamentalmente 3 tipi di zigzag in giro

1. Indicatori basati sullo zigzag originale

2. Indicatori basati sullo zigzag Dinapoli cioè Alto/Basso

3. Indicatori non lag zigzag, gann e swing una sorta di compromesso tra i due

Tutti gli indicatori basati sullo zigzag si ridipingono e si possono individuare perché contengono tutti la base del codice originale, questi includono tutti i puntatori dello zigzag, lo zigzag nei punti di svolta.

Gli indicatori basati su dinapoli di solito includono la dichiarazione 'Barn' come un extern int. Questi indicatori non ridipingono e sono molto affidabili, il problema è che lavorano dalla storia e sono molto lenti a formare la prossima gamba.

Il Non lag gann e lo swing sembrano essere uno zigzag con qualche variazione di codice tipo Dinapoli incluso che per lo più non ridipingono ma occasionalmente lo fanno.

Beh, per me è ancora indietro al tavolo da disegno, più a venire sono sicuro

 

o metterla in questo modo

ci sono tre tipi di zz:

1. basato su zz originale

2. basato su non originale

3.altro

eccone un altro:

 
fxbs:
o mettila così

ci sono tre tipi di zz:

1. basato su zz originale

2. basato su non originale

3.altro

eccone un altro:

Questo è succinto

eccone un altro: un zz con canale

 
moha00:
Ciao fare riferimento alla pagina 1 di questo argomento

Grazie! Lo so, ma quello non era completo, una parte del codice è in qualche modo scomparsa! Quello che voglio è un integrato