• Overview
  • Reviews
  • Comments (1)


This indicator provides you with MACD formula applied to volume-aware Accumulation/Distribution and OnBalance Volumes indicators. In addition to tick volumes it supports special pseudo-real volumes, synthesized for Forex symbols where real volumes are unknown. More details on the volume surrogates may be found in description of another indicators - TrueVolumeSurrogate and OnBalanceVolumeSurrogate (algorithm of the latter is used internally in MACDAD for AD and OBV calculation before they proceed to MACD formula).

Using the combined price/volume action is widely recognized as an advantage in comparison to pure price action. This is why MACD based on OBV or AD may provide additional gain for trading.

The indicator shows a histogram of MACD itself, red signal line, and yellow dotted oscillating line, which visualizes a difference between the histogram and the signal line.


  • FastMA - fast period, by default - 12;
  • SlowMA - slow period, by default - 26;
  • SignalMA - signal line period, by default - 9;
  • FastSlowMAMethod - fast and slow moving average method, by default - exponential;
  • SignalMAMethod - signal moving averaging method, by default - simple;
  • PriceType - applied price type (applicable only if UseVolumes is none, see below), by default - Close;
  • UseVolumes - mode selector: none - standard MACD built on pure price, OBV - MACD built on OBV curve, AD - MACD built on AD curve; by default - none; when it's OBV or AD, PriceType makes no sense and takes no effect;
  • SurrogateVolumes - enable/disable usage of surrogate volumes; by default - false (tick volumes); it takes effect only if UseVolumes is OBV or AD;


On the screenshots below, the indicator is demonstrated with various settings on the same chart EURUSD H1.

  1. default settings, UseVolumes = none, MACD is built on price;
  2. UseVolumes = OBV, SurrogateVolumes = false;
  3. UseVolumes = AD, SurrogateVolumes = false;
  4. UseVolumes = OBV, SurrogateVolumes = true;
  5. UseVolumes = AD, SurrogateVolumes = true;
No reviews