Volume · TickAtlas Learn

On-Balance Volume (OBV)

OBV is a cumulative volume indicator that adds volume on up days and subtracts on down days. It measures buying/selling pressure and can diverge from price to signal reversals.

10 min readUpdated 2026-03-21Volume
OBV · quick spec
GET /v1/indicator ?symbol=EURUSD&indicator=OBV&timeframe=H1
Family
Volume
Series
Single series
Best timeframes
H1 · H4 · D1
Last updated
2026-03-21

TL;DR

  • OBV is a volume indicator used in technical analysis
  • Rising OBV confirms uptrend. Falling OBV confirms downtrend. OBV divergence from price signals potential reversal.
  • Best timeframes: H1, H4, D1
  • Skip to API docs
Understand

What is On-Balance Volume?

OBV is a cumulative volume indicator that adds volume on up days and subtracts on down days. It measures buying/selling pressure and can diverge from price to signal reversals.

Calculate

How OBV is calculated

formula
If Close > Close(prev): OBV = OBV(prev) + Volume
If Close < Close(prev): OBV = OBV(prev) - Volume
If Close = Close(prev): OBV = OBV(prev)
Interpret

How to interpret OBV

Rising OBV confirms uptrend. Falling OBV confirms downtrend. OBV divergence from price signals potential reversal.

Apply

Trading strategies using OBV

Strategy 1: OBV Divergence

Trade when OBV and price diverge, signaling underlying volume-based weakness.

Entry rules

Enter long when price makes lower low but OBV makes higher low (bullish divergence). Reverse for bearish.

Exit rules

Exit when divergence resolves or OBV confirms new price direction.

Combine

Combining OBV with other indicators

OBV works best when combined with complementary indicators:

  • OBV + MFI: Combine for stronger confluence signals
  • OBV + A/D Line: Combine for stronger confluence signals
  • OBV + Tick Volume: Combine for stronger confluence signals
Timeframes

OBV across different timeframes

OBV works across all 7 timeframes but performs best on H1, H4, D1 for most trading styles.

H1H4D1

Learn about all 7 timeframes

Query

Accessing OBV via the TickAtlas API

GET https://tickatlas.com/v1/indicator

Python example

python
import requests

url = "https://tickatlas.com/v1/indicator"
headers = {"X-API-Key": "YOUR_API_KEY"}
params = {
  "symbol": "EURUSD",
  "indicator": "OBV",
  "timeframe": "H1"
}

response = requests.get(url, headers=headers, params=params)
data = response.json()
print(data)

Sample response

200 OK
{
  "success": true,
  "data": {
    "symbol": "EURUSD",
    "indicator": "OBV",
    "timeframe": "H1",
    "value": 1234567,
    "updated_at": 1711548000,
    "server_time": "2024-03-27T14:00:00+00:00",
    "bid": 1.0856,
    "ask": 1.0857
  }
}
Avoid

Common mistakes to avoid

  • Comparing OBV absolute values between different symbols — only the trend matters
  • Ignoring OBV divergence signals which are among the most reliable volume-based signals
FAQ

Frequently asked questions

Does OBV work with forex tick volume?

Yes, OBV works with tick volume in forex. While tick volume is not true traded volume, it correlates with actual market activity and OBV divergence signals remain valid.

Continue learning

From learning to building

Put OBV to work in your application.

Sign up with $2.50 of starting credit and query pre-calculated OBV data across 7 timeframes, from M1 to D1.