Подскажите, пожалуйста, как применить IsUp(Series, N=1, D=0) к серии индикатора, у которого несколько выходных серий? Например от серии 'PosDI' в индикаторе ADX?
GetValue же вернет значение, а не серию от индикатора
![Грустный :(](./images/smilies/icon_e_sad.gif)
Код: Выделить всё
var A = ADX(Input, Period);
var DI = A["PosDI"];
Код: Выделить всё
A = SMA(Input.Сlose, 35)[0]; // Получаем текущее значение индикатора SMA
B = SMA(Input.Сlose, 35)[-10]; // Получаем значение индикатора SMA 10 точек назад
Код: Выделить всё
A = BB(Input.Сlose, 35).GetValue("Lower", 0); // Получаем текущее значение нижней границы BB
B = BB(Input.Сlose, 35).GetValue("Lower", 10); // Получаем значение нижней границы BB 10 точек назад
Код: Выделить всё
var A = BB(Input.Сlose, 35)["Lower"][0]; // Получаем текущее значение нижней границы BB
var B = BB(Input.Сlose, 35)["Lower"][10]; // Получаем значение нижней границы BB 10 точек назад
Код: Выделить всё
var Lower = BB(Input.Сlose, 35)["Lower"]; // Получаем серию Lower индикатора BB
var B = Lower[10]; // Получаем значение нижней границы BB 10 точек назад
Код: Выделить всё
var B = BB(Input.Сlose, 35); // Результат выполнения BB
var Lower = B["Lower"]; // Получаем серию Lower индикатора BB
var Upper = B["Upper"]; // Получаем серию Upper индикатора BB
evge писал(а):Не документировано, но думал что уже все знают.
Практически нигде я не использовал в своих индикаторах в коде GetValue(), всегда обращался так к сериям.
В документации неплохо было бы обозначить этот способ, сейчас там только это:
Обращение к встроенному индикатору с одним выходным рядом и входом типа ряд
Пример.Код: Выделить всё
A = SMA(Input.Сlose, 35)[0]; // Получаем текущее значение индикатора SMA
B = SMA(Input.Сlose, 35)[-10]; // Получаем значение индикатора SMA 10 точек назад
Обращение к встроенному индикатору с выходным рядом и входом типа финансовый ряд
Пример.Код: Выделить всё
A = BB(Input.Сlose, 35).GetValue("Lower", 0); // Получаем текущее значение нижней границы BB
B = BB(Input.Сlose, 35).GetValue("Lower", 10); // Получаем значение нижней границы BB 10 точек назад
но второе можно сделать и так:Код: Выделить всё
var A = BB(Input.Сlose, 35)["Lower"][0]; // Получаем текущее значение нижней границы BB
var B = BB(Input.Сlose, 35)["Lower"][10]; // Получаем значение нижней границы BB 10 точек назад
что аналогично, + саму конкретную серию можно получить просто вызвав:Код: Выделить всё
var Lower = BB(Input.Сlose, 35)["Lower"]; // Получаем серию Lower индикатора BB
var B = Lower[10]; // Получаем значение нижней границы BB 10 точек назад
или даже нагляднее и удобнее так:Код: Выделить всё
var B = BB(Input.Сlose, 35); // Результат выполнения BB
var Lower = B["Lower"]; // Получаем серию Lower индикатора BB
var Upper = B["Upper"]; // Получаем серию Upper индикатора BB
в итоге:
в Lower[x] - значение серии Lower индикатора BB, x - индекс смещения
в Upper[x] - значение серии Upper индикатора BB, x - индекс смещения
Вернуться в «Стратегии и роботы»
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 7 гостей