//+------------------------------------------------------------------+
//|                                        PASOP-Stochs-Cross-V1.mq4 |
//|                                                  Tinus Potgieter |
//|                                                tinusp@lantic.net |
//+------------------------------------------------------------------+
#property copyright "Tinus Potgieter"

//This EA creates alerts when Stochastics main line cross back from overbought/oversold
//levels set by the user.

extern int Kperiod = 11;
extern int Dperiod = 3;
extern int Slowing = 3;
extern int TopLevel = 80;
extern int BottomLevel = 20;


int start()
  {
  
  double Level0, Level1;
  bool ChangeBar;
  
  Level0 = iStochastic(NULL,0,Kperiod,Dperiod,Slowing,MODE_SMA,0,MODE_MAIN,1);
  Level1 = iStochastic(NULL,0,Kperiod,Dperiod,Slowing,MODE_SMA,0,MODE_MAIN,2);
  
  ChangeBar = NewBar();
  
  if (ChangeBar && Level0 < TopLevel && Level1 > TopLevel)
     Alert("Stochastic "+Symbol()+ " crossing under "+TopLevel);
     
  if (ChangeBar && Level0 > BottomLevel && Level1 < BottomLevel)
     Alert("Stochastic "+Symbol()+ " crossing over "+BottomLevel);
 
 return(0);
 }

bool NewBar()
{
    static datetime LastTime = 0;
    
    if (Time[0] != LastTime)
    {
       LastTime = Time[0];
       return(true);
    }
    else
       return(false);
}   