TickAtlas
oscillator 10 min read Updated 2026-03-21

DeMarker Indicator (DeMarker)

The DeMarker indicator identifies potential exhaustion points and demand zones. It compares the current bar's high/low to the previous bar to gauge buying/selling pressure.

TL;DR

  • DeMarker is a oscillator indicator used in technical analysis
  • Above 0.7 indicates potential overbought/exhaustion. Below 0.3 indicates potential oversold/demand zone. Range: 0 to 1.
  • Best timeframes: H1, H4, D1
  • Skip to API docs →

What is DeMarker Indicator?

The DeMarker indicator identifies potential exhaustion points and demand zones. It compares the current bar's high/low to the previous bar to gauge buying/selling pressure.

How DeMarker is Calculated

formula
DeMax = High(i) > High(i-1) ? High(i) - High(i-1) : 0
DeMin = Low(i) < Low(i-1) ? Low(i-1) - Low(i) : 0

DeMarker = SMA(DeMax, n) / (SMA(DeMax, n) + SMA(DeMin, n))

Default period: 14

How to Interpret DeMarker

Above 0.7 indicates potential overbought/exhaustion. Below 0.3 indicates potential oversold/demand zone. Range: 0 to 1.

Trading Strategies Using DeMarker

Strategy 1: DeMarker Extremes

Trade reversals from exhaustion zones.

Entry Rules

Buy when DeMarker crosses above 0.3 from below. Sell when it crosses below 0.7 from above.

Exit Rules

Exit at opposite extreme or when price action confirms reversal complete.

Combining DeMarker with Other Indicators

DeMarker works best when combined with complementary indicators:

  • DeMarker + RSI: Combine for stronger confluence signals
  • DeMarker + Williams %R: Combine for stronger confluence signals
  • DeMarker + CCI: Combine for stronger confluence signals

DeMarker Across Different Timeframes

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

H1 H4 D1

Learn about all 7 timeframes →

Accessing DeMarker via 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": "DeMarker_14",
  "timeframe": "H1"
}

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

Sample Response

200 OK
{
  "symbol": "EURUSD",
  "indicator": "DeMarker_14",
  "timeframe": "H1",
  "timestamp": "2026-03-21T14:00:00Z",
  "value": 58.43,
  "signal": "neutral"
}

Common Mistakes to Avoid

  1. 1

    Using the same 0.7/0.3 thresholds for all market conditions

  2. 2

    Not combining with trend analysis

Frequently Asked Questions

What does DeMarker measure that RSI does not?

DeMarker focuses on comparing current bar highs/lows to previous ones, measuring buying/selling pressure differently from RSI which compares gains to losses. DeMarker can identify exhaustion points earlier.

Continue learning

Ready to use DeMarker data in your application?

Start your free trial and access real-time DeMarker data across 7 timeframes.