MACD TRUE

Mar 15, 2018 at 08:04
987流覽
7 Replies
會員從Jun 23, 2014開始   12帖子
Mar 15, 2018 at 08:04
Attached is a MACD True indicator by David W. Thomas and it looks good. How can I access the values of each in coding a test script? My attempts have come to nothing. Any help? Where I am I wrong when scripting


double m = iCustom(NULL,0,'MACD True',MODE_MAIN,1);
double n = iCustom(NULL,0,'MACD True',0,MODE_SIGNAL,1);
double p = iCustom(NULL,0,'MACD True',0,MODE_EMA,1); //and I have no idea how to get the histogram value

Thanks inadvance,😞

附件:

Keep Learning and better your best!!
會員從Jun 14, 2013開始   130帖子
Mar 15, 2018 at 08:35 (已編輯Mar 15, 2018 at 08:36)
Hi CupOtea,

I know the MACD True, use it myself... :)

The indicator stores the following values:

   SetIndexStyle(0,DRAW_LINE);
   SetIndexBuffer(0,MACDLineBuffer);
   SetIndexDrawBegin(0,SlowMAPeriod);
   SetIndexStyle(1,DRAW_LINE,STYLE_DOT);
   SetIndexBuffer(1,SignalLineBuffer);
   SetIndexDrawBegin(1,SlowMAPeriod+SignalMAPeriod);
   SetIndexStyle(2,DRAW_HISTOGRAM);
   SetIndexBuffer(2,HistogramBuffer);
   SetIndexDrawBegin(2,SlowMAPeriod+SignalMAPeriod);

So buffer 0 stores the value for the MACD Line, Buffer 1 the value for the Signal Line, and buffer 2 the value for the Histogram.

So you can try this. I have not tested it, but it should work. Just remember to replace 'period', 'method' and 'price' with the values you want:

YourVariable = iCustom( NULL, 0, 'MACD True', period, method, price, 0, 0 ); // BUFFER 0 - MACD Line
YourVariable = iCustom( NULL, 0, 'MACD True', period, method, price, 1, 0 ); // BUFFER 1 - Signal Line
YourVariable = iCustom( NULL, 0, 'MACD True', period, method, price, 2, 0 ); // BUFFER 2 - Histogram

Hope this helps. :)
Keep it simple, be disciplined, get rich slowly and above all protect your equity!
會員從Jun 23, 2014開始   12帖子
Mar 15, 2018 at 10:22
Thanks JacoAF, but it isn't working. Still getting Null values.
Keep Learning and better your best!!
會員從Jun 14, 2013開始   130帖子
Mar 15, 2018 at 11:40 (已編輯Mar 15, 2018 at 11:43)
CupOtea posted:
Thanks JacoAF, but it isn't working. Still getting Null values.


Hi,

Sorry I made a mistake in the code. Try this, I tested it and it seems to work.

//+------------------------------------------------------------------+
//| Script program start function |
//+------------------------------------------------------------------+
void OnStart()
  {

   double MACDLineValue;
   double SignalLineValue;
   double HistogramValue;
   
   MACDLineValue = iCustom( NULL, 0, 'MACD True', 12, 26, 9, 0, 0 ); // BUFFER 0 - MACD Line
   SignalLineValue = iCustom( NULL, 0, 'MACD True', 12, 26, 9, 1, 0 ); // BUFFER 1 - Signal Line
   HistogramValue = iCustom( NULL, 0, 'MACD True', 12, 26, 9, 2, 0 ); // BUFFER 0 - Histogram

   Alert('MACD Line: ' + DoubleToStr(MACDLineValue) + ', Signal Line: ' + DoubleToStr(SignalLineValue) + ', Histogram: ' + DoubleToStr(HistogramValue));

  }
//+------------------------------------------------------------------+

The 'Alert' function is just to test and compare the values to the Data Window values
Keep it simple, be disciplined, get rich slowly and above all protect your equity!
會員從Jun 23, 2014開始   12帖子
Mar 15, 2018 at 11:44
No buddy, It aint working. Perhaps I need a copy of your MACD True
Keep Learning and better your best!!
會員從Jun 14, 2013開始   130帖子
Mar 15, 2018 at 11:50 (已編輯Mar 15, 2018 at 11:52)
Ok here is what I use...

MACD_True.mq4 (Indicator), other one is the sample script code.

Just a note... in the sample code I used 'MACD True' as the indicator name.... the attached indicator does not have the space... use 'MACDTrue as the name

附件:

Keep it simple, be disciplined, get rich slowly and above all protect your equity!
會員從Jun 14, 2013開始   130帖子
Mar 15, 2018 at 11:53 (已編輯Mar 15, 2018 at 11:55)
I just noticed something... when I paste the code here it changes the double quotes to single quotes... probably why it does not work.... the indicator name MUST be between double quotes...

see the script sample, and remember to use the indicator name exactly as it appears on your PC...
Keep it simple, be disciplined, get rich slowly and above all protect your equity!
會員從Jun 23, 2014開始   12帖子
Mar 15, 2018 at 12:10
I am somewhere there. I have installed in a different broker's MT4 and old MACD True is working. Yours too. I need to revisit my usual broker and find out why it aint working.
Thanks buddy.
Keep Learning and better your best!!
登錄 / 註冊 to comment
You must be connected to Myfxbook in order to leave a comment
*商業用途和垃圾郵件將不被容忍,並可能導致帳戶終止。
提示:發佈圖片/YouTube網址會自動嵌入到您的帖子中!
提示:鍵入@符號,自動完成參與此討論的用戶名。