Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 6. - страница 1082

[Удален]  
wishmastвыставлял ордера в 23:59 например

if((TimeHour(TimeCurrent())==ТребуемыйЧас) && (TimeMinute(TimeCurrent())==ТребуемаяМинута) &&(ОрдеровНет)) НаставитьОрдеров;

А где тут профит?

 

Добрый день.

На индикаторном окне хочу поставить время в те места где гистограмма проходит красную линию (отмечено красными стрелками). Какой функции это можно сделать? SetIndexStyle только лини и гистограммы предлагает.

 
abeiks:

Добрый день.

На индикаторном окне хочу поставить время в те места где гистограмма проходит красную линию (отмечено красными стрелками). Какой функции это можно сделать? SetIndexStyle только лини и гистограммы предлагает.

Текстовыми объектами можно.
[Удален]  
abeiks:

Добрый день.

На индикаторном окне хочу поставить время в те места где гистограмма проходит красную линию (отмечено красными стрелками). Какой функции это можно сделать? SetIndexStyle только лини и гистограммы предлагает.

ObjectCreate(имя, OBJ_LABEL, Окно, Время, ...)  Имена должны быть разные. Взять в качестве имени Время. А где тут профит?
 
evillive:
Текстовыми объектами можно.
Спасибо.
 
LRA:
ObjectCreate(имя, OBJ_LABEL, Окно, Время, ...)  Имена должны быть разные. Взять в качестве имени Время. А где тут профит?
Спасибо.
 

Добрый день, господа.

Вопрос по массивам. Как найти наибольшее значение индикатора на необходимом количестве последних баров графика, а не первых?

   //--- создадим массив 
   double array[]; 
   int size=772; 
   ArrayResize(array,size); 
   //---  заполним его значениями индикатора 
   for(int i=0;i<size;i++) 
     { 
      array[i]=iATR(NULL,0,14,i);
     }
   //--- найдем позицию максимального элемента в массиве 
   int max_position=ArrayMaximum(array,772,0); 
   //--- теперь получим само максимальное значение в массиве 
   double max=array[max_position];

     Уж, много раз это обсуждалось (не могу найти), но т. к. редко приходилось использовать массивы не обращал внимания.

Подскажите, как решить проблему с индексацией, возможно сделать более элегантно через ArrayMaximum(array)?

Если где-то элементарная ошибка, извините, самоучка-с.

 
Craft:

Добрый день, господа.

Вопрос по массивам. Как найти наибольшее значение индикатора на необходимом количестве последних баров графика, а не первых?

     Уж, много раз это обсуждалось (не могу найти), но т. к. редко приходилось использовать массивы не обращал внимания.

Подскажите, как решить проблему с индексацией, возможно сделать более элегантно через ArrayMaximum(array)?

Если где-то элементарная ошибка, извините, самоучка-с.

Если искать во всём массиве, то в функции ArrayMaximum() достаточно только имени массива.

int max_position=ArrayMaximum(array); 
 
А если необходимо найти наибольшее значение в заданном количестве последних баров?
 

Так ведь здесь-то статический массив

//--- создадим массив 
   double array[]; 
   int size=772; 
   ArrayResize(array,size); 
   //---  заполним его значениями индикатора 
   for(int i=0;i<size;i++) 
     { 
      array[i]=iATR(NULL,0,14,i);
     }
   //--- найдем позицию максимального элемента в массиве 
   int max_position=ArrayMaximum(array,772,0); 
   //--- теперь получим само максимальное значение в массиве 
   double max=array[max_position];