您现在的位置:程序化交易>> 期货公式>> 金字塔等>> 金字塔知识>>正文内容

混合模式问题 [金字塔]

  • 咨询内容:

    老师好!我想在已经开发完成的突破模型中加入震荡交易,思路是:突破模型完成平仓后(不论平多还是平空),即转入震荡模式;转入震荡模式后,只允许做3次交易(不论多空);震荡模式结束标准:震荡模式交易达到3次或者突破模式出现开仓信号。以上思路尝试了好几天都无法实现,麻烦老师帮忙指引。

     


    //交易系统

    手数:=(CASH(0)/(CLOSE*300*0.15))*0.5;
    震荡手数1:=(CASH(0)/(CLOSE*300*0.15))*0.2;
    震荡手数2:=ENTERVOL*2;

    突破单平多:SELL(突破单平多条件,HOLDING,MARKET);
    突破单平空:SELLSHORT(突破单平空条件,HOLDING,MARKET);

    突破单开多:BUY(突破单开多条件,手数,MARKET);
    突破单开空:BUYSHORT(突破单开空条件,手数,MARKET);

    震荡市开多:BUY( 震荡市开多条件,震荡手数1,MARKET);
    震荡多单平仓:SELL( 震荡多单平仓条件 AND HOLDING>0,HOLDING,MARKET);

    震荡市开空:BUYSHORT( 震荡市开空条件 ,震荡手数1,MARKET);
    震荡空单平仓:SELLSHORT(震荡空单平仓条件 AND HOLDING<0,HOLDING,MARKET);

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

     

  • 金字塔客服: 你尝试的写法是怎么写的?

     

  • 用户回复:

    //交易系统

    手数:=(CASH(0)/(CLOSE*300*0.15))*0.5;
    震荡手数1:=(CASH(0)/(CLOSE*300*0.15))*0.2;
    震荡手数2:=ENTERVOL*2;
    IF (突破单平多条件 OR 突破单平空条件) THEN BEGIN

        震荡市开多:BUY( 震荡市开多条件,震荡手数1,MARKET);
        震荡多单平仓:SELL( 震荡多单平仓条件 AND HOLDING>0,HOLDING,MARKET);
        震荡市开空:BUYSHORT( 震荡市开空条件 ,震荡手数1,MARKET);
        震荡空单平仓:SELLSHORT(震荡空单平仓条件 AND HOLDING<0,HOLDING,MARKET);

     END
    IF  (突破单开多条件 OR 突破单开空条件) THEN BEGIN

        突破单开多:BUY(突破单开多条件,手数,MARKET);
        突破单开空:BUYSHORT(突破单开空条件,手数,MARKET);
        突破单平多:SELL(突破单平多条件,HOLDING,MARKET);
        突破单平空:SELLSHORT(突破单平空条件,HOLDING,MARKET);

    END

     

  • 网友回复: 我不知道控制语句用的对不对,另外如何用全局变量来分别记录两种模式的交易信号,我学习时间不长,实盘资金等着这个模型呢。急

     

  • 网友回复:

    思路是:突破模型完成平仓后(不论平多还是平空),即转入震荡模式;转入震荡模式后,只允许做3次交易(不论多空);震荡模式结束标准:震荡模式交易达到3次或者突破模式出现开仓信号。

    variable:n=0;

    variable:m=0;

     

    if 突破单平多条件 and n=0 and holding>0 then begin

       平多语句;

       n:=1;

    end

     

    if 突破单平空条件 and n=0 and holding<0 then begin

       平空语句;

       n:=1;

    end

     

    if 突破单开多条件 and holding=0 then begin

       开多语句;

       n:=0;

    end

     

    if 突破单开空条件 and holding=0 then begin

       开空语句;

       n:=0;

    end

     

    if n=1 and holding=0   and m<3 and 震荡单开多条件 then begin

       开多语句;

       m:=m+1;

    end

     

    if n=1 and holding=0   and m<3 and 震荡单开空条件 then begin

       开空语句;

       m:=m+1;

    end

     

    if m=3 then begin

       n:=0;

       M:=0;

    end

      

 

有思路,想编写各种指标公式,程序化交易模型,选股公式,预警公式的朋友

可联系技术人员 QQ: 1145508240  点击这里给我发消息进行 有偿 编写!不贵!点击查看价格!


【字体: 】【打印文章】【查看评论

相关文章

    没有相关内容