Pine script 如何减少脚本编译计数&引用;编译的脚本代码太长”;

Pine script 如何减少脚本编译计数&引用;编译的脚本代码太长”;,pine-script,Pine Script,我正在尽可能地保持我的代码干净。尽可能多地使用函数,减少if/else的使用,改用条件运算符,我没有for循环 我仍然收到这样的信息: 编译的脚本代码太长:61637。限额是60000 将计算限制在最后的X条数量会有所帮助吗?如果是,如何做到这一点? 减少这一数字的下一个最佳方向是什么?我确实有一些数组(这是我唯一能想到的) 我尝试减少变量名的字符数,减少每行的字符数,这并没有改变错误号 代码总行数:3.7k(222k个字符),我认为其中700行是文档 谢谢大家! 60K max count是用

我正在尽可能地保持我的代码干净。尽可能多地使用函数,减少if/else的使用,改用条件运算符,我没有for循环

我仍然收到这样的信息:

编译的脚本代码太长:61637。限额是60000

将计算限制在最后的X条数量会有所帮助吗?如果是,如何做到这一点? 减少这一数字的下一个最佳方向是什么?我确实有一些数组(这是我唯一能想到的)

我尝试减少变量名的字符数,减少每行的字符数,这并没有改变错误号

代码总行数:3.7k(222k个字符),我认为其中700行是文档


谢谢大家!

60K max count是用于已编译令牌的,因此,例如,变量名不会影响计数。3K线是松树文字的最长区域。虽然这不一定是意料之中的事,但你达到了极限也就不足为奇了。除了重构代码(您似乎已经这样做了),将逻辑分叉到另一个脚本并使用外部输入链接它们看起来是从这里开始的最佳方式。

也许可以看看是否有方法减少使用var关键字的函数调用?我认为,如果它必须维护自己的实例,那么这可能是一个问题。但是,看看是否有什么可以改变的东西会破坏脚本但仍然可以编译,如果你从函数中删除一行,它会减少编译计数,你可能知道从哪里开始。我猜你的脚本使用嵌套的或只是大量的函数迭代,60k是一个“扩展”的代码长度限制。谢谢你,Luc!如果我是正确的,我只能在另一个脚本上使用1个外部源。这对我的情况不起作用,因为我的脚本将多个指标组合成一个.y正确。如果您正在使用许多指示器,那么也许可以看看您是否正在为所有您可以使用的指示器使用内置版本。很多最流行的软件都有Pine内置,比如
cci()
rsi()
,等等。是的,事实上,我用的都是这种方式。在其他方面,我优化了代码,使其尽可能干净、轻便。现在我设法缩短了它,我只是希望在我添加一些新的逻辑时,它会给出那个错误,这不仅仅是几行代码:)谢谢你的友好回答!