Direct answer
Dynamic Support Resistance is a way to describe support and resistance as zones that can shift because market conditions change over time. Instead of drawing one fixed line, you update the zone using a rule tied to recent price behavior and, often, a volatility measure. Below is a fully worked numerical scenario with explicit assumptions, so the logic can be verified without any live data.
Mechanism or definition
Support is an area where price has repeatedly had difficulty falling below; resistance is an area where price has repeatedly had difficulty rising above. “Dynamic” means those areas are not assumed to stay at the same exact price level.
A worked example needs a specific update rule. One simple rule for illustration is:
- Pick a lookback window of N bars (example: N = 5).
- For each update, compute recent swing boundaries using the last N bars:
- Lower boundary = minimum low in the last N bars
- Upper boundary = maximum high in the last N bars
- Add a “buffer” to turn boundaries into zones. The buffer can be a percentage of price (example assumption: 1%).
The important part is not the exact rule, but the separation between:
- Stable mechanics (how you convert recent highs/lows into a zone), and
- Variable inputs (the recent bars you choose, the buffer method, and any costs/execution effects you would later consider).
Evidence or example (worked scenario with assumptions)
Assume you observe a price series with only the information needed for the rule: the last 10 bars’ highs and lows. You decide to update the Dynamic Support/Resistance zone every 5 bars using N = 5.
Assumptions
- Lookback window N = 5 bars.
- Dynamic zone rule:
- Support zone = [minLow(5 bars), minLow(5 bars) × (1 + 0.01)]
- Resistance zone = [maxHigh(5 bars) × (1 − 0.01), maxHigh(5 bars)]
- Buffer = 1% of the boundary price (fixed percentage assumption).
- No spreads, slippage, or order-execution modeling is included in the math; this is a geometric example only.
Compute zones at two update times
Update at bar 5 (bars 1–5)
Suppose the last 5 bars have:
- Lows: 100.0, 101.2, 99.6, 100.8, 100.4 → minLow = 99.6
- Highs: 103.0, 102.2, 104.1, 103.5, 103.3 → maxHigh = 104.1
Support zone:
- Lower = 99.6
- Upper = 99.6 × 1.01 = 100.596 → Support zone ≈ [99.6, 100.596]
Resistance zone:
- Lower = 104.1 × 0.99 = 103.059
- Upper = 104.1 → Resistance zone ≈ [103.059, 104.1]
Update at bar 10 (bars 6–10)
Suppose bars 6–10 have:
- Lows: 102.0, 101.4, 103.2, 100.9, 102.6 → minLow = 100.9
- Highs: 105.0, 104.4, 106.2, 105.6, 104.9 → maxHigh = 106.2
Support zone:
- Lower = 100.9
- Upper = 100.9 × 1.01 = 101.909 → Support zone ≈ [100.9, 101.909]
Resistance zone:
- Lower = 106.2 × 0.99 = 105.138
- Upper = 106.2 → Resistance zone ≈ [105.138, 106.2]
What changed and why
- The support zone shifted upward from about 99.6–100.596 to about 100.9–101.909.
- The resistance zone also shifted upward from about 103.059–104.1 to about 105.138–106.2.
This happens because the rule “locks onto” the latest 5-bar min low and max high. If newer bars include higher highs and/or higher lows, the zones move.
Limitations and risks
-
Different choices give different zones. Changing N, the buffer method (percentage vs. volatility), or the boundary rule (min low/max high vs. another swing definition) produces different Dynamic Support/Resistance levels.
-
Levels are descriptive, not predictive. A zone derived from past highs/lows does not guarantee the next interaction will occur at the same boundary.
-
Market impact and costs can change outcomes. The worked example used only geometry. In real use, execution costs, bid/ask spread, slippage, and the instrument’s liquidity can affect whether price actually reaches the zone in a way that matters.
-
Failure mode: overfitting. If you repeatedly adjust parameters until past moves “look right,” you may build a method that fails out of sample.
-
Regime changes break assumptions.