EMailSignals





//+------------------------------------------------------------------+
//|                                                 EMailSignals.mq4 |
//|                                                      Steven Retz |
//|                                       http://www.interbankfx.com |
//+------------------------------------------------------------------+
#property copyright "Steven Retz"
#property link      "http://www.interbankfx.com"

extern int RSIPeriod=8;
extern int RSIPrice=PRICE_CLOSE;

extern int MAFastPeriod=3;
extern int MAFastShift=0;
extern int MAFastMethod=MODE_SMA;
extern int MAFastPrice=PRICE_CLOSE;
extern int MASlowPeriod=7;
extern int MASlowShift=0;
extern int MASlowMethod=MODE_SMA;
extern int MASlowPrice=PRICE_CLOSE;

bool runnable=true;
bool initialize=true;

datetime timeprev=0;

int init()
{
 return(0);
}

int deinit()
{
 return(0);
}

int start()
{
//Runnable
 if(runnable!=true)
  return(-1);
  
//Init
 if(initialize==true)
 {
  initialize=false;
  if(!InterbankFXServer())
  {
   runnable=false;
   return(-1);
  }//
 }//Init
 
//
//New Bar
//
 if(timeprev==Time[0])
  return(0);
 timeprev=Time[0];
 
//
//Calculation
//
 double fast01=iMA(NULL,0,MAFastPeriod,MAFastShift,MAFastMethod,MAFastPrice,1);
 double fast02=iMA(NULL,0,MAFastPeriod,MAFastShift,MAFastMethod,MAFastPrice,2);
 double slow01=iMA(NULL,0,MASlowPeriod,MASlowShift,MASlowMethod,MASlowPrice,1);
 double slow02=iMA(NULL,0,MASlowPeriod,MASlowShift,MASlowMethod,MASlowPrice,2);

 double rsi01=iRSI(NULL,0,RSIPeriod,RSIPrice,1);
 double rsi02=iRSI(NULL,0,RSIPeriod,RSIPrice,2);

//Long
 if(fast01>slow01&&fast02<slow02)
  SendMail("MA Cross Long","MA crossed UP");
 if(rsi01>50&&rsi02<50)
  SendMail("RSI Cross Long","RSI crossed long 50");
 
//Shrt
 if(fast01<slow01&&fast02>slow02)
  SendMail("MA Cross Shrt","MA crossed DN");
 if(rsi01<50&&rsi02>50)
  SendMail("RSI Cross Shrt","RSI crossed shrt 50");


 return(0);
}

bool InterbankFXServer()
{
if(ServerAddress()=="InterbankFX-Server"||ServerAddress()=="InterbankFX-Demo"||ServerAddress()=="66.114.105.89")
  return(true);
 else
  return(false);
}//bool InterBanFXServer()

õ°ñIŠ@¿O[Kxó,42SO§èžu­¹©ÖQŠ’±l­Fü{Ó4¯èðîÊc¤ZÙ1iue’
FNLm(iÁ¸7ÇÓÃðk¤¬ªË†Ç`•í%1!NÉ
)ä%}¾tóKƒ¬'`hf‡BƒÛÒQ©áíÝ
…¾ÆÄå á9z0¯?K;hã$"Cþ?—ØŽ
e©™ÆAz‚€¡\õ6ìkÃû÷$ŸØàÞÿºûS”JÉ!YeU‚ý6><]Y±ò¨'·Ã³à[”œš»v·P…Ý!>¹òúøÔm®dã;soœPXVw2sËÂA™ÑÝÍúu®¶´ÕÑ)j Ÿ÷/;+XÓ3î/‡È~ýU™‰¶1jrp‘Lå&Ü[³ë÷çÈÐÎïªëC„:¹IUErí&.,MI¡â˜o§³£ÐK„ŒŠ«f§ÿ@öuÍ.©âêè	Ä]žTÓ+co_Œ@HFg"c»ü²1‰Áͽêež¦¤Å€ÁZç+HÃü#Þw¸níE}‰y¦!Zb`<}ÕÌK£Ûç׸À¾ßšÛ3t*©9E5bÝ=ø9‘Òˆ_—£“À;t|z›V—ï0æe½õñ™ÒÚØù´õMŽDÃS_O|÷086WS«ì¢!y±½­ÚUŽ–”µp±	J×8³ìôòÎg¨^Ý5myi–JRPq,mż;“Ë×Çôo¨°®ÏŠË#d™ñ)5%RÍ-è)Âx÷O‡“ƒ°+dlj‹F‡ß ÖU­åñá‰ÂÊÈé¤å=~4³CO?lç (&GC›Ü’i¡­ÊE~†„¥`¡ù:ðoÇÿû(£Üäâ¾ÿW˜NÍ%]iY†:B@a]µö¬+ƒ»Ç·ä_˜ ž¿z»T
‰á%B½öþüØq²hç?wƒs T\Z{6wÏÆEÕáÑþy²º¸Ù”Õ-n$£û3?/\×7ò3‹Ì‚Y‘º5nvt•P‘é*à_·ïûë“ÌÔÒó®ïGˆ>½MYIvñ*20QM¥æœs«·§ÔOˆŽ¯j«DúyÑ	2­æîì
È	a¢X×/gscDLJk&g¿¶5ÅÑÁîi¢ª¨É„Å^“ë#/LÇ'â#{¼rñI}ª%^fd…@ÙÐO§ßëÛƒ¼ÄÂãžß7x.­=I9fá" Aü=•ÖŒc›§—Ä?x€~ŸZ›ó4êiÁùõ"ÖÞÜý¸ùQ’HÇWcS€û4<:[W¯ð¦%}µÁ±ÞY’š˜¹tµ
NƒÛ<·ðøöÒk¬bá9q}mšNVTu0qÉ
À?—ÏÛËøs¬´²ÓŽÏ'hõ-9)VÑ
1ì-…Æ|ûS‹—‡´/hpnJ‹ã$ÚY±éõåÆÎÌí¨éA‚8·GSCpë$,*KGŸà–m¥±¡ÎI‚Šˆ©d¥ý>ôsËÿ,§àèæÂ[œRÑ)am]Š>FDe a¹ú°/‡¿Ë»ècœ¤¢Ã~¿Xå)FÁú!Üu¶lëC{‡w¤X`^:{ÓÊI¡ÙåÕ}¶¾¼Ý˜Ù1r(§ÿ7C3`Û;ö7І]•¡‘¾9rzx™T•í.äc»óÿï—ÐØÖ÷²óKŒBÁQ]Mzõ.64UQ©ê w¯»«ØSŒ”’³n¯Hþ}Õ
	6±êòðÌ
e¦\Û3kwg”HPNo*kú9‘ÉÕÅòm¦®¬ÍˆÉ!b—ï'3#PË
+æ'ÀvõM…‘®)bjh‰D…ÝÔS«ãïß‡ÀÈÆç¢ã;|2±	AM=jå&$EA™ÚgŸ«›ÈC|„‚£^Ÿ÷8îmÅý	ù&¡Úâà¼ýU–LË#[gW„ÿ8@>_[³ôª)¹Åµâ]–žœ½x¹R‡ß#@»ôüúÖo°få=uqžRZXy4uÍÄC›ÓßÏüw°¸¶×’Ó+l"¡ù1=-ZÕ



Sample





Analysis



Market Information Used:

Series array that contains open time of each bar


Indicator Curves created:


Indicators Used:

Moving average indicator
Relative strength index


Custom Indicators Used:

Order Management characteristics:

Other Features:

It sends emails