等级: 专业版
- 注册:
- 2021-10-12
- 曾用名:
|
楼主 |
发表于 2024-12-24 11:37
|
显示全部楼层
有个奇怪的现象,当我把多空未成交程序弄在一个程序里面的时候,平空未成交撤单后确实没有再下单,但是单独将平空未成交的代码弄成一个程序的时候又能再下单了
集成的账户未成交监控程序代码如下:
GLOBALVARIABLE:WT_PD:=0;PDLOTS:=0;WT_PK:=0;PKLOTS:=0;
//开多未成交
IF TGLOBALSUBMITEX(1,'',STKLABEL ,1 )>=SEC THEN BEGIN //如果有未成交单;未成交超过SEC秒
开多未成交数量:=TGLOBALSUBMITEX(1,'',STKLABEL,0 );
TCANCELEX(1,1,'',STKLABEL);//撤单
TBUY(1,开多未成交数量,MKT,0,'','');
END
//平多未成交
IF TGLOBALSUBMITEX(2,'',STKLABEL ,1 )>=SEC THEN BEGIN //如果有未成交单;未成交超过SEC秒
PDLOTS:=TGLOBALSUBMITEX(2,'',STKLABEL,0 );
TCANCELEX(1,2,'',STKLABEL);//撤单
WT_PD:=1;
// TSELL(1,平多未成交数量,MKT,0,'','');
END
IF TBUYHOLDINGEX('','',1)>0 AND WT_PD=1 THEN BEGIN
TSELL(1,PDLOTS,MKT,0,'','');
WT_PD:=0;
PDLOTS:=0;
END
//开空未成交
IF TGLOBALSUBMITEX(3,'',STKLABEL ,1 )>=SEC THEN BEGIN //如果有未成交单;未成交超过SEC秒
开空未成交数量:=TGLOBALSUBMITEX(3,'',STKLABEL,0 );
TCANCELEX(1,3,'',STKLABEL);//撤单
// DEBUGFILE('D:\账户未成交监控.TXT',"开空未成交数量%.0F",未成交数量);
TBUYSHORT(1,开空未成交数量,MKT,0,'','');
END
//平空未成交
IF TGLOBALSUBMITEX(4,'',STKLABEL ,1 )>=SEC THEN BEGIN //如果有未成交单;未成交超过SEC秒
PKLOTS:=TGLOBALSUBMITEX(4,'',STKLABEL,0 );
TCANCELEX(1,4,'',STKLABEL);//撤单
WT_PK:=1;
// TSELLSHORT(1,平空未成交数量,MKT,0,'','');
END
IF TSELLHOLDINGEX('','',1)>0 AND WT_PK=1 THEN BEGIN
TSELLSHORT(1,PKLOTS,MKT,0,'','');
WT_PK:=0;
PKLOTS:=0;
END |
|