checkmail Posted November 27, 2010 Report Share Posted November 27, 2010 (edited) Hello friends this is checkmail and was searching for an indicator, draws an ma line which changes color based on cross between two ema/sma (open/close).And have found one indicator but its having an bug in it, or something is missing in it. Can anyone fix this error, the line breaks on charts. Here is the code : #property copyright "" #property link "" #property indicator_chart_window #property indicator_buffers 3 #property indicator_color1 Green #property indicator_color2 Red #property indicator_color3 Yellow extern int PeriodAv=12; extern int PeriodAv1=24; extern int Flat=1; extern color ColorUp=Green; extern color ColorDown=Red; extern color ColorFlat=Yellow; extern int Width=2; double Line1[], Line2[], Line3[]; //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int init() { //---- indicators SetIndexStyle(0,DRAW_LINE,STYLE_SOLID,Width,ColorUp);//DRAW_LINE SetIndexBuffer(0,Line1); SetIndexStyle(1,DRAW_LINE,STYLE_SOLID,Width,ColorDown); SetIndexBuffer(1,Line2); SetIndexStyle(2,DRAW_LINE,STYLE_SOLID,Width,ColorFlat);//DRAW_LINE SetIndexBuffer(2,Line3); //---- return(0); } //+------------------------------------------------------------------+ //| Custom indicator deinitialization function | //+------------------------------------------------------------------+ int deinit() { //---- //---- return(0); } //+------------------------------------------------------------------+ //| Custom indicator iteration function | //+------------------------------------------------------------------+ int start() { //---- int i, Counted_bars=IndicatorCounted(); i=Bars-Counted_bars-1; while(i>=0) { double MA_0=iMA(NULL,0,PeriodAv,0,MODE_EMA,PRICE_CLOSE,i), MA_2=iMA(NULL,0,PeriodAv1,0,MODE_EMA,PRICE_CLOSE,i+1); if(MA_0>MA_2) Line1=MA_0; else if(MA_0<MA_2) Line2=MA_0; else if(MA_0==MA_2) Line3=MA_0; i--; } //---- return(0); } //+------------------------------------------------------------------+ Edited November 27, 2010 by checkmail Quote 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.
Note: Your post will require moderator approval before it will be visible.