将 pine 脚本版本 2 更改为 4 时出现错误
第 17 行:未声明的标识符 '_direction';
第 18 行:在范围“anonym_function_0”中找不到变量“_direction”,无法注册 side
代码如下
//@version=4
study(title='ZigZag PA Strategy V4 ALERT')
useHA = input(false, title='Use Heikken Ashi Candles')
useAltTF = input(true, title='Use Alt Timeframe')
tf = input('30', title='Alt Timeframe')
showPatterns = input(true, title='Show Patterns')
showFib0000 = input(title='Display Fibonacci 0.000:',defval=true)
showFib0236 = input(title='Display Fibonacci 0.236:',defval=true)
showFib0382 = input(title='Display Fibonacci 0.382:',defval=true)
showFib0500 = input(title='Display Fibonacci 0.500:', defval=true)
showFib0618 = input(title='Display Fibonacci 0.618:', defval=true)
showFib0764 = input(title='Display Fibonacci 0.764:', defval=true)
showFib1000 = input(title='Display Fibonacci 1.000:', defval=true)
zigzag() =>
_isUp = close >= open
_isDown = close <= open
_direction = _isUp[1] and _isDown ? -1 : _isDown[1] and _isUp ? 1 : nz(_direction[1])
_zigzag = _isUp[1] and _isDown and _direction[1] != -1 ? highest(2) : _isDown[1] and _isUp and _direction[1] != 1 ? lowest(2) : na
_ticker = useHA ? heikinashi(syminfo.tickerid) : syminfo.tickerid
sz = useAltTF ? (change(time(tf)) != 0 ? security(_ticker, tf, zigzag()) : na) : zigzag()
我该如何修复它?
请帮助我..
在 v4 中,变量需要先声明,然后才能在赋值的右侧部分引用它们。使用前请仔细与 v2 比较结果:
zigzag() =>
_isUp = close >= open
_isDown = close <= open
_direction = 0
_direction := _isUp[1] and _isDown ? -1 : _isDown[1] and _isUp ? 1 : nz(_direction[1])
_zigzag = _isUp[1] and _isDown and _direction[1] != -1 ? highest(2) : _isDown[1] and _isUp and _direction[1] != 1 ? lowest(2) : na
我已将其更新为 pine script v5,还添加了警报。 这里是: https://in.tradingview.com/script/nn0ip0VL-STRATEGY-RS-ZigZag-PA-Strategy-V4-1-updated-to-Pine-Script-v5/