[АРХИВ] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 3. - страница 640

 
evillive:

Применяете в индикаторе или советнике? Хотя SetIndexBuffer вроде только в индикаторях применяют...
В индикаторе.
 
TarasBY:
Массив в упомянутой Вами функции не обязательно должен быть буферным, НО используя "небуферный" массив не забывайте его инициализировать (указать его размерность - ArrayResize (array, n)) или напрямую при его объявлении - double array[n].

Я обычно так и делаю.

ArrayResize (array, Bars); ArrayInitialize (array, 0);

Bars - когда непонятно какой размерности массив будет. Может в этом ошибка?

 
Fox_RM:

Я обычно так и делаю.

ArrayResize (array, Bars); ArrayInitialize (array, 0);


Нехорошая привычка. Это МТ делает, если в индикаторе все правильно сделать
 
Vinin:

Нехорошая привычка. Это МТ делает, если в индикаторе все правильно сделать

А как правильно? Если я сам массив объявляю и инициализирую. Просто иногда буферы загружать не хочется или их не хватает.

Кстати дополнительный вопрос) Что делать если не хватает буферов?

 
Fox_RM:

А как правильно? Если я сам массив объявляю и инициализирую. Просто иногда буферы загружать не хочется или их не хватает.

Кстати дополнительный вопрос) Что делать если не хватает буферов?


У меня только один случай был когда внутренних (индикаторных) буферов не хватило. Сделал вспомогательный индикатор. Хотя после оптимизации расчетов необходимость в нем исчезла, как и в самом индикаторе. Это был первый вариант индикатора Хала, который я сделал
 
Fox_RM:

А как правильно? Если я сам массив объявляю и инициализирую. Просто иногда буферы загружать не хочется или их не хватает.

Кстати дополнительный вопрос) Что делать если не хватает буферов?


Как-то так: если не хватает
   Bar=0; 
   for(i=0; i<limit; i++)
       {
       ArrayResize (array, Bar+1);
       .............;
       Bar++;
       }
 
Vinin:


Почему Вы так решили, или подсказал кто такую несуразицу?

Всегда можно решить, если конечно надо

конечно надо, потому я и здесь
 
b_o_l_t:
конечно надо, потому я и здесь

Весь код в личку отправьте, может что и получится
 

Можно ли как-нибудь обозначить разброс значений?

Пример

if (OrdersTotal()==от X до Y)
 
LuckyStrike:Можно ли как-нибудь обозначить разброс значений?

Вы наверное про такую конструкцию?

if(a>X && a<Y);// условие истинно если a в пределах [X;Y]
если Вам нужно анализировать открытые ордера, там код посложнее будет
Причина обращения: