I cannot find good explanation for indicator Handle and indicator buffer, appreciate if someone can explain it to me
Perhaps you should read the manual, especially the examples. How To Ask Questions The Smart Way. (2004) How To Interpret Answers. RTFM and STFW: How To Tell You've Seriously Screwed Up.
They all (including iCustom) return a handle (an int). You get that in OnInit. In OnTick/OnCalculate (after the indicator has updated its buffers), you use the handle, shift and count to get the data. Technical Indicators - Reference on algorithmic/automated trading language for MetaTrader 5 Timeseries and Indicators Access / CopyBuffer - Reference on algorithmic/automated trading language for MetaTrader 5 How to start with MQL5 - General - MQL5 programming forum - Page 3 #22 (2020.03.08) How to start with MQL5 - MetaTrader 5 - General - MQL5 programming forum - Page 7 #61 (2020.07.05) How to call indicators in MQL5 - MQL5 Articles (2010)
Indicator buffer is a double array (in case of data and not colors) in an indicator with each item in the array representing a bar on the chart. An indicator may have from 0 to x (don't remember if its 255 or less/more) buffers.An handle is just a unique integer id that MT5 creates for each indicator when created, you get it as output from the creation funtcion (IndicatorCreate or iCustom) and use it as an input parameter to CopyBuffer() to get data from the actual buffers in the indicator.
As William mentioned,you should create the indicator in the OnInit phase, and query the buffer in OnTick/OnCalculate
Please enable the necessary setting in your browser, otherwise you will not be able to log in.