Rss & SiteMap

金字塔客服中心 - 专业程序化交易软件提供商 http://www.weistock.com/bbs/

专业程序化软件提供商
共5 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:对后台交易,出现查询到委托单与持仓单同时存在的问题

1楼
lanchongms 发表于:2014/1/25 11:27:45

【1】代码:

 

委托多单:=tremainqty(1,ac,stklabel);

持有多单:=tbuyholdingex(ac,stklabel,1);

 

【2】程序下单情况

如果目前我没有任何持仓以及委托单。

现在委托开多1手单子,在单子顺利报出去,不撤单情况下只可能出现两种情况:

1、“委托多单”=1,“持仓多单”=0

2、“持有多单”=1,“委托多单”=0

 

【3】出现的问题

在执行上述代码,输出到本地的时候会发现,有概率出现:

“委托多单”=1,“持仓多单”=1的情况

 

【4】程序出现的问题,我想到两种可能性

1、成交回报回来,对委托单-1以及持有单+1的运算没有加锁

2、程序顺序执行时候,先查询到委托多单==1,这时候刚好这瞬间成交回报过来了,持有单也==1了

 

怎么解决这个问题?

2楼
lichenghu 发表于:2014/1/26 9:59:11

对应您把持有多单的代码放在委托多单的前面来进行处理

并且在工具-选项维护里的持仓刷新调小至500ms以下

3楼
lanchongms 发表于:2014/1/26 16:40:00
跟代码位置没关系的啊~这个是程序的问题,
即使两个位置调转过来,发平仓单等也是会有问题的~跟时间间隔没关系,已经是500MS以下了。
[此贴子已经被作者于2014/1/26 16:41:34编辑过]
4楼
lanchongms 发表于:2014/1/26 16:46:31
发开多单,如果代码调转过来,会出现“持有多单”=0,“委托多单”=0的情况;
5楼
lichenghu 发表于:2014/1/27 8:46:22
对应是委托回报在接收上有延迟,持仓刷新再小点试试
共5 条记录, 每页显示 10 条, 页签: [1]


Powered By Dvbbs Version 8.3.0
Processed in 0.03125 s, 2 queries.