Pinescript Tradingview не может использовать непостоянную переменную в функции безопасности в качестве аргумента - PullRequest
0 голосов
/ 22 апреля 2020

Прежде чем написать это, я попробовал определенную идею, приведенную здесь, все еще не работающую, поэтому снова спрашиваю.

Это код V4 V2 = True SarUp interger vlue emaslow integer value // код отсюда

get_pltval(V2,sarUp,emaSlow) =>
    pltval = 0.0
    plval := V2 ? sarUp <= ohlc4 and sarUp[2] > high and sarUp[3] > high and sarUp[4] > high ? 1 : 0 : ohlc4 > emaSlow ? 1 : 0

var _src = 0.0 
_src := get_pltval(V2,sarUp,emaSlow)

test = security(syminfo.tickerid, tf, _src, barmerge.gaps_off, barmerge.lookahead_off)

Ошибка Невозможно использовать изменяемую переменную в качестве аргумента в функции безопасности

Любое решение этой проблемы. Пожалуйста, поделитесь

1 Ответ

0 голосов
/ 23 апреля 2020

barmerge и lookahead по умолчанию отключены, поэтому нет необходимости явно их определять. Вы можете вызвать функцию из security():

//@version=4
study("")
get_pltval(V2,sarUp,emaSlow) =>
    pltval = 0.0
    plval := V2 ? sarUp <= ohlc4 and sarUp[2] > high and sarUp[3] > high and sarUp[4] > high ? 1 : 0 : ohlc4 > emaSlow ? 1 : 0

test = security(syminfo.tickerid, tf, get_pltval(V2,sarUp,emaSlow))
...