自己写了个图表程序,一直开平仓都是正常的,最近在最后加入止赢平仓条件
IF H-ENTERPRICE>=Y THEN
平多2: SELL(HOLDING>0,NUM,MARKET);
结果实盘运行过程有信号发出,但是平仓却不执行。问题出在哪里啊?谢谢啊。
程序如下:
VARIABLE: FLAG1=0;
//TRIX(9,18)线
TR2:= EMA(EMA(EMA(CLOSE,N1),N1),N1);
TRIX2 : (TR2-REF(TR2,1))/REF(TR2,1)*100,LINETHICK0;
TRML2 : MA(TRIX2,M),LINETHICK0;
//JDK三线
RSV:=(CLOSE-LLV(LOW,N))/(HHV(HIGH,N)-LLV(LOW,N))*100;
K:=SMA(RSV,P1,1);
D:=SMA(K,P2,1);
J:=3*K-2*D;
TRIX金叉 := CROSS(TRIX2,TRML2);
TRIX死叉 := CROSS(TRML2,TRIX2);
JDK金叉 := CROSS(K,D) AND CROSS(J,D);
JDK死叉 := CROSS(D,K) AND CROSS(D,J);
IF TRIX金叉=1 THEN
BEGIN
IF K>D AND J>D THEN
开多1:BUY(HOLDING=0,NUM,MARKET);
IF K<D OR J<D THEN
FLAG1 :=1;
END;
IF FLAG1=1 THEN
BEGIN
IF TRIX死叉=0 THEN
BEGIN
IF JDK金叉=1 THEN
BEGIN
开多2:BUY(HOLDING=0,NUM,MARKET);
FLAG1:=0;
END;
END;
ELSE
FLAG1:=0;
END;
IF JDK死叉=1 THEN
平多1: SELL(HOLDING>0,NUM,MARKET);
IF H-ENTERPRICE>=Y THEN
平多2: SELL(HOLDING>0,NUM,MARKET);
有信号不下单要先看下单日志,看看日志里面是怎么记录的,看看有没有记录信号触发下单
2015-05-08 13:37:01.650 2015.05.08 13:37:01【图表】框架:Technic
触发下单 BUY 品种 IF00 下单K线 2015.05.08 13:37:00 公式:TRIX-KDJ-做多-等待-止赢 窗格ID:0
代码行:21
2015-05-08 13:37:01.650 【图表】模型下单 1
2015-05-08 13:37:01.650
【图表】下单系数调整后 手数:1
2015-05-08 13:37:01.650 【图表】启用了下单价格偏移
2015-05-08
13:37:01.650 【图表】直接下单
2015-05-08 13:37:01.650 【图表】IF00
运行完毕
2015-05-08 13:37:01.650 【下单】IF05 价0.000000 量1 买卖0 类型1 开平0 账户6500056
Formula 1
2015-05-08 13:37:01.650 【下单】确认报单已发送 ID=230895920 RefID =
9912
2015-05-08 13:37:01.681 【指令】收到回报指令 ID = 230895920 RefID =
9912
2015-05-08 13:37:01.775 【指令】收到回报指令 ID = 230895920 RefID =
9912
2015-05-08 13:37:01.775 【指令】收到回报指令 ID = 230895920 RefID =
9912
2015-05-08 13:37:01.775 【指令】收到成交回报指令 REFID = 9912 vol =
1
2015-05-08 13:37:01.775 【回报】6500056 : IF1505 - 已报单 1 价格:4474.2 开
买
2015-05-08 13:37:01.775 【回报】6500056 : IF1505 - 已成交 1 价格:4472.8 开
买
2015-05-08 13:38:02.184 【图表】IF00 运行完毕
2015-05-08 13:39:01.183
2015.05.08 13:39:01【图表】框架:Technic 触发下单 SELL 品种 IF00 下单K线 2015.05.08 13:39:00
公式:TRIX-KDJ-做多-等待-止赢 窗格ID:0 代码行:42
2015-05-08 13:39:01.183 【图表】模型下单
1
2015-05-08 13:39:01.183 【图表】下单系数调整后 手数:1
2015-05-08 13:39:01.183
【图表】实际持仓 1
2015-05-08 13:39:01.183 【图表】启用了下单价格偏移
2015-05-08
13:39:01.183 【图表】直接下单
2015-05-08 13:39:01.183 【图表】IF00
运行完毕
2015-05-08 13:39:01.183 【下单】IF05 价0.000000 量1 买卖1 类型1 开平1 账户6500056
Formula 1
2015-05-08 13:39:01.183 【下单】确认报单已发送 ID=230895930 RefID =
9922
2015-05-08 13:39:01.214 【指令】收到回报指令 ID = 230895930 RefID =
9922
2015-05-08 13:39:01.230 【指令】收到回报指令 ID = 230895930 RefID =
9922
2015-05-08 13:39:01.230 【回报】6500056 : IF1505 - 已报单 1 价格:4478.8 平
卖
2015-05-08 13:40:01.701 【图表】IF00 运行完毕
2015-05-08 13:41:02.229
【图表】IF00 运行完毕
2015-05-08 13:41:39.217 【指令】收到回报指令 ID = 230895930 RefID =
9922
2015-05-08 13:41:39.217 【指令】收到回报指令 ID = 230895930 RefID =
9922
2015-05-08 13:41:39.217 【回报】6500056 : IF1505 - 已撤单 量:1
2015-05-08
13:42:01.386 【图表】IF00 运行完毕
2015-05-08 13:43:01.774 【图表】IF00
运行完毕
2015-05-08 13:44:00.757 【指令】收到回报指令 ID = 230240781 RefID =
10140
2015-05-08 13:44:00.773 【指令】收到回报指令 ID = 230240781 RefID =
10140
2015-05-08 13:44:00.773 【指令】收到回报指令 ID = 230240781 RefID =
10140
2015-05-08 13:44:00.773 【指令】收到成交回报指令 REFID = 10140 vol =
1
2015-05-08 13:44:00.788 【回报】6500056 : IF1505 - 已报单 1 价格:4460.2 平
卖
2015-05-08 13:44:00.788 【回报】6500056 : IF1505 - 已成交 1 价格:4461.2 平
卖
2015-05-08 13:44:00.835 【图表】IF00 运行完毕
2015-05-08 13:46:01.612
【图表】IF00 运行完毕
上面的交易日志,用前面的图表程序加载到300股指连续上,止盈点设为11。
13.37在4472.8开仓成功,13.39发出平仓指令,但是没有成交,问题在哪呢?
谢谢哈
有报单,不成交,多半是价位不合理导致无法撮合成交,可以使用市价下单
JDK死叉=1 THEN
平多1: SELL(HOLDING>0,NUM,MARKET);
IF H-ENTERPRICE>=Y THEN
平多2: SELL(HOLDING>0,NUM,MARKET);
这个程序的最后用的就是MARKET,这个应该就是市价吧?
非常感谢。
市价不成交,市价有优先撮合,但是还不成交,那么就请找交易所咨询为何自己的报单不成交