eggzactly Posted November 9, 2010 Report Share Posted November 9, 2010 Hi, can some excellent coders here help me in this task : i want to define trend based on the ma_in_color indicator. This indicator have 3 colors, blue - up | red - down | mid - yellow. The really help i need is the ea defines the trend only based on blue and red colours, for instance if we are in blue - uptrend and then appears a yellow, the ea consider this yellow up trend until appears the red color - opposite applies. thanks in advance. regards, eggzactly -------------------------------------------------------------------------------------------------------------------------------------- indicator code //+------------------------------------------------------------------+ //| MA_In_Color.mq4 | //| Copyright © 2004, MetaQuotes Software Corp. | //| Modified from LSMA_In_Color to use any MA by Robert Hill | //+------------------------------------------------------------------+ #property copyright "Copyright © 2006, FX Sniper and Robert Hill" #property link "http://www.metaquotes.net/" //---- indicator settings #property indicator_chart_window #property indicator_buffers 3 #property indicator_color1 Yellow #property indicator_color2 RoyalBlue #property indicator_color3 Crimson extern int MAPeriod=7; extern int MAType=2; //---- buffers double ExtMapBuffer1[]; double ExtMapBuffer2[]; double ExtMapBuffer3[]; //---- variables int MAMode; string strMAType; //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int init() { IndicatorBuffers(3); //---- drawing settings SetIndexBuffer(2,ExtMapBuffer1); SetIndexBuffer(1,ExtMapBuffer2); SetIndexBuffer(0,ExtMapBuffer3); SetIndexStyle(2,DRAW_LINE,STYLE_SOLID,2); SetIndexStyle(1,DRAW_LINE,STYLE_SOLID,2); SetIndexStyle(0,DRAW_LINE,STYLE_SOLID,2); switch (MAType) { case 1: strMAType="EMA"; MAMode=MODE_EMA; break; case 2: strMAType="SMMA"; MAMode=MODE_SMMA; break; case 3: strMAType="LWMA"; MAMode=MODE_LWMA; break; case 4: strMAType="LSMA"; break; default: strMAType="SMA"; MAMode=MODE_SMA; break; } IndicatorShortName( strMAType+ " (" +MAPeriod + ") "); //---- initialization done return(0); } double LSMA(int Rperiod, int shift) { int i; double sum; int length; double lengthvar; double tmp; double wt; length = Rperiod; sum = 0; for(i = length; i >= 1 ; i--) { lengthvar = length + 1; lengthvar /= 3; tmp = 0; tmp = ( i - lengthvar)*Close[length-i+shift]; sum+=tmp; } wt = sum*6/(length*(length+1)); return(wt); } int start() { double MA_Cur, MA_Prev; int limit; int counted_bars = IndicatorCounted(); //---- check for possible errors if (counted_bars<0) return(-1); //---- last counted bar will be recounted if (counted_bars>0) counted_bars--; limit = Bars - counted_bars; for(int i=limit; i>=0; i--) { if (MAType == 4) { MA_Cur = LSMA(MAPeriod,i); MA_Prev = LSMA(MAPeriod,i+1); } else { MA_Cur = iMA(NULL,0,MAPeriod,0,MAMode,PRICE_CLOSE,i); MA_Prev = iMA(NULL,0,MAPeriod,0,MAMode,PRICE_CLOSE,i+1); } //========== COLOR CODING =========================================== ExtMapBuffer3 = MA_Cur; //red ExtMapBuffer2 = MA_Cur; //green ExtMapBuffer1 = MA_Cur; //yellow if (MA_Prev > MA_Cur) { ExtMapBuffer2 = EMPTY_VALUE; } else if (MA_Prev < MA_Cur) { ExtMapBuffer1 = EMPTY_VALUE; //-1 red/greem tight } else { ExtMapBuffer1=EMPTY_VALUE;//EMPTY_VALUE; ExtMapBuffer2=EMPTY_VALUE;//EMPTY_VALUE; } } return(0); } //+------------------------------------------------------------------+ Quote Link to comment Share on other sites More sharing options...
eggzactly Posted November 9, 2010 Author Report Share Posted November 9, 2010 Bumping this one, really need your help please... Quote Link to comment Share on other sites More sharing options...
codehead Posted December 29, 2010 Report Share Posted December 29, 2010 Just saw this--you probably have this figured out by now, but if not ping me. Quote Link to comment Share on other sites More sharing options...
scarface Posted January 4, 2011 Report Share Posted January 4, 2011 Hi eggzactly Good day and Happy New year, so you want to build an EA based on Blue and Red color only, right?? you would assume that the yellow one is also up,... Ok, I think I got it.... I will look at it and let you know whenever I can, Best wishes, SF Quote a New Year 2011 has come, and the challenge has just started 8-) Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.