以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://222.73.7.161/bbs/index.asp)
--  公式模型编写问题提交  (http://222.73.7.161/bbs/list.asp?boardid=4)
----  无回报  (http://222.73.7.161/bbs/dispbbs.asp?boardid=4&id=148324)

--  作者:林华强
--  发布时间:2017/2/28 15:26:32
--  无回报
红色框是我的一单平多的追单,为什么后面一直就没有回报了,导致我15手多单一直没法平掉?这是我的代码:
{撤单追单}
n1:=TREMAINQTY(1,\'\',\'\');
if TSUBMIT(1)>秒数 then begin
 tcancel(1,1);
 if abs(TORDERPRICE(1,1)-dynainfo(7))<=5*mindiff then tbuy(1,n1,lmt,DYNAINFO(34));
end
n2:=TREMAINQTY(2,\'\',\'\');
if TSUBMIT(2)>秒数 then begin
 tcancel(1,2);
 if abs(TORDERPRICE(2,1)-dynainfo(7))<=5*mindiff then tsell(1,n2,lmt,DYNAINFO(28));
end
n3:=TREMAINQTY(3,\'\',\'\');
if TSUBMIT(3)>秒数 then begin
 tcancel(1,3);
 if abs(TORDERPRICE(3,1)-dynainfo(7))<=5*mindiff then tbuyshort(1,n3,lmt,DYNAINFO(28));
end
n4:=TREMAINQTY(4,\'\',\'\');
if TSUBMIT(4)>秒数 then begin
 tcancel(1,4);
 if abs(TORDERPRICE(4,1)-dynainfo(7))<=5*mindiff then tsellshort(1,n4,lmt,DYNAINFO(34));
end;
图片点击可在新窗口打开查看此主题相关图片如下:qq截图20170228152329.png
图片点击可在新窗口打开查看

--  作者:jinzhe
--  发布时间:2017/2/28 15:38:01
--  
你圈的地方往下数10行,这里显示了被撤掉了
--  作者:林华强
--  发布时间:2017/2/28 15:46:56
--  
撤单应该是上面那一单吧!我未成交委托超时5秒才让它撤单
图片点击可在新窗口打开查看此主题相关图片如下:回报.png
图片点击可在新窗口打开查看
[此贴子已经被作者于2017-2-28 15:47:55编辑过]

--  作者:jinzhe
--  发布时间:2017/2/28 15:57:58
--  

从上面的日志看,顺序是这样的:

有25手单,系统平仓15手-----这15手未成交但同时还剩10手-----系统触发撤单和平仓---平掉剩下的10手,同时撤单之前未成交的15手---10手平仓是成交的,然后剩下15手

[此贴子已经被作者于2017-2-28 15:58:17编辑过]

--  作者:jinzhe
--  发布时间:2017/2/28 16:00:18
--  
n1:=TREMAINQTY(1,\'\',\'\');
if TSUBMIT(1)>秒数 then begin
 tcancel(1,1),orderqueue;
 
 if abs(TORDERPRICE(1,1)-dynainfo(7))<=5*mindiff then tbuy(1,n1,lmt,DYNAINFO(34)),orderqueue;
end
n2:=TREMAINQTY(2,\'\',\'\');
if TSUBMIT(2)>秒数 then begin
 tcancel(1,2),orderqueue;
 if abs(TORDERPRICE(2,1)-dynainfo(7))<=5*mindiff then tsell(1,n2,lmt,DYNAINFO(28)),orderqueue;
end
n3:=TREMAINQTY(3,\'\',\'\');
if TSUBMIT(3)>秒数 then begin
 tcancel(1,3),orderqueue;
 if abs(TORDERPRICE(3,1)-dynainfo(7))<=5*mindiff then tbuyshort(1,n3,lmt,DYNAINFO(28)),orderqueue;
end
n4:=TREMAINQTY(4,\'\',\'\');
if TSUBMIT(4)>秒数 then begin
 tcancel(1,4),orderqueue;
 if abs(TORDERPRICE(4,1)-dynainfo(7))<=5*mindiff then tsellshort(1,n4,lmt,DYNAINFO(34)),orderqueue;
end;
加一个顺序下单你试试

--  作者:林华强
--  发布时间:2017/2/28 16:27:29
--  
这10手和25手分别是两个策略下的单:
我是这样理解的,你看看对不对:
我原本仓位有25手,这时撤单15手,可是撤单回报还没回来,实际持仓只有10手,此时追单平仓15手不够,只能报单10手,接着才收到撤单回报,实际持仓变为15

--  作者:jinzhe
--  发布时间:2017/2/28 16:30:50
--  

原本25手,触发平仓15手但是不成交。接着是上面的问题了:先触发撤单,然后几乎同时触发平仓,但是此时只剩下10手,所以进行报单平仓10手,之后接着撤单成功,再接着平仓10手成功

我加了一个顺序下单,让撤单成功后再平仓,你可以试试看


--  作者:林华强
--  发布时间:2017/3/1 15:22:14
--  
加了ORDERQUEUE后出现这个问题:
未成交超时5秒后,第一次撤单追单没问题,但是追单后又超时5秒,接着撤单追单就出问题了!
14:37:25.102    【后台】T06 TCancel 出现信号 类型:4         之后不断等待
14:37:40.124    【回报】616268 : T06 10年国债1706 - 已撤单 量:15      过了15秒才收到回报
接着应该继续追单的 TSellShort ,可是并没有,导致我仓位15手没平掉。
图片点击可在新窗口打开查看此主题相关图片如下:回报.png
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:等待.png
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:回报2.png
图片点击可在新窗口打开查看

--  作者:jinzhe
--  发布时间:2017/3/1 15:23:29
--  

那就没有好办法了,你用系统自带的追单撤单功能


--  作者:林华强
--  发布时间:2017/3/1 15:41:08
--  
还有一个问题,只是我其中一个模型的代码,在开平仓的出现下面这个问题:
因为是金叉做多,死叉做空,所以开平仓信号是同时出现的,TBuy 跟TSellShort 超时5秒,第一次撤单追单是没问题的,可是后面只有TBUY的回报,TSellShort 的回报怎么没了?
input:a(5),b(10);

{全局变量}      
variable:手数=10,
         秒数=5;

{指标调用}         
ma1:ma(c,a);
ma2:ma(c,b);

{时间控制}
TRADETIME:TIME>=093000 and TIME<=150000;
STOPTIME:TIME>=151000;

开多条件:=cross(ma1,ma2);
开空条件:=cross(ma2,ma1);

if REF(开多条件,1) and TRADETIME then begin  
   tsellshort(EXTGBDATA(\'JUNXIAN\')<0,手数,LMT,CLOSE,0);
   tbuy(1,手数,LMT,CLOSE,0);
   EXTGBDATASET(\'JUNXIAN\',手数);
   DEBUGOUT(\'双均线开多啦%.0f\',EXTGBDATA(\'JUNXIAN\'));
end;
 
if REF(开空条件,1) and TRADETIME then begin
   tsell(EXTGBDATA(\'JUNXIAN\')>0,手数,LMT,CLOSE,0);
   tbuyshort(1,手数,LMT,CLOSE,0);
   EXTGBDATASET(\'JUNXIAN\',-1*手数);
   DEBUGOUT(\'双均线开空啦%.0f\',EXTGBDATA(\'JUNXIAN\'));
end;


IF STOPTIME THEN BEGIN
   TSELL(EXTGBDATA(\'JUNXIAN\')>0,手数,MKT); 
   TSELLSHORT(EXTGBDATA(\'JUNXIAN\')<0,手数,MKT);
   EXTGBDATASET(\'JUNXIAN\',0);
END;

图片点击可在新窗口打开查看此主题相关图片如下:均线.png
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:均线1.png
图片点击可在新窗口打开查看