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 }
  • 相关阅读:
    webpack学习最基本的使用方式(一)
    exports default 和export的使用方式
    vue兄弟组件之间的传值方式
    vue组件之间的传值方式
    vue组件创建学习总结
    vue实例生命周期钩子
    this 的工作原理
    node版本升级参考
    ES6 promise学习
    弹性布局学习总结
  • 原文地址:https://www.cnblogs.com/hfchenchao/p/4896656.html
Copyright © 2011-2022 走看看