全部 智大领峰 TBQuant功能 TBL语言 TB开户 问答专区 高手圈 其他
已解决
为什么用CurrentContracts作开仓判定条件,不会出现闪烁
2023-09-07 02:18

比如

 If(固定条件 and abs(CurrentContracts)<10)

  {   SellShort(10-abs(CurrentContracts),open);   }


最后开仓出来后,abs(CurrentContracts)=10,那么IF里面的条件理应消失了,为什么却没有闪烁?

wangkaiming

print(事前CurrentContracts

If(固定条件 and abs(CurrentContracts)<10)

 {   SellShort(10-abs(CurrentContracts),open);   }


print(事后CurrentContracts

你输出看一下

图表系统每次以上一根结束状态开始

全局变量才是永久独立

2023-09-07 09:01
qdjh888888
@wangkaiming

CurrentContracts显示是一直变化的,但信号并没有闪烁。

2023-09-07 09:31
kyover

有一种容器,bar内根据tick驱动的时候,每次初值都是上一根bar的结果。

举个例子,这种容器第一根bar运算完结果是1,第二根bar执行了自加一运算,无论在第二根bar上来多少根tick,这个容器运算结果都是2。因为每次执行自加一运算的时候,都是以第一根bar的结果1为基础进行加一。

这种容器在tb语言里被称为序列类型,currentcontracts就是序列类型。还有开高低收的关键字也是,比如如果去收盘价回溯一根close[1],这个取值是上一根bar的值,而不是当前bar上一tick的值。

2023-09-07 09:07
qdjh888888
@kyover

也就是说:不管这个CurrentContracts是否变化,用他来做判定条件,就类似于marketpotion一样,是不会出现信号闪烁的。

2023-09-07 09:32
您未登录,请先 登录注册 后发表评论
顶部