公式网-网站导航


网站搜索:  

公式指标网 发表于2015/10/22 18:32:08

MT4公式根据自己的策略改成的ea

//+------------------------------------------------------------------+
 //|                              RSI  --------    QQE    V01    .mq4 |
 //|                                        liu                  song |
 //+------------------------------------------------------------------+
 #property copyright "liu                  song"
 #property link      "liu****gwh@qq.com            qq:56*****90"

extern double a = 1.2;
 extern double b = 43.2365;

extern double c = 50.2589;

extern double Lots = 0.1;
 extern double slippage=3.0;

extern double diancha=10.0;
 extern double kuisun=100.0;
 extern int  maxlots =1;

extern int  SL = 2000;
 extern int  duan_sl=20;
 extern int  TP  = 20000;
 extern string  MT4LevelStopReversevB0设置 =" MT4-LevelStop-Reverse-vB0设置";

extern bool UseATRMode = true;
 extern int NonATRStopPips =1800;
 extern int ATRPeriod = 9;
 extern double ATRMultiplier = 2.0;
 extern int ATRSmoothing = 0;
 extern color UpArrowColor = DodgerBlue;
 extern color DnArrowColor = OrangeRed;
 extern int ArrowDistance = 0;

int start()
   {
 //----
                       double          qqe_0,qqe_1,qqe_2,qqe_3,qqe_5,qqe_6,qqe_7,qqe_day_1,qqe_day_2;
         
                       double           sell,buy,i,guadan,lirun;
                       double  mt4_stop_1,mt4_stop_2,chazhi,chazhi_1;
                      
                      qqe_day_1 = iCustom (Symbol(), PERIOD_D1, "###QQE_Alert_MTF_v3###", 0, 0);
                      qqe_day_2 = iCustom (Symbol(), PERIOD_D1, "###QQE_Alert_MTF_v3###", 1, 0);
                     
                       qqe_0     = iCustom (Symbol(), NULL, "###QQE_Alert_MTF_v3###", 0, 0);
                      
                       qqe_1     = iCustom (Symbol(), NULL, "###QQE_Alert_MTF_v3###", 0, 1);
                       qqe_2     = iCustom (Symbol(), NULL, "###QQE_Alert_MTF_v3###", 0, 2);
                       qqe_3     = iCustom (Symbol(), NULL, "###QQE_Alert_MTF_v3###", 0, 3);
                      
                       qqe_5     = iCustom (Symbol(), NULL, "###QQE_Alert_MTF_v3###", 0, 5);
                       qqe_6     = iCustom (Symbol(), NULL, "###QQE_Alert_MTF_v3###", 0, 6);
                       qqe_7     = iCustom (Symbol(), NULL, "###QQE_Alert_MTF_v3###", 0, 7);
                      
                    mt4_stop_1 = iCustom(NULL,0,"MT4-LevelStop-Reverse-vB0-3",
                   UseATRMode,NonATRStopPips,ATRPeriod,ATRMultiplier,ATRSmoothing,UpArrowColor,DnArrowColor,ArrowDistance,0,1);
                    mt4_stop_2 = iCustom(NULL,0,"MT4-LevelStop-Reverse-vB0-3",
                   UseATRMode,NonATRStopPips,ATRPeriod,ATRMultiplier,ATRSmoothing,UpArrowColor,DnArrowColor,ArrowDistance,0,2);
              
               chazhi=mt4_stop_1-mt4_stop_2;
              
                 
                if(chazhi>0){
                
                  chazhi_1=chazhi;
                   }
                   else{
                    if(chazhi<0){
                    chazhi_1= 0 -chazhi;
                     }
                    }
                      
             
 int   total = OrdersTotal();
   
     if (OrdersTotal( ) > 0 ){
     for(i=OrdersTotal()-1;i>=0;i--){
       if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==false)     break;
       if(OrderType()==OP_SELLLIMIT){
      
       if(((qqe_6-qqe_5)>a)  &&  qqe_6>c && qqe_7<=qqe_6&&
          ((qqe_2-qqe_1)>a)  &&  qqe_2>c && qqe_3<=qqe_2  ){
                                 sell= NormalizeDouble((High[2]+Close[2])/2, Digits);
                                  OrderModify(OrderTicket(),sell,sell+SL*Point,sell-TP*Point,0,Blue);
                                  }
                                  else{
      
    
       if (((qqe_6-qqe_5)>a)  &&  qqe_6>c&& qqe_7<=qqe_6){
         OrderDelete(OrderTicket(),Blue);
       }
      }
      }
      if(OrderType()==OP_SELL){
      Comment("账户利润", DoubleToStr(OrderProfit(), 2));
       lirun =  OrderProfit();

      if(chazhi_1>0){
        OrderModify(OrderTicket(),OrderOpenPrice(),mt4_stop_1,0,0,Blue);
        }   

/*      if(((qqe_1-qqe_2)>a)){
       buy= NormalizeDouble((Low[2]+Close[2])/2, Digits);
        OrderModify(OrderTicket(),OrderOpenPrice(),0,buy+diancha*Point,0,Blue);
       }*/
      
      
       if(0-lirun>=SL/10){
        OrderClose(OrderTicket(),OrderLots(),Ask,slippage*Point,White);
         Sleep(5000);
       
       }
      }
    
     }
   }

      if (OrdersTotal( ) > 0 ){
     for(i=OrdersTotal()-1;i>=0;i--){
       if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==false)     break;
       if(OrderType()==OP_BUYLIMIT)
       {
       if(((qqe_5-qqe_6)>a) && qqe_6<b && qqe_7>=qqe_6&&
          ((qqe_1-qqe_2)>a) && qqe_2<b && qqe_3>=qqe_2){
                                     buy= NormalizeDouble((Low[2]+Close[2])/2, Digits);
                          OrderModify(OrderTicket(),buy,buy-SL*Point,buy+TP*Point,0,Blue);
                               }
                                    else{
      
        if (((qqe_5-qqe_6)>a) && qqe_6<b && qqe_7>=qqe_6){
        OrderDelete(OrderTicket(),Blue);
         }
        }
       }
      if(OrderType()==OP_BUY){
      lirun =  OrderProfit();
      Comment("账户利润", DoubleToStr(OrderProfit(), 2));
       if(chazhi_1>0){
        OrderModify(OrderTicket(),OrderOpenPrice(),mt4_stop_1,0,0,Blue);
        }    
     
     
     /*  if(((qqe_2-qqe_1)>a)){
        sell= NormalizeDouble((High[2]+Close[2])/2, Digits);
     
        OrderModify(OrderTicket(),OrderOpenPrice(),0,sell-diancha*Point,0,Blue);
       } */   
    
  
       if(0-lirun>=SL/10){
        OrderClose(OrderTicket(),OrderLots(),Bid,slippage*Point,White);
         Sleep(5000);
      
       }
      }
     }
   }
                   
                
                 sell= NormalizeDouble((High[2]+Close[2])/2, Digits);
                      
                       if (total<maxlots && qqe_day_1< qqe_day_2 && ((qqe_2-qqe_1)>a) &&  qqe_2>c && qqe_3<=qqe_2){
                       OrderSend(Symbol(),OP_SELLLIMIT,Lots,sell,slippage*Point,sell+SL*Point,sell-TP*Point,"sell",12345,0,Green);
                       }
   
   
                     
 
  
   
                 buy= NormalizeDouble((Low[2]+Close[2])/2, Digits);
                      if (total<maxlots && qqe_day_1> qqe_day_2 && ((qqe_1-qqe_2)>a) && qqe_2<b && qqe_3>=qqe_2){
                      OrderSend(Symbol(),OP_BUYLIMIT,Lots,buy,slippage*Point,buy-SL*Point,buy+TP*Point,"buy",12345,0,Red);
                      }
 
   
 //----
    return(0);
   }
 //+------------------------------------------------------------------+

 

 

商品 EURUSD (Euro vs US Dollar)
时间周期 4 小时图 2008.12.01 00:00 - 2009.12.29 20:00 (2008.12.01 - 2009.12.30)
复盘模型 每个即时价位(基于所有可利用的最小时段的每一个价位的分形插值计算)
参数 a=1.2; b=43.2365; c=50.2589; Lots=0.1; slippage=3; diancha=10; kuisun=100; maxlots=1; SL=2000; duan_sl=20; TP=20000; MT4LevelStopReversevB0设置=" MT4-LevelStop-Reverse-vB0设置"; UseATRMode=true; NonATRStopPips=1800; ATRPeriod=9; ATRMultiplier=2; ATRSmoothing=0; UpArrowColor=DodgerBlue; DnArrowColor=OrangeRed; ArrowDistance=0;
 
经测试过的柱数 2670 用于复盘的即时价数量 12775300 复盘模型的质量 n/a
输入图表错误 420        
 
起始资金 1000.00        
总净盈利 2036.62 总获利 3628.03 总亏损 -1591.41
盈利比 2.28 预期盈利 61.72    
绝对亏损 313.77 最大亏损 770.07 (26.06%) 相对亏损 43.07% (519.12)
 
交易单总计 33 卖单 (获利百分比) 29 (55.17%) 买单 (获利百分比) 4 (50.00%)
  盈利交易(占总百分比) 18 (54.55%) 亏损交易(占总百分比) 15 (45.45%)
最大: 获利交易 743.33 亏损交易 -200.00
平均: 获利交易 201.56 亏损交易 -106.09
最大: 连续获利金额 4 (798.36) 连续亏损金额 3 (-469.60)
最多: 连续获利次数 798.36 (4) 连续亏损次数 -469.60 (3)
平均: 连续获利 2 连续亏损

 

MT4公式根据自己的策略改成的ea



网站搜索:  



Copyright © 2009-2010 gszb.com ™,All Rights Reserved. 
公式网-www.gszx.com.cn-股票指标公式网