以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (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=11914)

--  作者:XO仔
--  发布时间:2012/5/24 16:09:19
--  [求助]想写一个反手的指令,不知道高手能做到不

  //多头初始浮亏 P1% 止损

    IF WIN1<-P1 THEN

        SELL(1,HOLDING,LIMITR,CLOSE);

 

当达到止损是, 希望在这里反手, 并同样要求 反手的新单 达到P1% 是 止损离场   一天只反手一次,不知道这样能做到不,请问给位高手 这个该怎么写??


--  作者:jinzhe
--  发布时间:2012/5/24 16:20:21
--  

反手

if win1<-p1 then begin

sell;

buyshort();

end

 

每天限定一次可以用全局变量来记录

 

 


--  作者:董小球
--  发布时间:2012/5/24 16:25:23
--  


IF WIN1<-P1 THEN

        SELL(1,HOLDING,LIMITR,CLOSE);

        BUYSHORT(1,1,LIMITR,CLOSE);

IF WIN2<-P1 THEN

        SELLSHORT(1,HOLDING,LIMITR,CLOSE);

        BUY(1,1,LIMITR,CLOSE);


思路其实就是这样的,至于只反手一次 我觉得可以通过判断日内交易次数来实现不,只要发现TOTALDAYTRADE=2次就认为反手过一次了


--  作者:董小球
--  发布时间:2012/5/25 11:06:34
--  


      SELLSHORT( WIN2<-P1  ,HOLDING,LIMITR,CLOSE);

      BUYSHORT( WIN1<-P1 ,1,LIMITR,CLOSE);

      SELL( WIN1<-P1  ,HOLDING,LIMITR,CLOSE);

       BUY( WIN2<-P1  ,1,LIMITR,CLOSE);


这样应该就不会再同一根K线上平仓了


--  作者:XO仔
--  发布时间:2012/5/25 13:16:16
--  

INPUT:P(10,0,10,1){建仓量},P1(0.2,0,1,1){初始止损幅度},P2(0.6,0,2,1){止盈幅度};

VARIABLE:MAXPROFIT=0,{有仓位时最大获利幅度}VMIN = 092000;{用于隔夜高开或低开时间差}                

WIN1:=0;                                                          

WIN2:=0;//止盈、止损、回撤控制

//账户信息:

资产:ASSET,PRECISION0,NOAXIS,COLORFF00FF;

可用现金:CASH(0),PRECISION0,LINETHICK0;

持仓:HOLDING,LINETHICK0;

胜率:PERCENTWIN,LINETHICK0;

交易次数:TOTALTRADE,LINETHICK0;
开多:=;
平多:= ;
开空:= ;
平空:= ;

交易时间:=TIME>092000 AND TIME<151000;
IF HOLDING>0 THEN BEGIN

    //多头平仓

    IF 平多 THEN

        SELL(1,HOLDING,LIMITR,CLOSE);

 

    //多头收盘平仓

    IF NOT(交易时间) THEN

        SELL(1,HOLDING,LIMITR,CLOSE);

 

    //盈亏计算

    IF ENTERBARS>0 THEN BEGIN

        WIN1:=(C-ENTERPRICE)/ENTERPRICE*100;

        IF WIN1>MAXPROFIT THEN

            MAXPROFIT:=WIN1;

        WIN2:=(MAXPROFIT-WIN1)/MAXPROFIT*100;

    END

 

    //多头初始浮亏 P1% 止损

    IF WIN1<-P1 THEN

        SELL(1,HOLDING,LIMITR,CLOSE);

 

    //多头利润大于 P2% 止盈

    IF WIN1>P2 THEN

        SELL(1,HOLDING,LIMITR,CLOSE);

   

   

END
IF HOLDING<0 THEN BEGIN

   

    //空头平仓

    IF 平空 THEN

        SELLSHORT(1,HOLDING,LIMITR,CLOSE);

 

    //空头收盘平仓

    IF NOT(交易时间) THEN

        SELLSHORT(1,HOLDING,LIMITR,CLOSE);

   

    //盈亏计算

    IF ENTERBARS>0 THEN BEGIN

        WIN1:=(ENTERPRICE-C)/ENTERPRICE*100;

        IF WIN1>MAXPROFIT THEN

            MAXPROFIT:=WIN1;

        WIN2:=(MAXPROFIT-WIN1)/MAXPROFIT*100;

    END

 

    //空头初始浮亏超过 P1% 止损

    IF WIN1<-P1 THEN

        SELLSHORT(1,HOLDING,LIMITR,CLOSE);

 

    //空头利润大于 P2%止盈

    IF WIN1>P2 THEN

        SELLSHORT(1,HOLDING,LIMITR,CLOSE);

   

   

END

IF HOLDING=0 THEN BEGIN

    //多头开仓

    IF 交易时间 AND 开多 THEN BEGIN

        BUY(1,P,LIMITR,CLOSE);

        MAXPROFIT:=0;

    END


    //空头开仓

    IF 交易时间 AND 开空 THEN BEGIN

        BUYSHORT(1,P,LIMITR,CLOSE);

        MAXPROFIT:=0;

end
    END;


--  作者:XO仔
--  发布时间:2012/5/25 13:17:21
--  

我希望在我第一次 浮亏 P1% 止损 后反手  而反手后再亏P1%就止损立场。