如何重新编码?如何修复这个错误?
var float close_lock = na
var float open_lock = na
var float high_lock = na
var float low_lock = na
var bool normal_ticker_check = na
normal_ticker_check := syminfo.type != 'spread'
if (normal_ticker_check)
close_lock := security(syminfo.prefix+":"+syminfo.ticker , timeframe.period , close ,barmerge.gaps_off, barmerge.lookahead_on)
open_lock := security(syminfo.prefix+":"+syminfo.ticker , timeframe.period , open ,barmerge.gaps_off, barmerge.lookahead_on)
high_lock := security(syminfo.prefix+":"+syminfo.ticker , timeframe.period , high ,barmerge.gaps_off, barmerge.lookahead_on)
low_lock := security(syminfo.prefix+":"+syminfo.ticker , timeframe.period , low ,barmerge.gaps_off, barmerge.lookahead_on)
else
close_lock := close
open_lock := open
high_lock := high
low_lock := low
错误:无法在if或for中调用'security'或'financial'
如何在全局作用域中呈现您的安全调用,然后按您所拥有的进行分配?我在这里使用了一个元组,以便将安全调用的出现次数减少到1(最佳实践是尽可能少地使用)
var float close_lock = na
var float open_lock = na
var float high_lock = na
var float low_lock = na
var bool normal_ticker_check = na
normal_ticker_check := syminfo.type != 'spread'
[o, h, l, c] = security(syminfo.prefix+":"+syminfo.ticker , timeframe.period , [open, high, low, close] ,barmerge.gaps_off, barmerge.lookahead_on)
if (normal_ticker_check)
close_lock := c
open_lock := o
high_lock := h
low_lock := l
else
close_lock := close
open_lock := open
high_lock := high
low_lock := low