以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  金字塔软件问题提交  (http://weistock.com/bbs/list.asp?boardid=2)
----  后台交易重复开平仓问题?真不知该如何解决呀?  (http://weistock.com/bbs/dispbbs.asp?boardid=2&id=29770)

--  作者:xxb398
--  发布时间:2012/10/12 10:41:40
--  后台交易重复开平仓问题?真不知该如何解决呀?
后台预警交易、1秒轮询,近2天出现了重复开仓后又平仓,策略用了半年多了、Open价开仓、信号完全没有闪烁,真不知该如何解决呀?
--  作者:every
--  发布时间:2012/10/12 10:48:42
--  

试试,全局变量记录下,一有开仓,全局变量赋值,平仓后才恢复原值,允许再开仓

 


--  作者:ch3coohqb
--  发布时间:2012/10/12 10:51:57
--  

重复开平仓说明你对软件运行机制不是很理解~

用外生全局变量就行了


--  作者:xxb398
--  发布时间:2012/10/12 11:39:44
--  

恩,后台预警策略是读取图表信号来交易的,如下:

 

FlagDuo:if(IfFlag_1>=0,IfFlag_1,0)+if(IfFlag_2>=0,IfFlag_2,0)+if(IfFlag_3>=0,IfFlag_3,0)+if(IfFlag_4>=0,IfFlag_4,0)+if(IfFlag_5>=0,IfFlag_5,0)+if(IfFlag_6>=0,IfFlag_6,0),linethick0;
FlagKong:if(IfFlag_1<0,Abs(IfFlag_1),0)+if(IfFlag_2<0,Abs(IfFlag_2),0)+if(IfFlag_3<0,Abs(IfFlag_3),0)+if(IfFlag_4<0,Abs(IfFlag_4),0)+if(IfFlag_5<0,Abs(IfFlag_5),0)+if(IfFlag_6<0,Abs(IfFlag_6),0),linethick0;
NetCc:=if(FlagDuo-FlagKong>0,ceiling(FlagDuo-FlagKong),floor(FlagDuo-FlagKong)),linethick0;


那把FlagDuo、FlagKong、NetCc都改为全局变量试试吗?谢谢!


--  作者:王锋
--  发布时间:2012/10/12 13:39:57
--  
这种情况需要自己记录日志来查找问题的,通过日志中变量的变化情况来分析原因
--  作者:fly
--  发布时间:2012/10/12 14:55:59
--  

全局变量记录下,一有开仓,全局变量赋值,平仓后才恢复原值,允许再开仓

 

num:=\'num\';// 全局变量,控制开仓次数

 

....

if 开仓条件 and EXTGBDATA(\'num\')=0 then
begin
     Tbuy(1, 1, mkt);
     EXTGBDATASET(\'num\',1);//一有开仓,全局变量赋值为1
end

.....

 

if 平仓条件 then
 begin
      Tsell(Tholding > 0, 1, mkt);

      EXTGBDATASET(\'num\',0);//平仓,全局变量赋值为0
 end


--  作者:xxb398
--  发布时间:2012/10/12 17:37:56
--  
谢谢fly
--  作者:jzt3321
--  发布时间:2012/10/13 21:52:51
--  
版主V5
--  作者:manbutianya
--  发布时间:2012/10/13 22:00:39
--  

问题是未成交怎么办?未成交委托又检测不出,单断线重复下单还问题不大!


--  作者:manbutianya
--  发布时间:2012/10/13 22:01:47
--  
没有检测未成交委托直接撤单再下单,那么超过500次交易所就来电话了