Baixa e Alta

 

Olá! Como posso obter valores baixos e altos entre 15,00 e 17,00? Eu já tentei algo assim:

se (Hora()==Início) // externo int Início=15;

{

HighValue=High[iHighest(NULL,0,MODE_HIGH,8,1)]; // 8 M15 barras entre 15.00-17.00

LowValue=Low[iLowest(NULL,0,MODE_LOW,8,1)]; // 8 barras M15 entre 15.00-17.00

}


Alguém tem uma idéia?

 

O seu código não funciona? Parece ok...

 
01005379:

Olá! Como posso obter valores baixos e altos entre 15,00 e 17,00? Eu já tentei algo assim:

se (Hora()==Início) // externo int Início=15;

{

HighValue=High[iHighest(NULL,0,MODE_HIGH,8,1)]; // 8 M15 barras entre 15.00-17.00

LowValue=Low[iLowest(NULL,0,MODE_LOW,8,1)]; // 8 barras M15 entre 15.00-17.00

}

Alguém tem uma idéia?

Foi um dia longo, mas... se Start = 15, então este código não vai ter o valor alto e baixo entre 13.00 e 15.00, não 15.00 e 17.00? E, às 15h15, vai começar a olhar para as 8 barras a partir das 13h15, e não 13h00. (Tudo isso supondo que você esteja rodando em um gráfico M15).

 

Não, não consigo descobrir quais valores calcula, mas absolutamente não altos e baixos entre 15.00 e 17.00.

Isto está bem: a EA começa a procurar por alto e baixo às 15h00 e depois 8 bar para frente?

Ou eu tenho que mudar Start=17, e então a EA olha de 17,00 e de volta para 15,00 (8 barras)?

 
jjc:

Foi um dia longo, mas... se Start = 15, então este código não vai ficar alto e baixo entre 13.00 e 15.00, e não entre 15.00 e 17.00? E, às 15h15, vai começar a olhar para as 8 barras a partir das 13h15, e não 13h00.

talvez você esteja certo, vou dar uma olhada nisto. Obrigado pela idéia!

 

Oh... você estava tentando olhar para frente. A função tem o objetivo de olhar para trás no tempo.

Quadro = 15m de tempo

se (Hora()==Início) // externo int Início=17;
HighValue=High[iHighest(NULL,0,MODE_HIGH,8,1)]; // 8 M15 barras entre 15.00-16:59:59

 
phy:

Oh... você estava tentando olhar para frente. A função tem o objetivo de olhar para trás no tempo.

Quadro = 15m de tempo

se (Hora()==Início) // externo int Início=17;
HighValue=High[iHighest(NULL,0,MODE_HIGH,8,1)]; // 8 M15 barras entre 15.00-16:59:59

Obrigado! Vamos ver se funciona bem!

 
Ainda não funciona! Eu tento tudo, mas sem sucesso.
 

if (TimeHour(Time[i])==Início) // externo int Início=17;
HighValue=High[iHighest(NULL,0,MODE_HIGH,8,i)]; // 8 M15 barras entre 15.00-16:59:59

 
phy:
if(TimeHour(Time[i])==Início) // externo int Início=17;
HighValue=High[iHighest(NULL,0,MODE_HIGH,8,1)]; // 8 M15 barras entre 15.00-16:59:59

E a variável i?

 

Sim, acabei de ver isso.

Ler/fixar o código de outras pessoas é sempre um desafio.

.

http://my.jetscreenshot.com/demo/20090824-27lq-148kb.jpg

.

Exemplo de trabalho, mesma idéia, tempos diferentes

.

//+------------------------------------------------------------------+
//| script program start function                                    |
//+------------------------------------------------------------------+
int start(){

int Start = 14;
double HighValue;
int HighTime;

for(int i = 0; i < Bars-1; i++){
  
   if(TimeHour(Time[ i])== Start){ // extern int Start=14;
      HighValue=High[iHighest(NULL,0,MODE_HIGH,36, i)]; // 36 M5 bars between 11:00-13:59:59 
      HighTime = Time[iHighest(NULL,0,MODE_HIGH,36, i)];
      Comment( HighValue, "  ", TimeToStr( HighTime, TIME_DATE| TIME_MINUTES));
      break;
   }
}
return(0);
}