Dynamic Liquidity Depth [BigBeluga]
Dynamic Liquidity Depth
A liquidity mapping engine that reveals hidden zones of market vulnerability. This tool simulates where potential large concentrations of stop-losses may exist — above recent highs (sell-side) and below recent lows (buy-side) — by analyzing real price behavior and directional volume. The result is a dynamic two-sided volume profile that highlights where price is most likely to gravitate during liquidation events, reversals, or engineered stop hunts.
🔵 KEY FEATURES
Two-Sided Liquidity Profiles:
Plots two separate profiles on the chart — one above price for potential sell-side liquidity , and one below price for potential buy-side liquidity . Each profile reflects the volume distribution across binned zones derived from historical highs and lows.
Real Stop Zone Simulation:
Each profile is offset from the current high or low using an ATR-based buffer. This simulates where traders might cluster their stop-losses above swing highs (short stops) or below swing lows (long stops).
Directional Volume Analysis:
Buy-side volume is accumulated only from bullish candles (close > open), while sell-side volume is accumulated only from bearish candles (close < open). This directional filtering enhances accuracy by capturing genuine pressure zones.
Dynamic Volume Heatmap:
Each liquidity bin is rendered as a horizontal box with a color gradient based on volume intensity:
- Low activity bins are shaded lightly.
- High-volume zones appear more vividly in red (sell) or lime (buy).
- The maximum volume bin in each profile is emphasized with a brighter fill and a volume label.
Extended POC Zones:
The Point of Control (PoC) — the bin with the most volume — is extended backwards across the entire lookback period to mark critical resistance (sell-side) or support (buy-side) levels.
Total Volume Summary Labels:
At the center of each profile, a summary label displays Total Buy Liquidity and Total Sell Liquidity volume.
This metric helps assess directional imbalance — when buy liquidity is dominant, the market may favor upward continuation, and vice versa.
Customizable Profile Granularity:
You can fine-tune both Resolution (Bins) and Offset Distance to adjust how far profiles are displaced from price and how many levels are calculated within the ATR range.
🔵 HOW IT WORKS
The indicator calculates an ATR-based buffer above highs and below lows to define the top and bottom of the liquidity zones.
Using a user-defined lookback period, it scans historical candles and divides the buffered zones into bins.
Each bin checks if bullish (or bearish) candles pass through it based on price wicks and body.
Volume from valid candles is summed into the corresponding bin.
When volume exists in a bin, a horizontal box is drawn with a width scaled by relative volume strength.
The bin with the highest volume is highlighted and optionally extended backward as a zone of importance.
Total buy/sell liquidity is displayed with a summary label at the side of the profile.
🔵 USAGE/b]
Identify Stop Hunt Zones: High-volume clusters near swing highs/lows are likely liquidation zones targeted during fakeouts.
Fade or Follow Reactions: Price hitting a high-volume bin may reverse (fade opportunity) or break with strength (confirmation breakout).
Layer with Other Tools: Combine with market structure, order blocks, or trend filters to validate entries near liquidity.
Adjust Offset for Sensitivity: Use higher offset to simulate wider stop placement; use lower for tighter scalping zones.
🔵 CONCLUSION
Dynamic Liquidity Depth transforms raw price and volume into a spatial map of liquidity. By revealing areas where stop orders are likely hidden, it gives traders insight into price manipulation zones, potential reversal levels, and breakout traps. Whether you're hunting for traps or trading with the flow, this tool equips you to navigate liquidity with precision.
ค้นหาในสคริปต์สำหรับ "volume profile"
Liquidity Pro Map [ChartPrime]⯁ OVERVIEW
Liquidity Pro Map is a market-structure tool that simulates liquidity distribution by splitting price history into buy-side and sell-side profiles. Using candle volume and the standard deviation of close, the indicator builds two mirrored volume maps on the right-hand side of the chart. It also extends liquidity levels backwards in time until they are crossed by price, allowing you to see which zones remain untouched and where liquidity is most likely resting. Cumulative skew lines and highlighted POC levels give additional clarity on imbalance between buyers and sellers.
⯁ KEY FEATURES
Dual Liquidity Profiles: The chart is divided into buy-side (green) and sell-side (red) liquidity profiles, letting you instantly compare both sides of order flow.
Level Extension Logic: Each liquidity level is extended back in time until price crosses it. If not crossed, it persists all the way to the indicator’s lookback period, marking zones that remain “untapped.”
Dynamic Binning with Standard Deviation: The indicator distributes candle volumes into bins using close-price deviation, creating a more realistic liquidity map than static price levels.
priceDeviation = ta.stdev(close, 25) * 2
priceReference = close > open ? low - priceDeviation : high + priceDeviation
Cumulative Volume Skew Lines: Polylines on the right-hand side show the aggregated buy and sell volume profiles, making it easy to spot imbalance.
POC Identification: Highest-volume levels on both sides are marked as POC (Point of Control) , providing key zones of interest.
Clear Color Coding: Gradient shading intensifies with volume concentration—dark teal/green for buy zones, dark pink/red for sell zones.
⯁ HOW IT WORKS (UNDER THE HOOD)
Volume Distribution: Each bar’s volume is assigned to a price bin based on its reference price (close ± standard deviation offset).
Buy vs. Sell Splitting: If bins above last close price, volume is allocated to sell-side liquidity; otherwise, it’s allocated to buy-side liquidity.
Level Extension: Boxes marking liquidity bins extend back until crossed by price. If uncrossed, they anchor all the way to the start of the lookback window.
Cumulative Polylines: As bins are stacked, cumulative buy and sell values form skew polylines plotted at the right edge.
POC Levels: The highest-volume bin on each side is highlighted with labels and arrows, marking where the heaviest liquidity is concentrated.
⯁ USAGE
Use buy/sell profiles to see where liquidity is likely resting. Green shelves suggest potential support zones; red shelves suggest resistance or sell liquidity pools.
Watch untouched extended levels —these often become magnets for price as liquidity is swept.
Track POC levels as primary liquidity targets, where reactions or fakeouts are most common.
Compare cumulative skew lines to judge which side dominates in volume. Heavy buy skew may indicate absorption of sell pressure, and vice versa.
Adjust lookback period to switch between intraday liquidity maps and larger swing-based profiles.
Use separator feature to hide bins borders for better visual clarity.
Use as a confluence tool with OBs, support/resistance, and liquidity sweep setups.
⯁ CONCLUSION
Liquidity Pro Map transforms candle volume into a structured simulation of where liquidity may rest across the chart. By dividing buy vs. sell profiles, extending untouched levels, and marking cumulative skew and POC, it equips traders with a clear visual map of potential liquidity pools. This allows for better anticipation of sweeps, reversals, and areas of high market activity.
Frankie Candles Essentials [LuxAlgo]The Frankie Candles Essentials toolkit is a collection of essential features used by trader Frankie Candles. This toolkit focuses on the relationship between MTF oscillator divergences and volume profiles, allowing the detection of different kinds of reversals. Retracements from the "Golden Pocket" features are also included.
🔶 USAGE
When adding the script to your chart you will be prompted to select the calculation interval of the "Top-Down Volume Profile", simply click on your chart where you want the starting and ending points of the calculation interval.
🔹 Top-Down Volume Profile
The Top-Down Volume Profile is a classical fixed-range volume profile and highlights the amount of traded volume within equidistant price areas. The amount of areas is determined by the "Rows" setting (Note that the volume profile can use up to 250 rows).
The value area (VA) highlights the area where the specified percentage of the total volume is traded, that is the area with the most recorded trading activity relative to a selected percentage.
Finally, the point of control (POC) highlights the price level with the most trading activity.
🔹 Divergences
Users can highlight divergences made by oscillators on their charts. The toolkit includes three indicators such as RSI, MFI, and WaveTrend with MTF support, users can also select external oscillators but these will not support MTF divergence detection.
Once the Top-Down Volume Profile is set historical divergences will be affected by its value area (VA), with bearish divergences located above the upper VA or bullish divergences located under the lower VA being highlighted with a sauce can, a signature display stel of Frankie Candles.
Users can also filter out divergences based on the point of control (POC) using the "Filter According To POC" setting, with bearish divergences located below the POC or bullish divergences located above it being filtered out.
Do note that divergences are detected N bars after their occurrence, where N is the divergence lookback setting
🔹 Golden Pockets
The script includes an MTF Golden Pockets feature displaying Fibonacci retracements on the user chart, these can be used to identify optimal trade entries (OTE) or serve as support/resistance levels.
Golden Pockets are based on maximum/minimum prices in a window determined by the "Golden Pocket Lookback" setting, using longer-term lookbacks will return longer-term divergences, this will also be the case when using HTF golden pockets.
🔶 SETTINGS
🔹 Candle Coloring
Candle Coloring: Determine the candle coloring method used by the indicator. "Simple" will color the candles based on the candle body, while "Golden Pocket" will color candles using a gradient based on the golden pocket rolling maximum/minimum.
🔹 Top-Down Volume Profile
Top-Down Volume Profile: Enable Top-Down Volume Profile.
Rows: Amount of rows used by the Top-Down Volume Profile.
Width (%): Controls the histogram bar width as a percentage of the calculation window specified by the user set anchors.
Value Area (%): Area where the specified percentage of total volume is traded.
Extend To The Right: Extends the calculation window from the first anchor to the most recent bar.
🔹 MTF Divergences
Oscillator: Determines the oscillator and its length used for divergence detection. Options include "RSI", "MFI", "WaveTrend" and "External".
Divergence Lookback: Lookback period used to track oscillator tops/bottoms. Divergence will be detected n bars after an oscillator top/bottom, where n is the specified lookback period.
External Oscillator: External oscillator used for divergence detection if "External" is selected in the "Oscillator" dropdown menu, incompatible with Divergence Timeframe setting.
Divergence Timeframe: Timeframe used to calculate the selected oscillator and detect divergences. Incompatible with external oscillators.
Divergence From: Determines if price tops/bottoms evaluated to detect divergences are based on wicks (high/low price) or candle body (closing/opening price).
Filter According To POC: Filter displayed divergences based on the Top-Down Volume Profile POC.
Show Hidden: Display hidden divergences.
Show Sauce: Display canned source emoji on specific divergences.
🔹 Golden Pockets
Golden Pocket Lookback: Period used to calculate golden pockets, options include "Short-Term", "Medium-Term", and "Long-Term".
Extend: Extend Golden Pockets lines from the most recent bar by the specified amount of bars.
Golden Pocket Timeframe: Timeframe used to calculate the Golden Pockets.
Retracements: Display specific retracements, users can also control the ratio from the provided numerical setting.
Show Coordinate Line: Display a line connecting the top/bottom used to calculate the Golden Pockets.
Invert: Invert top/bottom for the Golden Pockets calculation.
lib_smcLibrary "lib_smc"
This is an adaptation of LuxAlgo's Smart Money Concepts indicator with numerous changes. Main changes include integration of object based plotting, plenty of performance improvements, live tracking of Order Blocks, integration of volume profiles to refine Order Blocks, and many more.
This is a library for developers, if you want this converted into a working strategy, let me know.
buffer(item, len, force_rotate)
Parameters:
item (float)
len (int)
force_rotate (bool)
buffer(item, len, force_rotate)
Parameters:
item (int)
len (int)
force_rotate (bool)
buffer(item, len, force_rotate)
Parameters:
item (Profile type from robbatt/lib_profile/32)
len (int)
force_rotate (bool)
swings(len)
INTERNAL: detect swing points (HH and LL) in given range
Parameters:
len (simple int) : range to check for new swing points
Returns: values are the price level where and if a new HH or LL was detected, else na
method init(this)
Namespace types: OrderBlockConfig
Parameters:
this (OrderBlockConfig)
method delete(this)
Namespace types: OrderBlock
Parameters:
this (OrderBlock)
method clear_broken(this, broken_buffer)
INTERNAL: delete internal order blocks box coordinates if top/bottom is broken
Namespace types: map
Parameters:
this (map)
broken_buffer (map)
Returns: any_bull_ob_broken, any_bear_ob_broken, broken signals are true if an according order block was broken/mitigated, broken contains the broken block(s)
create_ob(id, mode, start_t, start_i, top, end_t, end_i, bottom, break_price, early_confirmation_price, config, init_plot, force_overlay)
INTERNAL: set internal order block coordinates
Parameters:
id (int)
mode (int) : 1: bullish, -1 bearish block
start_t (int)
start_i (int)
top (float)
end_t (int)
end_i (int)
bottom (float)
break_price (float)
early_confirmation_price (float)
config (OrderBlockConfig)
init_plot (bool)
force_overlay (bool)
Returns: signals are true if an according order block was broken/mitigated
method align_to_profile(block, align_edge, align_break_price)
Namespace types: OrderBlock
Parameters:
block (OrderBlock)
align_edge (bool)
align_break_price (bool)
method create_profile(block, opens, tops, bottoms, closes, values, resolution, vah_pc, val_pc, args, init_calculated, init_plot, force_overlay)
Namespace types: OrderBlock
Parameters:
block (OrderBlock)
opens (array)
tops (array)
bottoms (array)
closes (array)
values (array)
resolution (int)
vah_pc (float)
val_pc (float)
args (ProfileArgs type from robbatt/lib_profile/32)
init_calculated (bool)
init_plot (bool)
force_overlay (bool)
method create_profile(block, resolution, vah_pc, val_pc, args, init_calculated, init_plot, force_overlay)
Namespace types: OrderBlock
Parameters:
block (OrderBlock)
resolution (int)
vah_pc (float)
val_pc (float)
args (ProfileArgs type from robbatt/lib_profile/32)
init_calculated (bool)
init_plot (bool)
force_overlay (bool)
track_obs(swing_len, hh, ll, top, btm, bull_bos_alert, bull_choch_alert, bear_bos_alert, bear_choch_alert, min_block_size, max_block_size, config_bull, config_bear, init_plot, force_overlay, enabled, extend_blocks, clear_broken_buffer_before, align_edge_to_value_area, align_break_price_to_poc, profile_args_bull, profile_args_bear, use_soft_confirm, soft_confirm_offset, use_retracements_with_FVG_out)
Parameters:
swing_len (int)
hh (float)
ll (float)
top (float)
btm (float)
bull_bos_alert (bool)
bull_choch_alert (bool)
bear_bos_alert (bool)
bear_choch_alert (bool)
min_block_size (float)
max_block_size (float)
config_bull (OrderBlockConfig)
config_bear (OrderBlockConfig)
init_plot (bool)
force_overlay (bool)
enabled (bool)
extend_blocks (simple bool)
clear_broken_buffer_before (simple bool)
align_edge_to_value_area (simple bool)
align_break_price_to_poc (simple bool)
profile_args_bull (ProfileArgs type from robbatt/lib_profile/32)
profile_args_bear (ProfileArgs type from robbatt/lib_profile/32)
use_soft_confirm (simple bool)
soft_confirm_offset (float)
use_retracements_with_FVG_out (simple bool)
method draw(this, config, extend_only)
Namespace types: OrderBlock
Parameters:
this (OrderBlock)
config (OrderBlockConfig)
extend_only (bool)
method draw(blocks, config)
INTERNAL: plot order blocks
Namespace types: array
Parameters:
blocks (array)
config (OrderBlockConfig)
method draw(blocks, config)
INTERNAL: plot order blocks
Namespace types: map
Parameters:
blocks (map)
config (OrderBlockConfig)
method cleanup(this, ob_bull, ob_bear)
removes all Profiles that are older than the latest OrderBlock from this profile buffer
Namespace types: array
Parameters:
this (array type from robbatt/lib_profile/32)
ob_bull (OrderBlock)
ob_bear (OrderBlock)
_plot_swing_points(mode, x, y, show_swing_points, linecolor_swings, keep_history, show_latest_swings_levels, trail_x, trail_y, trend)
INTERNAL: plot swing points
Parameters:
mode (int) : 1: bullish, -1 bearish block
x (int) : x-coordingate of swing point to plot (bar_index)
y (float) : y-coordingate of swing point to plot (price)
show_swing_points (bool) : switch to enable/disable plotting of swing point labels
linecolor_swings (color) : color for swing point labels and lates level lines
keep_history (bool) : weater to remove older swing point labels and only keep the most recent
show_latest_swings_levels (bool)
trail_x (int) : x-coordinate for latest swing point (bar_index)
trail_y (float) : y-coordinate for latest swing point (price)
trend (int) : the current trend 1: bullish, -1: bearish, to determine Strong/Weak Low/Highs
_pivot_lvl(mode, trend, hhll_x, hhll, super_hhll, filter_insignificant_internal_breaks)
INTERNAL: detect whether a structural level has been broken and if it was in trend direction (BoS) or against trend direction (ChoCh), also track the latest high and low swing points
Parameters:
mode (simple int) : detect 1: bullish, -1 bearish pivot points
trend (int) : current trend direction
hhll_x (int) : x-coordinate of newly detected hh/ll (bar_index)
hhll (float) : y-coordinate of newly detected hh/ll (price)
super_hhll (float) : level/y-coordinate of superior hhll (if this is an internal structure pivot level)
filter_insignificant_internal_breaks (bool) : if true pivot points / internal structure will be ignored where the wick in trend direction is longer than the opposite (likely to push further in direction of main trend)
Returns: coordinates of internal structure that has been broken (x,y): start of structure, (trail_x, trail_y): tracking hh/ll after structure break, (bos_alert, choch_alert): signal whether a structural level has been broken
_plot_structure(x, y, is_bos, is_choch, line_color, line_style, label_style, label_size, keep_history)
INTERNAL: plot structural breaks (BoS/ChoCh)
Parameters:
x (int) : x-coordinate of newly broken structure (bar_index)
y (float) : y-coordinate of newly broken structure (price)
is_bos (bool) : whether this structural break was in trend direction
is_choch (bool) : whether this structural break was against trend direction
line_color (color) : color for the line connecting the structural level and the breaking candle
line_style (string) : style (line.style_dashed/solid) for the line connecting the structural level and the breaking candle
label_style (string) : style (label.style_label_down/up) for the label above/below the line connecting the structural level and the breaking candle
label_size (string) : size (size.small/tiny) for the label above/below the line connecting the structural level and the breaking candle
keep_history (bool) : weater to remove older swing point labels and only keep the most recent
structure_values(length, super_hh, super_ll, filter_insignificant_internal_breaks)
detect (and plot) structural breaks and the resulting new trend
Parameters:
length (simple int) : lookback period for swing point detection
super_hh (float) : level/y-coordinate of superior hh (for internal structure detection)
super_ll (float) : level/y-coordinate of superior ll (for internal structure detection)
filter_insignificant_internal_breaks (bool) : if true pivot points / internal structure will be ignored where the wick in trend direction is longer than the opposite (likely to push further in direction of main trend)
Returns: trend: direction 1:bullish -1:bearish, (bull_bos_alert, bull_choch_alert, top_x, top_y, trail_up_x, trail_up): whether and which level broke in a bullish direction, trailing high, (bbear_bos_alert, bear_choch_alert, tm_x, btm_y, trail_dn_x, trail_dn): same in bearish direction
structure_plot(trend, bull_bos_alert, bull_choch_alert, top_x, top_y, trail_up_x, trail_up, hh, bear_bos_alert, bear_choch_alert, btm_x, btm_y, trail_dn_x, trail_dn, ll, color_bull, color_bear, show_swing_points, show_latest_swings_levels, show_bos, show_choch, line_style, label_size, keep_history)
detect (and plot) structural breaks and the resulting new trend
Parameters:
trend (int) : crrent trend 1: bullish, -1: bearish
bull_bos_alert (bool) : if there was a bullish bos alert -> plot it
bull_choch_alert (bool) : if there was a bullish choch alert -> plot it
top_x (int) : latest shwing high x
top_y (float) : latest swing high y
trail_up_x (int) : trailing high x
trail_up (float) : trailing high y
hh (float) : if there was a higher high
bear_bos_alert (bool) : if there was a bearish bos alert -> plot it
bear_choch_alert (bool) : if there was a bearish chock alert -> plot it
btm_x (int) : latest swing low x
btm_y (float) : latest swing low y
trail_dn_x (int) : trailing low x
trail_dn (float) : trailing low y
ll (float) : if there was a lower low
color_bull (color) : color for bullish BoS/ChoCh levels
color_bear (color) : color for bearish BoS/ChoCh levels
show_swing_points (bool) : whether to plot swing point labels
show_latest_swings_levels (bool) : whether to track and plot latest swing point levels with lines
show_bos (bool) : whether to plot BoS levels
show_choch (bool) : whether to plot ChoCh levels
line_style (string) : whether to plot BoS levels
label_size (string) : label size of plotted BoS/ChoCh levels
keep_history (bool) : weater to remove older swing point labels and only keep the most recent
structure(length, color_bull, color_bear, super_hh, super_ll, filter_insignificant_internal_breaks, show_swing_points, show_latest_swings_levels, show_bos, show_choch, line_style, label_size, keep_history, enabled)
detect (and plot) structural breaks and the resulting new trend
Parameters:
length (simple int) : lookback period for swing point detection
color_bull (color) : color for bullish BoS/ChoCh levels
color_bear (color) : color for bearish BoS/ChoCh levels
super_hh (float) : level/y-coordinate of superior hh (for internal structure detection)
super_ll (float) : level/y-coordinate of superior ll (for internal structure detection)
filter_insignificant_internal_breaks (bool) : if true pivot points / internal structure will be ignored where the wick in trend direction is longer than the opposite (likely to push further in direction of main trend)
show_swing_points (bool) : whether to plot swing point labels
show_latest_swings_levels (bool) : whether to track and plot latest swing point levels with lines
show_bos (bool) : whether to plot BoS levels
show_choch (bool) : whether to plot ChoCh levels
line_style (string) : whether to plot BoS levels
label_size (string) : label size of plotted BoS/ChoCh levels
keep_history (bool) : weater to remove older swing point labels and only keep the most recent
enabled (bool)
_check_equal_level(mode, len, eq_threshold, enabled)
INTERNAL: detect equal levels (double top/bottom)
Parameters:
mode (int) : detect 1: bullish/high, -1 bearish/low pivot points
len (int) : lookback period for equal level (swing point) detection
eq_threshold (float) : maximum price offset for a level to be considered equal
enabled (bool)
Returns: eq_alert whether an equal level was detected and coordinates of the first and the second level/swing point
_plot_equal_level(show_eq, x1, y1, x2, y2, label_txt, label_style, label_size, line_color, line_style, keep_history)
INTERNAL: plot equal levels (double top/bottom)
Parameters:
show_eq (bool) : whether to plot the level or not
x1 (int) : x-coordinate of the first level / swing point
y1 (float) : y-coordinate of the first level / swing point
x2 (int) : x-coordinate of the second level / swing point
y2 (float) : y-coordinate of the second level / swing point
label_txt (string) : text for the label above/below the line connecting the equal levels
label_style (string) : style (label.style_label_down/up) for the label above/below the line connecting the equal levels
label_size (string) : size (size.tiny) for the label above/below the line connecting the equal levels
line_color (color) : color for the line connecting the equal levels (and it's label)
line_style (string) : style (line.style_dotted) for the line connecting the equal levels
keep_history (bool) : weater to remove older swing point labels and only keep the most recent
equal_levels_values(len, threshold, enabled)
detect (and plot) equal levels (double top/bottom), returns coordinates
Parameters:
len (int) : lookback period for equal level (swing point) detection
threshold (float) : maximum price offset for a level to be considered equal
enabled (bool) : whether detection is enabled
Returns: (eqh_alert, eqh_x1, eqh_y1, eqh_x2, eqh_y2) whether an equal high was detected and coordinates of the first and the second level/swing point, (eql_alert, eql_x1, eql_y1, eql_x2, eql_y2) same for equal lows
equal_levels_plot(eqh_x1, eqh_y1, eqh_x2, eqh_y2, eql_x1, eql_y1, eql_x2, eql_y2, color_eqh, color_eql, show, keep_history)
detect (and plot) equal levels (double top/bottom), returns coordinates
Parameters:
eqh_x1 (int) : coordinates of first point of equal high
eqh_y1 (float) : coordinates of first point of equal high
eqh_x2 (int) : coordinates of second point of equal high
eqh_y2 (float) : coordinates of second point of equal high
eql_x1 (int) : coordinates of first point of equal low
eql_y1 (float) : coordinates of first point of equal low
eql_x2 (int) : coordinates of second point of equal low
eql_y2 (float) : coordinates of second point of equal low
color_eqh (color) : color for the line connecting the equal highs (and it's label)
color_eql (color) : color for the line connecting the equal lows (and it's label)
show (bool) : whether plotting is enabled
keep_history (bool) : weater to remove older swing point labels and only keep the most recent
Returns: (eqh_alert, eqh_x1, eqh_y1, eqh_x2, eqh_y2) whether an equal high was detected and coordinates of the first and the second level/swing point, (eql_alert, eql_x1, eql_y1, eql_x2, eql_y2) same for equal lows
equal_levels(len, threshold, color_eqh, color_eql, enabled, show, keep_history)
detect (and plot) equal levels (double top/bottom)
Parameters:
len (int) : lookback period for equal level (swing point) detection
threshold (float) : maximum price offset for a level to be considered equal
color_eqh (color) : color for the line connecting the equal highs (and it's label)
color_eql (color) : color for the line connecting the equal lows (and it's label)
enabled (bool) : whether detection is enabled
show (bool) : whether plotting is enabled
keep_history (bool) : weater to remove older swing point labels and only keep the most recent
Returns: (eqh_alert) whether an equal high was detected, (eql_alert) same for equal lows
_detect_fvg(mode, enabled, o, h, l, c, filter_insignificant_fvgs, change_tf)
INTERNAL: detect FVG (fair value gap)
Parameters:
mode (int) : detect 1: bullish, -1 bearish gaps
enabled (bool) : whether detection is enabled
o (float) : reference source open
h (float) : reference source high
l (float) : reference source low
c (float) : reference source close
filter_insignificant_fvgs (bool) : whether to calculate and filter small/insignificant gaps
change_tf (bool) : signal when the previous reference timeframe closed, triggers new calculation
Returns: whether a new FVG was detected and its top/mid/bottom levels
_clear_broken_fvg(mode, upper_boxes, lower_boxes)
INTERNAL: clear mitigated FVGs (fair value gaps)
Parameters:
mode (int) : detect 1: bullish, -1 bearish gaps
upper_boxes (array) : array that stores the upper parts of the FVG boxes
lower_boxes (array) : array that stores the lower parts of the FVG boxes
_plot_fvg(mode, show, top, mid, btm, border_color, extend_box)
INTERNAL: plot (and clear broken) FVG (fair value gap)
Parameters:
mode (int) : plot 1: bullish, -1 bearish gap
show (bool) : whether plotting is enabled
top (float) : top level of fvg
mid (float) : center level of fvg
btm (float) : bottom level of fvg
border_color (color) : color for the FVG box
extend_box (int) : how many bars into the future the FVG box should be extended after detection
fvgs_values(o, h, l, c, filter_insignificant_fvgs, change_tf, enabled)
detect (and plot / clear broken) FVGs (fair value gaps), and return alerts and level values
Parameters:
o (float) : reference source open
h (float) : reference source high
l (float) : reference source low
c (float) : reference source close
filter_insignificant_fvgs (bool) : whether to calculate and filter small/insignificant gaps
change_tf (bool) : signal when the previous reference timeframe closed, triggers new calculation
enabled (bool) : whether detection is enabled
Returns: (bullish_fvg_alert, bull_top, bull_mid, bull_btm): whether a new bullish FVG was detected and its top/mid/bottom levels, (bearish_fvg_alert, bear_top, bear_mid, bear_btm): same for bearish FVGs
fvgs_plot(bullish_fvg_alert, bull_top, bull_mid, bull_btm, bearish_fvg_alert, bear_top, bear_mid, bear_btm, color_bull, color_bear, extend_box, show)
Parameters:
bullish_fvg_alert (bool)
bull_top (float)
bull_mid (float)
bull_btm (float)
bearish_fvg_alert (bool)
bear_top (float)
bear_mid (float)
bear_btm (float)
color_bull (color) : color for bullish FVG boxes
color_bear (color) : color for bearish FVG boxes
extend_box (int) : how many bars into the future the FVG box should be extended after detection
show (bool) : whether plotting is enabled
Returns: (bullish_fvg_alert, bull_top, bull_mid, bull_btm): whether a new bullish FVG was detected and its top/mid/bottom levels, (bearish_fvg_alert, bear_top, bear_mid, bear_btm): same for bearish FVGs
fvgs(o, h, l, c, filter_insignificant_fvgs, change_tf, color_bull, color_bear, extend_box, enabled, show)
detect (and plot / clear broken) FVGs (fair value gaps)
Parameters:
o (float) : reference source open
h (float) : reference source high
l (float) : reference source low
c (float) : reference source close
filter_insignificant_fvgs (bool) : whether to calculate and filter small/insignificant gaps
change_tf (bool) : signal when the previous reference timeframe closed, triggers new calculation
color_bull (color) : color for bullish FVG boxes
color_bear (color) : color for bearish FVG boxes
extend_box (int) : how many bars into the future the FVG box should be extended after detection
enabled (bool) : whether detection is enabled
show (bool) : whether plotting is enabled
Returns: (bullish_fvg_alert): whether a new bullish FVG was detected, (bearish_fvg_alert): same for bearish FVGs
OrderBlock
Fields:
id (series int)
dir (series int)
left_top (chart.point)
right_bottom (chart.point)
break_price (series float)
early_confirmation_price (series float)
ltf_high (array)
ltf_low (array)
ltf_volume (array)
plot (Box type from robbatt/lib_plot_objects/49)
profile (Profile type from robbatt/lib_profile/32)
trailing (series bool)
extending (series bool)
awaiting_confirmation (series bool)
touched_break_price_before_confirmation (series bool)
soft_confirmed (series bool)
has_fvg_out (series bool)
hidden (series bool)
broken (series bool)
OrderBlockConfig
Fields:
show (series bool)
show_last (series int)
show_id (series bool)
show_profile (series bool)
args (BoxArgs type from robbatt/lib_plot_objects/49)
txt (series string)
txt_args (BoxTextArgs type from robbatt/lib_plot_objects/49)
delete_when_broken (series bool)
broken_args (BoxArgs type from robbatt/lib_plot_objects/49)
broken_txt (series string)
broken_txt_args (BoxTextArgs type from robbatt/lib_plot_objects/49)
broken_profile_args (ProfileArgs type from robbatt/lib_profile/32)
use_profile (series bool)
profile_args (ProfileArgs type from robbatt/lib_profile/32)
Supply Demand Profiles [LuxAlgo]The Supply Demand Profiles is a charting tool that measures the traded volume at all price levels on the market over a specified time period and highlights the relationship between the price of a given asset and the willingness of traders to either buy or sell it, in other words, highlights key concepts as significant supply & demand zones, the distribution of the traded volume, and market sentiment at specific price levels within a specified time period, allowing traders to reveal dominant and/or significant price levels and to analyze the trading activity of a particular user-selected range.
In other words, this tool highlights key concepts as significant supply & demand zones, the distribution of the traded volume, and market sentiment at specific price levels within a specified time period, allowing traders to reveal dominant and/or significant price levels and to analyze the trading activity of a particular user-selected range.
Besides having the tool as a combo tool, the uniqueness of this version of the tool compared to its early versions is its ability to benefit from different volume data sources and its ability to use a variety of different polarity methods, where polarity is a measure used to divide the total volume into either up volume (trades that moved the price up) or down volume (trades that moved the price down).
🔶 USAGE
Supply & demand zones are presented as horizontal zones across the selected range, hence adding the ability to visualize the price interaction with them
By default, the right side of the profile is the volume profile which highlights the distribution of the traded activity at different price levels, emphasizing the value area, the range of price levels in which the specified percentage of all volume was traded during the time period, and levels of significance, such as developing point of control line, value area high/low lines, and profile high/low labels
The left side of the profile is the sentiment profile which highlights the market sentiment at specific price levels
🔶 DETAILS
🔹 Volume data sources
The users have the option to select volume data sources as either 'volume' (regular volume) or 'volume delta', where volume represents all the recorded trades that occur at a given bar and volume delta is the difference between the buying and the selling volume, that is, the net demand at a given bar
🔹 Polarity methods
The users are able to choose the methods of how the tool to take into consideration the polarity of the bar (the direction of a bar, green (bullish) or red (bearish) bar) among a variety of different options, such as 'bar polarity', 'bar buying/selling pressure', 'intrabar (chart bars at a lower timeframe than the chart's) polarity', 'intrabar buying/selling pressure', and 'heikin ashi bar polarity'.
Finally, the interactive mode of the tool is activated, as such users can easily modify the intervals of their interest just by selecting the indicator and moving the points on the chart
🔶 SETTINGS
The script takes into account user-defined parameters and plots the profiles and zones
🔹 Calculation Settings
Volume Data Source and Polarity: This option is to set the desired volume data source and polarity method
Lower Timeframe Precision: This option is applicable in case any of the 'Intrabar (LTF)' options are selected, please check the tooltip for further details
Value Area Volume %: Specifies the percentage for the value area calculation
🔹 Presentation Settings
Supply & Demand Zones: Toggles the visibility of the supply & demand zones
Volume Profile: Toggles the visibility of the volume profile
Sentiment Profile: Toggles the visibility of the sentiment profile
🔹 Presentation, Others
Value Area High (VAH): Toggles the visibility of the VAH line and color customization option
Point of Control (POC): Toggles the visibility of the developing POC line and color customization option
Value Area Low (VAL): Toggles the visibility of the VAL line and color customization option
🔹 Supply & Demand, Others
Supply & Demand Threshold %: This option is used to set the threshold value to determine supply & demand zones
Supply/Demand Zones: Color customization option
🔹 Volume Profile, Others
Profile, Up/Down Volume: Color customization option
Value Area, Up/Down Volume: Color customization option
🔹 Sentiment Profile, Others
Sentiment, Bullish/Bearish: Color customization option
Value Area, Bullish/Bearish: Color customization option
🔹 Others
Number of Rows: Specify how many rows the profile will have
Placment: Specify where to display the profile
Profile Width %: Alters the width of the rows in the profile, relative to the profile range
Profile Price Levels: Toggles the visibility of the profile price levels
Profile Background, Color: Fills the background of the profile range
Value Area Background, Color: Fills the background of the value area range
Start Calculation/End Calculation: The tool is interactive, where the user may modify the range by selecting the indicator and moving the points on the chart or can set the start/end time using these options
🔶 RELATED SCRIPTS
Volume-Profile
Volume-Profile-Maps
Volume-Delta
TeddyOverview
"Teddy" is an indicator that overlays up to five customizable Volume Profiles on the chart, each displaying Point of Control (POC), Value Area High (VAH), and Value Area Low (VAL). Designed for traders, it anchors profiles to user-defined time ranges, helping align traders with the ever changing auction so they are on the right side of trends, avoid choppy price action, and stay clear of overbought/oversold conditions.
Originality and Usefulness
Unlike standard Volume Profile tools, "Teddy" offers five independent profiles with flexible anchored or fixed time ranges, customizable labels, and distinct colors. This multi-profile approach reveals key price levels across different periods, enabling traders to navigate trends and avoid low-opportunity zones effectively, ideal for equities, futures, or indices.
What It Does
Plots up to five Volume Profiles, each with POC, VAH, and VAL lines.
Labels levels with customizable prefixes and price displays.
Supports anchored (start-to-present) or fixed (start-to-stop) time ranges, adjustable via inputs or chart dragging.
How It Works
Data Sources: Uses lower timeframe data (e.g., 1-minute on a 5-minute chart) to build volume distributions.
Calculations:
POC: Identifies the price with the highest traded volume in the selected range.
VAH/VAL: Defines the value area (default: 70% of volume(recommended)) around POC.
Time Ranges: Each profile starts at a user-set time, extending to the present or a stop time if fixed.
Visualization: Draws lines and labels for POC, VAH, and VAL, with customizable colors, offsets, and leftward extensions.
How It Helps Traders
"Teddy" aligns traders with the auction to help avoids pitfalls:
Staying with the Trend: Price above POC Indicates buyers are in control of the profile being studied which allows the auction to move towards VAH next. Price below POC Indicates sellers are in control of the profile being studied which allows the auction to move towards VAL next. guiding trend-following entries. Breakouts above VAH can signal an expansion opportunity for price and breakdowns below VAL can signal an expansion opportunity for price.
Avoiding Choppy Conditions: POC acts as a price anchor(magnet almost) that draws price towards it due to the high volume around this pivot— Price oscillating around POC often indicates consolidation(almost a battle between buyers and sellers); Its wise to let the battle finish to understand the true direction. Teddy also helps traders identify consolidation between ranges as buyers and sellers fight for acceptance above below in inside of one or multiple ranges. This type of structure between ranges often brings chop with it as well.
Steering Clear of Overbought/Oversold: Extreme price moves far from POC or VAH/VAL, especially in recent profiles, suggest price at premium or price at discount. This can help traders avoid chasing an extended move to the upside or the downside.
Multiple profiles provide temporal context, ensuring trades align with multiple auctions to define price at a value, at a discount or at a premium and not just fleeting noise.
How to Use It
Apply to any chart (e.g., ES 1H for futures).
Customize via inputs:
"Profile Settings": Enable/disable, set start/stop times, toggle fixed range.
"Profile Appearance": Adjust horizontal offset for labels.
"Profile Colors": Set POC, VAH, VAL colors (e.g., yellow, blue).
"Profile POC & Value Area": Adjust value area percentage (default: 70%), toggle POC/VAH/VAL display, extend lines left.
"Profile Label Customization": Set label prefixes, show prices, and text colors.
Underlying Concepts
Volume Profile: POC and VAH/VAL highlight high-volume acceptance zones, anchoring trend analysis.
Temporal Analysis: Multiple profiles reveal evolving market structure over user-defined periods.
Limitations
May require a Premium Trading view plan due to data being pulled on lower time frames such as the 1 minute. Check to ensure your plan meets these requirements.
Profiles looking back multiple months (e.g., 9 or 12 months) on lower timeframes (e.g., 1-minute) may cause memory errors or fail to load due to data limits.
Hourly or higher timeframes are best for accurate data on extended lookbacks, especially in futures markets.
Accuracy depends on lower timeframe data availability.
Levels are contextual, not guaranteed signals.
[Pandora's Chambers] Liquidity Grab Magnet Tool VDV_V6Pandora’s Chambers – Liquidity Grab Magnet Tool VDV_V6
The “Pandora’s Chambers – Liquidity Grab Magnet Tool VDV_V6” indicator is built as a mathematical function library in Pine Script® that identifies “magnet” points (local maxima) of price action density, based on a combination of frequency analysis (wick density) and Fibonacci values. The algorithm considers the distribution of wick touches within a lookback range, builds volume profiles at different price levels, and then marks the strongest dynamic support and resistance levels. This structure has been empirically proven to be particularly effective for rapid scalping, as these “magnet points” are characterized by strong market forces influencing sharp price movements.
Background and Methodology
Price Range Division into Bins: The range between the minimum and maximum price over the last N candles is divided into k equal bins.
Wick Touch Counting: For each bin, the number of times the bin center falls within the wick body of a candle is calculated.
Bullish and Bearish Candles:
For bullish candles (close > open), touches between the low and the open are counted.
For bearish candles (close < open), touches between the open and the high are counted.
Density Function: For each bin j, a density function ρ(j) = number of touches in j is obtained.
Strongest Levels: The strongest support level below the current price is arg max_{binCenter < close} ρ(j), and the resistance – above the price.
Integrated Volume Profile: For each bin, the trading volume of the candles where the bin center is included in the wick body is accumulated, adding a volume dimension to the selection of magnet points.
The Secret Algorithm
The algorithm utilizes several key constructs:
Dynamic Trailing with Sensitivity Threshold (trailTolerance): To avoid market noise, the line is redrawn only when the new point differs by Δ ≥ trailTolerance from the previous level.
Fibonacci Value Integration: After identifying support (sell-side) and resistance (buy-side) levels, Fibonacci lines are calculated at n ratios (0.0, 0.236, 0.382, 0.5, 0.618, 0.786, 1.0), with the option to extend them to additional "snap" values (1.618, 2.618). Each line also displays the corresponding trading volume in its paired bin, providing an indication of market depth at the Fibonacci point.
Visualization and Functionality:
Clear and Dynamic Colored Lines: Support is colored purple, resistance is colored cyan.
Transparent Labels: Displaying the actual volume value for each level.
“Magnet Point” Markers (red dots): Appearing upon the breakout of a line – enabling the identification of rapid scalping opportunities. Crossing of a line indicates the price "drinking liquidity." A red dot appears when the price reaches equilibrium.
Continued Liquidity: If the line moves away from the price, liquidity is expected to continue.
Key Parameters
Parameter Description
Lookback Bars Number of candles for historical analysis; size of the discrete dimension for density distribution.
Bin Count Number of bins for dividing the price range; determines the analysis resolution.
Tolerance Minimum threshold for a level change before a new line is created (to reduce noise).
Fibonacci Offsets Number of candles to the right to display Fibonacci lines with volume labels.
Show Liquidity Snap Toggle to display extended "snap" values outside the main range.
Line Width & Color Adjustable thickness, style, and color of support and resistance lines.
Label Size/Offset Adjustment of label text size and position – to prevent overlaps on the chart.
Export to Sheets
How to Use for Scalping
Identify the Magnet Point: Follow the red dot (•) the moment the price crosses a liquidity level downwards/upwards.
Parameter Adjustment: To increase sensitivity for scalping – reduce the Lookback or increase the Bin Count.
Market Depth Confirmation: Use the volume labels alongside the Fibonacci lines to confirm that the point is indeed accompanied by significant volume movement.
Mathematical Conclusion
The indicator combines statistical principles of density and historical memory with Fibonacci geometry, in a configuration that allows for the identification of reliable “magnet points.” For quantitative traders, this is a formal tool for drawing conclusions about market forces in the language of density functions and volume profiles, providing an ideal environment for rapid and precise scalps.
צור מחדש אבל תחליף את המילים סופורט וריסיסטנס לליקווידיטי
בטח, הנה הגרסה המחודשת של התיאור עם החלפת המילים "סופורט" ו"ריסיסטנס" ב"ליקווידיטי":
חדרי פנדורה – כלי מגנט ללכידת נזילות VDV_V6
האינדיקטור “חדרי פנדורה – כלי מגנט ללכידת נזילות VDV_V6” נבנה כספריית פונקציות מתמטית ב‑Pine Script® המזהה נקודות “מגנט” (מקסימום מקומי) של צפיפות תנועת המחיר, על בסיס שילוב של ניתוח תדרים (צפיפות וויקים) וערכי פיבונאצ’י. האלגוריתם מתייחס להתפלגות נגיעות הוויקים בתוך טווח הסתכלות (lookback), בונה פרופילי נפח במחיריים שונים, ולאחר מכן מסמן את רמות הנזילות הדינמיות החזקות ביותר. המבנה הוכח אמפירית כיעיל במיוחד לסקאלפינג מהיר, שכן “נקודות המגנט” מתאפיינות בכוחות שוק חזקים המשפיעים על תנועה חדה של המחיר.
רקע ומתודולוגיה
חלוקת טווח המחיר לבינים (bins): הטווח בין המחיר המינימלי למקסימלי ב־N הנרות האחרונים מחולק ל־k תאים שווים.
בכל תא מחשבים את מספר הפעמים שבהן מרכז התא נכנס לתוך גוף הוויק (wick) של הנר.
נרות בולשים ודובשים:
בנרות בולשים (close > open) נספרים מגעים בין ה־low ל־open.
בנרות דובשים (close < open) נספרים מגעים בין ה־open ל־high.
פונקציית צפיפות (Density Function): עבור כל תא j מתקבלת פונקציית צפיפות ρ(j) = מספר המגעים ב־j.
הרמה החזקה ביותר מתחת למחיר הנוכחי היא arg max_{binCenter < close} ρ(j), ולהתנגדות – מעל המחיר.
פרופיל נפח משולב (Volume Profile): לכל תא מצטבר נפח המסחר של הנרות שבהם מרכז התא נכלל בגוף הוויק, מה שמוסיף ממד נפחי לבחירת נקודות המגנט.
האלגוריתם הסודי
האלגוריתם עושה שימוש בכמה קונסטרוקטים עיקריים:
טריילינג דינמי עם סף רגישות (trailTolerance): כדי למנוע רעשי שוק, הקו ניזון מחדש רק כאשר הנקודה החדשה שונה ב־Δ ≥ trailTolerance מהרמה הקודמת.
שילוב ערכי פיבונאצ’י: לאחר זיהוי רמות נזילות (sell-side) ורמות נזילות (buy-side), מחושבים קווי פיבונאצ’י ב־n יחסיות (0.0, 0.236, 0.382, 0.5, 0.618, 0.786, 1.0), ואפשרות להרחבתם לערכי סנאפ נוספים (1.618, 2.618). כל קו מציג גם את נפח המסחר המתאים בתא התאום שלו, מה שנותן אינדיקציה לקריאות עומק השוק בנקודת פי
You stopped this response
Giv'atayim, Israel
צור מחדש אבל תחליף את המילים סופורט וריסיסטנס לליקווידיטי
באנגלית
Okay, here's the revised English description with "support" and "resistance" replaced by "liquidity":
Pandora’s Chambers – Liquidity Grab Magnet Tool VDV_V6
The “Pandora’s Chambers – Liquidity Grab Magnet Tool VDV_V6” indicator is built as a mathematical function library in Pine Script® that identifies “magnet” points (local maxima) of price action density, based on a combination of frequency analysis (wick density) and Fibonacci values. The algorithm considers the distribution of wick touches within a lookback range, builds volume profiles at different price levels, and then marks the strongest dynamic liquidity levels. This structure has been empirically proven to be particularly effective for rapid scalping, as these “magnet points” are characterized by strong market forces influencing sharp price movements.
Background and Methodology
Price Range Division into Bins: The range between the minimum and maximum price over the last N candles is divided into k equal bins.
Wick Touch Counting: For each bin, the number of times the bin center falls within the wick body of a candle is calculated.
Bullish and Bearish Candles:
For bullish candles (close > open), touches between the low and the open are counted.
For bearish candles (close < open), touches between the open and the high are counted.
Density Function: For each bin j, a density function ρ(j) = number of touches in j is obtained.
Strongest Levels: The strongest sell-side liquidity level below the current price is arg max_{binCenter < close} ρ(j), and the buy-side liquidity – above the price.
Integrated Volume Profile: For each bin, the trading volume of the candles where the bin center is included in the wick body is accumulated, adding a volume dimension to the selection of magnet points.
The Secret Algorithm
The algorithm utilizes several key constructs:
Dynamic Trailing with Sensitivity Threshold (trailTolerance): To avoid market noise, the line is redrawn only when the new point differs by Δ ≥ trailTolerance from the previous level.
Fibonacci Value Integration: After identifying sell-side liquidity and buy-side liquidity levels, Fibonacci lines are calculated at n ratios (0.0, 0.236, 0.382, 0.5, 0.618, 0.786, 1.0), with the option to extend them to additional "snap" values (1.618, 2.618). Each line also displays the corresponding trading volume in its paired bin, providing an indication of market depth at the Fibonacci point.
Visualization and Functionality:
Clear and Dynamic Colored Lines: Sell-side liquidity is colored purple, buy-side liquidity is colored cyan. Crossing of a line indicates the price "drinking liquidity."
Transparent Labels: Displaying the actual volume value for each level.
“Magnet Point” Markers (red dots): Appearing upon the breakout of a line – enabling the identification of rapid scalping opportunities. A red dot appears when the price reaches equilibrium. If the line moves away from the price, liquidity is expected to continue.
Key Parameters
Parameter Description
Lookback Bars Number of candles for historical analysis; size of the discrete dimension for density distribution.
Bin Count Number of bins for dividing the price range; determines the analysis resolution.
Tolerance Minimum threshold for a level change before a new line is created (to reduce noise).
Fibonacci Offsets Number of candles to the right to display Fibonacci lines with volume labels.
Show Liquidity Snap Toggle to display extended "snap" values outside the main range.
Line Width & Color Adjustable thickness, style, and color of liquidity lines.
Label Size/Offset Adjustment of label text size and position – to prevent overlaps on the chart.
Export to Sheets
How to Use for Scalping
Identify the Magnet Point: Follow the red dot (•) the moment the price crosses a liquidity level downwards/upwards.
Parameter Adjustment: To increase sensitivity for scalping – reduce the Lookback or increase the Bin Count.
Market Depth Confirmation: Use the volume labels alongside the Fibonacci lines to confirm that the point is indeed accompanied by significant volume movement.
Mathematical Conclusion
The indicator combines statistical principles of density and historical memory with Fibonacci geometry, in a configuration that allows for the identification of reliable “magnet points.” For quantitative traders, this is a formal tool for drawing conclusions about market forces in the language of density functions and volume profiles, providing an ideal environment for rapid and precise scalps.
Delta Flow Profile [LuxAlgo]The Delta Flow Profile is a charting tool that tracks and visualizes money flow and the difference between buying and selling pressure accumulated within multiple price ranges over a specified period. It reveals the relationship between an asset's price and traders' willingness to buy or sell, helping traders identify significant price levels and analyze market activity.
The Normalized Profile displays the percentage of money flow at each price level relative to the maximum money flow level, enabling traders to easily compare levels and understand the relative importance of each price point in the context of overall trading activity.
🔶 USAGE
The Delta Flow Profile is made of two principal components with different usability, each one of them described in the sub-sections below.
🔹 Money Flow Profile
The Money Flow Profile illustrates the total buying and selling activity at different price ranges. By analyzing this profile, users can identify key price zones with substantial buying or selling pressure. These zones can often act as potential support or resistance.
The rows of the Money Flow Profile represent the trading activity at specific price ranges over a given period.
A normalized profile is included to compare each zone relative to the peak money flow using a percentage, with 100% indicating that a price range is the one with the highest accumulated money flow.
🔹 Delta Profile
The Delta Profile assesses the dominant sentiment (buying or selling) from volume delta at different price levels to gauge market sentiment and potential reversals.
Delta Profile rows with more significant buying or selling volume indicate dominance from one side of the market in that specific price area. Price coming back to that area might indicate willingness from a dominant side to further accumulate orders within it, potentially causing price to follow the direction established by this dominant side afterward.
The volume delta is determined from the user-selected Polarity Method, with "Bar Polarity" using candle sentiment to determine if a bar associated volume is buying or selling volume, and "Bar Buying/Selling Pressure" making use of the high/low price to obtain more precise results.
🔹 Level of Significance
Users can quickly highlight the price levels with the highest recorded money flow activity through the included "Level of Significance". Various display methods are included:
Developing: Show the price level with the highest recorded money flow activity spanning over the indicator calculation interval.
Level: Show the price level with the highest recorded money flow activity.
Row: Show the price zone with the highest recorded money flow activity.
These levels/zones can be used as potential support/resistance points and can serve as a reference of where prices might go next for market participants to accumulate orders.
🔶 SETTINGS
The script offers a range of customizable settings to tailor the analysis to your trading needs.
🔹 Calculation Settings
Money Flow Profile: Toggles the visibility of the Money Flow Profile.
Normalized: Toggles the visibility of the Normalized Profile.
Sentiment Profile: Toggles the visibility of the Sentiment Profile.
Polarity Method: Choose between Bar Polarity or Bar Buying/Selling Pressure to calculate the Sentiment Profile.
Level of Significance: Toggles the visibility of the level of significance line/zone.
Lookback Length / Fixed Range: Sets the lookback length.
Number of Rows: Specify how many rows each profile histogram will have.
🔹 Display Settings
Profile Width %: Alters the width of the rows in the histogram, relative to the profile length.
Profile Horizontal Offset: Enables moving the profile on the horizontal axis.
Profile Text: Toggles the visibility of profile texts, and alters the size of the text. Setting to Auto will keep the text within the box limits.
Currency: Extends the profile text with the traded currency.
Profile Price Levels: Toggles the visibility of the profile price levels.
🔶 RELATED SCRIPTS
Money-Flow-Profile
Volume-Profile-with-Node-Detection
Historic Volume/Market ProfilesHistoric Volume/Market Profile is a Periodic Volume Profile with all of the improvements known in the original Volume/Market Profile.
VMP is a 2 in 1 Volume and Market Profile Indicator.
HVMP uses the base of VMP to offer a quick and simple view at multiple historic profiles at the same time.
This includes:
Cluster Identification for High Volume and Low Volume Areas.
Maximizing granularity by utilizing boxes and lines to get up to 1000 rows.
New Inclusions in HVMP vs VMP:
HVMP granularity is determined by the # of profiles on display. By doing this, each profile will get an even amount of allocated rows to use and granularity is scaled per-profile, to fit within the row allowance.
For Example: 1000/(# of profiles) = Maximum # of rows per profile.
HVMP introduces the "Auto-Scale" Option (on by Default), this automatically fits each profile within the defined timeframe period to provide a consistent display when switching timeframes.
Even with "Auto-Scale" enabled, "Display Size" dictates which direction the profile is displayed.
Below is a Negative Display Size (Displays from right to left, starting at the end of the period)
Below is a Positive Display Size (Displays from left to right, starting at the beginning of the period)
HVMP is only for historical data, you can get a live profile with the same Node Identification using VMP (Volume Market/Profile). The indicator that this one is based on.
Find it Here: Volume/Market Profile
Enjoy!
Volume Matrix Pro [ChartNation]Volume Matrix Pro is a comprehensive volume profile indicator that combines delta-colored volume distribution analysis with adaptive pivot detection and automated volume node identification. The indicator visualizes where institutional volume accumulated at specific price levels, providing traders with precise entry zones backed by actual trading data.
KEY FEATURES:
Delta-Colored Volume Profile: Displays volume distribution across price bins with automatic delta coloring - green bins show buyer dominance, red bins show seller control at each price level
High Volume Nodes (HVN) Detection: Automatically identifies and marks price levels with ≥80% of POC volume using yellow diamond markers - these act as magnetic support/resistance zones where institutions built positions
Low Volume Nodes (LVN) Detection: Marks thin volume areas with gray diamond markers - zones where price moves quickly with minimal friction, ideal for breakout targets
Adaptive Smart Pivots: ATR-based pivot detection that automatically adjusts length based on market volatility - catches more swings in low volatility, filters to major reversals in high volatility
Point of Control (POC) Line: Identifies the price level with maximum traded volume - the market's center of gravity. Line colors by delta: green when buyers dominated, red when sellers controlled the level
Value Area Lines: Dotted lines marking the 70% value area (configurable 50-98%) with delta-based coloring showing cumulative buyer/seller pressure within the range
Circle Pivot Markers: Clean visual markers at confirmed pivot points with translucent horizontal lines extending to current bar
Extend-Until-Touch: Pivot lines automatically retract when price touches them, keeping charts clean and showing active levels only
Dual Profile Modes: Left-side profile (default) or right-pinned bars ahead of price with fully customizable width and padding
Volume-Filtered Pivots: Only displays pivots with significant volume backing (≥20% of POC by default) - institutional turning points, not noise
HOW IT WORKS:
The indicator divides the lookback range (default 200 bars) into volume bins (default 50) and calculates total volume and delta (buying vs selling pressure) at each price level. Each bin is colored green if buyers dominated (close > open majority) or red if sellers controlled (close < open majority).
High Volume Nodes mark price levels where the most trading occurred - these become magnetic support/resistance zones. The Point of Control identifies the single price with maximum volume, acting as the market's gravitational center.
Smart Pivots use ATR to adapt to changing volatility, then filter against the volume profile. Only pivots with substantial volume backing are displayed, ensuring you see institutional turning points, not random noise.
RECOMMENDED SETTINGS:
Scalping (1-5 min): 100 lookback bars, 40 bins, 5-7 pivot length
Day Trading (15 min - 1 hour): 200 lookback bars, 50 bins, 10 pivot length (default)
Swing Trading (4 hour - Daily): 300-500 lookback bars, 60 bins, 15-20 pivot length
USAGE TIPS:
Enter long when price touches green HVN zones with adaptive pivot confirmation
Enter short when price reaches red HVN zones with pivot confirmation
Use POC as first target when entering below it, or as support backup when entering above
Watch for LVN zones as potential breakout acceleration areas
Combine green delta bins + HVN + pivot for highest-probability setups
WHAT MAKES THIS DIFFERENT:
Unlike traditional volume profiles, Volume Matrix Pro colors each bin individually by delta, giving granular insight into buyer/seller control at every price level. The adaptive pivot system adjusts automatically to volatility, while volume-filtering ensures only institutionally-backed turning points are displayed. High/Low Volume Node detection is fully automated with visual markers.
IMPORTANT NOTES:
This is a volume analysis tool - use with trend analysis and risk management
High Volume Nodes show where volume accumulated historically, not future support/resistance guarantees
Adaptive pivots adjust to volatility automatically but can still produce false signals in choppy markets
Best used as confirmation alongside price action, not as a standalone system
Profile recalculates on each bar to reflect current lookback range
Dynamic Volume Trace Profile [ChartPrime]⯁ OVERVIEW
Dynamic Volume Trace Profile is a reimagined take on volume profile analysis. Instead of plotting a static horizontal histogram on the side of your chart, this indicator projects dynamic volume trace lines directly onto the price action. Each bin is color-graded according to its relative strength, creating a living “volume skeleton” of the market. The orange trace highlights the current Point of Control (POC)—the price level with maximum historical traded volume within the lookback window. On the right side, the tool builds a mini profile, showing absolute volume per bin alongside its percentage share, where the POC always represents 100% strength .
⯁ KEY FEATURES
Dynamic On-Chart Bins:
The range between highest high and lowest low is split into 25 bins. Each bin is drawn as a horizontal trace line across the lookback chart period.
Gradient Color Encoding:
Trace lines fade from transparent to teal depending on relative volume size. The more intense the teal, the stronger the historical traded activity at that level.
Automatic POC Highlight:
The bin with the highest aggregated volume is flagged with an orange line . This POC adapts bar-by-bar as volume distribution shifts.
Right-Side Volume Profile:
At the chart’s right edge, the script prints a box-style profile. Each bin shows:
• Total volume (absolute units).
• Percentage of max volume, in parentheses (POC bin = 100%).
This gives both raw and normalized context at a glance.
Adjustable Lookback Window:
The lookback defines how many bars feed the profile. Increase for stable HTF zones or decrease for responsive intraday distributions.
POC Toggle & Styling:
Optionally toggle POC highlighting on/off, adjust colors, and set line thickness for better integration with your chart theme.
⯁ HOW IT WORKS (UNDER THE HOOD)
Step Sizing:
over last 100 bars is divided by to calculate bin height.
Volume Aggregation:
For each bar in the , the script checks which bin the close falls into, then adds that bar’s volume to the bin’s counter.
Gradient Mapping:
Bin volume is normalized against the max volume across all bins. That value is mapped onto a gradient from transparent → teal.
POC Logic:
The bin with highest volume is colored orange both on the dynamic trace and in the right-side profile.
Right-Hand Profile:
Boxes are drawn for each bin proportional to volume / maxVolume × 50 units, with text labels showing both absolute volume and normalized %.
⯁ USAGE
Use the orange trace as the dominant “magnet” level—price often gravitates to the POC.
Watch for clusters of strong teal traces as areas of high acceptance; thin or faint zones mark low-liquidity gaps prone to fast moves.
On intraday charts, tighten lookback to reveal session-based distributions . For swing or position trading, expand lookback to surface more durable volume shelves.
Compare the right-side profile % to judge how “top-heavy” or “bottom-heavy” the current distribution is.
Use bright, intense color traces as context for confluence with structure, OBs, or liquidity hunts.
⯁ CONCLUSION
Dynamic Volume Trace Profile takes the traditional volume profile and fuses it into the body of price itself. Instead of a fixed sidebar, you see gradient traces layered directly on the chart, giving real-time context of where volume concentrated and where price may be drawn. With built-in POC highlighting, normalized % readouts, and an adaptive right-side profile, it offers both precision levels and market structure awareness in a cleaner, more intuitive form.
Waindrops [Makit0]█ OVERALL
Plot waindrops (custom volume profiles) on user defined periods, for each period you get high and low, it slices each period in half to get independent vwap, volume profile and the volume traded per price at each half.
It works on intraday charts only, up to 720m (12H). It can plot balanced or unbalanced waindrops, and volume profiles up to 24H sessions.
As example you can setup unbalanced periods to get independent volume profiles for the overnight and cash sessions on the futures market, or 24H periods to get the full session volume profile of EURUSD
The purpose of this indicator is twofold:
1 — from a Chartist point of view, to have an indicator which displays the volume in a more readable way
2 — from a Pine Coder point of view, to have an example of use for two very powerful tools on Pine Script:
• the recently updated drawing limit to 500 (from 50)
• the recently ability to use drawings arrays (lines and labels)
If you are new to Pine Script and you are learning how to code, I hope you read all the code and comments on this indicator, all is designed for you,
the variables and functions names, the sometimes too big explanations, the overall structure of the code, all is intended as an example on how to code
in Pine Script a specific indicator from a very good specification in form of white paper
If you wanna learn Pine Script form scratch just start HERE
In case you have any kind of problem with Pine Script please use some of the awesome resources at our disposal: USRMAN , REFMAN , AWESOMENESS , MAGIC
█ FEATURES
Waindrops are a different way of seeing the volume and price plotted in a chart, its a volume profile indicator where you can see the volume of each price level
plotted as a vertical histogram for each half of a custom period. By default the period is 60 so it plots an independent volume profile each 30m
You can think of each waindrop as an user defined candlestick or bar with four key values:
• high of the period
• low of the period
• left vwap (volume weighted average price of the first half period)
• right vwap (volume weighted average price of the second half period)
The waindrop can have 3 different colors (configurable by the user):
• GREEN: when the right vwap is higher than the left vwap (bullish sentiment )
• RED: when the right vwap is lower than the left vwap (bearish sentiment )
• BLUE: when the right vwap is equal than the left vwap ( neutral sentiment )
KEY FEATURES
• Help menu
• Custom periods
• Central bars
• Left/Right VWAPs
• Custom central bars and vwaps: color and pixels
• Highly configurable volume histogram: execution window, ticks, pixels, color, update frequency and fine tuning the neutral meaning
• Volume labels with custom size and color
• Tracking price dot to be able to see the current price when you hide your default candlesticks or bars
█ SETTINGS
Click here or set any impar period to see the HELP INFO : show the HELP INFO, if it is activated the indicator will not plot
PERIOD SIZE (max 2880 min) : waindrop size in minutes, default 60, max 2880 to allow the first half of a 48H period as a full session volume profile
BARS : show the central and vwap bars, default true
Central bars : show the central bars, default true
VWAP bars : show the left and right vwap bars, default true
Bars pixels : width of the bars in pixels, default 2
Bars color mode : bars color behavior
• BARS : gets the color from the 'Bars color' option on the settings panel
• HISTOGRAM : gets the color from the Bearish/Bullish/Neutral Histogram color options from the settings panel
Bars color : color for the central and vwap bars, default white
HISTOGRAM show the volume histogram, default true
Execution window (x24H) : last 24H periods where the volume funcionality will be plotted, default 5
Ticks per bar (max 50) : width in ticks of each histogram bar, default 2
Updates per period : number of times the histogram will update
• ONE : update at the last bar of the period
• TWO : update at the last bar of each half period
• FOUR : slice the period in 4 quarters and updates at the last bar of each of them
• EACH BAR : updates at the close of each bar
Pixels per bar : width in pixels of each histogram bar, default 4
Neutral Treshold (ticks) : delta in ticks between left and right vwaps to identify a waindrop as neutral, default 0
Bearish Histogram color : histogram color when right vwap is lower than left vwap, default red
Bullish Histogram color : histogram color when right vwap is higher than left vwap, default green
Neutral Histogram color : histogram color when the delta between right and left vwaps is equal or lower than the Neutral treshold, default blue
VOLUME LABELS : show volume labels
Volume labels color : color for the volume labels, default white
Volume Labels size : text size for the volume labels, choose between AUTO, TINY, SMALL, NORMAL or LARGE, default TINY
TRACK PRICE : show a yellow ball tracking the last price, default true
█ LIMITS
This indicator only works on intraday charts (minutes only) up to 12H (720m), the lower chart timeframe you can use is 1m
This indicator needs price, time and volume to work, it will not work on an index (there is no volume), the execution will not be allowed
The histogram (volume profile) can be plotted on 24H sessions as limit but you can plot several 24H sessions
█ ERRORS AND PERFORMANCE
Depending on the choosed settings, the script performance will be highly affected and it will experience errors
Two of the more common errors it can throw are:
• Calculation takes too long to execute
• Loop takes too long
The indicator performance is highly related to the underlying volatility (tick wise), the script takes each candlestick or bar and for each tick in it stores the price and volume, if the ticker in your chart has thousands and thousands of ticks per bar the indicator will throw an error for sure, it can not calculate in time such amount of ticks.
What all of that means? Simply put, this will throw error on the BITCOIN pair BTCUSD (high volatility with tick size 0.01) because it has too many ticks per bar, but lucky you it will work just fine on the futures contract BTC1! (tick size 5) because it has a lot less ticks per bar
There are some options you can fine tune to boost the script performance, the more demanding option in terms of resources consumption is Updates per period , by default is maxed out so lowering this setting will improve the performance in a high way.
If you wanna know more about how to improve the script performance, read the HELP INFO accessible from the settings panel
█ HOW-TO SETUP
The basic parameters to adjust are Period size , Ticks per bar and Pixels per bar
• Period size is the main setting, defines the waindrop size, to get a better looking histogram set bigger period and smaller chart timeframe
• Ticks per bar is the tricky one, adjust it differently for each underlying (ticker) volatility wise, for some you will need a low value, for others a high one.
To get a more accurate histogram set it as lower as you can (min value is 1)
• Pixels per bar allows you to adjust the width of each histogram bar, with it you can adjust the blank space between them or allow overlaping
You must play with these three parameters until you obtain the desired histogram: smoother, sharper, etc...
These are some of the different kind of charts you can setup thru the settings:
• Balanced Waindrops (default): charts with waindrops where the two halfs are of same size.
This is the default chart, just select a period (30m, 60m, 120m, 240m, pick your poison), adjust the histogram ticks and pixels and watch
• Unbalanced Waindrops: chart with waindrops where the two halfs are of different sizes.
Do you trade futures and want to plot a waindrop with the first half for the overnight session and the second half for the cash session? you got it;
just adjust the period to 1860 for any CME ticker (like ES1! for example) adjust the histogram ticks and pixels and watch
• Full Session Volume Profile: chart with waindrops where only the first half plots.
Do you use Volume profile to analize the market? Lucky you, now you can trick this one to plot it, just try a period of 780 on SPY, 2760 on ES1!, or 2880 on EURUSD
remember to adjust the histogram ticks and pixels for each underlying
• Only Bars: charts with only central and vwap bars plotted, simply deactivate the histogram and volume labels
• Only Histogram: charts with only the histogram plotted (volume profile charts), simply deactivate the bars and volume labels
• Only Volume: charts with only the raw volume numbers plotted, simply deactivate the bars and histogram
If you wanna know more about custom full session periods for different asset classes, read the HELP INFO accessible from the settings panel
EXAMPLES
Full Session Volume Profile on MES 5m chart:
Full Session Unbalanced Waindrop on MNQ 2m chart (left side Overnight session, right side Cash Session):
The following examples will have the exact same charts but on four different tickers representing a futures contract, a forex pair, an etf and a stock.
We are doing this to be able to see the different parameters we need for plotting the same kind of chart on different assets
The chart composition is as follows:
• Left side: Volume Labels chart (period 10)
• Upper Right side: Waindrops (period 60)
• Lower Right side: Full Session Volume Profile
The first example will specify the main parameters, the rest of the charts will have only the differences
MES :
• Left: Period size: 10, Bars: uncheck, Histogram: uncheck, Execution window: 1, Ticks per bar: 2, Updates per period: EACH BAR,
Pixels per bar: 4, Volume labels: check, Track price: check
• Upper Right: Period size: 60, Bars: check, Bars color mode: HISTOGRAM, Histogram: check, Execution window: 2, Ticks per bar: 2,
Updates per period: EACH BAR, Pixels per bar: 4, Volume labels: uncheck, Track price: check
• Lower Right: Period size: 2760, Bars: uncheck, Histogram: check, Execution window: 1, Ticks per bar: 1, Updates per period: EACH BAR,
Pixels per bar: 2, Volume labels: uncheck, Track price: check
EURUSD :
• Upper Right: Ticks per bar: 10
• Lower Right: Period size: 2880, Ticks per bar: 1, Pixels per bar: 1
SPY :
• Left: Ticks per bar: 3
• Upper Right: Ticks per bar: 5, Pixels per bar: 3
• Lower Right: Period size: 780, Ticks per bar: 2, Pixels per bar: 2
AAPL :
• Left: Ticks per bar: 2
• Upper Right: Ticks per bar: 6, Pixels per bar: 3
• Lower Right: Period size: 780, Ticks per bar: 1, Pixels per bar: 2
█ THANKS TO
PineCoders for all they do, all the tools and help they provide and their involvement in making a better community
scarf for the idea of coding a waindrops like indicator, I did not know something like that existed at all
All the Pine Coders, Pine Pros and Pine Wizards, people who share their work and knowledge for the sake of it and helping others, I'm very grateful indeed
I'm learning at each step of the way from you all, thanks for this awesome community;
Opensource and shared knowledge: this is the way! (said with canned voice from inside my helmet :D)
█ NOTE
This description was formatted following THIS guidelines
═════════════════════════════════════════════════════════════════════════
I sincerely hope you enjoy reading and using this work as much as I enjoyed developing it :D
GOOD LUCK AND HAPPY TRADING!
PATTERNPULSE / Stttrading F.VelazquezPATTERNPULSE
Discover a powerful tool for market analysis with the Velas Engulfing + RSI Indicator. Crafted by Stttrading Franco Velazquez, this indicator seamlessly blends engulfing candle patterns with the precision of the RSI filter. What sets it apart is its unique approach – signals are exclusively generated when the RSI reaches overbought or oversold conditions, providing a distinctive edge over conventional engulfing candle indicators.
Key Features :
Engulfing Candle Patterns: Identify both bullish and bearish engulfing candle formations.
RSI Integration: Harness the strength of the RSI indicator to evaluate market momentum and potential reversals.
Visual Signals: Enjoy clear and intuitive signals directly on your chart for seamless decision-making.
Configurable Alerts: Tailor the indicator to your preferences with customizable alerts for timely notifications.
Usage Instructions:
Engulfing Candles:
Visualize bullish and bearish candles through green and red triangles, respectively.
Capitalize on buying opportunities when bullish candles emerge and consider selling when bearish candles unfold.
RSI Indicator:
Leverage the RSI indicator to gauge overbought and oversold market conditions.
Fine-tune RSI levels based on your trading strategy and risk tolerance.
Alert System:
Set up alerts to stay informed about crucial market movements, ensuring you never miss a trading opportunity.
Custom Configuration:
RSI Source: Customize the data source for RSI calculations to suit your analysis.
RSI Length: Define the length of the RSI period for precise adjustments.
RSI Overbought and Oversold Levels: Tailor the overbought and oversold RSI thresholds to align with your trading preferences.
Important Note: Always conduct thorough analysis and implement proper risk management before executing trades.
Volume Profile in PatternPulse:
In the paid version of the PatternPulse indicator, an advanced Volume Profile tool is included, offering a detailed view of how volume is distributed across different price levels over a specific period. Here's how it works:
Show Volume Profile: You can toggle the display of the volume profile on the chart using the Show VP option.
Depth and Number of Bars Configuration: The tool allows you to adjust the Volume Profile Lookback Depth, which defines how many periods back will be analyzed to calculate the volume profile. You can also set the number of bars (VP Number of Bars) to be displayed on the chart, as well as the bar length and width to customize its appearance.
Delta Type: You can choose from different delta types for the volume profile: Bullish, Bearish, or Both. This enables you to focus on volumes associated with bullish price movements, bearish movements, or both.
Point of Control (POC): The tool also offers an option to extend the Point of Control (POC) line on the volume profile. The POC represents the price level with the highest traded volume during the analyzed period.
Customizable Colors: You can customize the colors of the volume profile bars and the Point of Control (POC) to match your visual preferences.
How to Use It:
The volume profile helps identify price levels where significant volume has been traded, which can be crucial for determining key support and resistance levels in the market. Adjust the parameters to fit your needs for a clear and precise visualization that supports your technical analysis.
Info Box in PatternPulse
In the paid version of PatternPulse, you'll find an info box that provides a comprehensive view of various market aspects. Here's how it works:
General Information: At the top of the info box, you'll see the title "PATTERNPULSEVIP® Info. BOX" in grey with orange text. This title helps you identify that you are viewing the information section.
CCL Dollar: The info box displays the value of the CCL (Contado con Liquidación) dollar for Argentina, which is an important reference for investors in that market.
Indices and Metals: This section includes information on the US Dollar Index (DXY), the Euro Index (EXY), as well as the prices of gold and silver.
Crypto Dominance: Here, you'll see the dominance of Bitcoin (BTC) and Ethereum (ETH) in the cryptocurrency market, helping you understand the influence of these cryptocurrencies on the global market.
MACD: The info box shows the current MACD (Moving Average Convergence Divergence) trend. The trend can be bullish or bearish, providing additional insight into market direction.
RSI: The current RSI (Relative Strength Index) value is also displayed. If the RSI indicates overbought conditions (above 75), the info box will turn teal with white text. If it indicates oversold conditions (below 25), the info box will turn maroon with white text.
Customization: You can adjust the horizontal offset of the info box from the chart and change the style and color of the text to suit your visual preferences.
This info box provides key data at a glance, making it easier to make informed decisions in your technical analysis. Adjust the settings according to your needs to get the most relevant information for your trading strategy.
Bollinger Bands in PatternPulse
In the paid version of PatternPulse, we’ve added the Bollinger Bands (BB) indicator to help you analyze market volatility and trends. Here’s a breakdown of how to use it:
1. Display Options:
Show BB: You can toggle the visibility of the Bollinger Bands on your chart using the "Show BB" option.
2. Configuration:
Length: Adjust the length of the moving average used to calculate the Bollinger Bands. The default is set to 20 periods, but you can modify it to fit your trading strategy.
Source: Choose the data source for the Bollinger Bands calculation, with the default being the closing price.
Standard Deviation: Set the number of standard deviations away from the moving average for the upper and lower bands. The default is 2.0, which is commonly used.
3. Plotting:
Basis: The middle line (basis) of the Bollinger Bands is plotted, which is a simple moving average (SMA) of the specified length.
Upper and Lower Bands: The upper and lower bands are plotted based on the standard deviation from the basis line.
Offset: Adjust the horizontal position of the bands on your chart to better align with your analysis needs.
4. Visualization:
Color: The Bollinger Bands and their background fill are color-coded for easy interpretation. The default colors are shades of blue, but you can customize them if needed.
These Bollinger Bands will help you to visualize price volatility and identify potential market opportunities based on how the price interacts with these bands. Adjust the settings according to your trading preferences to get the most out of this feature.
Parabolic SAR in PatternPulse
In the advanced version of PatternPulse, we've added the Parabolic SAR (PSAR) to help you identify potential trend changes in the market. Here's how this tool works:
1. Activating the Indicator:
Show PSAR: You can toggle the visibility of the Parabolic SAR using the "Show PSAR" option. This controls whether the indicator is displayed on your chart.
2. PSAR Settings:
Start: Adjust the initial value for the PSAR calculation. This value sets the starting point for the acceleration of the indicator.
Increment: Defines the rate at which the PSAR increases. This value increases the acceleration parameter with each new high or low.
Maximum Value: Sets the upper limit for the acceleration parameter. This prevents the indicator from moving too quickly in high-volatility conditions.
3. Visualization:
Color of the Dots: The PSAR dots are displayed in teal if the indicator is below the closing price, indicating a bullish trend. They are shown in maroon if the indicator is above the closing price, indicating a bearish trend.
How to Use It: The Parabolic SAR is useful for identifying potential reversal points in the market. When the indicator switches position relative to the price, it can signal a potential trend change. Use this indicator in conjunction with other analysis tools to make more informed trading decisions.
User Explanation EMAs
This part of the indicator utilizes Exponential Moving Averages (EMAs) to help you identify trends and potential entry or exit points in the market. Here’s how they work and how you can customize them:
What are EMAs?
Exponential Moving Averages (EMAs) are indicators that smooth out historical prices to identify the direction of the trend. Unlike Simple Moving Averages, EMAs give more weight to recent prices, making them more responsive to current price changes.
How Each EMA Works:
1° EMA (Adjustable Length):
Purpose: The first EMA provides a short-term view and can help identify recent movements and potential quick trend changes.
Customization: You can adjust the length of this EMA (number of periods) using the "1° EMA length" option.
2° EMA (Adjustable Length):
Purpose: The second EMA acts as a smoother filter, helping to confirm or discredit signals from the first EMA.
Customization: Adjust its length with "2° EMA length".
3° EMA (Adjustable Length):
Purpose: The third EMA provides a longer-term view, helping to identify mid-term trends and significant turning points.
Customization: Modify its length via "3° EMA length".
4° EMA (Adjustable Length):
Purpose: The fourth EMA represents the long-term trend, offering a perspective on the market’s overall direction.
Customization: Change its length using "4° EMA length".
Customizable Colors:
You can choose the colors for each EMA through the provided color options. This allows you to distinguish each EMA on your chart easily and customize its appearance according to your preferences.
EMA Crosses:
Small Crosses (1° and 2° EMAs):
Functionality: When the 1° EMA crosses above the 2° EMA, it may signal a buy (bullish cross). When it crosses below, it may signal a sell (bearish cross).
Visualization: You can enable or disable the display of these small crosses.
Large Crosses (3° and 4° EMAs):
Functionality: Crosses between the 3° and 4° EMAs help identify more significant trend changes. A bullish cross may indicate an uptrend, while a bearish cross may signal a downtrend.
Visualization: You can also enable or disable these large crosses on your chart.
How to Use This Information:
Trend Identification: EMAs help you see whether the market is in an uptrend or downtrend, and crosses between them can indicate potential trading opportunities.
Entry/Exit Signals: Crosses between EMAs can signal optimal times to enter or exit a position.
This set of EMAs provides you with a clear view of different time frames in the market, allowing you to make more informed trading decisions based on the current trend and price changes.
Support and Resistance
Support and Resistance levels are essential tools in technical analysis, helping traders identify key price levels where the market might reverse or pause. This feature of the indicator provides visual markers for these levels and tracks how the price interacts with them.
Parameters:
Lookback Range: Defines the number of bars to look back when identifying pivot points. A larger value considers more historical data.
Bars Since Breakout: Determines how many bars should have passed since a breakout to detect a potential retest.
Retest Detection Limiter: Limits the number of bars actively checked for confirming a retest after a breakout.
Breakouts and Retests: Options to enable or disable detection for breakouts and retests.
Repainting: Controls how the indicator updates based on different criteria such as candle confirmation or high/low values. This affects how often and in what way the indicator adjusts its markings.
Pivot Points:
Pivot Low and High: The indicator identifies key support (pivot lows) and resistance (pivot highs) points based on the historical price action within the defined lookback range.
Boxes and Labels:
Drawing Boxes: Visual boxes are drawn to represent support and resistance levels. These boxes adjust dynamically with price changes and can extend based on user settings.
Breakout Labels: Labels are created when a breakout occurs, marking the point where the price crosses these support or resistance levels.
Retest Labels: When a potential retest is detected, the indicator can label it to signal areas where the price might test the broken support or resistance.
Customization Options:
Box and Label Styling: Users can customize the style, color, and size of the boxes and labels representing support and resistance.
Text Color Override: Option to change the color of text labels independently from the default color settings.
Key Benefits:
Visual Clarity: Easily identify important levels on the chart.
Dynamic Updates: Levels adjust as new price data comes in, providing relevant and up-to-date information.
Customization: Tailor the appearance and behavior of the support and resistance markings to fit your trading style.
This feature enhances your chart analysis by clearly marking critical levels and events, making it easier to spot potential trading opportunities.
Explanation of the Simple Moving Averages (SMA) Functionality
Simple Moving Averages (SMAs) are technical analysis tools used to smooth out price data and identify market trends. This part of the code allows you to add two SMAs to the chart with customizable settings.
Configuration Parameters:
Show SMA 1 and SMA 2: Enables or disables the display of each moving average. You can choose to show SMA 1, SMA 2, or both on your chart.
SMA Length: Defines the number of periods used to calculate each SMA. For example, a length of 14 for SMA 1 and 50 for SMA 2. A longer length smooths the line more, while a shorter length follows price movements more closely.
SMA Source: Sets which price data (e.g., closing price) is used to calculate the SMA.
Color and Width of SMA: Allows you to customize the color and width of each SMA line to fit your visual preference or to clearly distinguish between different SMAs on the chart.
SMA Style: Provides options to change the line style of the SMA to solid, dashed, or dotted, so you can personalize the appearance according to your analysis style.
SMA Calculation:
Calculation: The SMA is calculated by averaging the closing prices (or selected source) over the specified number of periods. This helps to smooth out daily price fluctuations and reveals the overall trend.
Visualization:
Plot for SMA 1 and SMA 2: Draws the SMA lines on the chart according to the specified settings. If you choose to hide an SMA, it will not appear on the chart.
Line Style: The line is drawn according to the selected style (solid, dashed, or dotted), and you can adjust the thickness and color to suit your visual needs.
Key Benefits:
Trend Clarity: SMAs help smooth out price movement and allow you to see the general trend in the market.
Customization: You can adjust the length, color, thickness, and style of the lines to fit your analysis and visual preferences.
Facilitates Analysis: SMAs can be used to identify crossings and important trading signals, such as when a short-term SMA crosses above or below a longer-term SMA.
This functionality provides you with powerful tools to adjust and customize how moving averages are presented on your charts, making it easier to identify trends and signals in the market.
Thank you for exploring the features of our indicator! We hope you find the customization options and tools provided, including the Simple Moving Averages, valuable for your trading analysis. If you have any questions or need further assistance, please feel free to reach out.
We invite you to try out the complete PatternPulse indicator to experience its full range of functionalities and see how it can enhance your trading strategies. Your feedback is always appreciated!
Happy trading!
Dobrusky Volume PulseWhat it does & who it’s for
Volume Pulse is a lightweight, customizable volume profile overlay that shows traders how volume is distributed across price levels over a chosen lookback window. Unlike standard profiles, it also maps cumulative buy/sell pressure at each level, so you see not just where volume clustered, but which side dominated.
Core ideas
Cumulative volume by price: Builds a horizontal profile of traded volume at each level, based on user-defined depth and resolution.
Directional pressure mapping: At every price level, the script accumulates bullish vs. bearish volume based on candle closes vs. opens, providing a directional read on whether buyers or sellers had the upper hand.
POC: Automatically highlights the Point of Control (POC) — the level with the most activity.
Customizable presentation: Adjustable profile resolution, bar width, offset, colors, and whether to show cumulative, directional, or both.
How the components work together
The profile provides the “where,” while the buy/sell mapping adds the “who.” By combining these, traders can see whether a high-volume node was buyer-driven absorption or seller-driven distribution — a distinction classic profiles don’t reveal. This directional overlay reduces the guesswork of interpreting raw volume clusters.
How to use
Apply the overlay to your chart.
Watch the POC and areas of significant increase or decrease in volume (and pressure) as natural magnets or rejection areas.
When trading intraday, I've found that higher timeframe volume levels act as strong magnets. In the chart, you can see the volume levels I've drawn on the SPY daily chart. These levels are targets I use when trading the 5-minute chart.
Pay attention to color dominance at those zones — green-heavy nodes suggest buyer control; red-heavy nodes suggest seller control.
Combine with time-based volume tools and price-action for a more comprehensive trade plan.
Settings overview
Lookback depth: Number of bars used for profile calculation.
Profile resolution: Number of horizontal bars to split volume across price.
Bar style: Width, offset, and multiplier for scaling.
Toggle layers: Choose cumulative, directional, or both.
POC display: Optional highlight of the most traded level.
Limitations & best practices
This is a contextual overlay, not a trade-signal system.
Works best on liquid instruments (indices, futures, major stocks, liquid crypto) where volume distribution is meaningful.
Directional mapping uses candle body bias (close vs. open), not raw order flow. For full tape analysis, pair with actual order flow data.
Originality justification
Dual profile: combines cumulative volume-by-price and buyer/seller pressure per bin (close vs. open) — not a standard VP clone.
From-scratch binning + POC in a single pass for speed; no reused libraries.
Flexible display (cumulative / directional / both) with independent resolution, width, and offset for intraday or HTF use.
Clear visuals (optional POC, balanced node coloring) and open-source code so traders can audit and extend.
Volume IQOverview
Volume IQ is meant to be the ‘intelligent volume distribution analyzer’ that takes much of the work of interpreting volume profiles off of your shoulders. It attempts to ‘do the technical analysis’ of volume data for you, with its capstone feature being "Trading Action Zones": ranges on the chart whose placement are determined by high and low volume nodes and sentiment analysis, and their adapting range affected by current volatility. These zones are meant to offer practical levels for potential entries, exits, targets, and stops while trading. These zones are the cherry on top of other useful and original features like visuals for grouping areas of similar buy/sell bias.
Originality and Usefulness
Volume IQ stands out for its originality by offering a data-driven approach to interpreting volume profiles and presenting its analysis on the chart. Unlike traditional volume profiles, Volume IQ automates much of the volume analysis process, helping traders identify potential opportunities and key trading areas with minimal effort. Its unique "Trading Action Zones" leverage high and low volume nodes, sentiment analysis, and current volatility to highlight practical levels for entries, exits, targets, and stops. Additionally, the tool provides grouped bias visuals, gradient coloring, and flexible customization options, allowing traders to gain a clearer understanding of market sentiment and structure. By simplifying complex volume data into actionable insights, Volume IQ provides a valuable and efficient resource for charting on TradingView.
The ‘Capstone’ Feature:
Trading ‘Action Zones’: Potential areas to take trading action based on built-in interpretations of high-volume nodes, low-volume nodes, and overarching chart sentiment (whose calculation is described below), and their interplay. Categorized by tiers - with Tier 2 zones intended as potential entry areas, and Tier 1 zones for exits or adds. These zones can also present logical areas to consider targets and stops, for example placing a stop loss in a Tier 1 sell zone below price where there is a series of low-volume nodes and potentially not much support. These zones help you quickly identify potential areas on the chart to ‘take action’.
Key Features:
Level and Block Biases: By estimating buying and selling volume, as well as leveraging intrabar data, the Volume IQ profile provides detailed buy/sell sentiment at individual price levels. It then groups together consecutive price levels with the same bias into what we call ‘Block Biases’ making it easy to determine larger price areas with distinct buying or selling pressure.
Chart Sentiment Analysis: A ‘continuously optimizing algorithm’ configured to find high average runups after a sentiment switch powers what we call ‘bias guidelines’ which border the Volume IQ profile and influence the determination of Action Zones. This algorithm is based on comparing many combinations of volume-weighted trends, largely based on smoothed volume weighted moving averages, on each bar, to ensure that the approach with the highest average runup amongst the combinations is used.
Zones of Control: A gradient-coloring approach to the profile highlighst areas of influence at a glance, making it easier to focus on key price levels.
Broad Compatibility: Works across all chart timeframes and market types - so long as volume data and OHLC candle data is available.
Highly Customizable: Configure features to align with your trading preferences and workflow. Show them all, or pick and choose the ones you want.
Settings
Use a Color Theme: Toggle between our predefined color themes or customize your own.
Style: Select your preferred color theme (e.g., "TI Fusion").
Colors (When Not Using a Theme): Customize primary, secondary, and background colors for your own non-theme styling.
Gradient Coloring: Enable or disable gradient shading of the profile for visual enhancement of zones with high control and low control.
Action Zones: Turn trading action zones on or off to highlight key trading levels.
Time Staggering: Enabling this option will simply ‘stagger’ the display of action zones horizontally. Zones closer to price will be placed leftwards, and as they become more distant from price, they will be ‘staggered out’ rightwards, to give an intuitive feel for the time it may take for price to reach these zones.
Tier Labels: Enable or disable the ‘tier labels’ (1 square for Tier 1, 2 squares for Tier 2) for action zones.
Bias Blocks: Toggle the display of grouped buy/sell bias blocks.
Extend: Choose how the bias blocks are displayed: “Left” to stretch them from the end to the beginning of the histogram, “Right” to extend from the end outwards, and “Across” to extend from the beginning to outwards past the end, enveloping the bias and volume count labels.
Opacity: Adjust the transparency level of bias blocks (0–100).
Level Bias Labels: Turn on/off labels for individual price level biases.
Bias Guidelines: Enable the visual guidelines for bias levels which border the profile.
Volume Counts: Toggle volume count labels for each of the profile’s price levels.
Split Buy/Sell Volume: Enable separate display of buy and sell volume for each level (buy volume on the left, sell volume on the right).
Font Size: Adjust the font size for these labels.
Histogram Display: Choose the display option for the histogram bars of the profile themselves: "Full View" will display the profile, and “None” will hide it.
BG Shading Logic: Adjust the background shading logic for the display: “Neutral” will use the ‘Neutral Color’ from your color theme to put some emphasis around high and low volume nodes, while “None” will remove any background shading.
Detail: This option allows you to set the granularity of the volume data used: “Bar Data” will simply use the bar data from the chart timeframe, while “Intrabar Data” will attempt to use bar data from a lower timeframe. Please note that using intrabar data may not be available with your TradingView subscription on some timeframes, and also that using intrabar data may increase calculation time.
Data Request: Choose the lookback for the volume distribution: "Long-term" will look back 500 bars, and “Short-Term” will halve this.
# of Levels: Specify the number of levels/rows to display for visualizing the distribution.
IQ Zones [TradingIQ]Hey Traders!
Introducing "IQ Zones".
"IQ Zones" is an indicator that combines support and resistance identification with volume, the "value area" of a candlestick to be exact. IQ Zones identifies turning points in the market; however, the candlestick high or low that formed the key turning point is not necessarily distinguished as the support/resistance area. Instead, the script looks into the bar at lower timeframes and calculates the value area of the candlestick that formed the support or resistance level. Therefore, any lines protruding from a candlestick reflect the value area of that candlestick. These levels (value area high and value area low) are marked on the candlestick as a support/resistance level. If the level formed on high volume it's marked as an "IQ Zone".
Additionally, IQ Zones presents a heat map to show volume intensity at nearby price areas. The heatmap is a product of the Volume Profile (IQ Profile) located on the right of the chart.
The IQ Profile is a segmented volume profile. Recent price is split into fifths (customizable), and individual volume profiles are calculated for all segmented price areas. Price is split into more than one segment to avoid a situation where volume in a ranging price zone far surpasses all other recent price areas - creating an "unusable" volume profile that doesn't offer helpful insights. If desired, you can set the segmenting option to "1" to calculate one unified volume profile for the entire price range.
The image above shows IQ Zones in action!
Core Features of IQ Zones
Value Area Support and Resistance Levels
Segmented volume profile for the recent trading period
Volume intensity heatmap
Support and resistance levels in high volume intensity may be more significant as price stoppers
The image above explains the labels marked along the y-axis of the IQ Profile.
The "more green" a price area/label is, the higher the volume intensity at the marked support/resistance area.
The image above further explains line lines protruding from the IQ Profile.
For this example, the value area of the candlestick (where most trading action occurred) is quite far from the high price of the candlestick that formed a resistance level! Using the value area of a candlestick that marks a key turning point to draw support/resistance offers insight into where the majority of trading action took place when the support/resistance level was forming!
Additionally, you can hover your mouse over the IQ Zone labels (triangles pointing up or down) to see the prices of the value area for the support/resistance level, including the total buying volume and total selling volume at the price area!
The image above further explains the IQ Profile!
You can segment the recent price area anywhere from 1 - 15 times.
The image above further explains IQ Zones and the IQ Profile!
That will be all for this indicator - a fun project to share with the community.
Thank you!
TradingIQ - OrderFlow IQIntroducing “OrderFlow IQ”
OrderFlow IQ is an all-in-one order-flow and volume-profiling suite crafted to bring true market microstructure to your TradingView charts. It bundles footprints, per-bar and intra-bar delta analytics, class-based delta tracking, adaptive volume profiles, bubble-style trade tapes, live time-and-sales feeds, cumulative-volume fight meters, iceberg detection, and more—all driven by a single, user-friendly interface.
Features
The list below details an ever=expanding list of the indicators capabilities; more to come in the future!
Tick-based Footprints
Imbalance and stacked imbalance detection
Tick-based chronicled volume profile
Delta classification (small order, medium order, and block order delta)
Tick-based order flow bubble tape
Live order feed with total buying volume against total selling volume
Tick-based CVD
Iceberg order detection
Delta class lines
Tick-based bar statistics
Key Components and Their Functions
Data Granularity
• 1-Tick / 1-Second / 1-Minute modes let you choose the resolution of every calculation. On true tick charts you get genuine tick-by-tick precision; on second charts you see every intra-second print; on anything else it falls back to minute bars.
Footprint Engine
Bid vs Ask Volume Columns – Each candle is sliced into tick-level price rows showing buy-volume, sell-volume, total volume, delta and delta%.
CVD-Level Columns – Optionally color each row by net cumulative delta instead of raw volume to spotlight buying or selling pressure trends.
Imbalance Detection – Highlight rows where one side exceeds your % threshold, with “stacked” imbalances calling out multi-row alignment ahead of potential breaks.
Value Area & POC – Automatically compute and draw the 70% value area (VAH/VAL) and mark the Point of Control per session or any chosen timeframe.
Footprint
The image above shows the volume profiling data calculated for each row across the footprint engine.
Delta: Shows the net difference between buying and selling
Delta Percentage: Calculates delta as a percentage of total volume
Total Volume: The total volume at the price block
Buy Volume: The total buying volume at the price block
Sell Volume: The total selling volume at the price block
Additionally, you can select to only show buying volume and selling volume at each price block, as shown in the image above.
POC
The image above shows the visuals used to mark the POC of the footprint. The POC is marked yellow by default; the color can be changed in the settings.
Value Area
The image above shows the visuals used to mark the value area of the footprint.
Imbalance Detection
The image above shows the Footprint Engine detecting and marking buying/selling imbalances.
Stacked Imbalances
The image above shows the Footprint Engine detecting and marking stacked imbalances. Stacked imbalances are shown as consecutive, small blocks to the right of the footprint.
CVD Levels
The image above shows the footprint engine calculating CVD across the footprint, rather than net delta that resets bar by bar. Traders can enable the "Use CVD Levels" setting to have net delta persist across price bars, allowing traders to see the net CVD across various price blocks as the footprint develops.
Delta Class Statistics
With the inclusion of tick volume, The Delta Class Statistics component of the indicator classifies volume delta by order size to give traders detailed insights into whether small players are buying/selling and whether big players are buying/selling.
The image above shows a full view of the Delta Class Statistics feature.
The image above further explains the Delta Class Statistics view.
Orders are distributed (classified) across various order size amounts. From here, a rolling CVD is calculated across each order size. This feature gives traders detailed insights into whether big money is buying/selling (big player sentiment) and whether small money is buying/selling (small player sentiment).
Analysis
The image above shows a net-negative CVD for the session for both small orders (small money) and big orders (big money), while "medium" sized orders are currently at a net-positive CVD.
Consequently, sentiment for big players is bearish.
Additionally, small triangles are printed alongside each Delta Class box for each bar. You can hover over these labels with your cursor to see the net delta for the bar for each order size.
Bar Delta Statistics
With the inclusion of tick data, OrderFlow IQ is designed to generate detailed tick-based bar statistics for each candlestick.
The image above shows the feature in action.
Metrics
Volume: Total volume for the bar
Bar VWAP: The individual bar's VWAP
Delta: Net delta for the bar
Delta %: Delta % of the bar
Max Delta: The maximum positive delta achieved during the bar
Min Delta: The lowest negative delta achieved during the bar
CVD: Cumulative volume delta measurement by the bar
Buy Volume: Total buying volume for the bar
Sell Volume: Total selling volume for the bar
Iceberg Detection (Tick-Data Only)
An Iceberg Order is a type of large trading order that is broken up into much smaller visible portions. Only a small part of the order is displayed in the public order book at any given time, while the rest is hidden (like an iceberg where only the tip is above water).
Why are Iceberg Orders Important?
Minimizing Market Impact
If a trader were to post a 10,000-share sell order openly, the market would immediately react:
Buyers might panic, thinking there's a rush to sell.
Sellers could undercut the price aggressively.
This would likely drive the price down before the large order even finishes executing.
By revealing only a small portion at a time, Iceberg orders help avoid spooking the market and allow the trader to sell closer to the original price.
Hiding Trading Intentions
Markets are highly sensitive to order flow — the balance of buying and selling pressure.
If competitors, market makers, or algorithmic traders see a massive order, they might:
Front-run it (selling before it completes to profit from the expected price drop).
Reassess their own models about supply/demand imbalances.
Iceberg orders protect against this by masking true supply or demand.
Our Iceberg Detection Model
Using a proprietary iceberg order detection algorithm, OrderFlow IQ is capable of detecting/alerting iceberg orders when they occur.
The image above shows the Iceberg Detector in action.
When an iceberg order is identified, the size of the order in the quote currency, price of execution, and number of executions will be displayed.
It's important to set alerts for this feature, as iceberg orders aren't frequent and are easy to miss when away from the chart.
IQ Volume Profile (Chronicled Volume Profile)
OrderFlow IQ generates a Chronicled Volume Profile to give traders detailed insights into net delta by price level, but also historical net delta by price level.
The image above shows the feature in action. While the chronicled volume profile is seemingly a normal volume profile, the narrow-lines across the chronicle profile show historical min/max delta at each price level.
The image above exemplifies the feature.
The wide price blocks show the current net delta at each price area, while the small lines (with a circle at the end) show historical min/max delta at the price level.
This tool allows traders to see if buying/selling always dominated a price level, or if control of the price level changed hands between buyers/sellers throughout development of the profile.
Additionally, traders can hover over the small circles on the profile with their cursor to see the detailed delta statistics at each price area. The statistics will show the minimum delta at the price area, maximum delta, and the live change in delta.
Order Feed
OrderFlow IQ is capable of generating a live order feed with various metrics to assist real time orderflow traders in their analysis.
The image above exemplifies the feature.
Bid/Ask: The bid price and ask price of the current bar
Buys | Price: The size of a buy order and price of execution
Sells | Price: The size of a sell order and price of execution
▴ Vol: Cumulative buying volume (in quote currency) for the feed
▾ Vol: Cumulative selling volume (in quote currency) for the feed
Speed of tape: The average speed between each order fill
OrderFlow Bubble Tape
OrderFlow IQ also displays a traditional orderflow indicator, also known as OrderFlow Bubble Tape.
The image above shows the feature in action.
Orderflow Bubble Tape is a visual tool that shows recent market trades ("tape") as bubbles, where each bubble represents a trade.
The size of each bubble indicates the trade size (volume), and the color shows whether the trade was a buy (aggressive at the ask) or sell (aggressive at the bid).
Instead of showing trades as plain text (like a traditional tape), the bubble format makes it easier to spot bursts of aggressive buying or selling visually.
Clusters of large, fast bubbles in one color suggest momentum or imbalances in order flow, often signaling short-term price pressure.
Traders use Bubble Tape to quickly read supply/demand dynamics, identify hidden buyers/sellers (like iceberg orders), and anticipate short-term price moves.
Blue Bubble = Buy
Red Bubble = Sell
The larger the bubble, the larger the order. Traders can hover over each bubble with their cursor to see the exact size of the order.
Delta Class Lines
OrderFlow IQ shows Live Delta Class Lines grouped by order size buckets:
The blue line shows delta coming only from very large orders (100K–10B in size).
The red line shows delta coming from medium-large orders (50K–100K size).
The green line shows delta from small to medium orders (0–50K size).
Each line is the cumulative net delta for its class — meaning it is adding the buy and sell imbalances only from trades of that size class, live as trades occur.
For example, when a 30K-sized aggressive buy hits, it adds to the green line; if a 70K-sized sell hits, it subtracts from the red line.
The number next to each label is the current net delta value for that class, telling you whether buyers or sellers are dominating at that order size.
• Three Custom Dollar Brackets – Define “small,” “mid,” and “block” trade-size ranges (e.g., 0–50 K, 50 K–100 K, > 100 K).
• Live Streaming Lines – While a bar is forming, watch real-time totals for each bracket plotted as vertical columns or stair-step lines on the chart edge.
CVD
OrderFlow IQ also displays CVD as either candles or a line.
The image above shows the candles visualization for CVD. CVD can be calculated using tick data, 1-second bars, or 1-minute bars. The higher the granularity the more accurate the measurement.
More Features To Come
New features and calculations will be added to OrderFlow IQ based on community feedback, so feel free to share any requests you might have!
Summary
OrderFlow IQ brings a full suite of order-flow analytics into one Pine Script: footprints, delta analytics, dollar-bracket classes, adaptive profiles, bubble tapes, live feeds, CVD meters, and iceberg scans. Its unified Data Granularity switch and Preset System let you toggle entire dashboards with a click—scalpers, intraday traders, and long-term analysts alike can dial in the exact microstructure view they need without switching scripts. Publish once, share your preset layouts, and your TradingView community gains plug-and-play access to professional-grade order-flow tools—no extra installations or feeds required.
สคริปต์แบบชำระเงิน
Liquidity Sweep Filter Strategy [AlgoAlpha X PineIndicators]This strategy is based on the Liquidity Sweep Filter developed by AlgoAlpha. Full credit for the concept and original indicator goes to AlgoAlpha.
The Liquidity Sweep Filter Strategy is a non-repainting trading system designed to identify liquidity sweeps, trend shifts, and high-impact price levels. It incorporates volume-based liquidation analysis, trend confirmation, and dynamic support/resistance detection to optimize trade entries and exits.
This strategy helps traders:
Detect liquidity sweeps where major market participants trigger stop losses and liquidations.
Identify trend shifts using a volatility-based moving average system.
Analyze volume distribution with a built-in volume profile visualization.
Filter noise by differentiating between major and minor liquidity sweeps.
How the Liquidity Sweep Filter Strategy Works
1. Trend Detection Using Volatility-Based Filtering
The strategy applies a volatility-adjusted moving average system to determine trend direction:
A central trend line is calculated using an EMA smoothed over a user-defined length.
Upper and lower deviation bands are created based on the average price deviation over multiple periods.
If price closes above the upper band, the strategy signals an uptrend.
If price closes below the lower band, the strategy signals a downtrend.
This approach ensures that trend shifts are confirmed only when price significantly moves beyond normal market fluctuations.
2. Liquidity Sweep Detection
Liquidity sweeps occur when price temporarily breaks key levels, triggering stop-loss liquidations or margin call events. The strategy tracks swing highs and lows, marking potential liquidity grabs:
Bearish Liquidity Sweeps – Price breaks a recent high, then reverses downward.
Bullish Liquidity Sweeps – Price breaks a recent low, then reverses upward.
Volume Integration – The strategy analyzes trading volume at each sweep to differentiate between major and minor sweeps.
Key levels where liquidity sweeps occur are plotted as color-coded horizontal lines:
Red lines indicate bearish liquidity sweeps.
Green lines indicate bullish liquidity sweeps.
Labels are displayed at each sweep, showing the volume of liquidated positions at that level.
3. Volume Profile Analysis
The strategy includes an optional volume profile visualization, displaying how trading volume is distributed across different price levels.
Features of the volume profile:
Point of Control (POC) – The price level with the highest traded volume is marked as a key area of interest.
Bounding Box – The profile is enclosed within a transparent box, helping traders visualize the price range of high trading activity.
Customizable Resolution & Scale – Traders can adjust the granularity of the profile to match their preferred time frame.
The volume profile helps identify zones of strong support and resistance, making it easier to anticipate price reactions at key levels.
Trade Entry & Exit Conditions
The strategy allows traders to configure trade direction:
Long Only – Only takes long trades.
Short Only – Only takes short trades.
Long & Short – Trades in both directions.
Entry Conditions
Long Entry:
A bullish trend shift is confirmed.
A bullish liquidity sweep occurs (price sweeps below a key level and reverses).
The trade direction setting allows long trades.
Short Entry:
A bearish trend shift is confirmed.
A bearish liquidity sweep occurs (price sweeps above a key level and reverses).
The trade direction setting allows short trades.
Exit Conditions
Closing a Long Position:
A bearish trend shift occurs.
The position is liquidated at a predefined liquidity sweep level.
Closing a Short Position:
A bullish trend shift occurs.
The position is liquidated at a predefined liquidity sweep level.
Customization Options
The strategy offers multiple adjustable settings:
Trade Mode: Choose between Long Only, Short Only, or Long & Short.
Trend Calculation Length & Multiplier: Adjust how trend signals are calculated.
Liquidity Sweep Sensitivity: Customize how aggressively the strategy identifies sweeps.
Volume Profile Display: Enable or disable the volume profile visualization.
Bounding Box & Scaling: Control the size and position of the volume profile.
Color Customization: Adjust colors for bullish and bearish signals.
Considerations & Limitations
Liquidity sweeps do not always result in reversals. Some price sweeps may continue in the same direction.
Works best in volatile markets. In low-volatility environments, liquidity sweeps may be less reliable.
Trend confirmation adds a slight delay. The strategy ensures valid signals, but this may result in slightly later entries.
Large volume imbalances may distort the volume profile. Adjusting the scale settings can help improve visualization.
Conclusion
The Liquidity Sweep Filter Strategy is a volume-integrated trading system that combines liquidity sweeps, trend analysis, and volume profile data to optimize trade execution.
By identifying key price levels where liquidations occur, this strategy provides valuable insight into market behavior, helping traders make better-informed trading decisions.
Key use cases for this strategy:
Liquidity-Based Trading – Capturing moves triggered by stop hunts and liquidations.
Volume Analysis – Using volume profile data to confirm high-activity price zones.
Trend Following – Entering trades based on confirmed trend shifts.
Support & Resistance Trading – Using liquidity sweep levels as dynamic price zones.
This strategy is fully customizable, allowing traders to adapt it to different market conditions, timeframes, and risk preferences.
Full credit for the original concept and indicator goes to AlgoAlpha.
lib_profileLibrary "lib_profile"
a library with functions to calculate a volume profile for either a set of candles within the current chart, or a single candle from its lower timeframe security data. All you need is to feed the
method delete(this)
deletes this bucket's plot from the chart
Namespace types: Bucket
Parameters:
this (Bucket)
method delete(this)
Namespace types: Profile
Parameters:
this (Profile)
method delete(this)
Namespace types: Bucket
Parameters:
this (Bucket )
method delete(this)
Namespace types: Profile
Parameters:
this (Profile )
method update(this, top, bottom, value, fraction)
updates this bucket's data
Namespace types: Bucket
Parameters:
this (Bucket)
top (float)
bottom (float)
value (float)
fraction (float)
method update(this, tops, bottoms, values)
update this Profile's data (recalculates the whole profile and applies the result to this object) TODO optimisation to calculate this incremental to improve performance in realtime on high resolution
Namespace types: Profile
Parameters:
this (Profile)
tops (float ) : array of range top/high values (either from ltf or chart candles using history() function
bottoms (float ) : array of range bottom/low values (either from ltf or chart candles using history() function
values (float ) : array of range volume/1 values (either from ltf or chart candles using history() function (1s can be used for analysing candles in bucket/price range over time)
method tostring(this)
allows debug print of a bucket
Namespace types: Bucket
Parameters:
this (Bucket)
method draw(this, start_t, start_i, end_t, end_i, args, line_color)
allows drawing a line in a Profile, representing this bucket and it's value + it's value's fraction of the Profile total value
Namespace types: Bucket
Parameters:
this (Bucket)
start_t (int) : the time x coordinate of the line's left end (depends on the Profile box)
start_i (int) : the bar_index x coordinate of the line's left end (depends on the Profile box)
end_t (int) : the time x coordinate of the line's right end (depends on the Profile box)
end_i (int) : the bar_index x coordinate of the line's right end (depends on the Profile box)
args (LineArgs type from robbatt/lib_plot_objects/24) : the default arguments for the line style
line_color (color) : the color override for POC/VAH/VAL lines
method draw(this, forced_width)
draw all components of this Profile (Box, Background, Bucket lines, POC/VAH/VAL overlay levels and labels)
Namespace types: Profile
Parameters:
this (Profile)
forced_width (int) : allows to force width of the Profile Box, overrides the ProfileArgs.default_size and ProfileArgs.extend arguments (default: na)
method init(this)
Namespace types: ProfileArgs
Parameters:
this (ProfileArgs)
method init(this)
Namespace types: Profile
Parameters:
this (Profile)
profile(tops, bottoms, values, resolution, vah_pc, val_pc, bucket_buffer)
split a chart/parent bar into 'resolution' sections, figure out in which section the most volume/time was spent, by analysing a given set of (intra)bars' top/bottom/volume values. Then return price center of the bin with the highest volume, essentially marking the point of control / highest volume (poc) in the chart/parent bar.
Parameters:
tops (float ) : array of range top/high values (either from ltf or chart candles using history() function
bottoms (float ) : array of range bottom/low values (either from ltf or chart candles using history() function
values (float ) : array of range volume/1 values (either from ltf or chart candles using history() function (1s can be used for analysing candles in bucket/price range over time)
resolution (int) : amount of buckets/price ranges to sort the candle data into (analyse how much volume / time was spent in a certain bucket/price range) (default: 25)
vah_pc (float) : a threshold percentage (of values' total) for the top end of the value area (default: 80)
val_pc (float) : a threshold percentage (of values' total) for the bottom end of the value area (default: 20)
bucket_buffer (Bucket ) : optional buffer of empty Buckets to fill, if omitted a new one is created and returned. The buffer length must match the resolution
Returns: poc (price level), vah (price level), val (price level), poc_index (idx in buckets), vah_index (idx in buckets), val_index (idx in buckets), buckets (filled buffer or new)
create_profile(start_idx, tops, bottoms, values, resolution, vah_pc, val_pc, args)
split a chart/parent bar into 'resolution' sections, figure out in which section the most volume/time was spent, by analysing a given set of (intra)bars' top/bottom/volume values. Then return price center of the bin with the highest volume, essentially marking the point of control / highest volume (poc) in the chart/parent bar.
Parameters:
start_idx (int) : the bar_index at which the Profile should start drawing
tops (float ) : array of range top/high values (either from ltf or chart candles using history() function
bottoms (float ) : array of range bottom/low values (either from ltf or chart candles using history() function
values (float ) : array of range volume/1 values (either from ltf or chart candles using history() function (1s can be used for analysing candles in bucket/price range over time)
resolution (int) : amount of buckets/price ranges to sort the candle data into (analyse how much volume / time was spent in a certain bucket/price range) (default: 25)
vah_pc (float) : a threshold percentage (of values' total) for the top end of the value area (default: 80)
val_pc (float) : a threshold percentage (of values' total) for the bottom end of the value area (default: 20)
args (ProfileArgs)
Returns: poc (price level), vah (price level), val (price level), poc_index (idx in buckets), vah_index (idx in buckets), val_index (idx in buckets), buckets (filled buffer or new)
history(src, len, offset)
allows fetching an array of values from the history series with offset from current candle
Parameters:
src (int)
len (int)
offset (int)
history(src, len, offset)
allows fetching an array of values from the history series with offset from current candle
Parameters:
src (float)
len (int)
offset (int)
history(src, len, offset)
allows fetching an array of values from the history series with offset from current candle
Parameters:
src (bool)
len (int)
offset (int)
history(src, len, offset)
allows fetching an array of values from the history series with offset from current candle
Parameters:
src (string)
len (int)
offset (int)
Bucket
Fields:
idx (series int) : the index of this Bucket within the Profile starting with 0 for the lowest Bucket at the bottom of the Profile
value (series float) : the value of this Bucket, can be volume or time, for using time pass and array of 1s to the update function
top (series float) : the top of this Bucket's price range (for calculation)
btm (series float) : the bottom of this Bucket's price range (for calculation)
center (series float) : the center of this Bucket's price range (for plotting)
fraction (series float) : the fraction this Bucket's value is compared to the total of the Profile
plot_bucket_line (Line type from robbatt/lib_plot_objects/24) : the line that resembles this bucket and it's valeu in the Profile
ProfileArgs
Fields:
show_poc (series bool) : whether to plot a POC line across the Profile Box (default: true)
show_profile (series bool) : whether to plot a line for each Bucket in the Profile Box, indicating the value per Bucket (Price range), e.g. volume that occured in a certain time and price range (default: false)
show_va (series bool) : whether to plot a VAH/VAL line across the Profile Box (default: false)
show_va_fill (series bool) : whether to fill the 'value' area between VAH/VAL line (default: false)
show_background (series bool) : whether to fill the Profile Box with a background color (default: false)
show_labels (series bool) : whether to add labels to the right end of the POC/VAH/VAL line (default: false)
show_price_levels (series bool) : whether add price values to the labels to the right end of the POC/VAH/VAL line (default: false)
extend (series bool) : whether extend the Profile Box to the current candle (default: false)
default_size (series int) : the default min. width of the Profile Box (default: 30)
args_poc_line (LineArgs type from robbatt/lib_plot_objects/24) : arguments for the poc line plot
args_va_line (LineArgs type from robbatt/lib_plot_objects/24) : arguments for the va line plot
args_poc_label (LabelArgs type from robbatt/lib_plot_objects/24) : arguments for the poc label plot
args_va_label (LabelArgs type from robbatt/lib_plot_objects/24) : arguments for the va label plot
args_profile_line (LineArgs type from robbatt/lib_plot_objects/24) : arguments for the Bucket line plots
args_profile_bg (BoxArgs type from robbatt/lib_plot_objects/24)
va_fill_color (series color) : color for the va area fill plot
Profile
Fields:
start (series int) : left x coordinate for the Profile Box
end (series int) : right x coordinate for the Profile Box
resolution (series int) : the amount of buckets/price ranges the Profile will dissect the data into
vah_threshold_pc (series float) : the percentage of the total data value to mark the upper threshold for the main value area
val_threshold_pc (series float) : the percentage of the total data value to mark the lower threshold for the main value area
args (ProfileArgs) : the style arguments for the Profile Box
h (series float) : the highest price of the data
l (series float) : the lowest price of the data
total (series float) : the total data value (e.g. volume of all candles, or just one each to analyse candle distribution over time)
buckets (Bucket ) : the Bucket objects holding the data for each price range bucket
poc_bucket_index (series int) : the Bucket index in buckets, that holds the poc Bucket
vah_bucket_index (series int) : the Bucket index in buckets, that holds the vah Bucket
val_bucket_index (series int) : the Bucket index in buckets, that holds the val Bucket
poc (series float) : the according price level marking the Point Of Control
vah (series float) : the according price level marking the Value Area High
val (series float) : the according price level marking the Value Area Low
plot_poc (Line type from robbatt/lib_plot_objects/24)
plot_vah (Line type from robbatt/lib_plot_objects/24)
plot_val (Line type from robbatt/lib_plot_objects/24)
plot_poc_label (Label type from robbatt/lib_plot_objects/24)
plot_vah_label (Label type from robbatt/lib_plot_objects/24)
plot_val_label (Label type from robbatt/lib_plot_objects/24)
plot_va_fill (LineFill type from robbatt/lib_plot_objects/24)
plot_profile_bg (Box type from robbatt/lib_plot_objects/24)
PoC Migration Map [BackQuant]PoC Migration Map
A volume structure tool that builds a side volume profile, extracts rolling Points of Control (PoCs), and maps how those PoCs migrate through time so you can see where value is moving, how volume clusters shift, and how that aligns with trend regime.
What this is
This indicator combines a classic volume profile with a segmented PoC trail. It looks back over a configurable window, splits that window into bins by price, and shows you where volume has concentrated. On top of that, it slices the lookback into fixed bar segments, finds the local PoC in each segment, and plots those PoCs as a chain of nodes across the chart.
The result is a "migration map" of value:
A side volume profile that shows how volume is distributed over the recent price range.
A sequence of PoC nodes that show where local value has been accepted over time.
Lines that connect those PoCs to reveal the path of value migration.
Optional trend coloring based on EMA 12 and EMA 21, so each PoC also encodes trend regime.
Used together, this gives you a structural read on where the market has actually traded size, how "value" is moving, and whether that movement is aligned or fighting the current trend.
Core components
Lookback volume profile - a side histogram built from all closes and volumes in the chosen lookback window.
Segmented PoC trail - rolling PoCs computed over fixed bar segments, plotted as nodes in time.
Trend heatmap - optional color mapping of PoC nodes using EMA 12 versus EMA 21.
PoC labels - optional labels on every Nth PoC for easier reading and referencing.
How it works
1) Global lookback and binning
You choose:
Lookback Bars - how far back to collect data.
Number of Bins - how finely to split the price range.
The script:
Finds the highest high and lowest low in the lookback.
Computes the total price range and divides it into equal binCount slices.
Assigns each bar's close and volume into the appropriate price bin.
This creates a discretized volume distribution across the entire lookback.
2) Side volume profile
If "Show Side Profile" is enabled, a right-hand volume profile is drawn:
Each bin becomes a horizontal bar anchored at a configurable "Right Offset" from the current bar.
The horizontal width of each bar is proportional to that bin's volume relative to the maximum volume bin.
Optionally, volume values and percentages are printed inside the profile bars.
Color and transparency are controlled by:
Base Profile Color and its transparency.
A gradient that uses relative volume to modulate opacity between lower volume and higher volume bins.
Profile Width (%) - how wide the maximum bin can extend in bars.
This gives you an at-a-glance view of the volume landscape for the chosen lookback window.
3) Segmenting for PoC migration
To build the PoC trail, the lookback is divided into segments:
Bars per Segment - bars in each local cluster.
Number of Segments - how many segments you want to see back in time.
For each segment:
The script uses the same price bins and accumulates volume only from bars in that segment.
It finds the bin with the highest volume in that segment, which is the local PoC for that segment.
It sets the PoC price to the center of that bin.
It finds the "mid bar" of the segment and places the PoC node at that time on the chart.
This is repeated for each segment from older to newer, so you get a chain of PoCs that shows how local value has migrated over time.
4) Trend regime and color coding
The indicator precomputes:
EMA 12 (Fast).
EMA 21 (Slow).
For each PoC:
It samples EMA 12 and EMA 21 at the mid bar of that segment.
It computes a simple trend score as fast EMA minus slow EMA.
If trend heatmap is enabled, PoC nodes (and the lines between them) are colored by:
Trend Up Color if EMA 12 is above EMA 21.
Trend Down Color if EMA 12 is below EMA 21.
Trend Flat Color if they are roughly equal.
If the trend heatmap is disabled, PoC color is instead based on PoC migration:
If the current PoC is above the previous PoC, use the Up PoC Color.
If the current PoC is below the previous PoC, use the Down PoC Color.
If unchanged, use the Flat PoC Color.
5) Connecting PoCs and labels
Once PoC prices and times are known:
Each PoC is connected to the previous one with a dotted line, using the PoC's color.
Optional labels are placed next to every Nth PoC:
Label text uses a simple "PoC N" scheme.
Label background uses a configurable label background color.
Label border is colored by the PoC's own color for visual consistency.
This turns the PoCs into a visual path that can be read like a "value trajectory" across the chart.
What it plots
When fully enabled, you will see:
A right-sided volume profile for the chosen lookback window, built from volume by price.
Colored horizontal bars representing each price bin's relative volume.
Optional volume text showing each bin's volume and its percentage of the profile maximum.
A series of PoC nodes spaced across the chart at the mid point of each segment.
Dotted lines connecting those PoCs to show the migration path of value.
Optional PoC labels at each Nth node for easier reference.
Color-coding of PoCs and lines either by EMA 12 / 21 trend regime or by up/down PoC drift.
Reading PoC migration and market pressure
Side profile as a pressure map
The side profile shows where trading has been most active:
Thick, opaque bars represent high volume zones and possible high interest or acceptance areas.
Thin, faint bars represent low volume zones, potential rejection or transition areas.
When price trades near a high volume bin, the market is sitting on an area of prior acceptance and size.
When price moves quickly through low volume bins, it often does so with less friction.
This gives you a static map of where the market has been willing to do business within your lookback.
PoC trail as a value migration map
The PoC chain represents "where value has lived" over time:
An upward sloping PoC trail indicates value migrating higher. Buyers have been willing to transact at increasingly higher prices.
A downward sloping trail indicates value migrating lower and sellers pushing the center of mass down.
A flat or oscillating trail indicates balance or rotational behaviour, with no clear directional acceptance.
Taken together, you can interpret:
Side profile as "where the volume mass sits", a static pressure field.
PoC trail as "how that mass has moved", the dynamic path of value.
Trend heatmap as a regime overlay
When PoCs are colored by the EMA 12 / 21 spread:
Green PoCs mark segments where the faster EMA is above the slower EMA, that is, a local uptrend regime.
Red PoCs mark segments where the faster EMA is below the slower EMA, that is, a local downtrend regime.
Gray PoCs mark flat or ambiguous trend segments.
This lets you answer questions like:
"Is value migrating higher while the trend regime is also up?" (trend confirming value).
"Is value migrating higher but most PoCs are red?" (value against the prevailing trend).
"Has value started to roll over just as PoCs flip from green to red?" (early regime transition).
Key settings
General Settings
Lookback Bars - how many bars back to use for both the global volume profile and segment profiles.
Number of Bins - how many price bins to split the high to low range into.
Profile Settings
Show Side Profile - toggle the right-hand volume profile on or off.
Profile Width (%) - how wide the largest volume bar is allowed to be in terms of bars.
Base Profile Color - the starting color for profile bars, with transparency.
Show Volume Values - if enabled, print volume and percent for each non-zero bin.
Profile Text Color - color for volume text inside the profile.
PoC Migration Settings
Show PoC Migration - toggle the PoC trail plotting.
Bars per Segment - the number of bars contained in each segment.
Number of Segments - how many segments to build backwards from the current bar.
Horizontal Spacing (bars) - spacing between PoC nodes when drawn. (Used to separate PoCs horizontally.)
Label Every Nth PoC - draw labels at every Nth PoC (0 or 1 to suppress labels).
Right Offset (bars) - horizontal offset to anchor the side profile on the right.
Up PoC Color - color used when a PoC is higher than the previous one, if trend heatmap is off.
Down PoC Color - color used when a PoC is lower than the previous one, if trend heatmap is off.
Flat PoC Color - color used when the PoC is unchanged, if trend heatmap is off.
PoC Label Background - background color for PoC labels.
Trend Heatmap Settings
Color PoCs By Trend (EMA 12 / 21) - when enabled, overrides simple up/down coloring and uses EMA-based trend colors.
Fast EMA - length for the fast EMA.
Slow EMA - length for the slow EMA.
Trend Up Color - color for PoCs in a bullish EMA regime.
Trend Down Color - color for PoCs in a bearish EMA regime.
Trend Flat Color - color for neutral or flat EMA regimes.
Trading applications
1) Value migration and trend confirmation
Use the PoC path to see if value is following price or lagging it:
In a healthy uptrend, price, PoCs, and trend regime should all lean higher.
In a weakening trend, price may still move up, but PoCs flatten or start drifting lower, suggesting fewer participants are accepting the new highs.
In a downtrend, persistent downward PoC migration confirms that sellers are winning the value battle.
2) Identifying acceptance and rejection zones
Combine the side profile with PoC locations:
High volume bins near clustered PoCs mark strong acceptance zones, good areas to watch for re-tests and decision points.
PoCs that quickly jump across low volume areas can indicate rejection and fast repricing between value zones.
High volume zones with mixed PoC colors may signal balance or prolonged negotiation.
3) Structuring entries and exits
Use the map to refine trade location:
Fade trades against value migration are higher risk unless you see clear signs of exhaustion or regime change.
Pullbacks into prior PoC zones in the direction of the current PoC slope can offer higher quality entries.
Stops placed beyond major accepted zones (clusters of PoCs and high volume bins) are less likely to be hit by random noise.
4) Regime transitions
Watch how PoCs behave as the EMA regime changes:
A flip in EMA 12 versus EMA 21, coupled with a turn in PoC slope, is a strong signal that value is beginning to move with the new trend.
If EMAs flip but PoC migration does not follow, the trend signal may be early or false.
A weakening PoC path (lower highs in PoCs) while trend colors are still green can warn of a late-stage trend.
Best practices
Start with a moderate lookback such as 200 to 300 bars and a moderate bin count such as 20 to 40. Too many bins can make the profile overly granular and sparse.
Align "Bars per Segment" with your trading horizon. For example, 5 to 10 bars for intraday, 10 to 20 bars for swing.
Use the profile and PoC trail as structural context rather than as a direct buy or sell signal. Combine with your existing setups for timing.
Pay attention to clusters of PoCs at similar prices. Those are areas where the market has repeatedly accepted value, and they often matter on future tests.
Notes
This is a structural volume tool, not a complete trading system. It does not manage execution, position sizing or risk management. Use it to understand:
Where the bulk of trading has occurred in your chosen window.
How the center of volume has migrated over time.
Whether that migration is aligned with or fighting the current trend regime.
By turning PoC evolution into a visible path and adding a trend-aware heatmap, the PoC Migration Map makes it easier to see how value has been moving, where the market is likely to feel "heavy" or "light", and how that structure fits into your trading decisions.
Rolling Point of Control (POC) [AlgoAlpha]Enhance your trading decisions with the Rolling Point of Control (POC) Indicator designed by AlgoAlpha! This powerful tool displays a dynamic Point of Control based on volume or price profiles directly on your chart, providing a vivid depiction of dominant price levels according to historical data. 🌟📈
🚀 Key Features:
Profile Type Selection: Choose between Volume Profile and Price Profile to best suit your analysis needs.
Adjustable Lookback Period: Modify the lookback period to consider more or less historical data for your profile.
Customizable Resolution and Scale: Tailor the resolution and horizontal scale of the profile for precision and clarity.
Trend Analysis Tools: Enable trend analysis with the option to display a weighted moving average of the POC.
Color-Coded Feedback: Utilize color gradients to quickly identify bullish and bearish conditions relative to the POC.
Interactive Visuals: Dynamic rendering of profiles and alerts for crossing events enhances visual feedback and responsiveness.
Multiple Customization Options: Smooth the POC line, toggle profile and fill visibility, and choose custom colors for various elements.
🖥️ How to Use:
🛠 Add the Indicator:
Add the indicator to favorites and customize settings like profile type, lookback period, and resolution to fit your trading style.
📊 Market Analysis:
Monitor the POC line for significant price levels. Use the histogram to understand price distributions and locate major market pivots.
🔔 Alerts Setup:
Enable alerts for price crossing over or under the POC, as well as for trend changes, to stay ahead of market movements without constant chart monitoring.
🛠️ How It Works:
The Rolling POC indicator dynamically calculates the Point of Control either based on volume or price within a user-defined lookback period. It plots a histogram (profile) that highlights the level at which the most trading activity has occurred, helping to identify key support and resistance levels.
Basic Logic Overview:
- Data Compilation: Gathers high, low, and volume (if volume profile selected) data within the lookback period.
- Histogram Calculation: Divides the price range into bins (as specified by resolution), counting hits in each bin to find the most frequented price level.
- POC Identification: The price level with the highest concentration of hits (or volume) is marked as the POC.
- Trend MA (Optional): If enabled, the indicator plots a moving average of the POC for trend analysis.
By integrating the Rolling Point of Control into your charting toolkit, you can significantly enhance your market analysis and potentially increase the accuracy of your trading decisions. Whether you're day trading or looking at longer time frames, this indicator offers a detailed, customizable perspective on market dynamics. 🌍💹
Volume HeatMap With Profile [ChartPrime]The Volume Heatmap with Profile indicator is a tool designed to provide traders with a comprehensive view of market activity through customizable visualizations. This indicator goes beyond traditional volume analysis by offering a range of adjustable parameters and features that enhance analysis of volume and give a cleaner experience when analyzing it.
To get started click the start and end time for the profile.
Key Features:
Extended Calculation: This indicator extends its calculation to the last bar, ensuring that the user has insights into current market dynamics.
Point of Control (POC): Easily identify the price level at which the highest trading activity has occurred, helping the user pinpoint potential reversal points and significant support/resistance zones.
VWAP Point of Control: Display the Volume Weighted Average Price (VWAP) Point of Control, giving the user a clear reference for determining the average price traders are paying and potential price reversals.
Adjustable Colors for Heatmap: Change the heatmap colors to the users preference, allowing the user to match the indicator's appearance to their chart style and personal visual preferences.
Forecasted Zone: This feature allows traders to forecast areas of high activity by providing the option to adjust colors within this zone. This feature assists in identifying potential breakouts or areas where increased trading volume is anticipated.
Volume Profile: Customize the colors of the volume profile to make it distinct and easily distinguishable on the chart.
Adjustable Volume Levels: Specify the number volume levels that are most relevant to your trading strategy.
Adjustable Placement for Volume Profile: Position the volume profile on the chart. Whether the user prefers it on the left, right, or at the center of the chart, this indicator offers placement flexibility.
The ratio of bull vs bear volume is plotted on the outside of the range indicating how bullish or bearish price action is in a given range.
Effort HeatmapThe Effort Heatmap visualizes where meaningful, same-direction volume occurred inside an imbalance during strong directional movement.
Instead of analyzing total bar volume or traditional volume-at-price distributions, this tool reconstructs a simplified internal volume profile using lower-timeframe data.
When a Fair Value Gap forms during a high-volume displacement, the script highlights the portions of the imbalance candle where directional effort was concentrated and projects those regions forward as a heatmap.
The purpose of this indicator is not to predict price or represent institutional activity, but to offer a visual way to study how the market delivered volume inside a move that created an imbalance.
How It Works
1. Lower-Timeframe Volume Extraction
The indicator retrieves open, close, and volume data from a selected lower timeframe.
Only sub-candles that move in the same direction as the previous bar are considered, ensuring the heatmap reflects directional effort—not mixed volume.
2. Candle Body Binning
The FVG candle is divided into multiple horizontal bins.
Each lower-timeframe sub-candle contributes volume proportionally to the bins it overlaps, creating a vertical volume distribution for that bar.
3. Imbalance (FVG) Detection
A simple 3-bar displacement logic detects bullish or bearish imbalances.
An optional Z-Score filter ensures the heatmap only forms when volume is relatively elevated compared to recent history.
4. Heatmap Projection
When a qualifying imbalance occurs:
• The FVG bar’s volume distribution is normalized
• Only areas with relatively elevated volume are displayed
• Colored heatmap boxes are created and extend forward
• These boxes remain until price trades into or through them
This allows traders to observe how price interacts with past zones of concentrated directional effort.
What Makes It Different
Most volume tools focus on fixed session profiles, market-wide volume-at-price calculations, or bar-level volume totals.
The Effort Heatmap instead reconstructs a per-bar vertical volume distribution using lower-timeframe price action and displays it only when displacement occurs.
Rather than treating the candle as a single block of volume, the indicator highlights where inside the candle body volume was delivered while moving in the displacement direction.
This creates a unique visualization of directional effort that conventional profiles, OB/FVG indicators, and classic oscillators do not show.
How to Use It
1. Apply to any timeframe: The indicator works on all chart timeframes, but gains more detail when higher timeframes are used in combination with lower-timeframe volume data.
2. Identify displacement moments: When a bullish or bearish FVG forms with a high volume Z-Score, the heatmap will appear.
3. Observe the heatmap structure:
Each horizontal band represents the relative concentration of same-direction volume inside the previous candle.
4. Watch how price interacts with these zones:
Heatmap areas extend until price touches or trades through them, at which point they stop extending and are finalized.
5. Combine with your own analysis:
These areas can be used to study...
...how past directional volume clusters influence current movement
...structural reactions to zones of prior effort
...which parts of a displacement candle were most active
The indicator is a visual study tool, not a signal generator.
Settings
• Volume Source Timeframe
Chooses the lower timeframe used to reconstruct internal volume. Smaller timeframes give more detail; larger timeframes give smoother profiles.
• Z-Score Lookback
Controls how many bars are used to measure relative volume. Larger values make the volume filter stricter.
• Z-Score Threshold
Minimum relative-volume strength required to draw a heatmap. Higher values show only high-effort moves.
• Volume Filter (%)
Removes weaker bins based on how much volume they contain compared to the strongest one. Higher percentages = fewer but more meaningful zones.
• Bullish / Bearish Colors
Sets the base color for heatmap boxes depending on direction.






















