最近几天都发生了闪烁,都是数值很接近的情况下,当根走完那一刹那还是有信号,下根k出来几秒后信号消失
c>ma(ref(c,1),20);
60分钟K周期,
下午14:00的时候,
当时显示,c已经大于这根均线,并且已经在系统发单,下根k出来过几秒后信号消失,也就是说这一刹那,原先已经固定的c和均线值在下跟根k线出来后几秒改变了,怎么回事?出现好几次了
回看后面c的值大概是2791,均线值是2791.067
1、你的下单条件是否就是这一个语句?按理在K线走完以后,这个条件在历史上的值是不会发生变化的。可以使用debugfile调试输出你的条件,看当时满足条件的时候,C的值和均线的值都是多少,方便分析。
2、你的版本是多少?可以的话,可以提供下完整代码,我们本地跟踪测试一下。
[此贴子已经被作者于2018/2/5 17:30:47编辑过]
你这个是全部代码吗?最好提供下更多的代码,因为从代码逻辑来看是完全不可能闪烁的。此外你当前什么版本?
v4.51,对开平仓就是这个代码,debugfile函数用过了,抓到的值都是在k线走完后十几秒,根本抓不到当时的值。
开仓
c>ma(ref(c,1),20) and c>Hhv(ref(c,1),20);
平仓
c<ma(ref(c,1),20) ;
你们可以测试看有没有问题,特别注意条件为临界点的情况
,可能你们盘后测试测不出来,因为数据都走完了,要盘中,下根k线转换的一瞬间会有问题或者你们可以模拟盘中,
我怀疑是不是系统使用的发单时间和当根k线收盘的时间有个时间差,所以在临界数值时就会有问题
晚上想了想,结合另一个贴提到的问题http://www.weistock.com/bbs/dispbbs.asp?boardid=2&Id=161492
这个信号闪烁有没有可能是你们的指数合约数据计算不够及时照成的,因为开平仓条件处于临界点,稍微有一个点的变动就会导致原来开仓变不开仓,原来平仓变不平仓,
举个例子,当前k线走完时1秒钟,系统收到发单信号时的指数标价是2000,符合开仓信号,开仓。但当k线走完5秒后,由于指数合约计算有一些时间偏差(或者是其它原因导致的偏差,总之这个偏差会导致细微变化),修正原来的标价为2001,这样原来的信号不就闪烁了吗?在其它不是开平仓条件处于临界点的情况,这1、2个点的改动不会对信号产生影响,但一旦处于临界点,问题就来了。我的推测,请技术员考虑下
如果是行情中,其客户端连接的是同一台行情服务器,其指数合约不会发生变化,除非行情服务器切换,或者断开重连后,可能存在连接到同一行情服务的其他服务器端时,才有可能出现指数合约的数据值发生变化。
请确保你本地网络环境稳定。
对于你的问题,我们会测试确认后回复
[此贴子已经被作者于2018/2/5 22:19:53编辑过]
“
对于你的问题,我们会测试确认后回复”
好的,谢谢,测试的时候请用指数合约,临界点条件,k线转换瞬间。另外能大概给个时间多久能有结果吗?