Страница 1 из 1

работа с массивом. Индикаторы. ошибка компиляции

Добавлено: 06 фев 2020, 13:34
Prohar
Здравствуйте!
Хочу индикатор увелисить на число. а результат вставить вдругой индикатор, но у меня ошибка.

Код: Выделить всё

//double[] fmm = new double[Period_m];
var fmm = new double [Period_m];
for (int i = 0; i < Period_m; i++)
{
    fmm[i] =1.5 + MOMENTUM(a, Period_m)[i];
}



пробывал разные варианты. не получается. помогите пожалуйста. Спасибо

Код: Выделить всё

      var b= MOMENTUM(a, Period_m);
b = b + 1.5;


и так тоже

Re: работа с массивом. Индикаторы. ошибка компиляции

Добавлено: 06 фев 2020, 14:50
evge
если Period_m это входящий параметр, то так

Код: Выделить всё

double[] fmm = new double [(int)Period_m];


работать будет и так

Код: Выделить всё

var fmm = new double [(int)Period_m];

Re: работа с массивом. Индикаторы. ошибка компиляции

Добавлено: 06 фев 2020, 15:13
Prohar
evge писал(а):если Period_m это входящий параметр, то так

Код: Выделить всё

double[] fmm = new double [(int)Period_m];


работать будет и так

Код: Выделить всё

var fmm = new double [(int)Period_m];


спасибо. это победил. дальше затык
с расчетом следующего индикатора

я так понял массив в индикатор подставить нельзя , поэтому попроб так

Код: Выделить всё

      var b= MOMENTUM(WMA(a, Period_wma), Period_m);
b = b + 1.5;
 mom_mom_wma = MOMENTUM(b, Period_m)[0];

Re: работа с массивом. Индикаторы. ошибка компиляции

Добавлено: 06 фев 2020, 16:20
evge
b - ряд и к нему прибавить 1.5 нельзя

может поможет так (не проверял):

Код: Выделить всё

var b= MOMENTUM(WMA(a, Period_wma), Period_m);
for (int i = 0; i < Period_m; i++) b[i] += 1.5;
 mom_mom_wma = MOMENTUM(b, Period_m)[0];


забыл i++ в цикле, подправил

Re: работа с массивом. Индикаторы. ошибка компиляции

Добавлено: 06 фев 2020, 23:13
Prohar
спасибо. так с компилировалось, но на дисплей ничего не вывело