Sem Sidus





//+------------------------------------------------------------------+
//|                                  Áîëüøàÿ Êîëëåêöèÿ Ñåìàôîðîâ.mq4 |
//+------------------------------------------------------------------+
#property copyright "Ñåðãååâ Àëåêñåé (ñ) 2007"

#property indicator_separate_window
#property indicator_minimum 0
#property indicator_maximum 1
#property indicator_buffers 4
#property indicator_width1 2
#property indicator_width2 2
#property indicator_width3 1
#property indicator_width4 1
#property indicator_color1 Crimson
#property indicator_color2 LimeGreen
#property indicator_color3 Crimson
#property indicator_color4 LimeGreen
#property indicator_style1 STYLE_SOLID
#property indicator_style2 STYLE_SOLID
#property indicator_style3 STYLE_SOLID
#property indicator_style4 STYLE_SOLID
//---- input parameters
extern int       Minutes=0;
extern int       rsMA=28;
extern int       rfMA=16;
extern int       bsMA=8;
extern int       bfMA=5;
extern int       Mode=MODE_EMA;//0-sma, 1-ema, 2-smma, 3-lwma
extern int       Price=PRICE_MEDIAN;//0-close, 1-open, 2-high, 3-low, 4-median, 5-typic, 6-wieight

//---- buffers
double ExtMapBuffer1[];
double ExtMapBuffer2[];
double ExtMapBuffer3[];
double ExtMapBuffer4[];

int init()
{
//---- indicators
	SetIndexStyle(0,DRAW_HISTOGRAM);	SetIndexBuffer(0,ExtMapBuffer1);
	SetIndexStyle(1,DRAW_HISTOGRAM);	SetIndexBuffer(1,ExtMapBuffer2);
	SetIndexStyle(2,DRAW_HISTOGRAM);	SetIndexBuffer(2,ExtMapBuffer3);
	SetIndexStyle(3,DRAW_HISTOGRAM);	SetIndexBuffer(3,ExtMapBuffer4);

   string Name = "Sidus("+rsMA+","+rfMA+","+bsMA+","+bfMA+")";
   IndicatorShortName(Name);  

	return(0);
}
int deinit()  { return(0); }

int start()
{
   double rs, rf, bs, bf;
//----

	for (int i = 0; i < Bars; i++)
	{
		ExtMapBuffer1[i]=0;
		ExtMapBuffer2[i]=0;
		ExtMapBuffer3[i]=0;
		ExtMapBuffer4[i]=0;

		rs=iMA(NULL, Minutes, rsMA, 0, Mode, Price, i);
		rf=iMA(NULL, Minutes, rfMA, 0, Mode, Price, i);
		bs=iMA(NULL, Minutes, bsMA, 0, Mode, Price, i);
		bf=iMA(NULL, Minutes, bfMA, 0, Mode, Price, i);

		if (rf<rs && bf<bs){ ExtMapBuffer1[i] = 1; }//ïðîäàåì ñèëüíî
		if (rf>rs && bf>bs){ ExtMapBuffer2[i] = 1; }//ïîêóïàåì ñèëüíî
		if (rf<rs && bf>bs){ ExtMapBuffer3[i] = 1; }//ïðîäàåì ñëàáî
		if (rf>rs && bf<bs){ ExtMapBuffer4[i] = 1; }//ïîêóïàåì ñëàáî
	}
	return(0);
}
//+------------------------------------------------------------------+



Sample





Analysis



Market Information Used:



Indicator Curves created:

Implements a curve of type DRAW_HISTOGRAM


Indicators Used:

Moving average indicator


Custom Indicators Used:

Order Management characteristics:

Other Features: