In this article
After this article, you can
- Determine the OBV sign after the preceding record is removed.
- Detect why a constant offset cannot repair missing inputs.
Terms at hand: Backtesting · Divergence · Position notional (notional value) · Balance · OTC market (over-the-counter) · Trading Journal
On-Balance Volume (OBV) accumulates a volume series with a sign based on successive closes. MetaTrader’s documentation attributes it to Joseph Granville, but the calculation does not identify institutions or money entering a market. On a currency chart, first establish the volume unit and source, then compare the calculated line with price.
A missing record removes more than one term from the sum
The complete fictional fragment has Close t0 = 100, t1 = 102, t2 = 101. Volumes are 300 at t1 and 200 at t2. Set starting OBV at t0 to 0.
Volume uses the same arbitrary unit. The gap means a deleted record, not a zero-volume bar. This is not an actual market export. The document MetaTrader 5 — On Balance Volume confirms that the current volume’s sign depends on comparing current Close with previous Close.
In the complete series, t1 adds 300 and t2 subtracts 200 because 101 < 102. Without t1, the algorithm sees 101 > 100 and adds 200. Its 200 differs from the complete 100 by more than simply removing +300. A starting-value shift cannot repair this export. Check continuity and recover the previous Close; if the record cannot be recovered, mark the range incomplete instead of interpreting the resulting divergence.
How is On-Balance Volume calculated?
Compare the current Close with the previous Close, not with the current Open. Higher adds the current volume; lower subtracts it; equal leaves the sum unchanged. A one-pip and a ten-pip change receive the same signed contribution if their volume is equal. The starting constant shifts the level, so crossing zero is not a universal trading signal.
Our fictitious sequence starts at Close 1.1000 with OBV 0. A: Close 1.1010,100 ticks, OBV 100; B:1.1005,180 ticks, OBV −80; C:1.1005,300 ticks, OBV −80; D:1.1020,120 ticks, OBV 40; E:1.1015,60 ticks, OBV −20. Thus 100−180+0+120−60=−20. C has the largest tick count but contributes zero because its Close equals B. Starting at 1000 would instead finish at 980, leaving all differences unchanged.
Why is forex volume only an approximation?
A broker’s FX tick counter is not a live total of the OTC currency market. For historical context only, BIS reported USD 7.5 trillion per day in April 2022 on a net-net basis across all FX instruments; spot was USD 2.1 trillion. The triennial survey is not a chart-volume feed, and the old number is not a current 2026 turnover estimate.
MetaTrader describes Forex tick volume as price-change count in the supplied stream. One hundred ticks does not identify one hundred trades, their notional value or participants. MT5 iOBV accepts a volume-type parameter, with VOLUME_TICK and VOLUME_REAL options; verify data availability for the symbol. Selecting real volume cannot create missing trades. No tick-versus-total-turnover correlation is estimated here.
The signed sum is a feature of that input series, not a net buying/selling-pressure counter. Differences in quotes, volume types, bar boundaries or missing records can change it. The guide to volume on forex explains the input distinction.
Divergence without inferring capital flow
In our sequence, D’s Close 1.1020 exceeds A’s 1.1010 but its OBV 40 is below 100. Yet D has 120 ticks versus A’s 100. The lower cumulative level follows the path between them, including subtracting 180 at B. It therefore does not prove less quoting activity on the latest higher Close.
A bearish divergence compares a higher price high with a lower OBV high; the bullish case compares a lower price low with a higher OBV low. Because OBV accumulates volume with signs determined by closing-price changes, a lower OBV value does not prove lower total activity. It describes the signed accumulation used by this indicator, not a count of buyers or a reversal probability.
A hypothetical example of reading divergence
Consider an illustrative, entirely hypothetical scenario on EUR/USD on the four-hour timeframe. Assume the rate rises for two weeks and sets a first peak around 1.0920, then after a short correction goes even higher, to 1.0975. At first glance this is a clean uptrend.
In the separate H4 illustration, assume the paired OBV extrema are 500 then 400. This is a hypothetical bearish divergence, not proof that the new price peak had lower volume, institutional selling or a known reversal probability. Define how both extrema are paired. A pivot requiring two following closed bars becomes confirmed only after those bars, not at the earlier high.
Aggregation and precision change the calculation
Aggregating A–E as one bar gives total 760 ticks. Its Close 1.1015 exceeds previous 1.1000, so it adds 760, unlike the five separate contributions totalling −20. This is an effect of the formula, not a platform error. Interval and session boundaries are part of a rule; no universal H1/H4 minimum follows.
Keeping all other inputs, change C’s Close from 1.10050 to 1.10051 or 1.10049, only ±0.1 EUR/USD pip. Its 300 ticks now receive +300 or −300, so final OBV becomes +280 or −320 instead of −20. Later signs remain unchanged. Four-decimal exports can conceal this distinction. CME reports traded contracts for defined venues and dates; that is another unit, not a guaranteed more profitable or more reliable strategy.
OBV versus the accumulation/distribution line and Chaikin Money Flow
For contrast, A/D accumulates volume weighted by the Close’s position in the same High–Low range. CMF divides the sum of those weighted contributions by the volume sum over a chosen window; 20 or 21 is a convention, not a required profitable setting. This is not an institutional-money measurement, and range/volume denominator edge cases need the implementation’s handling.
Compare formulas on identical inputs rather than judge a strategy by intuitive appearance. A second tool using the same prices is not automatically independent confirmation. Volume profile distributes the selected volume by price; specify its data scope too. The technical analysis section provides further context.
What to do tomorrow
- Record source, symbol, volume type, interval, session boundaries, history start and export precision. Hand-check higher, lower and equal Close cases.
- Write the pivot-selection rule and when each point becomes available. Preserve rejected and later-disappearing cases, not only neat historical divergences.
- Define entry, exits, size and costs separately. A divergence is a measured condition; additional price-derived indicators do not automatically establish independent evidence or an edge.
- Compare a complete rule with and without OBV on the same evaluation sample and costs, then assess a separate period. Record all tested versions to expose selection after outcomes.
- For futures, identify the actual contract and rollover/series construction. Contract volume is not the global spot total; comparing different data sets does not by itself isolate strategy quality.
Check your understanding
One short exercise
About 2 min · you can try again
t1 with Close 102 was removed. Remaining t0 = 100 and t2 = 101, volume 200. What does the standard rule do at t2?
- Subtract 200 because t2 fell in the original series.
- Leave OBV unchanged because volume becomes zero after a gap.
- Add 200 because the last available previous Close is 100.
Check the answer and explanation
Add 200 because the last available previous Close is 100.
101 > 100, giving a positive sign. This differs from comparing 101 with 102 in the complete series.
Frequently asked
What is the OBV indicator and how is it calculated?
OBV adds current volume for a higher Close, subtracts it for a lower Close and leaves the sum unchanged for equality, compared with the preceding Close. The signed level depends on the chosen start; it is not money flow or a participant count. Our fictitious 100−180+0+120−60 sequence finishes −20; starting 1000 instead of 0 finishes 980.
Does OBV work on forex if there is no real volume there?
It can be calculated on a defined volume series, but that does not establish profitable trading. The tick count records received ticks in the selected feed, not global notional turnover. MT5 iOBV accepts VOLUME_TICK or VOLUME_REAL; verify actual availability. An unavailable real-volume series is not evidence of no market activity. No turnover-correlation statistic is claimed here.
How do you interpret an OBV divergence?
A bearish divergence compares a higher price extremum with a lower paired OBV extremum; the bullish case reverses the directions. Because OBV is cumulative, it does not measure just the latest bar’s activity. In our sequence, D has 120 ticks versus A’s 100 but OBV 40 versus 100. Define paired pivots and confirmation time; neither the condition nor a second price-based tool identifies institutions or guarantees reversal.
Sources & bibliography
-
StockCharts ChartSchool On Balance Volume (OBV) · Explains Granville's OBV formula, adding or subtracting volume according to changes in closing price, and conventional confirmation/divergence interpretations. chartschool.stockcharts.com ↗
-
MetaTrader 5 Help On Balance Volume — Volume Indicators · Official MT5 documentation explains how OBV uses the volume series supplied for each bar. www.metatrader5.com ↗
-
Bank for International Settlements OTC foreign exchange turnover in April 2022 · The April 2022 BIS survey reports OTC foreign-exchange turnover and describes the market's structure. www.bis.org ↗
-
StockCharts ChartSchool Accumulation/Distribution Line · Explains Chaikin's Accumulation/Distribution Line and its volume weighting based on a close's position within the bar range, for comparison with OBV. chartschool.stockcharts.com ↗
-
StockCharts ChartSchool Chaikin Money Flow (CMF) · Explains Chaikin Money Flow and its rolling-window construction, for comparison with OBV and the Accumulation/Distribution Line. chartschool.stockcharts.com ↗
-
MetaQuotes MQL5 Reference — iOBV · The official API includes an applied-volume parameter; verify whether the selected symbol supplies trade volume. www.mql5.com ↗
-
CME Group About Volume — Volume and Open Interest Columns Explained · Defines traded contract counts for the selected date and CME venues; those counts are not a global spot-FX volume series. www.cmegroup.com ↗
