a894554096 发表于 2015-6-23 17:51:30

tb这怎么解决

Params                          
Vars            
       NumericSeries SX;
       NumericSeries DP;
       NumericSeries KP;      



                         //(CurrentTime-A_OrderTime)//平台时间-委托单时间                                       
Begin                     
         
         
   SX=20150701;
If(Date>=SX){setglobalvar(8,81);}   
         Else{setglobalvar(8,80);}      
                        
         if(Getglobalvar(8)==80&&A_BuyPosition==0&&A_SellPosition==0&&(CurrentTime-A_OrderTime)>0.000020)   //赋予初始值
        {setglobalvar(0,0);
     setglobalvar(1,10);
     setglobalvar(2,20);
     setglobalvar(3,30);
     setglobalvar(4,40);
     setglobalvar(5,50);}
         
         
         
If(A_BuyPosition==0&&A_SellPosition==0&&Getglobalvar(0)==0)
   { A_SendOrder(Enum_Buy, Enum_Entry, 1 ,Q_AskPrice );  //多头开仓  
    A_SendOrder(Enum_Sell, Enum_Entry,1 ,Q_BidPrice);    //空头开仓  
         setglobalvar(0,1); }
根本控制不住重复发单  初始值就不知道放在那里才能不被初始化

ploughtr 发表于 2017-5-30 15:38:30

系统逻辑与用户交易策略逻辑混在一起,类似的问题他们不可能解决,永远都不可能解决,除非另外定制一个系统防范机制,在交易条件满足的情况下放过第一个下单指令,忽略其余的同类指令。但这样做,又把交易的自由性和灵活性杀掉了,也就杀掉了程序的自动化,:lol
页: [1]
查看完整版本: tb这怎么解决