Indicadores em ziguezague - página 15

 
DamonThailand:
Olá,

Este é meu primeiro posto aqui, pois não consegui encontrá-lo com uma busca rápida.

Estou usando o indicador ZigZag em vários períodos de tempo. Tenho os parâmetros configurados para que ele acompanhe os altos/baixos adequados para mim, mas eu gostaria que os valores altos/baixos fossem exibidos no texto do gráfico.

Fiz uma captura de tela do que eu quero (após adicionar manualmente o texto para mostrar o que estou procurando).

É possível ter o texto P1, P2, P3 e os correspondentes valores altos/baixos de EUR/USD impressos no gráfico desta forma?

Eu entendo que o valor de P3 estará mudando em tempo real à medida que o preço continuar subindo ou descendo.

Só preciso dos últimos 3 valores, os mais antigos não são importantes.

Obrigado por qualquer conselho ou sugestão. Não sou muito de codificador, mas talvez eu possa fazer isto funcionar se não for um trabalho muito difícil!

Você precisa afixar o código que está usando

 

Estou usando o indicador padrão ZigZag. No entanto, estou lançando o código conforme solicitado:

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

//| 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);

}

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

 

ziguezague fibo (sem alerta ou alerta ajustado a verdadeiro ou falso)

newdigital:
Alguns outros indicadores em ziguezague https://www.mql5.com/en/forum/178335/page14

Um grande trabalho é realmente realizado aqui e apreciamos muito todos os caras que se juntaram ao fórum de uma forma ou de outra. Tenho apenas alguns dias e estou feliz com o que vi até agora.

Apenas por ajuda,

1) existe algum indicador de nível de ziguezague com fibonacci (nenhum alerta ou alerta pode ser falso ou

verdade)?

2) procurando seriamente qualquer indicador que mostre o ponto de viragem exato ou aproximado sempre que o oscilador estocástico estiver dentro da região sobre-comprada/sobre-vendida. Ou seja, sempre que o oscilador estocástico de qualquer parâmetro entrar na região sobre-comprada/sobre-vendida usando qualquer período de tempo, algo mais (outro indicador) indicará então o nível em que o mercado/preço mais provavelmente se reverterá.

Terei o maior prazer em receber ajuda.

 
knmoore:
Um grande trabalho é realmente realizado aqui e apreciamos muito todos os caras que se juntaram ao fórum de uma forma ou de outra. Tenho apenas alguns dias e estou feliz com o que vi até agora.

Só por ajuda,

1) existe algum indicador de nível de ziguezague com fibonacci (nenhum alerta ou alerta pode ser falso ou

verdade)?

2) procurando seriamente qualquer indicador que mostre o ponto de viragem exato ou aproximado sempre que o oscilador estocástico estiver dentro da região sobre-comprada/sobre-vendida. Ou seja, sempre que o oscilador estocástico de qualquer parâmetro entrar na região sobre-comprada/sobre-vendida usando qualquer período de tempo, algo mais (outro indicador) indicará então o nível em que o mercado/preço mais provavelmente se reverterá.

Ficarei feliz pela ajuda.

Talvez alguma coisa destas roscas possa gostar de você

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

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

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

 
knmoore:
Um grande trabalho é realmente realizado aqui e apreciamos muito todos os caras que se juntaram ao fórum de uma forma ou de outra. Tenho apenas alguns dias e estou feliz com o que vi até agora.

Só por ajuda,

1) existe algum indicador de nível de ziguezague com fibonacci (nenhum alerta ou alerta pode ser falso ou

verdade)?

2) procurando seriamente qualquer indicador que mostre o ponto de viragem exato ou aproximado sempre que o oscilador estocástico estiver dentro da região sobre-comprada/sobre-vendida. Ou seja, sempre que o oscilador estocástico de qualquer parâmetro entrar na região sobre-comprada/sobre-vendida usando qualquer período de tempo, algo mais (outro indicador) indicará então o nível em que o mercado/preço mais provavelmente se reverterá.

Ficarei feliz pela ajuda.

Há apenas um que eu encontrei que está sempre correto, mas infelizmente lento.

Arquivos anexados:
 
bryant:
Olá, vi um indicador aqui, mas não está completo. Tenho um completo, mas não conheço nenhuma palavra nele, alguém poderia me fazer um favor para traduzi-lo para o inglês em todos.

Hi

consulte a página 1 deste tópico

 

Agradecemos a todos por afixarem todos os indicadores em ziguezague, somando tudo, parece que existem basicamente 3 tipos de ziguezague em torno

1. Indicadores baseados no ziguezague original

2. Indicadores baseados no Dinapoli i.e. alto/baixo ziguezague

3. Indicadores de ziguezague, gann e oscilação não desfasados uma espécie de compromisso entre os dois

Todos os indicadores baseados em ziguezague são repintados e você pode identificá-los porque todos eles contêm a base do código original, estes incluem todos os indicadores em ziguezague, ziguezague em pontos de virada.

Os indicadores baseados em dinapoli geralmente incluem a declaração "Barn" como uma int. externa. Estes indicadores não repintam e são muito confiáveis, o problema é que eles funcionam a partir da história e são muito lentos para formar a próxima etapa.

O Non lag gann e o swing parecem ser um ziguezague com alguma variação do código do tipo Dinapoli incluído, eles na maioria das vezes não repintam, mas ocasionalmente repintam.

Bem, para mim ainda está de volta à prancheta de desenho, mais para vir, tenho certeza

 

ou colocar desta forma

há três tipos de zz:

1. Com base no zz original

2. Baseado em

3.outros

aqui está outro:

Arquivos anexados:
 
fxbs:
ou colocar desta forma

há três tipos de zz:

1. Com base no zz original

2. Baseado em

3.outros

aqui está outro:

Isso é sucinto

aqui está outro: um zz com canal

 
moha00:
Hirefer página 1 deste tópico

Obrigado! Eu sei que, mas o código não estava completo, alguma parte do código de alguma forma desapareceu! O que eu quero é um código integrado

Razão: