Forex Indicator BOBB v1

BOBB v1 - Bollinger Bands breakouts and the width of the bands.

BOBB v1 - Bollinger Bands breakouts and the width of the bands.
BOBB v1
BOBB v1 - Bollinger Bands breakouts and the width of the bands.
BOBB v1
BOBB v1 - Bollinger Bands breakouts and the width of the bands.
BOBB v1
BOBB v1 - Bollinger Bands breakouts and the width of the bands.
BOBB v1
BOBB v1 - Bollinger Bands breakouts and the width of the bands.
BOBB v1
BOBB v1 - Bollinger Bands breakouts and the width of the bands.
BOBB v1
BOBB v1 - Bollinger Bands breakouts and the width of the bands.
BOBB v1
BOBB v1 - Bollinger Bands breakouts and the width of the bands.
BOBB v1









Technical Forex indicator BOBB v1 was introduced by M. G (Downspin), this hybrid indicator is developed to assist traders in their ability to decipher and monitor market conditions. This indicator shows Bollinger Bands breakouts and the width of the bands. BOBB indicator is very simple trades, if blue line crosses zeroline to above its a breakout to above and if red line crosses zeroline to above its a breakout to below, orange line shows width. The indicator is a good helper to detect Buy and Sell signals.

BOBB v1 MQ4 Code Base (Copy Code)
//+------------------------------------------------------------------+
//|                                                      BOBB_V1.mq4 |
//|                                         Based On Bollinger Bands |
//|                                                   mg@downspin.de |
//+------------------------------------------------------------------+
#property copyright "Copyright @ 2011, downspin"
#property link      "mg@downspin.de"

#property indicator_separate_window
#property indicator_buffers 3
#property indicator_color1 DodgerBlue
#property indicator_color2 Red
#property indicator_color3 Orange
#property indicator_level2 0

extern int    BandsPeriod=20;
extern double BandsDeviations=1.0;

double val1[],
       val2[],
       dev[];

int init(){
  SetIndexStyle(0,DRAW_LINE); SetIndexBuffer(0,val1);
  SetIndexStyle(1,DRAW_LINE); SetIndexBuffer(1,val2);
  SetIndexStyle(2,DRAW_LINE); SetIndexBuffer(2,dev);
  return(0);
}

int deinit(){return(0);}

int start(){
  double sum,ma;
  for(int i=Bars-IndicatorCounted();i>=0;i--){
    ma=iMA(NULL,0,BandsPeriod,0,MODE_SMA,PRICE_CLOSE,i);
    sum=0.0;
    for(int k=i+BandsPeriod-1;k>=i;k--) sum+=MathPow(Close[k]-ma,2);
    dev[i]=BandsDeviations*MathSqrt(sum/BandsPeriod)/Point;
    val1[i]=(Close[i]-ma)/Point-dev[i];
    val2[i]=(ma-Close[i])/Point-dev[i];
  }
  return(0);
}