If statement Thinkscript中的If语句
我是一名初级thinkscript程序员,我正在快速学习thinkscript的语法。然而,我对if语句有困难。我知道在一个if块中可以有一条语句,但是在一个if块中可以有多条语句吗 不:如果(条件)那么(这个)或者(那个)If statement Thinkscript中的If语句,if-statement,thinkscript,If Statement,Thinkscript,我是一名初级thinkscript程序员,我正在快速学习thinkscript的语法。然而,我对if语句有困难。我知道在一个if块中可以有一条语句,但是在一个if块中可以有多条语句吗 不:如果(条件)那么(这个)或者(那个) 但是:如果(条件)那么{(这个);(那个);} 这是可能的。只是把绘图变量误认为是条件语句,因为它们反过来又使用条件语句来绘制图形。thinkScript基本上有三种形式的if用法。这三种表单都需要else分支。一种形式允许设置或打印一个或多个值。其他两个仅允许设置或打印一
但是:如果(条件)那么{(这个);(那个);} 这是可能的。只是把绘图变量误认为是条件语句,因为它们反过来又使用条件语句来绘制图形。thinkScript基本上有三种形式的
if
用法。这三种表单都需要else
分支。一种形式允许设置或打印一个或多个值。其他两个仅允许设置或打印一个值
if
语句:可以为括号内的plot
或def
变量设置一个或多个值if
函数:与上述类似,但更紧凑,这是thinkScript(r)版本的三元条件语句。区别在于真值和假值必须是双值。因此,它不能用于设置颜色,例如,或其他不表示双值的项目作为旁注,虽然示例中没有显示,但是可以使用
def
关键字以及plot
关键字来定义变量值。与论坛站点不同,我们不使用“感谢”或“感谢任何帮助”或签名。请参阅“.顺便说一句,这是“提前感谢”,而不是“提前感谢”。感谢您编辑John SaundersSorry…我不明白这一点。这也不能真正回答问题:“在一个if块中是否可能有多个语句?”如果可能,那么如何?
def val1;
plot val2;
if (cond) {
val1 = <value>;
val2 = <value>;
} else {
# commonly used options:
# sets the variable to be Not a Number
val1 = Double.NaN;
# sets the variable to what it was in the previous bar
# commonly used for recursive counting or retaining a past value across bars
val2 = val2[1];
}
def val1 = if <condition> then <value if true> else <value if false>;
def var1 = if(<condition>, <value if true>, <value if false>);
# using version 3, "if function"
plot Maximum1 = if(close > open, close, open);
# using version 2, "if expression"
plot Maximum2 = if close > open then close else open;
# using version 1, "if statement", with two variables, a `plot` and a `def`
plot Maximum3;
def MinimumThing;
if close > open {
Maximum3 = close;
MimimumThing = open;
} else {
Maximum3 = open;
MinimumThing = close;
}