以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://222.73.7.161/bbs/index.asp)
--  金字塔软件问题提交  (http://222.73.7.161/bbs/list.asp?boardid=2)
----  请教为什么我的交易系统只运行空头的开平仓  (http://222.73.7.161/bbs/dispbbs.asp?boardid=2&id=72582)

--  作者:kenifalcon
--  发布时间:2014/12/2 13:09:32
--  请教为什么我的交易系统只运行空头的开平仓
交易系统公式如下:
 kd:= 
time= 091600  or 
time= 091800  or 
time= 092000  or 
time= 092200  or 
time= 092400  or 
time= 092600  or 
time= 092800  or 
time= 093000  or 
time= 093200  or 
time= 093400  or 
time= 093600  or 
time= 093800  or 
time= 094000  or 
time= 094200  or 
time= 094400  or 
time= 094600  or 
time= 094800  or 
time= 095000  or 
time= 095200  or 
time= 095400  or 
time= 095600  or 
time= 095800  or 
time= 100000  or 
time= 100200  or 
time= 100400  or 
time= 100600  or 
time= 100800  or 
time= 101000  or 
time= 101200  or 
time= 101400  or 
time= 101600  or 
time= 101800  or 
time= 102000  or 
time= 102200  or 
time= 102400  or 
time= 102600  or 
time= 102800  or 
time= 103000  or 
time= 103200  or 
time= 103400  or 
time= 103600  or 
time= 103800  or 
time= 104000  or 
time= 104200  or 
time= 104400  or 
time= 104600  or 
time= 104800  or 
time= 105000  or 
time= 105200  or 
time= 105400  or 
time= 105600  or 
time= 105800  or 
time= 110000  or 
time= 110200  or 
time= 110400  or 
time= 110600  or 
time= 110800  or 
time= 111000  or 
time= 111200  or 
time= 111400  or 
time= 111600  or 
time= 111800  or 
time= 112000  or 
time= 112200  or 
time= 112400  or 
time= 112600  or 
time= 112800  or 
time= 113000  or 
time= 130200  or 
time= 130400  or 
time= 130600  or 
time= 130800  or 
time= 131000  or 
time= 131200  or 
time= 131400  or 
time= 131600  or 
time= 131800  or 
time= 132000  or 
time= 132200  or 
time= 132400  or 
time= 132600  or 
time= 132800  or 
time= 133000  or 
time= 133200  or 
time= 133400  or 
time= 133600  or 
time= 133800  or 
time= 134000  or 
time= 134200  or 
time= 134400  or 
time= 134600  or 
time= 134800  or 
time= 135000  or 
time= 135200  or 
time= 135400  or 
time= 135600  or 
time= 135800  or 
time= 140000  or 
time= 140200  or 
time= 140400  or 
time= 140600  or 
time= 140800  or 
time= 141000  or 
time= 141200  or 
time= 141400  or 
time= 141600  or 
time= 141800  or 
time= 142000  or 
time= 142200  or 
time= 142400  or 
time= 142600  or 
time= 142800  or 
time= 143000  or 
time= 143200  or 
time= 143400  or 
time= 143600  or 
time= 143800  or 
time= 144000  or 
time= 144200  or 
time= 144400  or 
time= 144600  or 
time= 144800  or 
time= 145000  or 
time= 145200  or 
time= 145400  or 
time= 145600  or 
time= 145800  or 
time= 150000  or 
time= 150200  or 
time= 150400  or 
time= 150600  or 
time= 150800  or 
time= 151000  or 
time= 151200  or 
time= 151400  ;

buy(kd and ref(kd,1)=0 and holding=0,1,thisclose) ;
sell(kd=0 and ref(kd,1))  ;
buyshort(kd=0 and ref(kd,1) and holding=0,1,thisclose)  ;
sellshort(kd and ref(kd,1)=0)  ;



请问各位大侠,我这个交易系统在测试的时候为什么只开空仓,不开多头的仓,该怎么写呢,


运行的时候只有在单数分钟数的时候开了空仓,在双数分钟数的时候平了空仓,我想反过来在双数分钟数的时候开多仓,多头与空头同时运行该如何写这个交易系统,还请群里的朋友指教一下,

--  作者:qq代人发帖
--  发布时间:2014/12/2 13:32:21
--  

顺序写成这个

sellshort(kd and ref(kd,1)=0) ;

buy(kd and ref(kd,1)=0 and holding=0,1,thisclose) ;
sell(kd=0 and ref(kd,1)) ;
buyshort(kd=0 and ref(kd,1) and holding=0,1,thisclose) ;


--  作者:yukizzc
--  发布时间:2014/12/2 13:36:42
--  

sell(kd=0 and ref(kd,1),holding,market)  ;
buyshort(kd=0 and ref(kd,1) and holding=0,1,thisclose)  ;
sellshort(kd and ref(kd,1)=0,holding,market)  ;
buy(kd and ref(kd,1)=0 and holding=0,1,thisclose) ;          //你新建公式,有个提示你开平顺序的,请按照那个来写。

 

代码是从上到下运行,你第一根开空,第二根必须先平空然后才能开多。而你的代码顺序是先开多再平空,自然不行