在pine脚本中,我从别人那里复制的代码给出了错误,但原始代码没有错误

问题描述 投票:0回答:1
London = time(timeframe.period, Londont)
US = time(timeframe.period, USt)
Asia = time(timeframe.period, Asiat)

var clondonhigh = 0.0
var clondonlow = close
var londontime = time
var flondonhigh = 0.0
var flondonlow = 0.0
var flondonopen = 0.0

var onelondonfalse = false
if London
    if high > clondonhigh
        clondonhigh := high
        clondonhigh
    if low < clondonlow
        clondonlow := low
        clondonlow
    if onelondonfalse
        londontime := time
        flondonopen := open
        flondonopen
    flondonhigh := clondonhigh
    flondonlow := clondonlow
    onelondonfalse := false
    onelondonfalse
else
    if onelondonfalse == false
        flondonhigh := clondonhigh
        flondonlow := clondonlow
        flondonlow
    onelondonfalse := true

    clondonhigh := 0.0
    clondonlow := close
    clondonlow

//////////////////////////////////
var cushigh = 0.0
var cuslow = close
var ustime = time
var fushigh = 0.0
var fuslow = 0.0
var fusopen = 0.0

var oneusfalse = false
if US
    if high > cushigh
        cushigh := high
        cushigh
    if low < cuslow
        cuslow := low
        cuslow
    if oneusfalse
        ustime := time
        fusopen := open
        fusopen
    fushigh := cushigh
    fuslow := cuslow
    oneusfalse := false
    oneusfalse
else
    if oneusfalse == false
        fushigh := cushigh
        fuslow := cuslow
        fuslow
    oneusfalse := true

    cushigh := 0.0
    cuslow := close
    cuslow

//////////////////////////////////
var casiahigh = 0.0
var casialow = close
var asiatime = time
var fasiahigh = 0.0
var fasialow = 0.0
var fasiaopen = 0.0

var oneasiafalse = false
if Asia
    if high > casiahigh
        casiahigh := high
        casiahigh
    if low < casialow
        casialow := low
        casialow
    if oneasiafalse
        asiatime := time
        fasiaopen := open
        fasiaopen
    fasiahigh := casiahigh
    fasialow := casialow
    oneasiafalse := false
    oneasiafalse
else
    if oneasiafalse == false
        fasiahigh := casiahigh
        fasialow := casialow
        fasialow
    oneasiafalse := true

    casiahigh := 0.0
    casialow := close
    casialow

代码在这里。在原始代码中没有错误,但是当我完全复制代码时,它会出现错误 “

if
语句的条件必须计算为‘bool’值。 伦敦(用户定义变量)

类型系列 int" 就像“如果亚洲”、“如果我们”和“如果伦敦”中的这样,这里有什么问题以及我该如何解决它

我尝试在 if 行中添加布尔表达式,例如 如果伦敦 == 伦敦时间 代码没有错误,但是当时我的指标无法站在图表上

pine-script pine-script-v5 tradingview-api
1个回答
0
投票

这不是错误,而是警告。

time()
返回
series int
并且您使用它就像在 if 检查中使用
bool
一样。

只需将它们投射到

bool
就可以了。

London = bool(time(timeframe.period, Londont))
US = bool(time(timeframe.period, USt))
Asia = bool(time(timeframe.period, Asiat))
© www.soinside.com 2019 - 2024. All rights reserved.