以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (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=175050) |
-- 作者:haizxj -- 发布时间:2020/3/19 14:44:48 -- 撤单问题 ZL:=\'srX05\'; //主力合约 CZL:=\'srX09\';//次主力合约 AH:=40; AL:=20; BH:=10; BL:=30; ZLDJ:=DYNAINFO2(28,ZL); //主力买价 ZLKJ:=DYNAINFO2(34,ZL); //主力卖价 ZLDL:=DYNAINFO2(25,ZL); //主力买量 ZLKL:=DYNAINFO2(31,ZL); //主力卖量 CZLDJ:=DYNAINFO2(28,CZL); //次主力买价 CZLKJ:=DYNAINFO2(34,CZL); //次主力卖价 CZLDL:=DYNAINFO2(25,ZL); //次主力买量 CZLKL:=DYNAINFO2(31,ZL); //次主力卖量 BDD:=TBUYHOLDINGEX(\'\',CZL,2); //次主力多单 AKD:=TSELLHOLDINGEX(\'\',ZL,2); //主力空单 ZLWKK:=TISREMAINEX(3,\'\',ZL); //主力未成交开空 ZLWPK:=TISREMAINEX(4,\'\',ZL); //主力未成交平空 CZLWDK:=TISREMAINEX(2,\'\',CZL);//次主力未成交平多 CZLWDK:=TISREMAINEX(1,\'\',ZL); //次主力未成交开多 CZLWPK:=TISREMAINEX(4,\'\',CZL); //次主力未成交平空 //CZLWPK:=TISREMAINEX(4,\'\',ZL); //主力未成交平空 CZLWDK:=TISREMAINEX(2,\'\',CZL);//次主力未成交平多 //平空 COND3:=c<=AL; TSELLSHORT(COND3 AND AKD<>0,AKD,LMT,ZLDJ); //有未成交平空单且历时5s以上 IF ZLWPK<>0 AND TSUBMITEX(4,\'\',ZL)>5 THEN BEGIN TCANCELEX(1,4,\'\',ZL); //TSELLSHORT(1,ZLWPK,MKT); TSELLSHORT(1,s,MKT); END //开空 COND1:=ZLKL/ZLDL>=N; COND2:=c>=AH; IF COND1 AND COND2 AND THOLDING=0 THEN //IF COND1 AND COND2 AND AKD=0 THEN //TBUYSHORT(1,S,LMT,ZLDJ); TBUYSHORT(1,S,LMT,C); //有未成交开空单且历史5s以上 IF ZLWKK<>0 AND TSUBMITEX(3,\'\',ZL)>5 THEN BEGIN TCANCELEX(ZLWKK<>S,3,\'\',ZL); TCANCELEX(BDD=0 AND ZLWKK=S,3,\'\',ZL); IF BDD<>0 AND ZLWKK=S THEN BEGIN TCANCELEX(1,3,\'\',ZL); TBUYSHORT(1,S,MKT); END END //平多 COND5:=c>=BL; TSELL(BDD<>0,BDD,LMT,CZLDJ); IF CZLWDK<>0 AND TSUBMITEX(2,\'\',ZL)>5 THEN BEGIN TCANCELEX(1,2,\'\',ZL); //TSELL(1,CZLWDK,MKT); TSELL(1,s,MKT); END //开多 COND6:=ZLKL/ZLDL>=N; COND7:=C<=BH; IF COND6 AND COND7 AND THOLDING=0 THEN //IF COND6 AND COND7 AND BDD=0 THEN //TBUY(1,S,LMT,CZLKJ); TBUY(1,S,LMT,C); //有未成交开多单且历史5s以上 IF CZLWDK<>0 AND TSUBMITEX(1,\'\',CZL)>5 THEN BEGIN TCANCELEX(CZLWDK<>S,1,\'\',CZL); TCANCELEX(AKD=0 AND CZLWDK=S,1,\'\',CZL); IF AKD<>0 AND CZLWDK=S THEN BEGIN TCANCELEX(1,1,\'\',CZL); TBUY(1,S,MKT); END END 发现只开05合约,09一开就平仓,我是秒询,监控里有5,9合约
|
-- 作者:FireScript -- 发布时间:2020/3/19 14:59:39 -- 必须明确下是代码里面具体哪个平单语句触发的。用DEBUGFILE把控制的条件输出来,才能进一步排查问题。 加几条输出语句 把控制条件输出下。 [此贴子已经被作者于2020/3/23 9:25:25编辑过]
|
-- 作者:haizxj -- 发布时间:2020/3/21 15:11:32 -- 还是不怎么会,能不能帮修改一下 |
-- 作者:haizxj -- 发布时间:2020/3/21 19:16:04 -- 现在问题可能是,当时有未成交的限价单, 成交后又被 撤单了
|
-- 作者:wenarm -- 发布时间:2020/3/22 22:07:49 -- 成交后又被 撤单了??? 都成交了,还怎么撤单的?
发现只开05合约,09一开就平仓,我是秒询,监控里有5,9合约 09一开就平仓。指的还是挂单就撤?
劳烦您再把出现的现象描述细致点。(还有这个代码需要实现的目的)
[此贴子已经被作者于2020/3/22 22:17:00编辑过]
|
-- 作者:FireScript -- 发布时间:2020/3/23 9:24:46 -- BDD:=TBUYHOLDINGEX(\'\',CZL,2); //次主力多单 bdd的定义是这样的。 那么下面这里: //平多 COND5:=c>=BL;TSELL(BDD<>0,BDD,LMT,CZLDJ); 你这里这个条件等于是09有仓位就直接平的逻辑了啊。
[此贴子已经被作者于2020/3/23 9:27:38编辑过]
|