以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://www.weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://www.weistock.com/bbs/list.asp?boardid=4)
----  请问距离前次开仓多少个周期内不开仓怎么写  (http://www.weistock.com/bbs/dispbbs.asp?boardid=4&id=66042)

--  作者:qq代人发帖
--  发布时间:2014/6/11 13:01:20
--  请问距离前次开仓多少个周期内不开仓怎么写
请教:距离前次开仓多少个周期内不开仓怎么写?

--  作者:jinzhe
--  发布时间:2014/6/11 13:11:21
--  

nn:=barslast(开仓条件)+1;

然后距离前次开仓周期就是NN了

NN>具体某个数目


--  作者:q878555
--  发布时间:2014/6/12 15:58:20
--  
//中间变量
MA1:=MA(CLOSE,A);
MA2:=MA(CLOSE,B);

手数:=ss;
//交易条件

开多平空条件:=CROSS(MA1,MA2);//开多平空条件
开空平多条件:=CROSS(MA2,MA1);//开空平多条件

//交易系统
平空:SELLSHORT(开多平空条件,手数,MARKET);
平多:SELL(开空平多条件,手数,MARKET);
开多:BUY(开多平空条件,手数,MARKET);
开空:BUYSHORT(开空平多条件,手数,MARKET);

当前持仓:HOLDING,COLORGRAY,LINETHICK0;
当前资产:ASSET,NOAXIS,COLORGRAY;

//注意交易系统先开后平的原则       你好,还是弄不好,假设30个周期内不开仓,但平仓不影响,希望示唤一下,谢谢

--  作者:jinzhe
--  发布时间:2014/6/12 16:10:08
--  
如果平仓不影响,那么这个就没有修改的必要,这里实现的功能是反手开平仓,开仓之前必然是先平仓的
--  作者:q878555
--  发布时间:2014/6/13 12:59:25
--  
比瑜30个周期内不开新仓,但是原有仓位还是按指标平仓,能这样想吗。
--  作者:lichenghu
--  发布时间:2014/6/13 13:28:37
--  
 可以,指限制开新仓条件。
--  作者:q878555
--  发布时间:2014/6/13 16:03:58
--  
//中间变量
MA1:=MA(CLOSE,A);
MA2:=MA(CLOSE,B);

手数:=ss;
//交易条件

开多平空条件:=CROSS(MA1,MA2);//开多平空条件
开空平多条件:=CROSS(MA2,MA1);//开空平多条件

//交易系统
平空:SELLSHORT(开多平空条件,手数,MARKET);
平多:SELL(开空平多条件,手数,MARKET);
开多:BUY(开多平空条件,手数,MARKET);
开空:BUYSHORT(开空平多条件,手数,MARKET);

当前持仓:HOLDING,COLORGRAY,LINETHICK0;
当前资产:ASSET,NOAXIS,COLORGRAY;
                                                                  
                                                                    比瑜以上面为例30周期内不开新仓,请写个例谢谢
     

--  作者:lichenghu
--  发布时间:2014/6/13 16:17:05
--  
1,如果开仓有限制,则代码不会进行平仓反手
 
VARIABLE:A=0;
//中间变量
MA1:=MA(CLOSE,A);
MA2:=MA(CLOSE,B);

手数:=ss;
//交易条件

开多平空条件:=CROSS(MA1,MA2);//开多平空条件
开空平多条件:=CROSS(MA2,MA1);//开空平多条件
 
IF A=0 THEN
BEGIN
平空:SELLSHORT(开多平空条件,手数,MARKET);
平多:SELL(开空平多条件,手数,MARKET);
开多:BUY(开多平空条件 手数,MARKET);
开空:BUYSHORT(开空平多条件,手数,MARKET);
A:=1;
END


//交易系统
平空:SELLSHORT(开多平空条件,手数,MARKET);
平多:SELL(开空平多条件,手数,MARKET);
开多:BUY(开多平空条件 AND ENTERBARS>=30,手数,MARKET);
开空:BUYSHORT(开空平多条件 AND ENTERBARS>=30,手数,MARKET);

当前持仓:HOLDING,COLORGRAY,LINETHICK0;
当前资产:ASSET,NOAXIS,COLORGRAY;

当前持仓:HOLDING,COLORGRAY,LINETHICK0;
当前资产:ASSET,NOAXIS,COLORGRAY;
[此贴子已经被作者于2014/6/13 16:17:31编辑过]

--  作者:q878555
--  发布时间:2014/6/14 21:31:22
--  
VARIABLE:A=0;
//中间变量
MA1:=MA(CLOSE,A);
MA2:=MA(CLOSE,B);

手数:=ss;
//交易条件

开多平空条件:=CROSS(MA1,MA2);//开多平空条件
开空平多条件:=CROSS(MA2,MA1);//开空平多条件
 
IF A=0 THEN
BEGIN
平空:SELLSHORT(开多平空条件,手数,MARKET);
平多:SELL(开空平多条件,手数,MARKET);
开多:BUY(开多平空条件 手数,MARKET);
开空:BUYSHORT(开空平多条件,手数,MARKET);
A:=1;
END


//交易系统
平空:SELLSHORT(开多平空条件,手数,MARKET);
平多:SELL(开空平多条件,手数,MARKET);
开多:BUY(开多平空条件 AND ENTERBARS>=30,手数,MARKET);
开空:BUYSHORT(开空平多条件 AND ENTERBARS>=30,手数,MARKET);

当前持仓:HOLDING,COLORGRAY,LINETHICK0;
当前资产:ASSET,NOAXIS,COLORGRAY;
                                      你好请问VARIABLE:A=0;(A=0;)的A显示重复,//交易系统的平空,平多,开多,开空,都会显示重复

--  作者:jinzhe
--  发布时间:2014/6/16 9:03:47
--  
MA1:=MA(CLOSE,A);
MA2:=MA(CLOSE,B);

 

改成

 

MA1:=MA(CLOSE,5);
MA2:=MA(CLOSE,10);