繁体   English   中英

无法在 if 条件中声明变量 (PineScript)

[英]Not possible to declare variables in a if-condition (PineScript)

我正在尝试改进我的指标,因为当我切换时间范围时加载时间太长。 现在我正在尝试更改代码,但我遇到了问题。

看看下面的代码。

我想在 if 条件中声明变量的值。 但是当我使用下面的代码时,如果它的“真”,它不会在 if 条件中使用声明的变量。 它总是使用我在代码开头声明的变量。

任何提示我如何解决这个问题?

 stochCalc = sma(stoch(close, high, low, 14), 6)
    v1 = "1"
    v2 = "1"
    v3 = "1"

        if timeframe.multiplier == 240
            v1 = "15"
            v2 = "30"
            v3 = "60"
        else
            if timeframe.multiplier == 720
                v1 = "60"
                v2 = "120"
                v3 = "240"
            else
                if timeframe.multiplier == 1440
                    v1 = "240"
                    v2 = "720"
                    v3 = "1440"
                else
                    v1 = "1"
                    v2 = "2"
                    v3 = "3"

        k1 = security(syminfo.tickerid, v1, stochCalc)
        k2 = security(syminfo.tickerid, v2, stochCalc)
        k3 = security(syminfo.tickerid, v3, stochCalc)

        plot(k1, color=color.yellow, transp=0, linewidth=2)
        plot(k2, color=color.yellow, transp=0, linewidth=2)
        plot(k3, color=color.yellow, transp=0, linewidth=2)

我正在尝试改进我的指标,因为当我切换时间范围时加载时间太长。 现在我正在尝试更改代码,但我遇到了问题。

看看下面的代码。

我想在 if 条件中声明变量的值。 但是当我使用下面的代码时,如果它的“真”,它不会在 if 条件中使用声明的变量。 它总是使用我在代码开头声明的变量。

任何提示我如何解决这个问题?

 stochCalc = sma(stoch(close, high, low, 14), 6)
    v1 = "1"
    v2 = "1"
    v3 = "1"

        if timeframe.multiplier == 240
            v1 = "15"
            v2 = "30"
            v3 = "60"
        else
            if timeframe.multiplier == 720
                v1 = "60"
                v2 = "120"
                v3 = "240"
            else
                if timeframe.multiplier == 1440
                    v1 = "240"
                    v2 = "720"
                    v3 = "1440"
                else
                    v1 = "1"
                    v2 = "2"
                    v3 = "3"

        k1 = security(syminfo.tickerid, v1, stochCalc)
        k2 = security(syminfo.tickerid, v2, stochCalc)
        k3 = security(syminfo.tickerid, v3, stochCalc)

        plot(k1, color=color.yellow, transp=0, linewidth=2)
        plot(k2, color=color.yellow, transp=0, linewidth=2)
        plot(k3, color=color.yellow, transp=0, linewidth=2)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM