EMA Crossover alert

 
It seems that the code below triggers an alert whenever one Moving average is below the other (which means all the time)
I only want an alert the moment they cross.
How can I fix this?
Thanks

Code:
//---- input parameters
extern int FastEMA=5;
extern int SlowEMA=13;
double EMA1,EMA2;
//+------------------------------------------------------------------+
//| expert initialization function |
//+------------------------------------------------------------------+
int start()
{
EMA1=iMA(NULL,0,5,0,MODE_EMA,PRICE_CLOSE,0);
EMA2=iMA(NULL,0,13,0,MODE_EMA,PRICE_CLOSE,0);



if (EMA1 > EMA2)
{
SendMail("Bullish Cross",Symbol());

}
if (EMA2 > EMA1)
{
SendMail("Bearish Cross",Symbol());

}


}
return (0);
 
please find on the forum the word "cross"
see answer "MQL4 Question"
 
please find on the forum the word "cross"
see answer "MQL4 Question"


Ok Thanks.
Is there a way to disable alert once hit if it is an indicator and not an expert?
 
EMA1=iMA(NULL,0,5,0,MODE_EMA,PRICE_CLOSE,0);
EMA2=iMA(NULL,0,13,0,MODE_EMA,PRICE_CLOSE,0);
EMA3=iMA(NULL,0,5,0,MODE_EMA,PRICE_CLOSE,1);
EMA4=iMA(NULL,0,13,0,MODE_EMA,PRICE_CLOSE,1);

if (EMA1 > EMA2 && EMA3 < EMA4)
{
SendMail("Bullish Cross",Symbol());

}
if (EMA2 > EMA1 && EMA4 < EMA3)
{
SendMail("Bearish Cross",Symbol());

}
 
EMA1=iMA(NULL,0,5,0,MODE_EMA,PRICE_CLOSE,0);
EMA2=iMA(NULL,0,13,0,MODE_EMA,PRICE_CLOSE,0);
EMA3=iMA(NULL,0,5,0,MODE_EMA,PRICE_CLOSE,1);
EMA4=iMA(NULL,0,13,0,MODE_EMA,PRICE_CLOSE,1);

if (EMA1 > EMA2 && EMA3 < EMA4)
{
SendMail("Bullish Cross",Symbol());

}
if (EMA2 > EMA1 && EMA4 < EMA3)
{
SendMail("Bearish Cross",Symbol());

}


Thanks so much for that!
Reason: