变量在块内部更改,但代码卡在循环中

variable changes inside while block but code stuck in loop

提问人:Unique631 提问时间:10/21/2023 最后编辑:Ken WhiteUnique631 更新时间:10/26/2023 访问量:29

问:

有谁知道为什么这段代码会卡在循环中?

var stochRsiCross=false

if under20 and stochRsiCrossover
    stochRsiCross:=true
    while stochRsiCross
        if cciCrossover
            strategy.order("buy",strategy.long)
            stochRsiCross:=false

我希望这段代码做的是,当低于 20 并且发生交叉时,等待交叉发生。我不知道它是否真的这样做了,因为它给出了卡在循环中的错误。StochRsiCCI

循环 while-loop pine-script

评论

0赞 vitruvius 10/21/2023
你怎么知道变量的值发生了变化?
0赞 vitruvius 10/21/2023
此外,此代码将不起作用。但事实并非如此。我建议你从这里开始。pinescript
0赞 Unique631 10/21/2023
@vitruvius最后一个 if 内,stochRsiCross:=false
0赞 Unique631 10/21/2023
@vitruvius当前蜡烛上可能不正确。所以它卡住了。我想我不应该使用if cciCrossoverwhile

答:

0赞 vgladkov 10/26/2023 #1

从这些代码中,当 your 为 true 时,您将进入 while 循环,如果为 false,则永远不会得到停止循环的行under20 and stochRsiCrossovercciCrossoverstochRsiCross:=false