• Overview
  • Reviews
  • Comments

OnBalanceVolumeSurrogate MT5

This is a special edition of the On-Balance Volume indicator based on pseudo-real volumes emulated from tick volumes. It calculates a near to real estimation of trade volumes distribution for Forex instruments (where only tick volumes are available) and then applies conventional OBV formula to them.

Volumes are calculated by the same algorithm used in the indicator TrueVolumeSurrogate. The indicator itself is not required but can be used for reference.

OnBalanceVolumeSurrogate is also available for MetaTrader 4.


  • MAfast - fast moving average period (EMA), by default - 3; if 0, the average is not calculated;
  • Maslow - slow moving average period (EMA), by default - 7; if 0, the average is not calculated;
  • AlertOnMAcross - alert switch for moving averages crossing, by default - false (alert is disabled); alert is signalled only once per bar; alert message format: "OBVSurrogate [Symbol] [TimeFrame] UP/DOWN cross @ [Time]";
  • CompletedBars - option that controls how moving averages crossing is checked: on the last bar or on the previous bar (CompletedBars is true); by default - true, so alerts can be generated on bar opening only; if false, alerts may appear at arbitrary time; please note that a signal about down crossing is not necessarily followed by a signal about up crossing (or vice versa) - in some cases when moving averages fluctuate near each other, you may get several successive signals (on different bars) in the same direction - you should consider this as a signal confirmation;
  • AccumulationDistribution - option: when true, the indicator is calculated by Accumulation/Distribution formula; by default - false (OBV is used); the indicator title in subwindow is changed according to the option - OBV Surrogate or A/D Surrogate.


The indicator displays three lines:

  • green thick - cumulative volumes according to OBV formula;
  • red thin - fast moving average;
  • yellow thin - slow moving average;

On every MA crossing, an arrow is shown indicating a signal in the appropriate direction. Note that if CompletedBars is false, the signals detected on new bar while it has been forming, may contradict to the final position of lines, including their possibly eliminated crossing.

The screenshot demonstrates OnBalanceVolumeSurrogate side by side with TrueVolumeSurrogate.


The indicator should be used for trading in the similar way as conventional OBV is used:

  • by signals of moving averages crossing;
  • by divergence/convergence between OBV and price; if their directions contradict, a reversal is awaited (current trend is about to change);
  • by consistent movement of OBV and price; this is a confirmation of current trend.
No reviews