Need help in configured Expert Advisor

 

Hi,


I want help on configured EA which works on RSI 12 period (30-70) with cross over 200 EMA. 




From the above pic RSI period 12 (30-70) is giving confirmation and also 200 EMA is giving confimration so, this EA took trade exactly at the the border of 200 EMA. 

That i dont want. I want this to execute it atleast 2 or 3 candles below or above from 200  EMA not on the candle which is crossing the same 200 EMA . 



Code for RSI and EMA that i am using is :



***************************Declared Variable *******************************


       int        FastMa               = 200;

       int        FastMaShift          = 0;   

       int        FastMaMethod         = 1;   

       int        FastMaAppliedTo      = 0;


      int         rsi_period=12;

      int         rsi_shift=0;



*******************************************************Cross Over 200 EMA**************************************************************


double CurrentFast =iMA(Symbol(),0,FastMa,FastMaShift,FastMaMethod,FastMaAppliedTo,0);

double CurrentSlow =iMA(Symbol(),0,FastMa,FastMaShift,FastMaMethod,FastMaAppliedTo,1);


******************************************************************RSI***********************************************************************

double rsi=iRSI(Symbol(),0,rsi_period,PRICE_CLOSE,rsi_shift); 


************************************************************Sell & Buy Signal************************************************************************

if  ((CurrentFast > CurrentSlow) && rsi<30) return(buy);

if  ((CurrentFast < CurrentSlow) && rsi>70) return(sell);

 
  1. Please edit your (original) post and use the CODE button (Alt-S)! (For large amounts of code, attach it.)
              General rules and best pratices of the Forum. - General - MQL5 programming forum (2019)
              Messages Editor

  2. No question asked. You said what you don't want. Didn't say what you do.

  3. You check MA[1] vs MA[0]. The EMA always moves in the direction of the Close.

  4.      int        FastMaMethod         = 1;   
         int        FastMaAppliedTo      = 0;
    Don't hard code constants. Use the proper enumerations and make your code self-documenting: ENUM_MA_METHOD and ENUM_APPLIED_PRICE
Reason: