欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → 挂单超过N秒重新挂单问题

   

欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。    


  共有1937人关注过本帖平板打印复制链接

主题:挂单超过N秒重新挂单问题

帅哥哟,离线,有人找我吗?
eonianhouge
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:53 积分:0 威望:0 精华:0 注册:2013/6/5 12:39:14
挂单超过N秒重新挂单问题  发帖心情 Post By:2015/11/13 10:20:46    Post IP:27.155.224.30[只看该作者]

你好,我在代码中使用挂单超过N秒重新挂单的模块来执行无限次追单的功能(不是金字塔系统自带的追单功能),但是为什么只会进行2次的追单,第三次追单就只撤单,撤完挂单以后就不再挂单了,代码部分如下,应该不会是代码问题,不然第一次撤单都不会执行了。这个是为什么?
是否金字塔对开平仓函数的执行机制有限制呢?


if TSUBMIT(0)>挂单N秒重挂  or ( (CURRENTTIME=090030 or CURRENTTIME=000030 ) and TREMAINQTY(0 , '','' )<>0 ) then  //挂单超过N秒未成交完  ,按照现在排队价追单  或者在30秒时刻重新挂单   //limitr   MARKET   and TSUBMIT(0)=0 
begin                   //
if TSUBMIT(4)>0 then //原来挂什么单,撤单重新按照现在排队价挂 
begin
未成交空平单数量:=TREMAINQTY(4 , '','' );
TCANCELex(1,4 ,'','' ); if Islastbar then  begin DEBUGFILE('D:\TEST.TXT'  ,  '444444N秒重挂'&numtostr(未成交空平单数量,0),0); end; 
while TREMAINQTY(4 , '','' )<>0 do done:=1;
tsellshort (1, 未成交空平单数量,lmt,DYNAINFO( 28)),NODRAW;
end;
if TSUBMIT(2)>0 then 
begin
未成交多平单数量:=TREMAINQTY(2 , '','' );
TCANCELex(1,2 ,'','' ); if Islastbar then  begin DEBUGFILE('D:\TEST.TXT'  ,  '222222N秒重挂'&numtostr(未成交多平单数量,0),0); end; 
while TREMAINQTY(2 , '','' )<>0 do done:=1;
tsell (1, 未成交多平单数量,lmt,DYNAINFO( 34)),NODRAW;
end;
if TSUBMIT(3)>0 then 
begin
未成交空开单数量:=TREMAINQTY(3 , '','' );
TCANCELex(1,3 ,'','' ); if Islastbar then  begin DEBUGFILE('D:\TEST.TXT'  ,  '333333N秒重挂'&numtostr(未成交空开单数量,0),0); end; 
while TREMAINQTY(3 , '','' )<>0 do done:=1;
tbuyshort (1, 未成交空开单数量,lmt,DYNAINFO( 34)),NODRAW; //TBUYHOLDINGEX('' ,'' , 2)=0
end;
if TSUBMIT(1)>0 then 
begin
未成交多开单数量:=TREMAINQTY(1 , '','' );
TCANCELex(1,1 ,'','' ); if Islastbar then  begin DEBUGFILE('D:\TEST.TXT'  ,  '111111N秒重挂'&numtostr(未成交多开单数量,0),0); end; 
while TREMAINQTY(1 , '','' )<>0 do done:=1;
tbuy (1, 未成交多开单数量,lmt,DYNAINFO( 28)),NODRAW; //TSELLHOLDINGEX('' ,'' ,2 )=0
end;

if Islastbar then  begin    
DEBUGFILE('D:\TEST.TXT'  ,  'O 追单 撤单情况  TSUBMIT(1):'&numtostr(TSUBMIT(1),0)&'  TSUBMIT(2):'&numtostr(TSUBMIT(2),0)&'  TSUBMIT(3):'&numtostr(TSUBMIT(3),0)&'  TSUBMIT(4):'&numtostr(TSUBMIT(4),0),0);  
DEBUGFILE('D:\TEST.TXT'  ,  'P 实际持仓===指定账户买持'&numtostr(TBUYHOLDINGEX('' ,'' , 2),0)&'    指定账户卖持'&numtostr(TSELLHOLDINGEX('' ,'' ,2 ),0),0);  
DEBUGFILE('D:\TEST.TXT'  ,  'P 可用持仓===指定账户买持'&numtostr(TBUYHOLDINGEX('' ,'' , 1),0)&'    指定账户卖持'&numtostr(TSELLHOLDINGEX('' ,'' ,1 ),0),0);  
end;   //输出
end;


 回到顶部