Низкий и высокий

 

Здравствуйте! Как я могу получить значение Low и High между 15.00 и 17.00? Я пробовал что-то вроде этого:

if (Hour()==Start) // extern int Start=15;

{

HighValue=High[iHighest(NULL,0,MODE_HIGH,8,1)]; // 8 M15 баров между 15.00-17.00

LowValue=Low[iLowest(NULL,0,MODE_LOW,8,1)]; // 8 баров M15 между 15.00-17.00.

}


У кого-нибудь есть идеи?

 

Ваш код не работает? Выглядит нормально...

 
01005379:

Здравствуйте! Как я могу получить значение Low и High между 15.00 и 17.00? Я пробовал что-то вроде этого:

if (Hour()==Start) // extern int Start=15;

{

HighValue=High[iHighest(NULL,0,MODE_HIGH,8,1)]; // 8 баров M15 между 15.00-17.00.

LowValue=Low[iLowest(NULL,0,MODE_LOW,8,1)]; // 8 баров M15 между 15.00-17.00.

}

У кого-нибудь есть идеи?

Это был долгий день, но... если Start = 15, то не собирается ли этот код получить максимум и минимум между 13.00 и 15.00, а не 15.00 и 17.00? И в 15.15 он начнет просматривать 8 баров, начиная с 13.15, а не с 13.00. (Все это при условии, что вы работаете на графике M15).

 

Неа, я не могу понять, какие значения он вычисляет, но точно не high и low между 15.00 и 17.00.

Это нормально: советник начинает искать high и low в 15.00 и затем на 8 баров вперед?

Или я должен изменить Start=17, и тогда советник ищет от 17.00 и обратно к 15.00 (8 баров)?

 
jjc:

Это был долгий день, но... если Start = 15, то не собирается ли этот код получить максимум и минимум между 13.00 и 15.00, а не 15.00 и 17.00? И в 15.15 он начнет просматривать 8 баров, начиная с 13.15, а не с 13.00.

Возможно, вы правы, я посмотрю. Спасибо за идею!

 

О... вы пытались заглянуть вперед. Эта функция предназначена для просмотра назад во времени.

Chart = 15-метровый таймфрейм

if (Hour()==Start) // extern int Start=17;
HighValue=High[iHighest(NULL,0,MODE_HIGH,8,1)]; // 8 M15 баров между 15.00-16:59:59

 
phy:

О... вы пытались заглянуть вперед. Эта функция предназначена для просмотра назад во времени.

Chart = 15-метровый таймфрейм

if (Hour()==Start) // extern int Start=17;
HighValue=High[iHighest(NULL,0,MODE_HIGH,8,1)]; // 8 баров M15 между 15.00-16:59:59

Спасибо! Посмотрим, будет ли он работать нормально!

 
Он все еще не работает! Я пробую все, но безуспешно.
 

if (TimeHour(Time[i])==Start) // extern int Start=17;
HighValue=High[iHighest(NULL,0,MODE_HIGH,8,i)]; // 8 баров M15 между 15.00-16:59:59

 
phy:
if(TimeHour(Time[i])==Start) // extern int Start=17;
HighValue=High[iHighest(NULL,0,MODE_HIGH,8,1)]; // 8 баров M15 между 15.00-16:59:59

Что насчет переменной i?

 

Да, только что увидел.

Чтение/исправление чужого кода - это всегда вызов.

.

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

.

Рабочий пример, одна и та же идея, разное время

.

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