请问如下代码为何会出现信号闪烁? [开拓者 TB]
-
咨询内容:
请问如下代码为何会出现信号闪烁。
If(Close[1]<GetGlobalVar(1)){
Sell(0,Open);
SetGlobalVar(1,0); //这是一个自己定义的用来止损的全局变量
}
图表上这个信号是有的,模拟交易也成交了,但是策略显示还有持仓。
具体描述是,这根K线的情况是一个隔夜的大阳线。开盘报了一个卖价,1秒钟过后就报信号闪烁了。然后又过了4秒委托成交,这时候账户没有持仓了,图表上也有平仓信号,但是策略显示的仓位还在。
请问这个问题是什么造成的,应该怎么解决。我猜测是报价是open或者全局变量,但是完全不知道为什么。来源:CXH99.COM
-
TB技术人员:
这个地方使用全局变量不太合适 。。建议换成序列变量。
-
TB客服:
小米 发表于 2020-3-25 13:47
这个地方使用全局变量不太合适 。。建议换成序列变量。
我也是在论坛其他地方看到全局变量会造成信号闪烁。但是没看到原理解释。
版主能不能再解释一下这个地方为什么全局变量不太合适啊,我好知其所以然。 -
网友回复:
a410999923 发表于 2020-3-25 17:34
我也是在论坛其他地方看到全局变量会造成信号闪烁。但是没看到原理解释。
版主能不能再解释一下这个地方 ...
先看一下这个贴子里3#的内容http://bbs.tb18.net/thread-22580-1-1.htm,了解一下序列变量的运行机制。。
而全局变量与序列变量不同,他的值一旦被改变,那就是改变了。且一个全局变量里不能记录多个值 。
- 网友回复:
小米 发表于 2020-3-26 09:04
先看一下这个贴子里3#的内容http://bbs.tb18.net/thread-22580-1-1.htm,了解一下序列变量的运行机制。。 ...
页面404。
这个代码里面里感觉用全局变量没有问题啊。globalvar里面放了止损价格,如果止损了就把这个全局变量置为0.,这会在什么情况下出错呢。
有思路,想编写各种指标公式,交易模型,选股公式,还原公式的朋友
可联系技术人员 QQ: 262069696 或微信号:cxh99cxh99 进行 有偿收费 编写!
(注:由于人数限制,QQ或微信请选择方便的一个联系我们就行,加好友时请简单备注下您的需求,否则无法通过。谢谢您!)
相关文章
-
没有相关内容