Вопросы от начинающих MQL5 MT5 MetaTrader 5 - страница 113

 

Здравствуйте, не могу написать массив.

Каждые сутки появляется уровень Рос, если цена(Тик) касается его то он становится не действительным, то есть не запоминаем его. 

Задача.

Если тик не коснулся уровня Рос, то держим значение цены Рос в массиве.

Если  тик коснулся Рос, то удаляем значение цены Рос из массива.

что то пытался написать, но это какая то ерунда. не могу даже добавить значение индекса в массив. Не говоря уже о добавлении самого индекса))

double masCenPoc[]; 
   int Size = ArraySize(masCenPoc);
      
   for(int i=0; i<Size; i++){
 
   if(cena_poc < high && cena_poc < low)
    masCenPoc[i] = cena_poc;
   if(cena_poc > high && cena_poc > low)
    masCenPoc[i] = cena_poc;
    
 
Top2n: int Size = ArraySize(masCenPoc);
А чему равно значение переменной Size?
 
Yedelkin:
А чему равно значение переменной Size?

 int Size = ArraySize(masCenPoc);
 
Top2n:

Здравствуйте, не могу написать массив.

Каждые сутки появляется уровень Рос, если цена(Тик) касается его то он становится не действительным, то есть не запоминаем его. 

Задача.

Если тик не коснулся уровня Рос, то держим значение цены Рос в массиве.

Если  тик коснулся Рос, то удаляем значение цены Рос из массива.

что то пытался написать, но это какая то ерунда. не могу даже добавить значение индекса в массив. Не говоря уже о добавлении самого индекса))

Как-то всё не определенно, следует видимо сначала определится зачем Вам этот массив. Потом вы сравниваете одни и те же переменные и заносите одни и те же значения в массив.
 
zfs:

Вот я и не могу, написать, чтоб индекс массива увеличивался по мере накопления значений Рос. Size пока не чему не равен))

Массив нужен для того чтоб накапливать  не пересеченные значения Рос, а по мере пересечения удалять их из массива.

Документация по MQL5: Основы языка / Переменные
Документация по MQL5: Основы языка / Переменные
  • www.mql5.com
Основы языка / Переменные - Документация по MQL5
 
Top2n: Size пока не чему не равен))
Что значит "ничему не равен"? Какое значение содержит переменная Size? Сколько итераций в цикле for?
 
Yedelkin:
Что значит "ничему не равен"? Какое значение содержит переменная Size? Сколько итераций в цикле for?

Вопрос открыт, нужно чтоб индексы увеличивались по мере заполнения значений Рос, он типа динамический. если 5 значений Рос то Size = 5. А как сделать не знаю. 

 
Top2n: Вопрос открыт, нужно чтоб индексы увеличивались по мере заполнения значений Рос, он типа динамический. если 5 значений Рос то Size = 5. А как сделать не знаю. 
https://www.mql5.com/ru/docs/array/arrayresize
Документация по MQL5: Операции с массивами / ArrayResize
Документация по MQL5: Операции с массивами / ArrayResize
  • www.mql5.com
Операции с массивами / ArrayResize - Документация по MQL5
 

получается типа такого?

 for(int i=0; i<Size; i++){
  int Size =   ArrayResize(masCenPoc,i,1)
   if(cena_poc < high && cena_poc < low)
    masCenPoc[i] = cena_poc;
   
   if(cena_poc > high && cena_poc > low)
    masCenPoc[i] = cena_poc;
 
Top2n: получается типа такого?
Затрудняюсь ответить. Перечитал Ваши сообщения, но замысел с изменением размера массива не понял. А от понимания замысла зависит и ответ по коду. Может, кто ещё откликнется.
Причина обращения: