为什么我在松树脚本中收到"undeclared identifier"错误?



我在 tradingview.com 从公共库中复制了以下代码。它似乎是用旧版本的松树脚本写的。我目前正在使用版本 4,我觉得错误是因为我将函数 smma 从自身内部调用为递归函数,但我不确定如何修复错误。

study("My Strategy", overlay=true)
//SUITABLE FOR INTRADAY IN BANK NIFTY 5MIN 10MIN AND 15MIN APPLICAPABLE IN ANY TIME FRAME
//TEST YOUR STRATEGY
//borrowed this concept from someone else and modified it for our needs
//teach me pine i wanna learn from you =>skgs01@gmail.com
smma(src, length) =>
smma = na(smma[1]) ? sma(src, length) : (smma[1] * (length - 1) + src) / length
smma
jawLength = input(13, "Jaw Length")
jawOffset = input(8, "Jaw Offset")
jaw = smma(hl2, jawLength)
plot(jaw, "Jaw", color=color.blue, offset=jawOffset)

Baris Yakut是对的。您应该在使用变量之前声明它。喜欢这个:

//@version=4
study("My Strategy", overlay=true)
//SUITABLE FOR INTRADAY IN BANK NIFTY 5MIN 10MIN AND 15MIN APPLICAPABLE IN ANY TIME FRAME
//TEST YOUR STRATEGY
//borrowed this concept from someone else and modified it for our needs
//teach me pine i wanna learn from you =>skgs01@gmail.com
smma(src, length) =>
var float smma = na
smma := na(smma[1]) ? sma(src, length) : (smma[1] * (length - 1) + src) / length
smma
jawLength = input(13, "Jaw Length")
jawOffset = input(8, "Jaw Offset")
jaw = smma(hl2, jawLength)
plot(jaw, "Jaw", color=color.blue, offset=jawOffset)

最新更新