Кодирование скрипта Pine - как сослаться на существующую переменную - PullRequest
0 голосов
/ 26 мая 2020

Я все еще изучаю сосну, но надеюсь, что кто-то может мне помочь с тем, что я пытаюсь сделать: у меня уже есть переменная, которая может возвращать два разных значения: либо 1, либо -1. Я хочу создать новую переменную, которая будет генерировать сигнал только тогда, когда первая переменная равна 1. Как я могу это сделать. Вот что у меня:

fD = 0
sD = 0


fD := hlc3 > fastMA ? 1 : hlc3 < fastMA ? -1 : nz(fDirection[1], 1)
sD := hlc3 > slowMA ? 1 : hlc3 < slowMA ? -1 : nz(sDirection[1], 1)```

I want to create a new variable ```fDPOS``` when ```fD``` is equal to 1; essentially ignoring the -1 value. How can I do that in pine?

1 Ответ

1 голос
/ 26 мая 2020

Вы можете переписать свой скрипт следующим образом:

fD = sign(hlc3 - fastMA)
sD = sign(hlc3 - slowMA)

Функция sign возвращает 1, если аргумент больше 0 и -1, если меньше 0.

Тогда относительно ваш вопрос Я понял, что вы хотите сгенерировать новое значение один раз fD = 1, это можно сделать с помощью:

fDPOS = change(fD) > 0 ? 1 : 0
...