以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  金字塔软件问题提交  (http://weistock.com/bbs/list.asp?boardid=2)
----  今天的收盘平仓出现了问题  (http://weistock.com/bbs/dispbbs.asp?boardid=2&id=56009)

--  作者:michael000
--  发布时间:2013/8/30 17:10:36
--  今天的收盘平仓出现了问题
之前实盘一直都运行良好,但今天不知道为什么临收盘时平多了一次,把我另外一个隔夜的模型的空仓也给平掉了。。。

模型是1秒固定轮询,5分钟的k线,收盘时平仓的代码:
。。。。。。
T2:=TIME>=150000;
。。。。。。
if T2 and HOLDING>0 then begin
sell(1,手数,LIMITR,OPEN);

end;

if T2 and HOLDING<0  then begin
SELLSHORT(1,手数,LIMITR,OPEN);


[此贴子已经被作者于2013/8/30 17:12:33编辑过]

--  作者:michael000
--  发布时间:2013/8/30 17:11:58
--  
交易日志:
2013-08-30 14:54:59.772    【图表】框架:日内 dt橡胶5分钟 触发下单 SHELLSHORT 品种 RU00 下单K线 2013.08.30 15:00:00 公式:4 DT日内 橡胶5分钟 窗格ID:0 代码行:108
2013-08-30 14:54:59.773    【图表】下单品种已由 RU00 更改为 RU01
2013-08-30 14:54:59.774    【图表】模型下单 2
2013-08-30 14:54:59.775    【图表】下单系数调整后 手数:2
2013-08-30 14:54:59.776    【图表】实际持仓 -3
2013-08-30 14:54:59.776    【图表】直接下单

这里是正常的交易,但不明白为什么到了14:59:31秒,又执行了平仓的指令。。。


2013-08-30 14:59:30.773    【图表】框架:日内 dt橡胶5分钟 触发下单 SHELLSHORT 品种 RU00 下单K线 2013.08.30 15:00:00 公式:4 DT日内 橡胶5分钟 窗格ID:0 代码行:54
2013-08-30 14:59:30.774    【图表】下单品种已由 RU00 更改为 RU01
2013-08-30 14:59:30.775    【图表】模型下单 2
2013-08-30 14:59:30.777    【图表】下单系数调整后 手数:2
2013-08-30 14:59:30.778    【图表】实际持仓 -1
2013-08-30 14:59:30.779    【图表】直接下单

--  作者:michael000
--  发布时间:2013/8/30 17:13:45
--  
是否是我收盘平仓的代码写得不对? T2:=TIME>=150000; 应该写成 TIME=150000?是因为这里出错了吗?谢谢各位老师指教
--  作者:lichenghu
--  发布时间:2013/8/30 17:16:17
--  
2013-08-30 14:54:59.772    【图表】框架:日内 dt橡胶5分钟 触发下单 SHELLSHORT 品种 RU00 下单K线 2013.08.30 15:00:00 公式:4 DT日内 橡胶5分钟 窗格ID:0 代码行:108
2013-08-30 14:54:59.773    【图表】下单品种已由 RU00 更改为 RU01
2013-08-30 14:54:59.774    【图表】模型下单 2
2013-08-30 14:54:59.775    【图表】下单系数调整后 手数:2
2013-08-30 14:54:59.776    【图表】实际持仓 -3
2013-08-30 14:54:59.776    【图表】直接下单

这里是正常的交易,但不明白为什么到了14:59:31秒,又执行了平仓的指令。。。


2013-08-30 14:59:30.773    【图表】框架:日内 dt橡胶5分钟 触发下单 SHELLSHORT 品种 RU00 下单K线 2013.08.30 15:00:00 公式:4 DT日内 橡胶5分钟 窗格ID:0 代码行:54
2013-08-30 14:59:30.774    【图表】下单品种已由 RU00 更改为 RU01
 
 不同的代码触发的,看下把

--  作者:michael000
--  发布时间:2013/8/30 17:26:01
--  
哦,是喔,我再检查一下,谢谢~
--  作者:michael000
--  发布时间:2013/8/30 17:32:15
--  
刚才看了一下,原来是触发了空仓的止损。。。

if holding<0 and h>zs then begin
 sellshort(1,手数,limitr,max(o,zs));
s:=1;
end;//止损

但我很不明白,我明明这个策略的两手空单在14:55分已经全部平了,就是这个策略已经没有holding了,只是另外一个模型有一手空单,根本不涉及到止损啊。。。这个应该如何改才正常呢?

--  作者:michael000
--  发布时间:2013/8/30 18:04:09
--  
策略不是按图表上的虚拟仓位来运行的吗?2013-08-30 14:54:59.774    【图表】模型下单 2
2013-08-30 14:54:59.775    【图表】下单系数调整后 手数:2
2013-08-30 14:54:59.776    【图表】实际持仓 -3

这个实际持仓,是指我账户真实的总持仓数量吗?我当时的该品种的两个策略的总持仓数的确是-3,如果真是这样的话,为什么策略会按我的真实持仓数来执行指令?那不全乱套了??不明白,请老师指教~~

--  作者:michael000
--  发布时间:2013/8/30 18:06:07
--  

出错的位置在图表的信号显示是这样


图片点击可在新窗口打开查看此主题相关图片如下:qq图片20130830173328.jpg
图片点击可在新窗口打开查看


--  作者:michael000
--  发布时间:2013/8/30 20:02:27
--  
求解答~~~
--  作者:michael000
--  发布时间:2013/8/30 21:11:26
--  
我想是不是因为尾盘平仓的那条k线,和触发了止损的同一条k线的原因呢?但用固定轮询的方式,照道理我尾盘平仓之后holding应该就马上变为0了,不明白为何会之后又触发了止损,使另一策略的仓位给错平掉了。。。