以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  开仓和平仓信号同时出现,加上enterbars>1,隔二根K线就平仓了  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=47567)

--  作者:纪石
--  发布时间:2013/1/9 18:49:44
--  开仓和平仓信号同时出现,加上enterbars>1,隔二根K线就平仓了

ma1:=ma(c,10);
ma2:=ma(c,20);

三个点阳线:=(C-O)>=15*MINDIFF;
三个点阴线:=(O-C)<=15*MINDIFF;
cc1:=cross(ma2,ma1);

//交易系统
IF HOLDING=0 and time<145000 THEN //如果COND1在14点55分前成立,那么
BEGIN
      
      BUY(三个点阳线,1,1,MARKET);
     if holding>0 and enterbars>1 then
     begin
     SELL(cc1,1,MARKET);//平多单,以市价卖出所有持仓量
      END
     end
 
//SELL(kd1,HOLDING,MARKET);


 //止盈
IF C-AVGENTERPRICE>40*MINDIFF and enterbars>1 THEN BEGIN
SELL(1,HOLDING,MARKET);
END

//止损
IF AVGENTERPRICE-C>20*MINDIFF and enterbars>1 THEN BEGIN
SELL(1,HOLDING,MARKET);
END

    
IF TIME>=151000 THEN BEGIN
收盘平多:SELL(1,手数,MARKET);
收盘平空:SELLSHORT(1,手数,MARKET);
END
当前持仓:HOLDING,COLORGRAY,LINETHICK0;
当前资产:ASSET,NOAXIS,COLORGRAY;

//注意交易系统先开后平的原则

[此贴子已经被作者于2013-1-9 18:50:40编辑过]

--  作者:jinzhe
--  发布时间:2013/1/10 9:27:38
--  
这个还是需要自己来改进自己的思路和代码,
--  作者:纪石
--  发布时间:2013/1/10 11:10:21
--  
等于没说!!!!!!!!!!!
--  作者:jinzhe
--  发布时间:2013/1/10 11:15:17
--  
自己的逻辑问题导致了编出的程序产生了不该有的效果
--  作者:纪石
--  发布时间:2013/1/12 15:55:34
--  
在平仓函数里不能使用开仓买入价AVGENTERPRICE和持仓历时等函数,如果不加这些函数,就不会出现开仓后就平仓的问题,并不是我的逻辑出现问题,而是在函数设计上出现了问题。