以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://www.weistock.com/bbs/index.asp)
--  金字塔软件问题提交  (http://www.weistock.com/bbs/list.asp?boardid=2)
----  [原创]软件的撤单就是有BUG  (http://www.weistock.com/bbs/dispbbs.asp?boardid=2&id=79506)

--  作者:渴望知识
--  发布时间:2015/6/8 14:16:41
--  [原创]软件的撤单就是有BUG
我现在可以确定了,咱们新版本的撤单命令,在返回后,就是不执行下面的语句。
这个我个人认为就是软件的BUG。

if  c>=(tENTERPRICe+2*a) and tenterbars>2
        and not(ddbbtj1) and not(ddbbtj2)   and c<=(tENTERPRICe+3*a) and tholding2>0 then
 begin                     
    if tisprvremain(2) and TSUBMIT(2)>120 then 
   begin
    tcancel(TISPRVREMAIN(2),2);
    sleep(250);
   
   end
  tsell(c>tenterprice and tholding2>0,0,lmt,(tENTERPRICe+2*a));
    
 end  

好多次了。这个撤单后,下面的TSELL命令就是不执行,我原先不执行,我去找有冲突的地方。现在冲突的地方都撤掉了,这个还是偶尔有不执行的时候。这个应该就是咱们软件的问题了。



--  作者:yukizzc
--  发布时间:2015/6/8 14:45:25
--  

 tsell的条件肯定满足吗?用debugfile输出下条件值看下呢

或者条件写1,肯定成立看下呢。

[此贴子已经被作者于2015/6/8 14:47:46编辑过]

--  作者:渴望知识
--  发布时间:2015/6/8 18:38:21
--  
这个真的有问题,因为我在5月份就发过一个这样的帖子,我的代码都交给JINZHE了。但是可能他太忙,也没仔细去研究吧。
当时我所有的撤单语句后面都会跟上再开仓的命令,结果就是有不执行的。
[此贴子已经被作者于2015/6/8 18:39:59编辑过]

--  作者:十世
--  发布时间:2015/6/9 8:31:35
--  

你这个tsell在撤单后的条件能一定满足吗?和2楼说的改为1呢?

我随便写的代码测试,是没有问题的。

 

tsell(c>=o,1,lmt,c-3,0),ORDERQUEUE;
tbuy(c<o,1,MKT),ORDERQUEUE;

if  c>=o then
begin                    
    if tisprvremain(2)  then
     begin
       tcancel(TISPRVREMAIN(2),2);
       DEBUGFILE(\'D:\\TEST.TXT\',\'开始撤单\',1234);
     end
tsell(tholding2>0,1,lmt,c+1);
DEBUGFILE(\'D:\\TEST.TXT\',\'开始平多\',11111);
end 

 

 


--  作者:渴望知识
--  发布时间:2015/6/9 8:41:32
--  
那这个必须得满足条件啊,我就怕满足不了,特意设置的钳制性的条件。
如果有时间,请到这个帖子看下,里面从第2页开始就有讨论,并且有图。
另外再提有一下,咱们新版本总是崩溃,不是太稳定,我运行运行的时候就崩溃关掉了。

http://www.weistock.com/bbs/dispbbs.asp?boardid=4&id=79030&authorid=0&page=0&star=2
[此贴子已经被作者于2015/6/9 8:42:16编辑过]

--  作者:渴望知识
--  发布时间:2015/6/9 8:52:25
--  
还有,这个不是每次都不执行的,而是偶尔有不执行的情况,如果一直不执行,那到好办了。
--  作者:十世
--  发布时间:2015/6/9 8:59:36
--  
好的 待会看好了 回复您
--  作者:渴望知识
--  发布时间:2015/6/9 9:44:51
--  
十世,你是新管理员?


--  作者:渴望知识
--  发布时间:2015/6/9 22:55:38
--  
  v
--  作者:yukizzc
--  发布时间:2015/6/10 10:09:58
--  

您看下你原帖里自己的条件,对于5分钟周期,tenterbars>1这至少是后2根k才满足条件(也就是10分钟)。

if B1<=LL and LL<(tENTERPRICe-m*a) && c>=b4   and tenterbars>1 && tholding2<0 then
 begin
    if tisprvremain(4) and TSUBMIT(4)>120  then

 end

 

你这种情况很多都是条件不满足,自己把条件打包做个输出看下。