2021-04-02 13:33:20.178 【图表】PG05 运行完毕
2021-04-02 13:33:21.191 【图表】RB05 运行完毕
2021-04-02 13:33:21.192 【图表】PG05 运行完毕
2021-04-02 13:33:22.205 【图表】RB05 运行完毕
2021-04-02 13:33:22.206 【图表】框架:wyh1 触发下单 BUY 品种 PG05 下单K线 2021.04.02 13:35:00 公式:Formula1 窗格ID:Window4 代码行:11
2021-04-02 13:33:22.206 【图表】模型下单 1
2021-04-02 13:33:22.207 【图表】下单系数调整后 手数:1
2021-04-02 13:33:22.207 【图表】直接下单
2021-04-02 13:33:22.210 【图表】框架:wyh1 触发下单 SELL 品种 PG05 下单K线 2021.04.02 13:35:00 公式:Formula1 窗格ID:Window4 代码行:13
2021-04-02 13:33:22.211 【图表】模型下单 1
2021-04-02 13:33:22.211 【图表】下单系数调整后 手数:1
2021-04-02 13:33:22.211 【图表】实际持仓 0
2021-04-02 13:33:22.212 【图表】PG05 运行完毕
2021-04-02 13:33:22.213 【下单】PG05 价0.000000 量1 买卖0 类型1 开平0 账户13592676417 Formula 1
2021-04-02 13:33:22.213 【下单】已提交,订单ID :33818615
2021-04-02 13:33:22.327 【指令】收到回报指令 ID = 33818615
2021-04-02 13:33:22.327 【回报】13592676417 : PG05 - 已报单 1 价格:3773 开 买
2021-04-02 13:33:22.378 【指令】收到Order回报指令 ID = 33818615 Status = 3
2021-04-02 13:33:22.500 【指令】收到成交回报指令 ORDERID = 33818615
2021-04-02 13:33:22.500 【回报】13592676417 : pg2105 - 已成交 1 价格:3770 开 买
2021-04-02 13:33:22.500 【回报】13592676417 : pg2105 - 全部成交 1
2021-04-02 13:33:23.219 【图表】RB05 运行完毕
2021-04-02 13:33:23.220 【图表】PG05 运行完毕
2021-04-02 13:33:24.233 【图表】RB05 运行完毕
上图是液化气5分钟线4月2号下午13点半开盘时候的K线,出现了一个开多信号和一个平多信号。收盘的时候我发现持仓多了一手,调取日志也看不懂啊。
shijian:=145900<CURRENTTIME and CURRENTTIME<150000;
pingduo:=TODAYBAR>1 and (c<ref(l,1) or shijian=1 or l<ref(l,1));
buy(dddd and h>ref(h,1) and shijian=0 and holding=0,1,market);
buy(cccc and h>ref(h,1) and shijian=0 and holding=0,1,market);
sell(pingduo and holding>0,holding,market);
以上是我的代码,DDDD和CCCC不便贴出来,就是当时满足了所以才开仓了。但收盘的时候发现有一手液化气没平掉,系统也没发出平仓信号。能帮忙看下咋回事啊。
你这个是因为一个平仓和开仓在一个K。但是当时实际持仓情况是0 。开仓的发出去了,还没成交,直接发平仓,是等于没触发的。
13:22时候的一个平仓信号是直接忽略掉了的。因为那时候还没有可平的仓位。
要么在策略上防止开平仓在一个K触发,要么就用ORDERQUEUE 将下单指令都放在一个序列中。成交后才执行后面信号。
ORDERQUEUE 会不会影响我在多个品种上的下单排序?比如我把一个模型加载到多个品种上运行,A品种先出一个买指令并且一直没有成交,这时候B品种也达到条件了要买,会不会因为A得指令还没成交而造成B品种的指令排队等候不发出?
是的。都会到一个队列里。可能会造成你说的那种影响。
那能不能控制指令发出后几秒内没有成交就撤了重新市价下单?
它这个有2种可以选择的

此主题相关图片如下:temp.png

不是非要等待上一笔成交。这种模式可以定期发单。无论前面的成交了没,还是撤单了。
但是这里设置的秒数内可能也没办法成交,尤其限价单,市价可能还好成交很快。另外要是撤单的话,单子会被放到队列后面去了。总有一种鱼和熊掌不可兼得的感觉。
如果我把同一个模型复制粘贴,取不同的名字,这样我就可以建立N个不同名字的模型,然后我用这N个模型分别加载到N个品种上,这样的话会不会各个品种间不用排队?