ADR Target Zones
- 지표
- 버전: 1.4
- 활성화: 20
Brief Description
ADR Target Zones is a MetaTrader 5 indicator that displays target zones of probable price movement based on the Average Daily Range (ADR) and Average Weekly Range (WADR). The zones are built symmetrically above and below a base price, helping traders identify potential areas of price completion within a day and a week.
How It Works
The indicator calculates the average High − Low range over a specified number of periods:
-
ADR — Average Daily Range over InpPeriod days (default 14).
-
WADR — Average Weekly Range over InpWeeksPeriod weeks (default 14).
Based on these values, four zones are built for each trading day and week:
-
Upper Zone — from base_low + ADR − 10% × ADR to base_low + ADR .
-
Lower Zone — from base_high − ADR to base_high − ADR + 10% × ADR .
Weekly zones follow the same logic using WADR and the weekly base.
Construction Modes
Two modes are available for both daily and weekly zones:
-
Fixed (from open) — base equals the opening price of the day (or week). The zone does not shift during the period.
-
Dynamic (from extremes) — base equals the current low (for the upper zone) or high (for the lower zone) of the period. The zone adjusts as extremes form.
For completed periods in dynamic mode, their own High/Low are used, making the behavior of daily and weekly zones fully identical.
What Is Displayed on the Chart
| Element | Description |
|---|---|
| Base_Line | Base line of the period (open or mid-range) |
| Upper_Zone | Daily upper zone |
| Lower_Zone | Daily lower zone |
| WUpper_Zone | Weekly upper zone |
| WLower_Zone | Weekly lower zone |
| ADR_TEXT_* | Text labels with ADR and WADR values |
Input Parameters
Main
| Parameter | Description | Default |
|---|---|---|
| InpPeriod | ADR calculation period (days) | 14 |
| InpDeviation | Daily zone thickness in % of ADR | 10.0 |
| InpHistoryDays | Number of recent days to show (0 — all) | 0 |
| InpDailyMode | Daily zone mode: 0 — fixed, 1 — dynamic | 0 |
Text
| Parameter | Description | Default |
|---|---|---|
| InpShowText | Show ADR values above zones | true |
| InpMaxTextDays | Maximum days to display text | 100 |
Weekly Zones
| Parameter | Description | Default |
|---|---|---|
| InpWeeksPeriod | WADR calculation period (weeks) | 14 |
| InpShowWADR | Show WADR in text | true |
| InpShowWADRZones | Show weekly zones | true |
| InpWADRDeviation | Weekly zone thickness in % of WADR | 10.0 |
| InpWeeklyMode | Weekly zone mode: 0 — fixed, 1 — dynamic | 0 |
Alerts
| Parameter | Description | Default |
|---|---|---|
| InpAlertPopup | Popup alert | true |
| InpAlertPush | Push notification | false |
| InpAlertSound | Sound alert | true |
| InpAlertSoundFile | Sound file | alert.wav |
| InpAlertOnlyToday | Alert only on the current day | true |
| InpAlertOncePerDay | Alert once per day | true |
How to Use
-
Identify intraday targets. The upper zone shows where an upward move from the day's low is likely to complete; the lower zone shows where a downward move from the day's high may finish.
-
Assess movement feasibility. If price has already covered the ADR, the probability of continuation decreases — consider partial position closing.
-
Combine with support/resistance. Zones work well alongside Pivot levels, Fibonacci, and volume levels.
-
Zone entry alerts. The indicator automatically notifies when price enters the upper or lower zone, helping you make decisions without constantly watching the chart.
Implementation Features
-
Incremental calculation. OnCalculate processes only new bars — the indicator does not overload the terminal with large history.
-
Identical logic for daily and weekly. Daily and weekly zones are built using the same formulas, differing only in the calculation period and the source of High/Low.
-
Correct handling of historical periods. For completed days/weeks, zones are fixed based on actual data; for the current period, they update dynamically.
-
Resource efficient. Text objects are created once; on update only their properties change. SymbolInfo* calls are removed from the hot loop.
-
Works on any timeframe. D1/W1 zones are displayed over any chart (M1–MN).
Recommended Settings
-
For intraday trading — InpDailyMode = 1 (dynamic), InpDeviation = 10–15 , InpAlertOnlyToday = true .
-
For swing trading — InpWeeklyMode = 1 , InpWeeksPeriod = 10–20 , InpShowWADRZones = true .
-
For calm instruments (indices, bonds) reduce InpDeviation to 5–7%.
-
For volatile instruments (crypto, commodities) increase to 15–20%.
Compatibility
-
MetaTrader 5 (build 2470 or newer).
-
Any instruments: forex, metals, indices, crypto, stocks.
-
Any chart timeframe.
-
No third-party libraries required.
What the Indicator Does NOT Do
-
Does not provide buy/sell trading signals.
-
Does not repaint history after a period closes.
-
Does not replace risk management and market context analysis.
