//+------------------------------------------------------------------+
//| IBS.mq4 |
//| Rosh |
//| http://www.investo.ru/forum/viewtopic.php?t=127513 |
//+------------------------------------------------------------------+
#property copyright "Rosh"
#property link "http://www.investo.ru/forum/viewtopic.php?t=127513"
//----
#property indicator_separate_window
#property indicator_minimum 0
#property indicator_maximum 100
#property indicator_buffers 1
#property indicator_color1 Red
#property indicator_level1 40
#property indicator_level2 60
//---- input parameters
extern int Per=5; //---- buffers
double ExtMapBuffer1[]; double ExtMapBuffer2[]; //+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int init()
{
//---- indicators
IndicatorBuffers(2); SetIndexStyle(0,DRAW_LINE); SetIndexBuffer(0,ExtMapBuffer1); SetIndexBuffer(1,ExtMapBuffer2); IndicatorShortName("IBS("+Per+")"); //----
return(0); }
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----
//----
return(0); }
//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
int start()
{
int counted_bars=IndicatorCounted(); //----
int i,limit; if (counted_bars==0) limit=Bars-1; if (counted_bars>0) limit=Bars-counted_bars; double delitel; limit--; for(i=limit;i>=0;i--)
{
delitel=High[i]-Low[i]; if (delitel>0) ExtMapBuffer2[i]=(Close[i]-Low[i])/delitel; else ExtMapBuffer2[i]=0.0; }
for(i=limit;i>=0;i--)
{
ExtMapBuffer1[i]=iMAOnArray(ExtMapBuffer2,0,Per,0,MODE_SMA,i)*100.0; }
//----
return(0); }
//+------------------------------------------------------------------+