Операции с массивами.

 
Не могу разобраться с операциями над массивами. Подскажите как записать в массив например цену образованную мувингом (SMA или EMA).
 
sergant:
Не могу разобраться с операциями над массивами. Подскажите как записать в массив например цену образованную мувингом (SMA или EMA).


Скорее всего не даете размер массиву.

double array[]; --->  double array[10];
 
storm:


Скорее всего не даете размер массиву.


Как вообще сделать логическую цепочку? Как преобразовать мувинг, чтоб он попал в массив?
 
sergant:

Как вообще сделать логическую цепочку? Как преобразовать мувинг, чтоб он попал в массив?

double MA[10];
for (int i=0;i<10;i++)
   MA[i]=iMA(NULL,0,13,0,MODE_SMMA,PRICE_CLOSE,i);
 
sergant:

А как в этот же массив запихать еще несколько мувингов с другими свойствами?


Вариантов много

double MA[10][4];
for (int j=0;j<4;j++)
   for (int i=0;i<10;i++)
      MA[i][j]=iMA(NULL,0,13,0,j,PRICE_CLOSE,i);

Что бы что-то предлагать надо знать что вы хотите. Пока получается - дай то, не знаю что

 
Vinin:

Обьясните пожалуйста почему операция ArrayMaximum(MA) находит максимальные значения, а операция ArrayMinimum(MA) находит только 0 тогда, когда в массиве есть минимальные значения больше чем 0.
 
sergant:
Обьясните пожалуйста почему операция ArrayMaximum(MA) находит максимальные значения, а операция ArrayMinimum(MA) находит только 0 тогда, когда в массиве есть минимальные значения больше чем 0.

Эти функции находят не сами значения, а индексы элементов с максимальным или минимальным значением

Можно предположить что минимальный элемент массива имеет индекс 0.

 
Vinin:

Эти функции находят не сами значения, а индексы элементов с максимальным или минимальным значением

Можно предположить что минимальный элемент массива имеет индекс 0.

Что индексы понял. Но ведь поиск индекса минимального значения не ноль, а от 1 до 10.
 
sergant:
Что индексы понял. Но ведь поиск индекса минимального значения не ноль, а от 1 до 10.

От 0 до 9. Индексы начинаются с 0.
 
Vinin:

От 0 до 9. Индексы начинаются с 0.
Хорошо с 0. Но ведь допустим что значение стоящее под индексом 0 далеко не минимальное, а минимальное значение допустим находится под индексом 4. А на печать выходит 0, а должно 4.
 
sergant:
Хорошо с 0. Но ведь допустим что значение стоящее под индексом 0 далеко не минимальное, а минимальное значение допустим находится под индексом 4. А на печать выходит 0, а должно 4.

А как же дерзновение, а как же эксперименты? ...

//+------------------------------------------------------------------+
//|                 Старт работы скрипта                             |
//+------------------------------------------------------------------+
int start(){
  double PR[5];
        int IndexMax=-1,IndexMin=-1;
        PR[0]=1;
        PR[1]=2.5;
        PR[2]=0.5;
        PR[3]=3;
        PR[4]=7;
        IndexMax=ArrayMaximum(PR,WHOLE_ARRAY,0);
        IndexMin=ArrayMinimum(PR,WHOLE_ARRAY,0);
        
        Alert("--------------------------------------------");
  Alert("Позиция минимального значения в массиве = ",IndexMin);
  Alert("Позиция максимального значения в массиве = ",IndexMax);
  Alert("--------------------------------------------");
        return(0);
}

И что же Вам показывает этот скрипт? 

Причина обращения: