Scalping Reaction Zones + Valid Order Blocks

Specification

Platform: TradingView

Programming Language: Pine Script v6

Type: Custom Indicator

Project Name:
Scalping Reaction Zones + Valid Order Blocks


MAIN GOAL

I need a custom TradingView indicator for scalping.

The indicator must detect:

1. Reaction / Explosion Zones
2. Valid Order Blocks
3. Combined Reaction Zone + Order Block zones

The indicator should NOT generate:
Buy signals
Sell signals
TP
SL
Entry signals
Trading recommendations

The main purpose is to detect strong price zones where price moved aggressively from and where price may react again when it returns.


TIMEFRAME LOGIC

Each timeframe must work independently.

M1 chart = use M1 candles only
M5 chart = use M5 candles only
M15 chart = use M15 candles only
M30 chart = use M30 candles only
H1 chart = use H1 candles only
H4 chart = use H4 candles only

If I change the timeframe, the indicator must recalculate all zones using the current chart timeframe only.

Do not mix zones from different timeframes.

Default mode:
Current Chart Timeframe Only


REACTION / EXPLOSION ZONES

The indicator must detect a small BASE candle or opposite candle before a strong price expansion.

Bullish example:

Small bearish candle or small base candle
Then strong bullish displacement
The original candle becomes a DEMAND / REACTION ZONE

Bearish example:

Small bullish candle or small base candle
Then strong bearish displacement
The original candle becomes a SUPPLY / REACTION ZONE

Default zone boundaries:
Full candle High to Low

Optional:
Body + Extreme Wick


BASE CANDLE RULES

The BASE candle should preferably be:

Small relative to ATR
Small body relative to full candle range
Opposite candle before displacement
Or a small neutral base candle

Required settings:

ATR Length
Maximum Base Range x ATR
Maximum Base Body / Range
Accepted Base Candle Type

Accepted Base Candle Type options:

Opposite Candle Only
Opposite or Small Candle
Any Small Candle


DISPLACEMENT CONFIRMATION

Do not create a zone after a small move.

There must be a strong displacement.

Measure using:

Distance from base in ATR
Strongest impulse candle body
Directional candle ratio
Total departure distance

Required settings:

Bars After Base To Confirm
Minimum Departure x ATR
Minimum Impulse Body x ATR
Minimum Directional Candle Ratio


VALID ORDER BLOCK LOGIC

Do not mark every last opposite candle as an Order Block.

A valid Order Block must have:

Liquidity Event
Order Block Candle
Strong Displacement
Break of Structure
Fair Value Gap

Core model:

Liquidity Sweep -> OB Candle -> Displacement -> BOS -> FVG


BULLISH ORDER BLOCK

Bullish OB logic:

Price sweeps liquidity below a previous low or swing low
Then there is a bearish or base candle
Then strong bullish displacement
Then bullish BOS
Then bullish FVG

Only after these conditions should the candle become:

VALID BULLISH ORDER BLOCK


BEARISH ORDER BLOCK

Bearish OB logic:

Price sweeps liquidity above a previous high or swing high
Then there is a bullish or base candle
Then strong bearish displacement
Then bearish BOS
Then bearish FVG

Only after these conditions should the candle become:

VALID BEARISH ORDER BLOCK


LIQUIDITY SWEEP

Bullish setup:

Price sweeps below a previous Swing Low
Then reverses upward

Bearish setup:

Price sweeps above a previous Swing High
Then reverses downward

Required settings:

Liquidity Lookback
Liquidity Swing Length
Minimum Sweep Distance
Require Close Back Inside ON/OFF


BREAK OF STRUCTURE

Use meaningful market structure.

Do not count every small candle break.

Use Swing High and Swing Low.

Bullish BOS:

Close above previous valid Swing High

Bearish BOS:

Close below previous valid Swing Low

Required settings:

Structure Swing Length
BOS Confirmation

Options:

Close
Wick

Default:

Close


FAIR VALUE GAP

Use standard 3-candle FVG logic.

Bullish FVG:

Low of Candle 3 > High of Candle 1

Bearish FVG:

High of Candle 3 < Low of Candle 1

The FVG does not need to be inside the Order Block.

It must be created by the same displacement from the Order Block.

Required settings:

Minimum FVG Size
FVG Size Mode

Options:

ATR
Points


REACTION ZONE + ORDER BLOCK MERGING

This is very important.

If the same candle qualifies as both:

Reaction Zone
and
Valid Order Block

OR

If both zones overlap

OR

If both zones are very close

Then do NOT draw two zones.

Merge them into ONE zone.

Label:

OB + REACTION

Required setting:

Merge Distance x ATR

Suggested default:

0.10 to 0.20 ATR


COMBINED ZONE BOUNDARIES

Add setting:

Combined Zone Boundary Mode

Options:

Order Block Boundaries
Reaction Zone Boundaries
Union of Both

Recommended default:

Order Block Boundaries


ZONE INVALIDATION

The zone must NOT disappear after the first retest.

The zone should remain visible after multiple retests.

Default:

Keep Zone After Retests = TRUE

Demand zone invalidation:

Close below zone bottom minus buffer

Supply zone invalidation:

Close above zone top plus buffer

Required settings:

Zone Invalidation

Options:

Close
Wick

Default:

Close

Also:

Invalidation Buffer x ATR

Recommended:

0.05 to 0.10 ATR


RETESTS

Count retests but do not remove the zone because of a retest.

Possible display:

FRESH
R1
R2
R3

Retest display should be optional.


ZONE STRENGTH SCORE

Each zone should receive an internal score from 0 to 100.

This is NOT a guaranteed probability.

It is only a ranking score.

Score should consider:

Strength of displacement
Total departure in ATR
Strong impulse candle
Base candle quality
Base candle size
Liquidity Sweep
BOS quality
FVG presence
FVG size
Freshness
Number of retests
Distance price traveled away
Reaction only
Valid Order Block
OB + REACTION confluence

Suggested ranking:

OB + REACTION
higher than
Validated OB
higher than
Strong Reaction Zone


SCALPING MODE

The indicator is mainly for:

M1
M3
M5
M15

It must be sensitive enough to show useful scalping zones.

Do not make the conditions too strict.

Do not mark every minor candle either.

Optional presets:

Aggressive Scalping
Balanced Scalping
Strict


NUMBER OF ZONES

Do not limit the indicator to only one Demand zone and one Supply zone.

I want all valid important zones.

But do not fill the chart with low-quality zones.

Required settings:

Max Demand Zones
Max Supply Zones

Recommended default:

5 Demand
5 Supply

Allow up to:

10 to 15

If maximum zones are reached:

Remove the weakest zone
Do NOT simply remove the oldest zone


NEARBY ZONE FILTER

If two zones are very close:

Merge them
or
Keep only the stronger one

Do not draw duplicate or almost identical zones.

Required setting:

Merge Nearby Zones x ATR


DISPLAY

Demand Zone:

Green

Supply Zone:

Red

Valid Order Block:

Different shade or label OB

Combined Zone:

OB + REACTION

Possible label:

OB + REACTION 91 M5

Display options:

Show Labels
Show Score
Show Retest Count
Show Source Timeframe

Do NOT display:

Buy Signal
Sell Signal
TP
SL
Entry
Dashboard
Liquidity labels everywhere
BOS labels everywhere
FVG boxes everywhere

Liquidity, BOS and FVG can be used internally only for validation.


REQUIRED INPUTS

ATR Length
Bars After Base To Confirm
Minimum Departure x ATR
Minimum Impulse Body x ATR
Minimum Directional Candle Ratio
Maximum Base Range x ATR
Maximum Base Body / Range
Accepted Base Candle Type
Minimum Zone Strength
Liquidity Lookback
Liquidity Swing Length
Minimum Liquidity Sweep
Structure Swing Length
BOS Close/Wick
Require BOS
Require Liquidity Sweep
Require FVG
Minimum FVG Size
FVG Size Mode ATR/Points
Zone Boundaries
Merge Nearby Zones x ATR
OB + Reaction Merge Distance
Combined Zone Boundary Mode
Max Demand Zones
Max Supply Zones
Zone Invalidation Close/Wick
Invalidation Buffer x ATR
Keep Zone After Retests
Show Labels
Show Strength Score
Show Retest Count
Show Source Timeframe


FINAL LOGIC

Reaction Zone:

Small or Opposite BASE Candle
-> Strong Displacement
-> Reaction Zone

Bullish Valid Order Block:

Sell-Side Liquidity Sweep
-> Bearish/Base OB Candle
-> Bullish Displacement
-> Bullish BOS
-> Bullish FVG
-> Valid Bullish OB

Bearish Valid Order Block:

Buy-Side Liquidity Sweep
-> Bullish/Base OB Candle
-> Bearish Displacement
-> Bearish BOS
-> Bearish FVG
-> Valid Bearish OB

Highest Confluence:

Reaction Zone overlaps Valid Order Block
-> Merge into ONE zone
-> OB + REACTION


MOST IMPORTANT REQUIREMENT

Each timeframe must calculate zones independently.

M1 = M1 zones only
M5 = M5 zones only
M15 = M15 zones only
M30 = M30 zones only
H1 = H1 zones only
H4 = H4 zones only

Changing the chart timeframe must recalculate everything using the new current timeframe.

No zones from other timeframes should appear unless Multi-Timeframe mode is manually enabled in the future.

Responded

1
Developer 1
Rating
(634)
Projects
741
34%
Arbitration
49
53% / 39%
Overdue
14
2%
Working
2
Developer 2
Rating
(9)
Projects
10
10%
Arbitration
0
Overdue
0
Free
3
Developer 3
Rating
(23)
Projects
32
41%
Arbitration
9
22% / 33%
Overdue
4
13%
Loaded
Published: 8 articles, 35 codes
4
Developer 4
Rating
(13)
Projects
23
39%
Arbitration
8
0% / 50%
Overdue
4
17%
Free
5
Developer 5
Rating
(3)
Projects
9
67%
Arbitration
0
Overdue
0
Working
6
Developer 6
Rating
(54)
Projects
68
43%
Arbitration
15
27% / 60%
Overdue
1
1%
Working
7
Developer 7
Rating
(10)
Projects
12
33%
Arbitration
0
Overdue
2
17%
Working
Published: 1 code
8
Developer 8
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
9
Developer 9
Rating
(2)
Projects
2
0%
Arbitration
1
0% / 100%
Overdue
0
Free
10
Developer 10
Rating
(1)
Projects
1
0%
Arbitration
0
Overdue
1
100%
Free
11
Developer 11
Rating
(3)
Projects
7
29%
Arbitration
0
Overdue
4
57%
Free
12
Developer 12
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
Published: 1 code
13
Developer 13
Rating
(64)
Projects
145
46%
Arbitration
21
38% / 24%
Overdue
32
22%
Free
14
Developer 14
Rating
(6)
Projects
8
38%
Arbitration
2
50% / 50%
Overdue
2
25%
Free
15
Developer 15
Rating
(185)
Projects
199
47%
Arbitration
4
50% / 25%
Overdue
1
1%
Working
16
Developer 16
Rating
(2678)
Projects
3422
68%
Arbitration
78
47% / 14%
Overdue
343
10%
Working
Published: 1 code
17
Developer 17
Rating
(25)
Projects
31
13%
Arbitration
14
0% / 79%
Overdue
9
29%
Free
18
Developer 18
Rating
(6)
Projects
10
10%
Arbitration
9
0% / 89%
Overdue
1
10%
Free
19
Developer 19
Rating
(47)
Projects
62
55%
Arbitration
7
86% / 0%
Overdue
2
3%
Free
20
Developer 20
Rating
(13)
Projects
21
38%
Arbitration
0
Overdue
1
5%
Working
21
Developer 21
Rating
(453)
Projects
566
26%
Arbitration
24
42% / 38%
Overdue
85
15%
Free
Published: 6 codes
22
Developer 22
Rating
(215)
Projects
280
21%
Arbitration
27
56% / 15%
Overdue
0
Loaded
23
Developer 23
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
24
Developer 24
Rating
(4)
Projects
7
57%
Arbitration
1
100% / 0%
Overdue
0
Free
25
Developer 25
Rating
(13)
Projects
20
40%
Arbitration
1
0% / 100%
Overdue
1
5%
Free
26
Developer 26
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
27
Developer 27
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
28
Developer 28
Rating
(1)
Projects
1
0%
Arbitration
0
Overdue
0
Free
Published: 4 codes
29
Developer 29
Rating
(10)
Projects
14
43%
Arbitration
0
Overdue
3
21%
Free
30
Developer 30
Rating
(45)
Projects
53
57%
Arbitration
2
100% / 0%
Overdue
1
2%
Free
Published: 5 codes
31
Developer 31
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
32
Developer 32
Rating
(54)
Projects
102
23%
Arbitration
12
25% / 17%
Overdue
13
13%
Free
33
Developer 33
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
34
Developer 34
Rating
(1)
Projects
2
50%
Arbitration
0
Overdue
1
50%
Working
35
Developer 35
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
Published: 2 codes
36
Developer 36
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
37
Developer 37
Rating
Projects
1
0%
Arbitration
0
Overdue
0
Free
Published: 11 codes
38
Developer 38
Rating
(1)
Projects
1
0%
Arbitration
0
Overdue
0
Free
39
Developer 39
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
Similar orders
I am looking for an experienced MQL5 developer and trader to create a non-repainting BUY/SELL indicator for MT5, designed for scalping on the M5 and M15 timeframes, with a focus on high-quality trading signals. Requirements: Clear and reliable BUY/SELL signals. Non-repainting signals confirmed on closed candles. High-quality entries with minimal false signals. Suitable for scalping, especially Gold (XAUUSD). Popup
PROJECT: Automatic Gold and Forex Trading Robot for MetaTrader 5 (MQL5) I want a fully automated Expert Advisor (EA) for MetaTrader 5 that can analyze the market and automatically open, manage and close trades on Gold and selected Forex currency pairs. 1. TRADING INSTRUMENTS - Gold: XAUUSD - Forex: EURUSD, GBPUSD and USDJPY, subject to broker availability. - Allow the user to enable or disable each trading symbol. -
Hello, I want to create a custom Expert Advisor (EA) for MetaTrader 5 based on 3 main confirmations: Market Structure & Price Action: Identify high time-frame trend direction (HL/LH). Chart Pattern: Detect classic continuous/reversal patterns (e.g. Cup and Handle, Double Bottom/Top) on trading timeframe. Volume Profile (PoC): Confirm entry when price breaks/retests the Point of Control (PoC) level. Risk Management &
I am looking for a highly skilled trading strategist and MQL5 developer with genuine experience in researching, designing, testing, and implementing systematic trading strategies. My primary interest is XAUUSD (Gold), although proven experience with other financial markets is also welcome. I am not looking for someone who simply converts trading rules into code. I want to identify a professional who understands
We’re looking for an investment partner to help fund AegisGoldAIPro , an algorithmic trading platform being developed for MetaTrader 5, initially focused on gold. We’re building a modular system that combines market-structure analysis with planned AI-assisted decision support, risk controls, and automated execution. What we are building is not just a basic trading robots that depend on only one indicator or strategy
Looking for a Complete Forex & Gold Signal System — Telegram Automation + Performance Tracking I’m looking for a complete automated trading signal solution for Forex pairs, including EUR/USD, GBP/USD and others, as well as gold (XAU/USD). Requirements: • An average of 2–3 quality signals per day across the selected instruments. Quality matters more than generating signals just to meet a quota. • A high win rate
I need a robot that will grow small accounts to bigger amounts like this one in this link, https://youtu.be/d38pMbJihew?si=3NeIOVyrlwDr4X_o. Please click the link and watch how this EA grow small accounts. Then create a robot like that. I will test it on demo first then if it does what i want, i will take it. Please it must be simply to use. It must set targets, for example, once it reaches $500 profit, it must
Here is a professional, detailed requirements specification draft for your MQL5 freelance order based on your prompt: ​ Strategy Objective: Develop an automated Expert Advisor (EA) featuring a 1:3 Risk-to-Reward ratio optimized for a small starting budget. ​ Core Trading Logic: ​Execute automatic Buy and Sell trades using high-probability entry signals. ​Target a strict 90% theoretical win-rate structure through
i want to fix my gold martingale bot MT5. RSI 14 ENTRY 30 BUY 70 SELL Lot 0.02 0.04 0.07 TP 150 for all SL 90 30 30 once total daily profit is 200$ stop trading stop trading once 2 consecutives total losses stop trading if spread exceeded 30 and between hour 15 & 17 PM Move SL to breakeven point once the profit exceeded 50 from from breakeven thanks
MarketMind Breakout Pro XAUUSD H1 — Donchian Breakout EA Project type: Personal EA development and backtesting Platform: MetaTrader 5 Instrument: XAUUSD Timeframe: H1 Strategy: Donchian Channel breakout with EMA 200 Project overview This project evaluates a Donchian breakout trading strategy for XAUUSD on the H1 timeframe. The system uses channel-based breakout conditions and an EMA 200 trend filter. Historical

Project information

Budget
30 - 150 USD
Deadline
from 3 to 7 day(s)