等级: 专业版
- 注册:
- 2022-8-5
- 曾用名:
|
楼主 |
发表于 2022-8-18 07:45
|
显示全部楼层
程序代码如下, 先撤单, 再重新开平仓。 但是看交易日志是撤单也提交了, 重新平仓也提交了。 但是实际在账户里面体现的就是重新平仓没有展示或者提交了又撤单了。
IF TBUYHOLDINGEX('',品种,2)>0 and TGLOBALSUBMITEX(2,'',品种,1)>900 THEN BEGIN
TCANCELEX(1,2,'',品种);
平多开仓数:=TBUYHOLDINGEX('',品种,2);
END
IF 平多开仓数<12 AND 平多开仓数>3 AND 平多开仓数<=MA_VolDay THEN //注意holding是策略的理论持仓,他不管实际仓位
BEGIN //DYNAINFO2(31,品种) 是卖一量, DYNAINFO2(25,品种) 是买一量,DYNAINFO2(34,品种)卖一价;DYNAINFO2(28,品种)买一价;
//a3b1
IF DYNAINFO2(34,品种)-DYNAINFO2(28,品种)>=2*DYNAINFO2(208,品种) THEN
BEGIN
TSELL(1,平多开仓数/2+1,LMT,DYNAINFO2(34,品种)-DYNAINFO2(208,品种),0,'',品种);
TSELL(1,平多开仓数/2,LMT,DYNAINFO2(28,品种)+DYNAINFO2(208,品种),0,'',品种);
END
//a3b2
IF DYNAINFO2(34,品种)-DYNAINFO2(28,品种)=DYNAINFO2(208,品种) THEN
BEGIN
IF DYNAINFO2(25,品种)>DYNAINFO2(31,品种) THEN TSELL(1,平多开仓数,LMT,DYNAINFO2(34,品种),0,'',品种);
IF DYNAINFO2(25,品种)<DYNAINFO2(31,品种) THEN TSELL(1,平多开仓数,LMT,DYNAINFO2(28,品种),0,'',品种);
END
END |
|