微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Pine Script条件语句语法

如何解决Pine Script条件语句语法

我努力用Pine编写if语句。 这个想法是当警告信号触发时止损收紧。 此更严格的止损应代替常规止损和尾随止损。我希望这是一个简单的语法错误,但是我似乎无法通过编辑缩进和空格来修复它。我还有什么更基本的要忽略的吗?

感谢您抽出宝贵的时间阅读本文!

longLossperc = input(title="Long Stop Loss (%)",minval=0.0,step=0.1,defval=3.4) * 0.01 
longTrailPerc = input(title="Long Trail Loss (%)",defval=2.5) * 0.01 
longTightStopPerc  = input(title="Long K Loss (%)",defval=0.6) * 0.01 

longStopPrice = strategy.position_avg_price * (1 - longLossperc)
longTrailPrice = strategy.position_avg_price * (1 - longTrailPerc) 
longTightStop = high * (1 - longTightStopPerc) 

    
stopValueLong = 0.0
if (Signal)
    stopValueLong = longTightStop
     else
       stopValueLong = max(longStopPrice,longTailPrice)
else
    0





    

解决方法

您将需要以下形式的某种形式,该形式假设您具有状态变量以了解是否进行交易的区别:

var stopValueLong = 0.0
if (Signal)
    stopValueLong := longTightStop
else if inTrade
    stopValueLong := max(longStopPrice,longTailPrice)
else if closeTrade
    stopValueLong := na

:=运算符对于使用stopValueLong语句的本地作用域将值分配给if变量很重要。看到: https://www.tradingview.com/pine-script-docs/en/v4/language/Expressions_declarations_and_statements.html#variable-assignment

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。