请求加入延时函数,原因有几点。希望能采纳 [文华财经]
- 咨询内容:
	
	 1,由延时来避免重复下单:    tick行情500毫秒一个变化,举例:    data = Def_TickData("RB1505",1,2);     IF( data[1].Bid1 > data[0].Bid1)    T_Deal("RB1505",0,0,1,Offers("RB1505","bid1"));    延时500毫秒    这样循环时因为有500毫秒的延时,就避免了重复下单。2,减少CPU占有:    假如有10条if在判断,算它10毫秒走完循环,那么就算在    后面加个1毫秒延时,也会减少模型占有CPU运算的1/11。    何况是500毫秒一个tick。加个200,400毫秒的延时都不会错过行情判断3,简单。能不能采纳都告知我一下。谢谢 
 
    
	
 -  文华技术人员:
	
	
1. 重复下单,您可以加一个全局变量来解决。不需要延时函数。
比如:
data = Def_TickData("RB1505",1,2);
IF( data[1].Bid1 > data[0].Bid1 && M==0) { T_Deal("RB1505",0,0,1,Offers("RB1505","bid1")); M=1; } 2. 如果执行一个IF,其他的IF不想在重复执行。可以用ELSE IF来代替其他的IF. 比如: IF(COND1) { .... } ELSE IF(COND2) { .... } ELSE IF(COND3) { .... } -  文华客服:
	
	这是我全部的语句,这么写我会重复的下单,假如条件判断里加了个M==0,条件成立后在执行上再赋予M=1。这样我重复是解决了,但语句就再也不会让条件成立了。VAR_TICKDATA data;GLOBAL_VAR gdID,gdsj;VOID MAIN(){data = Def_TickData("RB1505",1,2); // 保存最近2笔的tick数据IF( data.State == 1 ){IF( data[1].Bid1 > data[0].Bid1){//MessageOut ("挂单");T_DeleteOrder(gdID);gdID=T_Deal("RB1505",0,0,1,Offers("RB1505","bid1"));//发出委托bid1gdsj=CurrentTime();}}IF (CurrentTime()==gdsj+5){//MessageOut("挂单撤销");T_DeleteOrder(gdID);}IF (T_OrderState(gdID) == 1){//MessageOut("挂单成交,挂单止盈4点");T_Deal("RB1505",1,2,1,Offers("RB1505","bid1")+4);}}
 -  网友回复:
	
	
语句不会让条件在成立是由于你没有对M重新赋值为0 ,在平仓委托成交后将M=0就可以了。
 - 网友回复: 我策略是tick每往上一跳时都挂买1价买,5秒没成交就撤挂单。假如这笔挂单成交就挂卖1价+4个点平今。挂单平今的我会一直熬,但每个tick上跳我都会买
 
有思路,想编写各种指标公式,程序化交易模型,选股公式,预警公式的朋友
可联系技术人员 QQ: 511411198  进行 有偿 编写!(不贵!点击查看价格!)
                        
相关文章
- 
                        没有相关内容
                       
 

                    
会员登录/注册