GrabBuffers





//+------------------------------------------------------------------+
//|                                                  GrabBuffers.mq4 |
//+------------------------------------------------------------------+
//    IndicatorName is the .mq4/.ex4 filename.  You do not need to have
//    the source code (i.e. .mq4 file) to read from the buffers.
//
//    The Indicator you're analyzing does not have to be on the current
//    chart, but it makes it easier because you have to analyze because
//    you can compare the Buffer output with changes in the Indicator.
//    For example, if the indicator changes color and suddenly a different
//    buffer is being used, then it may be that that particular color
//    is assigned to that buffer
//
//    Look at the scale on the indicator right side.  If the scale is
//    0.0000 to 0.0004 and you see the indicator at 0.0100 (you can
//    also hover the mouse over the indicator to get the current value)
//    and it moves to 0.0110 and the value of a buffer changes to match
//    that, then you've discovered the buffer which is being used to
//    carry the current value of the indicator.
//
//    If a buffer has a huge number like 217344678.99, then that value
//    is set to No Value in the indicator.
//
//    The 8 accessible buffers (buffers 0 through 7) from iCustom are doubles, even if they
//    only carry integer values in them
//
//    A buffer can be used for storing a number (e.g. value of the ATR in the indicator window)
//    or to trigger a particular color to be displayed.  For example, Buffer 0 = Red,
//    Buffer 1 = Green, Buffer 2 = Black.  If Buffer 0 = 0, Buffer 1 = 1, and Buffer 2 = 0, then 
//    the indicator window bar will be Green.  This has a great deal of benefit if you want to
//    know when a bar changes colors for some trading entry/exit signal.  When the buffers are
//    used to store numbers, you can detect when there are cossovers.  For example with MACD, 
//    you can see that Buffer 0 is the Histogram value and Buffer 1 is the Trendline value and
//    by comparing Buffer0 with Buffer1 you can detect crossover.
//
//    Frequently the value under the Properties tab for Color corresponds to the Buffer #.  In
//    the example of MACD, #0 = Gray and #1 = Red and the values for the Histogram are found
//    in Buffer 0 and displayed as Gray.  The value of the trendline is found in Buffer 1 and
//    displayed in Red.  With CCI, Buffer 0 holds the value of the CCI line.  If you didn't
//    have the source code for CCI, the changes values in Buffers 1, 2, and 3 might not have any
//    meaning (you may not be able to figure what they're used for).  Looking at the source code
//    you can tell that they're used for storing rather than displaying data.
//

#property copyright ""
#property link      ""

#property indicator_chart_window
extern string    IndicatorName="ATR";
//+------------------------------------------------------------------+
int start()
  {
  Print("Indicator: "+IndicatorName+" Buffer0="+DoubleToStr(iCustom(NULL,0,IndicatorName,0,0),8)+" Buffer1="+DoubleToStr(iCustom(NULL,0,IndicatorName,1,0),8)+" Buffer2="+DoubleToStr(iCustom(NULL,0,IndicatorName,2,0),8)+" Buffer2="+DoubleToStr(iCustom(NULL,0,IndicatorName,3,0),8)+" Buffer4="+DoubleToStr(iCustom(NULL,0,IndicatorName,4,0),8)+" Buffer5="+DoubleToStr(iCustom(NULL,0,IndicatorName,5,0),8)+" Buffer6="+DoubleToStr(iCustom(NULL,0,IndicatorName,6,0),8)+" Buffer7="+DoubleToStr(iCustom(NULL,0,IndicatorName,7,0),8));
  return(0);
  }





Sample





Analysis



Market Information Used:



Indicator Curves created:


Indicators Used:




Custom Indicators Used:
IndicatorName

Order Management characteristics:

Other Features: