首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >松脚本中的if语法

松脚本中的if语法
EN

Stack Overflow用户
提问于 2021-01-27 05:18:07
回答 2查看 847关注 0票数 0

我刚开始练音符,我不知道我的if语法出了什么问题。请帮帮忙

代码语言:javascript
复制
//@version=4

strategy(title="Weighted Moving ATR", shorttitle="WMATR Stra Test", overlay = true)

//Changing inputs based on ticker
if (syminfo.ticker == "AAPL")
     LenWATR = 43
     MultWATR = 1
else if (syminfo.ticker == "AAL")
     LenWATR = 21
     MultWATR = 1

我一直得到第13行:不匹配的输入'LenWATR‘,期望’行的末尾没有行的延续‘。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-01-27 08:47:34

你得到错误的原因是缩进是错误的。

您正在缩进5个空白空间,但缩进应该是4个空白空间的倍数。

你也可以这样写:

代码语言:javascript
复制
//@version=4
strategy(title="Weighted Moving ATR", shorttitle="WMATR Stra Test", overlay = true)

var int LenWATR  = na
var int MultWATR = na

//Changing inputs based on ticker
LenWATR := if syminfo.ticker == "AAPL" 
    43
else if syminfo.ticker == "AAL"
    1
else
    99 // default value

MultWATR := if syminfo.ticker == "AAL" 
    1
else if syminfo.ticker == "AAL"
    1
else
    77 // default value

//Changing inputs based on ticker: short version
LenWATR  := syminfo.ticker == "AAPL" ? 43 : syminfo.ticker == "AAL" ? 1 : 99
MultWATR := syminfo.ticker == "AAPL" ?  1 : syminfo.ticker == "AAL" ? 1 : 77

plot(na)
票数 0
EN

Stack Overflow用户

发布于 2021-01-27 06:00:12

你不需要括号。此外,如果在if语句块中使用=,则在本地作用域中初始化变量。如果变量存在于其他地方,则值赋值应使用:=

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65913271

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档