Стратегии и роботы > IsUp от индикатора с несколькими выходными сериями
IsUp от индикатора с несколькими выходными сериями
Здравствуйте.
Подскажите, пожалуйста, как применить IsUp(Series, N=1, D=0) к серии индикатора, у которого несколько выходных серий? Например от серии 'PosDI' в индикаторе ADX?
GetValue же вернет значение, а не серию от индикатора
Подскажите, пожалуйста, как применить IsUp(Series, N=1, D=0) к серии индикатора, у которого несколько выходных серий? Например от серии 'PosDI' в индикаторе ADX?
GetValue же вернет значение, а не серию от индикатора
- evge
- Администратор
- Сообщения: 1811
- Зарегистрирован: 04 фев 2016, 09:46
- Откуда: Млечный путь, планета Земля
- Благодарил (а): 83 раза
- Поблагодарили: 367 раз
- Контактная информация:
Re: IsUp от индикатора с несколькими выходными сериями
не используйте GetValue()
делайте так:
используте затем DI, или можно сразу A["PosDI"]
делайте так:
Код: Выделить всё
var A = ADX(Input, Period);
var DI = A["PosDI"];
используте затем DI, или можно сразу A["PosDI"]
никогда такого не было и вот опять
Re: IsUp от индикатора с несколькими выходными сериями
Огромное спасибо за помощь! Да еще и так оперативно.
-
- Сообщения: 535
- Зарегистрирован: 11 ноя 2018, 17:11
- Благодарил (а): 21 раз
- Поблагодарили: 92 раза
Re: IsUp от индикатора с несколькими выходными сериями
А я что-то не припомню, такой метод обращения к серии документирован?
(Если нет, то явно следует внести в документацию.)
(Если нет, то явно следует внести в документацию.)
- evge
- Администратор
- Сообщения: 1811
- Зарегистрирован: 04 фев 2016, 09:46
- Откуда: Млечный путь, планета Земля
- Благодарил (а): 83 раза
- Поблагодарили: 367 раз
- Контактная информация:
Re: IsUp от индикатора с несколькими выходными сериями
Не документировано, но думал что уже все знают.
Практически нигде я не использовал в своих индикаторах в коде GetValue(), всегда обращался так к сериям.
В документации неплохо было бы обозначить этот способ, сейчас там только это:
Обращение к встроенному индикатору с одним выходным рядом и входом типа ряд
Пример.
Обращение к встроенному индикатору с выходным рядом и входом типа финансовый ряд
Пример.
но второе можно сделать и так:
что аналогично, + саму конкретную серию можно получить просто вызвав:
или даже нагляднее и удобнее так:
в итоге:
в Lower[x] - значение серии Lower индикатора BB, x - индекс смещения
в Upper[x] - значение серии Upper индикатора BB, x - индекс смещения
Практически нигде я не использовал в своих индикаторах в коде 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 - индекс смещения
никогда такого не было и вот опять
-
- Сообщения: 535
- Зарегистрирован: 11 ноя 2018, 17:11
- Благодарил (а): 21 раз
- Поблагодарили: 92 раза
Re: IsUp от индикатора с несколькими выходными сериями
evge писал:
> Не документировано, но думал, что уже все знают.
Не, не все.
Спасибо за информацию.
> Не документировано, но думал, что уже все знают.
Не, не все.
Спасибо за информацию.
Re: IsUp от индикатора с несколькими выходными сериями
Евгений,
а вы пробовали проверять результаты такого метода? Я отдал в лог значения и результат обработки и у меня IsUp отдает true, а сами значения в серии бывает снижаются...
а вы пробовали проверять результаты такого метода? Я отдал в лог значения и результат обработки и у меня IsUp отдает true, а сами значения в серии бывает снижаются...
Re: IsUp от индикатора с несколькими выходными сериями
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 - индекс смещения
Евгений,
а вы пробовали проверять результаты такого метода? Я отдал в лог значения и результат обработки и у меня IsUp отдает true, а сами значения в серии бывает снижаются...
- evge
- Администратор
- Сообщения: 1811
- Зарегистрирован: 04 фев 2016, 09:46
- Откуда: Млечный путь, планета Земля
- Благодарил (а): 83 раза
- Поблагодарили: 367 раз
- Контактная информация:
Re: IsUp от индикатора с несколькими выходными сериями
Не проверял.
Надо проверить, если действительно не работает, то это баг.
Ещё надо пробовать на последнем АД4.
Надо проверить, если действительно не работает, то это баг.
Ещё надо пробовать на последнем АД4.
никогда такого не было и вот опять
Вернуться в «Стратегии и роботы»
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость