Стратегии и роботы > IsUp от индикатора с несколькими выходными сериями

Обсуждение, описание стратегий и роботов, идеи для стратегий
spekt
Сообщения: 12
Зарегистрирован: 15 фев 2019, 07:24

IsUp от индикатора с несколькими выходными сериями

Непрочитанное сообщение spekt » 30 май 2019, 07:39

Здравствуйте.

Подскажите, пожалуйста, как применить IsUp(Series, N=1, D=0) к серии индикатора, у которого несколько выходных серий? Например от серии 'PosDI' в индикаторе ADX?

GetValue же вернет значение, а не серию от индикатора :(

Аватара пользователя
evge
Администратор
Сообщения: 1652
Зарегистрирован: 04 фев 2016, 09:46
Откуда: Млечный путь, планета Земля
Благодарил (а): 64 раза
Поблагодарили: 303 раза
Контактная информация:

Re: IsUp от индикатора с несколькими выходными сериями

Непрочитанное сообщение evge » 30 май 2019, 07:42

не используйте GetValue()

делайте так:

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

var A = ADX(Input, Period);
var DI = A["PosDI"];


используте затем DI, или можно сразу A["PosDI"]
никогда такого не было и вот опять

spekt
Сообщения: 12
Зарегистрирован: 15 фев 2019, 07:24

Re: IsUp от индикатора с несколькими выходными сериями

Непрочитанное сообщение spekt » 30 май 2019, 07:46

Огромное спасибо за помощь! Да еще и так оперативно.

BugsDigger
Сообщения: 338
Зарегистрирован: 11 ноя 2018, 17:11
Благодарил (а): 21 раз
Поблагодарили: 42 раза

Re: IsUp от индикатора с несколькими выходными сериями

Непрочитанное сообщение BugsDigger » 30 май 2019, 08:14

А я что-то не припомню, такой метод обращения к серии документирован?
(Если нет, то явно следует внести в документацию.)

Аватара пользователя
evge
Администратор
Сообщения: 1652
Зарегистрирован: 04 фев 2016, 09:46
Откуда: Млечный путь, планета Земля
Благодарил (а): 64 раза
Поблагодарили: 303 раза
Контактная информация:

Re: IsUp от индикатора с несколькими выходными сериями

Непрочитанное сообщение evge » 30 май 2019, 08:37

Не документировано, но думал что уже все знают.
Практически нигде я не использовал в своих индикаторах в коде 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 - индекс смещения
никогда такого не было и вот опять

BugsDigger
Сообщения: 338
Зарегистрирован: 11 ноя 2018, 17:11
Благодарил (а): 21 раз
Поблагодарили: 42 раза

Re: IsUp от индикатора с несколькими выходными сериями

Непрочитанное сообщение BugsDigger » 30 май 2019, 10:17

evge писал:

> Не документировано, но думал, что уже все знают.

Не, не все. :)
Спасибо за информацию.

spekt
Сообщения: 12
Зарегистрирован: 15 фев 2019, 07:24

Re: IsUp от индикатора с несколькими выходными сериями

Непрочитанное сообщение spekt » 26 июл 2019, 16:03

Евгений,

а вы пробовали проверять результаты такого метода? Я отдал в лог значения и результат обработки и у меня IsUp отдает true, а сами значения в серии бывает снижаются...

spekt
Сообщения: 12
Зарегистрирован: 15 фев 2019, 07:24

Re: IsUp от индикатора с несколькими выходными сериями

Непрочитанное сообщение spekt » 11 сен 2019, 19:00

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
Администратор
Сообщения: 1652
Зарегистрирован: 04 фев 2016, 09:46
Откуда: Млечный путь, планета Земля
Благодарил (а): 64 раза
Поблагодарили: 303 раза
Контактная информация:

Re: IsUp от индикатора с несколькими выходными сериями

Непрочитанное сообщение evge » 16 сен 2019, 12:58

Не проверял.
Надо проверить, если действительно не работает, то это баг.
Ещё надо пробовать на последнем АД4.
никогда такого не было и вот опять


Вернуться в «Стратегии и роботы»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 4 гостя