Can you fix this indicator for MT4?

I am going to attach an MT4 indicator that supposedly tells you when the EMA’s cross. For those of you that have picked up MQL (I am learning little by little) please help me out. This is what I want you do to… just tweak the program for me. This is all I need it to do:

  1. It currently has an email feature, but there is no input for the user for where the email should go. Adjust the properties menu to allow the user to input his/her email.

  2. The sound alert does not work (at least from what I can tell). Adjust the properties menu to allow the user to point to sound file in the computer directory.

  3. The program shows arrows when the Moving Averages cross but does not show the moving average lines themselves. Adjust the properties menu to allow the user to change the color of the drawn MA’s and whether they should appear or not.

  4. The program draws an arrow at each cross over. Adjust the properties menu to allow the user to toggle showing an arrow “on” or “off”

  5. The program was badly coded and need to be more user friendly. Adjust the properties menu to allow the user to input whether he or she would like EMA or SMA via a dropdown menu for each Moving Average. For example he/she may want two EMA’s or one SMA and one EMA.

  6. Allow a feature that would change the candle color when the MA’s cross. So for example I use Green and Red candlesticks, but when the Ma’s cross I want it to change the color of the candle to purple. The user should be able to input what color it changes to.

Thanks, I hope this works out well.

Send big files the easy way. Files too large for email attachments? No problem!

I could not attach the file so I’ve uploaded it via the link above. It’s about 8kb

See this thread for help EMA crossover Email Alert

*I figured out why I wasn’t getting an email. You must input your email in MT4 under Tools>Options>email tab

but I can’t get the settings right for gmail :mad:

The arrows part is easy. Add this to the top of the code along with the other external variables:

extern bool Draw_Arrows=true;

Then in the indicators initialization section put the four lines that take care of the arrows inside an if block as:

if(Draw_Arrows==true)
{
SetIndexStyle(2,DRAW_ARROW,EMPTY,3,Blue);
SetIndexStyle(3,DRAW_ARROW,EMPTY,3,Red);
SetIndexArrow(2,SYMBOL_ARROWUP);
SetIndexArrow(3,SYMBOL_ARROWDOWN);
}

That will take care of that. I’ll keep working on the rest.