0
def trend = if isNaN(reversal[1]) then 0 else if reversal[1] != reversal then 0 else trend[1] * (1 - smf) + cpc * smf;

def agg_count = compoundvalue(1, if timeInterval != timeInterval[1] then (getValue(agg_count, 1) + timeInterval - timeInterval[1]) % aggMultiplier else getValue(agg_count, 1), 0);

def isPeriodRolled = compoundValue(1, periodIndx != periodIndx[1], yes);

“reversal[1] != reversal ”、“timeInterval != timeInterval[1]”、“periodIndx != periodIndx[1]” 等等。

“X!= X[1]”在 thinkscript 中的真正含义是什么?

4

1 回答 1

0

X != X[1]在thinkScript 意味着X不等于X从吧之前。


thinkScript 在“酒吧”中运作。每个条形代表一个时间范围,例如日线图上的天数或日内图上的分钟数。条形也可以表示“刻度”。对于这个解释,我将使用天数:每根柱线代表一个交易日。

thinkScript 在一个隐藏循环中处理:几乎所有代码都在每个循环中处理一次。例如,循环索引是一个周期内的柱数。例如,如果您正在查看 14 天图表,则代码将类似于以下运行:

for (i = 0; i < 14; i++) { ... your thinkScript code here ... }

但是,有些事情发生了变化。在 thinkScript 中,柱数从左到右:柱 1 是最远的时间(或图表上最左侧),柱 2 是距现在最近的下一个柱,依此类推;以柱 14 结束,例如,作为实际的当前柱(例如,使用 14 天图表)。

然而,当一个人使用下标时,它实际上是相反的。XX[0]表示正在处理的当前柱 - 以最右侧为准。X[1]表示当前一根柱线之前的柱线,X[2]表示当前一根柱线之前的 2 根柱线,依此类推 - 到X[13],在我们的 14 天图表中,是数据中的第 14 天。当然,一个 50 天的图表,比如说,可以从Xback 到X[49],依此类推。

或者,在 thinkScript 中,您实际上可以使用下标查看未来柱:图表中为第二天,图表中为前 2 天。X[-1]X[-2]

总结:X当前柱的值,X是当前柱之前柱的值。X[1]X

于 2021-03-31T01:58:21.753 回答