这个是我的代码,我金子塔设置的是数据时区是北京本地时间,但是昨天晚上和今天早上,都不执行我的清仓代码。我昨天晚上账户里是有甲醇空单的,但是这个甲醇却是在05分的时候才触发条件平仓了。
if (currenttime>=210100 and currenttime<=210200) or (currenttime>=090100 and currenttime<=090200) then
begin
if tholding2<>0 or TISPRVREMAIN(0) then tcancel(1 ,0);
sleep(250);
tsellshort(1,0,mkt);
tsell(1,0,mkt);
end
2015-06-18 09:00:14.363 【后台】MA00 运行结束
2015-06-18 09:00:15.421 【后台】FG00 运行结束
2015-06-18 09:00:16.176 【后台】RB00 运行结束
2015-06-18 09:01:00.804 【后台】AX00 运行结束
2015-06-18 09:01:01.311 【后台】M00 运行结束
2015-06-18 09:01:01.815 【后台】P00 运行结束
2015-06-18 09:01:02.319 【后台】Y00 运行结束
2015-06-18 09:01:02.826 【后台】SRX00 运行结束
2015-06-18 09:01:03.340 【后台】TA00 运行结束
2015-06-18 09:05:08.330 【指令】收到回报指令 ID = 1280761335
2015-06-18 09:05:08.980 【后台】MA00 TSellShort 已成功触发下单操作 价格:2499.000000 数量:0 类型:0 账户: 品种:MA00
2015-06-18 09:05:08.980 【后台】实际账户持仓 1
2015-06-18 09:05:08.981 【后台】下单已发送
2015-06-18 09:05:08.982 【下单】已经调整为 实际持仓为 1
2015-06-18 09:05:08.982 【下单】MA09 价2499.000000 量1 买卖0 类型0 开平1 账户600073 Formula 1
2015-06-18 09:05:08.983 【后台】MA00 运行结束
2015-06-18 09:05:09.043 【指令】收到回报指令 ID = 1280761336
2015-06-18 09:05:09.052 【回报】600073 : MA509 - 已报单 1 价格:2499 平 买
2015-06-18 09:05:09.052 【指令】收到回报指令 ID = 1280761336
2015-06-18 09:05:09.747 【后台】L00 运行结束
你用debugfile调试一下,(currenttime>=210100 and currenttime<=210200) or (currenttime>=090100 and currenttime<=090200)看看是不是有条件不成立
你用了sleep,是逐k线计算的公式还是序列计算的?
我用的是序列计算,这个就是有问题啊。
2015-06-18 14:55:11.888 【后台】AX00 运行结束
2015-06-18 20:53:07.022 【后台】 启动后台程式化交易
2015-06-18 20:53:10.189 【回报】600073 : 登录成功
2015-06-18 21:00:01.013 【后台】FG00 运行结束
2015-06-18 21:00:01.063 【后台】RB00 运行结束
2015-06-18 21:00:01.064 【后台】I00 运行结束
2015-06-18 21:00:01.066 【后台】AX00 运行结束
2015-06-18 21:00:01.067 【后台】M00 运行结束
2015-06-18 21:00:01.070 【后台】RM00 运行结束
2015-06-18 21:00:01.071 【后台】CF00 运行结束
2015-06-18 21:00:01.071 【后台】P00 运行结束
2015-06-18 21:00:01.072 【后台】Y00 运行结束
2015-06-18 21:00:01.072 【后台】SRX00 运行结束
2015-06-18 21:00:01.072 【后台】TA00 运行结束
2015-06-18 21:00:01.073 【后台】MA00 运行结束
2015-06-18 21:02:52.746 【后台】 启动后台程式化交易
21点02分的,那是我看不动作,又重新停止再启动了一下。
现在问题都没有确定下来,我需要调试结果来判断是不是代码有问题,请按照我的要求去调试一下
还有不要一有问题就让我们改代码,是不是代码问题有了调试结果再判断。
你是运行了一个策略还是多个?一个策略里面运行了几个品种合约?
问题解决了,轮询方式是K线结束了,所以没有执行代码。