zoukankan      html  css  js  c++  java
  • MQL4程序:一个号称成功率100%的EA程序 .mq4

    用​m​t​4​平​台​所​提​供​的​m​q​l​4​语​言​编​写​。​风​险​与​利​润​同​在​,​高​风​险​可​博​得​高​利​润​。​自​己​把​握​。​已​经​测​试​通​过​,​下​载​导​入​系​统​即​可。

    #property copyright "Copyright ?2008, PUNCHER from POLAND"
    #property link "bemowo@tlen.pl"
    // 5 or 15 MIN timeframe only extern int RSIPeriod=14;
    extern int Short_price_MA_periods=9;
    extern int Long_price_MA_periods=45;
    extern int Short_RSI_MA_periods=9;
    extern int Long_RSI_MA_periods=45;
    extern int Slippage=3;
    extern int pisto=0; //Stochastic Indicator period
    extern int pistok=5; // Stochastic Period(amount of bars) for the calculation of %K line
    extern int pistod=3; //Stochastic Averaging period for the calculation of %D line
    extern int istslow=3; //Stochastic Value of slowdown
    extern int pimacd=0; //Indicator period
    extern int fastpimacd=12; //Averaging period for calculation of a quick MA
    extern int slowpimacd=26; //Averaging period for calculation of a slow MA
    extern int signalpimacd=9; //Averaging period for calculation of a signal line
    extern int piwpr=0; //WPR Indicator period
    extern int piwprbar=14; //WPR Period (amount of bars) for indicator calculation
    extern int pidem=0; //Indicator period
    extern int pidemu=14; //Period of averaging
    for indicator calculation double Lots=1; // that mean 0.1 value if you want 1 lot type 10
    double tp=17; // take profit 获利,止盈
    double sl=7777; // stop loss 止损
    int start()
    {
    int arraysize=200;
    double RSI[];
    double RSI_SMA[];
    ArrayResize(RSI,arraysize);
    ArrayResize(RSI_SMA,arraysize);
    ArraySetAsSeries(RSI,true);

    for(int i3=arraysize-1;i3>=0;i3--)
    RSI[i3]=iRSI(NULL,0,RSIPeriod,PRICE_CLOSE,i3);
    for(i3=arraysize-1;i3>=0;i3--)
    RSI_SMA[i3]=iMAOnArray(RSI,0,Short_RSI_MA_periods,0,MODE_SMA,i3);
    double RSI9 =RSI_SMA[1];
    for(i3=arraysize-1;i3>=0;i3--)
    RSI[i3]=iRSI(NULL,0,RSIPeriod,PRICE_CLOSE,i3);
    for(i3=arraysize-1;i3>=0;i3--)
    RSI_SMA[i3]=iMAOnArray(RSI,0,Long_RSI_MA_periods,0,MODE_SMA,i3);
    double RSI45 =RSI_SMA[1];
    double Price45=iMA(NULL,0, Long_price_MA_periods ,0,MODE_LWMA,PRICE_CLOSE,1);
    double Price9 =iMA(NULL,0, Short_price_MA_periods,0,MODE_SMA,PRICE_CLOSE,1);
    bool Long=false;
    bool Short=false;
    bool Sideways=false; if(Price9>Price45 && RSI9>RSI45) Long=true;
    if(Price9<Price45 && RSI9<RSI45) Short=true;
    if(Price9>Price45 && RSI9<RSI45) Sideways=true;
    if(Price9<Price45 && RSI9>RSI45) Sideways=true;
    if(Long==true && OrdersTotal()==0)
    {
    if(iStochastic(NULL,pisto,pistok,pistod,istslow,MODE_EMA,0,MODE_MAIN,1)<19&&iStochastic(NULL,pisto,pistok,pistod,istslow,MODE_EMA,0,MODE_MAIN,0)>=19)
    {
    if(iStochastic(NULL,pisto,pistok,pistod,istslow,MODE_EMA,0,MODE_MAIN,1)<iStochastic(NULL,pisto,pistok,pistod,istslow,MODE_EMA,0,MODE_SIGNAL,1)&&iStochastic(NULL,pisto,pistok,pistod,istslow,MODE_EMA,0,MODE_MAIN,0)>=iStochastic(NULL,pisto,pistok,pistod,istslow,MODE_EMA,0,MODE_SIGNAL,0))
    {
    if(iDeMarker(NULL,pidem,pidemu,1)<0.35&&iDeMarker(NULL,pidem,pidemu,0)>=0.35) { if (iWPR(NULL,piwpr,piwprbar,1)<-81&&iWPR(NULL,piwpr,piwprbar,0)>=-81) {OrderSend(Symbol(),OP_BUY,Lots/10,Ask,Slippage,Ask-sl*Point,Ask+tp*Point,"Piotrek Buy");
    }
    }
    }
    }
    }

    if(Short==true && OrdersTotal()==0)
    { if(iStochastic(NULL,pisto,pistok,pistod,istslow,MODE_EMA,0,MODE_MAIN,1)>81&&iStochastic(NULL,pisto,pistok,pistod,istslow,MODE_EMA,0,MODE_MAIN,0)<=81)
    { if(iStochastic(NULL,pisto,pistok,pistod,istslow,MODE_EMA,0,MODE_MAIN,1)>iStochastic(NULL,pisto,pistok,pistod,istslow,MODE_EMA,0,MODE_SIGNAL,1)&&iStochastic(NULL,pisto,pistok,pistod,istslow,MODE_EMA,0,MODE_MAIN,0)<=iStochastic(NULL,pisto,pistok,pistod,istslow,MODE_EMA,0,MODE_SIGNAL,0))
    {
    if(iDeMarker(NULL,pidem,pidemu,1)>0.63&&iDeMarker(NULL,pidem,pidemu,0)<=0.63)
    {
    if (iWPR(NULL,piwpr,piwprbar,1)>-19&&iWPR(NULL,piwpr,piwprbar,0)<=-19) {OrderSend(Symbol(),OP_SELL,Lots/10,Bid,Slippage,Bid+sl*Point,Bid-tp*Point,"Piotrek Sell");}
    }
    }
    }
    }
    }

     1 用​m​t​4​平​台​所​提​供​的​m​q​l​4​语​言​编​写​。​风​险​与​利​润​同​在​,​高​风​险​可​博​得​高​利​润​。​自​己​把​握​。​已​经​测​试​通​过​,​下​载​导​入​系​统​即​可。
     2 
     3 #property copyright "Copyright ?2008, PUNCHER from POLAND"
     4 #property link "bemowo@tlen.pl" 
     5 // 5 or 15 MIN timeframe only extern int RSIPeriod=14;
     6 extern int Short_price_MA_periods=9;
     7 extern int Long_price_MA_periods=45; 
     8 extern int Short_RSI_MA_periods=9; 
     9 extern int Long_RSI_MA_periods=45;
    10 extern int Slippage=3; 
    11 extern int pisto=0; //Stochastic Indicator period 
    12 extern int pistok=5; // Stochastic Period(amount of bars) for the calculation of %K line 
    13 extern int pistod=3; //Stochastic Averaging period for the calculation of %D line 
    14 extern int istslow=3; //Stochastic Value of slowdown 
    15 extern int pimacd=0; //Indicator period 
    16 extern int fastpimacd=12; //Averaging period for calculation of a quick MA 
    17 extern int slowpimacd=26; //Averaging period for calculation of a slow MA 
    18 extern int signalpimacd=9; //Averaging period for calculation of a signal line 
    19 extern int piwpr=0; //WPR Indicator period 
    20 extern int piwprbar=14; //WPR Period (amount of bars) for indicator calculation 
    21 extern int pidem=0; //Indicator period 
    22 extern int pidemu=14; //Period of averaging 
    23 for indicator calculation double Lots=1; // that mean 0.1 value if you want 1 lot type 10 
    24 double tp=17; // take profit 获利,止盈 
    25 double sl=7777; // stop loss 止损 
    26 int start() 
    27 {
    28 int arraysize=200; 
    29 double RSI[]; 
    30 double RSI_SMA[]; 
    31 ArrayResize(RSI,arraysize);
    32 ArrayResize(RSI_SMA,arraysize); 
    33 ArraySetAsSeries(RSI,true);
    34 
    35 for(int i3=arraysize-1;i3>=0;i3--) 
    36 RSI[i3]=iRSI(NULL,0,RSIPeriod,PRICE_CLOSE,i3); 
    37 for(i3=arraysize-1;i3>=0;i3--) 
    38 RSI_SMA[i3]=iMAOnArray(RSI,0,Short_RSI_MA_periods,0,MODE_SMA,i3); 
    39 double RSI9 =RSI_SMA[1]; 
    40 for(i3=arraysize-1;i3>=0;i3--) 
    41 RSI[i3]=iRSI(NULL,0,RSIPeriod,PRICE_CLOSE,i3); 
    42 for(i3=arraysize-1;i3>=0;i3--) 
    43 RSI_SMA[i3]=iMAOnArray(RSI,0,Long_RSI_MA_periods,0,MODE_SMA,i3); 
    44 double RSI45 =RSI_SMA[1]; 
    45 double Price45=iMA(NULL,0, Long_price_MA_periods ,0,MODE_LWMA,PRICE_CLOSE,1); 
    46 double Price9 =iMA(NULL,0, Short_price_MA_periods,0,MODE_SMA,PRICE_CLOSE,1); 
    47 bool Long=false; 
    48 bool Short=false;
    49 bool Sideways=false; if(Price9>Price45 && RSI9>RSI45) Long=true; 
    50 if(Price9<Price45 && RSI9<RSI45) Short=true;
    51 if(Price9>Price45 && RSI9<RSI45) Sideways=true;
    52 if(Price9<Price45 && RSI9>RSI45) Sideways=true; 
    53 if(Long==true && OrdersTotal()==0) 
    54 {
    55 if(iStochastic(NULL,pisto,pistok,pistod,istslow,MODE_EMA,0,MODE_MAIN,1)<19&&iStochastic(NULL,pisto,pistok,pistod,istslow,MODE_EMA,0,MODE_MAIN,0)>=19)
    56 {
    57 if(iStochastic(NULL,pisto,pistok,pistod,istslow,MODE_EMA,0,MODE_MAIN,1)<iStochastic(NULL,pisto,pistok,pistod,istslow,MODE_EMA,0,MODE_SIGNAL,1)&&iStochastic(NULL,pisto,pistok,pistod,istslow,MODE_EMA,0,MODE_MAIN,0)>=iStochastic(NULL,pisto,pistok,pistod,istslow,MODE_EMA,0,MODE_SIGNAL,0))
    58 { 
    59 if(iDeMarker(NULL,pidem,pidemu,1)<0.35&&iDeMarker(NULL,pidem,pidemu,0)>=0.35) { if (iWPR(NULL,piwpr,piwprbar,1)<-81&&iWPR(NULL,piwpr,piwprbar,0)>=-81) {OrderSend(Symbol(),OP_BUY,Lots/10,Ask,Slippage,Ask-sl*Point,Ask+tp*Point,"Piotrek Buy");
    60 } 
    61 }
    62 }
    63 }
    64 }
    65 
    66 if(Short==true && OrdersTotal()==0) 
    67 { if(iStochastic(NULL,pisto,pistok,pistod,istslow,MODE_EMA,0,MODE_MAIN,1)>81&&iStochastic(NULL,pisto,pistok,pistod,istslow,MODE_EMA,0,MODE_MAIN,0)<=81) 
    68 { if(iStochastic(NULL,pisto,pistok,pistod,istslow,MODE_EMA,0,MODE_MAIN,1)>iStochastic(NULL,pisto,pistok,pistod,istslow,MODE_EMA,0,MODE_SIGNAL,1)&&iStochastic(NULL,pisto,pistok,pistod,istslow,MODE_EMA,0,MODE_MAIN,0)<=iStochastic(NULL,pisto,pistok,pistod,istslow,MODE_EMA,0,MODE_SIGNAL,0)) 
    69 {
    70 if(iDeMarker(NULL,pidem,pidemu,1)>0.63&&iDeMarker(NULL,pidem,pidemu,0)<=0.63) 
    71 { 
    72 if (iWPR(NULL,piwpr,piwprbar,1)>-19&&iWPR(NULL,piwpr,piwprbar,0)<=-19) {OrderSend(Symbol(),OP_SELL,Lots/10,Bid,Slippage,Bid+sl*Point,Bid-tp*Point,"Piotrek Sell");} 
    73 } 
    74 }
    75 }
    76 }
    77 }
  • 相关阅读:
    SpringBoot实现原理
    常见Http状态码大全
    forward(转发)和redirect(重定向)有什么区别
    1094. Car Pooling (M)
    0980. Unique Paths III (H)
    1291. Sequential Digits (M)
    0121. Best Time to Buy and Sell Stock (E)
    1041. Robot Bounded In Circle (M)
    0421. Maximum XOR of Two Numbers in an Array (M)
    0216. Combination Sum III (M)
  • 原文地址:https://www.cnblogs.com/hfchenchao/p/4896656.html
Copyright © 2011-2022 走看看