EVA Ai + POC, Liquidity & Smart Money 1.4.1 EN💎 EVA Ai + POC, Liquidity & Smart Money 1.4.1 PRO EN — SEE WHERE THE MARKET ACCEPTED PRICE
Volume bars below a chart tell you when activity happened. EVA Volume Profile PRO shows where it happened.
The indicator maps traded volume across price, calculates POC and the Value Area, detects HVN/LVN structure, tracks directional volume and builds confirmed BSL/SSL liquidity pools. The result is a clean auction map for traders who use Volume Profile, Smart Money concepts, market structure and liquidity analysis — without flooding the candles with heavy color.
Use it for stocks, crypto and Forex, from scalping and intraday trading to swing analysis. AUTOPILOT adapts the lower timeframe, row density, node thresholds and liquidity-quality filters to the active chart.
This is a market-reading tool, not a LONG/SHORT signal generator. Its job is to show where value sits, where price may accelerate and where confirmed liquidity remains active before you build a trade plan.
━━━━━━━━━━━━━━━━━━━━
⚡ CORE MARKET MAP
• Volume Profile — horizontal volume distribution by price.
• POC — the price row with the highest calculated volume.
• Value Area — the price range containing the selected share of total volume; 70% is the standard target.
• VAH / VAL — upper and lower Value Area boundaries.
• HVN — high-volume acceptance nodes where price may slow, balance or retest.
• LVN — low-volume rejection corridors where price can travel quickly.
• Up / Down Volume — directional volume context classified from lower-timeframe candles.
• Delta — the difference between classified Up Volume and Down Volume across the profile.
• BSL / SSL — confirmed buy-side and sell-side liquidity pools around equal swing highs and lows.
• Liquidity Quality Q — a quality score using relative volume, rejection wick and spacing between confirmations.
• Nearest Targets — closest BSL, SSL, HVN and LVN with ATR distance and live state.
━━━━━━━━━━━━━━━━━━━━
🗺 HOW TO READ THE CHART
START WITH VALUE
Price between VAL and VAH is trading inside accepted value. This is usually a two-sided auction: POC attracts price, HVNs can hold rotation and the center of the profile often produces more noise than its edges.
Holding above VAH signals price discovery above value. Holding below VAL signals price discovery below value. A single breakout is not enough on its own — watch whether the boundary survives a retest and whether directional volume supports the move.
READ THE POC
The bright magenta POC marks the highest-volume price in the selected range. It acts as the profile’s center of gravity.
Price close to POC is usually balanced. Price far from POC may be building a new area of value or preparing a rotation back toward the old one. Context decides which path is active.
READ THE PROFILE SHAPE
Long horizontal rows represent heavier participation. Short rows show low acceptance.
The main histogram uses a restrained neutral palette. A thin neon rail at the profile anchor shows row-level direction: teal for Up Volume dominance, pink for Down Volume dominance. Stronger imbalance produces a brighter rail without recoloring the entire histogram.
HVN — ACCEPTANCE
Blue HVN zones mark local volume peaks. These are areas where the market previously agreed on price. Expect slower movement, consolidation, support/resistance behavior or repeated tests.
An HVN does not disappear after a touch. It represents completed volume structure, not uncollected stops.
LVN — REJECTION AND FAST TRAVEL
Amber LVN zones mark local volume valleys. Price spent less time there, so movement may accelerate through the corridor until it reaches the next HVN, Value Area boundary or active liquidity pool.
LVNs remain part of the calculated profile and update when the selected range changes.
BSL / SSL — CONFIRMED LIQUIDITY
BSL appears above confirmed equal swing highs, where short stops and breakout liquidity can cluster. SSL appears below confirmed equal swing lows, where long stops and sell-side liquidity may sit.
A pool requires at least two comparable confirmed pivots and must pass the adaptive Q filter. The script does not print every high and low as “liquidity.”
Liquidity states:
• FRESH — confirmed and not yet tested.
• TESTED — price entered the zone without completing the full sweep; the zone fades.
• OFF — still calculated but outside the active ATR work radius, so it is hidden from the chart.
• SWEPT — price cleared the far boundary; every drawing for that pool is deleted.
━━━━━━━━━━━━━━━━━━━━
📊 THE CALCULATED DASHBOARD
AUTOPILOT
Shows whether adaptive mode is active and which lower timeframe is selected.
AUCTION
Reports whether price is inside Value Area, above VAH or below VAL.
RANGE / SOURCE
Displays Visible Range, Session HD or Fixed Range and confirms whether calculations use chart candles or lower-timeframe data.
ROWS × STEP
Shows the actual number of profile rows and price increment. You always know the resolution behind the map.
UP / DOWN AND DELTA
Displays directional volume shares and the net profile imbalance.
POC / DIST
Shows POC and the current price distance from it.
NEAREST BSL / SSL
Shows pool price, distance in ATR, Q score and FRESH, TESTED or OFF state.
NEAREST HVN / LVN
Locates the closest acceptance node and fast-travel corridor.
STRUCTURE
Classifies the profile as upper concentration, lower concentration or balanced.
STATUS
Confirms developing mode, closed-bar mode or a safe data fallback.
━━━━━━━━━━━━━━━━━━━━
⚙️ THREE VOLUME PROFILE MODES
VISIBLE RANGE
Calculates only the candles currently visible on the screen. Zoom or scroll and the profile rebuilds around the market structure you are actually studying.
SESSION HD
Creates a separate profile for each selected trading session. Useful for intraday POC, daily Value Area, opening rotations and session-based support/resistance.
FIXED RANGE
Measures one specific impulse, consolidation, breakout leg or accumulation range between two adjustable time markers.
━━━━━━━━━━━━━━━━━━━━
🎯 PRACTICAL READING SCENARIOS
BALANCED AUCTION
Price is inside Value Area and close to POC or an HVN. The market is accepting price. Chasing the middle of the profile offers less structural clarity than waiting for a reaction at VAH, VAL or a nearby liquidity zone.
BULLISH PRICE DISCOVERY
Price holds above VAH, directional volume remains constructive and BSL is active overhead. The bullish auction remains valid while price accepts above value; a return below VAH weakens that read.
BEARISH PRICE DISCOVERY
Price holds below VAL, Down Volume expands and an SSL pool remains below. The bearish auction stays active until price regains the Value Area.
LVN TRAVEL
Price enters an LVN without opposing participation. The low-volume corridor may provide a faster route toward the next HVN, POC, VA boundary or liquidity target.
LIQUIDITY SWEEP
Price clears the far edge of BSL or SSL and the pool disappears. The next question is acceptance or rejection: check candle response, volume, Delta and location relative to VAH/VAL. A sweep alone does not guarantee reversal.
━━━━━━━━━━━━━━━━━━━━
🧠 AUTOPILOT, LOWER TIMEFRAME DATA AND INTEGRITY
AUTOPILOT adjusts lower-timeframe selection, row density, HVN/LVN thresholds, pivot sensitivity, pool width, minimum Q and the visible ATR radius. The developing profile updates as new confirmed microbars arrive.
Lower-timeframe OHLCV improves price allocation inside each chart candle. If the requested intrabar history is unavailable or incomplete, EVA falls back to the complete chart-candle sample rather than silently using a truncated profile.
The script uses the volume supplied by the active symbol’s data feed. On some markets, especially Forex, that may be tick volume. Pine Script cannot access a historical exchange order book or full bid/ask footprint, so EVA does not fabricate either one. The directional rail is an order-flow-style approximation derived from lower-timeframe candle direction.
Confirmed BSL/SSL pools are created from closed pivot events and are not backfilled onto earlier bars. Visible Range and developing profiles recalculate when the viewport or incoming data changes — expected behavior for a dynamic Volume Profile, not a historical trading signal being rewritten.
━━━━━━━━━━━━━━━━━━━━
⚠️ RISK NOTICE
EVA Volume Profile PRO is an analytical PulseWire indicator. It does not execute orders and is not financial advice. Markets involve risk. Every setup requires independent validation, position sizing and risk management.
━━━━━━━━━━━━━━━━━━━━
🔥 READY TO TURN THE LIQUIDITY MAP INTO A COMPLETE TRADE SCENARIO?
EVA AI Plus combines confirmed LONG/SHORT signals, Market Structure, Liquidity Sweeps, Smart Money context, Support/Resistance, Supply/Demand, Fair Value Gaps, Whale Volume, signal-quality filters, AI Advisor explanations, TP/SL, Trail, TP+ and internal statistics in one premium PulseWire workspace.
Open EVA AI Plus, add it to your favorites and request access to the 7-day test drive:
Indicator

Scalping Master PRO By Mr BASIT Scalping Master PRO is an advanced, high-precision scalping tool designed to help traders identify high-probability trend continuation and reversal setups. Built on Pine Script v6, this indicator combines Trend Analysis, Volume Confirmation, Session Filtering, Dynamic Support/Resistance Zones, and Automated Risk Management.
🔥 Key Features
3-EMA Trend Strategy: Combines Fast EMA (9) and Slow EMA (21) for execution, filtered by the 200 EMA to ensure trades align with the macro trend.
Volume Spike Filter: Signals are validated only when trading volume exceeds a custom threshold (1.5x average volume), filtering out low-volatility fakeouts.
Session Filter: Restricts trades to active market sessions (e.g., London & New York) to avoid choppy, ranging market conditions.
Clean 1x S/R Zones: Automatically plots dynamic Support and Resistance boxes based on strong swing pivots (limited to the latest 2 zones to keep your chart uncluttered).
Auto SL/TP Risk Management Boxes: Plots visual Long/Short position boxes with dynamic ATR-based Stop Loss and a 1:2 Risk-to-Reward ratio upon signal trigger.
On-Screen Dashboard Panel: Displays real-time 200 EMA trend status and volume strength in a compact UI widget.
Pine Script v6 Engine: Optimized with robust, zero-indentation inline logic to ensure maximum speed and compatibility.
💡 How to Use
Bullish Setup (BUY):
Fast EMA crosses above Slow EMA while price is above the 200 EMA.
Volume confirms with a spike.
Green BUY triangle appears with auto-generated Risk/Reward target boxes.
Bearish Setup (SELL):
Fast EMA crosses below Slow EMA while price is below the 200 EMA.
Volume confirms with a spike.
Red SELL triangle appears with auto-generated Risk/Reward target boxes.
Best Timeframes: 1m, 5m, 15m (Optimized for Scalping & Day Trading)
Best Assets: XAUUSD (Gold), Forex Pairs, Crypto (BTC/USDT) Indicator

Support Resistance AI [PickMyTrade]Every support/resistance tool answers "where are the levels." None answer the question a trader actually has when price arrives at one: does THIS test look like the ones that held, or like the ones that broke?
――――――――――――――――――――――――――――――――――――――
🔷 WHAT IT MEASURES
🔸 Confirmed swing pivots, clustered into zones and merged as new evidence accumulates
🔸 Eight properties of every ARRIVAL at a zone — approach speed, relative volume, prior test count, zone age, trend pressure, zone width, pivot count, and cumulative touches
🔸 A broken level isn't discarded — it flips role once (broken support becomes candidate resistance) and only a second failure retires it
🔸 A live Previous Day/Week High/Low reference map, shown only when price is within range
――――――――――――――――――――――――――――――――――――――
🔷 THE CLASSIFIER
🔸 An online Gaussian Naive Bayes model, trained continuously as tests resolve — no repainting, no lookahead
🔸 Nothing about a level's price is used as a feature — only how price approached it
🔸 The classic claim that "a level tested repeatedly grows weaker" is measured on each chart's own history here, rather than assumed
🔸 Below a configurable warmup sample count, the script shows the chart's running hold rate instead and reads LEARNING — it never guesses early
――――――――――――――――――――――――――――――――――――――
🔷 SIGNALS AND DISPLAY
🔸 Zone boxes colored by role (support/resistance) and shaded by live conviction, with worded verdicts ("similar arrivals held X%") instead of a bare number
🔸 Rank-based visibility — only the nearest zones to current price are drawn, so old or distant levels never stretch the chart's scale
🔸 Test history ticks stamped inside each zone at the bar where its own tests resolved
🔸 An info table with Nearest Support/Resistance, model accuracy, and sample counts
🔸 3 alertconditions, worded as observations of what the classifier's reading — never as trade instructions
――――――――――――――――――――――――――――――――――――――
🔷 INPUTS
Pivot Left/Right Bars — swing detection window. Default 10/10.
Zone Width / Merge Distance — band thickness and clustering tolerance, in ATR. Default 0.5 / 0.75.
Break Buffer / Rejection Distance — how far price must close beyond or travel back from a zone to resolve a test. Default 0.25 / 0.75 ATR.
Post-Flip Cooldown — bars a flipped zone must survive before a break can retire it. Default 5.
Warmup Samples — resolved tests required before the classifier is trusted. Default 25.
Conviction Threshold — probability at which a zone is shown at full conviction. Default 0.62.
Max Live Zones / Show Distance — how many nearby zones are drawn and how far (in ATR) before one is hidden.
Show Trend EMA, Zen Mode — display toggles; Zen Mode hides labels and the table for clean screenshots.
――――――――――――――――――――――――――――――――――――――
🔷 REQUIREMENTS AND LIMITATIONS
🔸 Pivots confirm only after the right-side lookback bars close — a level appears on the chart later than the swing that created it, by design
🔸 One thing does refine retroactively: when a later pivot merges into an existing zone, its band re-centers toward the weighted average — a zone with an open test is never re-centered, so no in-progress outcome is affected
🔸 Early on a fresh chart, or for a zone with only one or two tests, its own read is thin — the model's overall sample count travels with every verdict so that's never hidden
🔸 This script reports how historical arrivals resolved. It does not predict, and it is not a trading system on its own.
――――――――――――――――――――――――――――――――――――――
Built in Pine Script v6. Open source — Mozilla Public License 2.0. Indicator

Market Compass - Dynamic Range FrameworkHello English readers, the English version is provided below. Please scroll down to view it.
Market Compass - Dynamic Range Framework
市场指南针 · 动态区间框架
版本:1.0 | 类型:非预测性价格结构定位工具 | 作者:
绝大多数交易亏损,根源并非方向判断错误,而是 “位置感”的缺失 。本指标旨在为您解决这一核心痛点——它不告诉您涨跌,但它告诉您 “此时此刻,价格在地图上的精确坐标” 。
---
本指标并非传统的均线或动量振荡器,而是一个 基于固定回溯周期的价格百分位区间定位系统 。它以最近 N 根 K 线(默认 252 根,对应约 1 个交易年度)的最高价与最低价为天然边界,构建出一个覆盖 0% 至 100% 的 动态箱体网格 。
该网格并非平均分割,而是采用 非对称的黄金分割与极值锚定法 ,精确定制了 9 条关键水平轨道。这些轨道以彩色矩形色带和右侧实时浮动标签的形式,干净利落地叠加于主图 K 线之上:
100% 顶部极值轨 (红色):回溯周期内的绝对天花板。
89% 超买警戒轨 (橙色):情绪极度亢奋区,多头衰竭高发带。
75% 强势分界轨 (黄色):牛熊分水岭,站上此线意味中期趋势转强。
62.5% 强界枢轴轨 (紫色):多头趋势中的次级回踩支撑位。
50% 多空中轴轨 (白色):价值均衡线,长线资金的成本密集区。
37.5% 弱界枢轴轨 (青色):空头趋势中的次级反弹阻力位。
25% 弱势分界轨 (亮蓝):跌破此线意味中期趋势正式转入空头。
11% 超卖警戒轨 (浅绿):情绪极度恐慌区,空头衰竭高发带。
0% 底部极值轨 (深蓝):回溯周期内的绝对地板。
随着新 K 线的生成,整个框架会 滚动迭代 ,始终锚定最新的价格活动范围,确保参考坐标永不失效。
---
传统价格图表存在严重的 视角局限性 ,导致交易者频繁陷入误判:
“绝对值幻觉”与锚定效应 :股价 100 元是高是低?脱离近期波动区间谈绝对价格毫无意义。本指标将价格转化为 0~100 的相对百分位数 ,消除了价格基数的干扰,让您客观评判当前价格是“相对高位”还是“相对低位”。
“区间失忆症”与近因偏好 :人类大脑天然对最近 5~10 根 K 线赋予过高权重,极易遗忘前期关键的支撑与阻力结构。本指标通过固定窗口的滚动计算,强制将 过去 N 根 K 线的价格极值 醒目地绘制在当前图表上,纠正了这种认知偏差。
均值回归与极端磁吸理论 :金融市场价格长期遵循 “极端值向中轴(50% 均衡线)回归” 的统计规律。当价格进入 89% 以上或 11% 以下的极端尾部区域时,统计概率上必然面临向 50% 中轴的牵引力。本框架为这种“牵引力”提供了精确的量化刻度。
---
本指标是 趋势过滤、盈亏比评估与动态止盈止损 的绝佳辅助工具。请勿将其视为独立入场信号,而应作为 “价格行为决策的量化底座” 。
3.1 基于市场环境的三种经典战法
【趋势跟踪战法】—— 适用于强势单边行情
当价格经过充分调整后,以放量大阳线有效突破 75% 强势分界轨 时,视为中期趋势由震荡转强的关键确认点。若后续价格回踩 75% 轨并获得支撑(收出长下影线),则为绝佳的 顺大势、逆小势 加仓机会。此时可将止损设于 62.5% 强界枢轴轨下方。
【均值回归战法】—— 适用于宽幅震荡行情
当价格快速冲高至 89% 超买轨 上方,且 K 线出现明显滞涨形态(如射击之星、看跌吞没)时,可视为短线高空机会,第一目标位看向 75% 轨,第二目标位看向 50% 中轴。反之,价格急跌至 11% 超卖轨 下方并出现止跌反转形态时,可视为短线低吸机会。
【突破回踩确认战法】—— 适用于关键阻力支撑转换
任何一条百分比轨道都具备动态支撑/阻力的属性。当价格自下而上突破某一轨道(如 62.5% 轨)后,若随后缩量回踩该轨道且未跌破,则说明该轨道已由阻力转换为支撑,此处是风险收益比极高的 “0 级入场点” (止损极小,空间极大)。
3.2 动态止盈与止损设置指南
波段多头持仓 :可将 37.5% 弱界枢轴轨 设为最终的硬性离场线。只要价格在此轨之上,多头头寸便可安心持有,避免被早期震荡洗出。
短线空头持仓 :可将 62.5% 强界枢轴轨 设为硬性止损线。一旦价格强势反抽并站上此轨,则空头逻辑被证伪,需果断离场。
3.3 参数动态调整建议(针对不同交易周期)
日线级别(中长线 / 波段) :建议保持默认 252 (约 1 年交易日),用于捕捉年度大箱体的牛熊转换。
周线级别(大趋势 / 仓位布局) :建议调整为 52 (约 1 年周线),用于识别超大周期的价格百分位极值。
小时 / 分钟级别(日内短线 / 剥头皮) :建议调整为 50 ~ 100 ,过长的周期在分钟图上会导致框架钝化,失去短线参考意义。
---
4.1 最佳适用场景
流动性充裕的权益市场 :沪深 300、中证 500、标普 500 等主流指数及成分股。
高流动性大宗商品与外汇 :黄金、原油、欧元/美元等主要交易对。
高市值加密货币 :比特币(BTC)、以太坊(ETH)等。
4.2 禁用与慎用场景(风控红线)
严禁用于上市不足 N 根 K 线的新股/次新股 :尽管代码内置了自适应缩窄逻辑,但新股价格极不稳定,高低点极易被操纵,百分位框架参考价值极低。
慎用于连续无量涨跌停的极端行情 :在极强的单边轧空或流动性枯竭的踩踏中,价格可能长期粘合在 100% 轨之上或 0% 轨之下,此时指标出现 “钝化” 现象,需立即切换至趋势跟踪指标(如 SAR 抛物线或均线系统)进行二次印证。
慎用于高度控盘的“庄股”或低成交量仙股 :稀疏的成交导致价格跳跃性极大,计算出的区间极易失真。
---
本指标严格遵循 PulseWire 最佳实践, 完全不包含未来函数 ,所有信号均基于确定性的历史数据实时滚动计算。
5.1 自适应周期核心算法
系统优先读取用户设定的 `lookbackLength`(默认 252)。然而,当图表加载的品种上市天数不足时,引擎会自动触发保护机制:
effectiveLookback = math.min(i_lookbackLength, bar_index + 1)
该行代码确保指标在上市首日即能工作,且随着新 K 线增加,窗口期自然增长,直至达到用户设定的标准周期。
5.2 九宫格线性映射(百分位分割数学)
首先确定箱体极值与范围:
periodLow = ta.lowest(low, effectiveLookback) // 底部 0%
periodHigh = ta.highest(high, effectiveLookback) // 顶部 100%
priceRange = periodHigh - periodLow
随后基于 斐波那契数列与统计学标准差启发式阈值 进行非均匀切割:
priceL89 = periodLow + priceRange * 0.89 // 极值警戒
priceL75 = periodLow + priceRange * 0.75 // 强市分界
priceL625 = periodLow + priceRange * 0.625 // 黄金分割枢轴
priceL50 = periodLow + priceRange * 0.50 // 均衡中轴
// ... 下方对称切割同理
注:62.5% 与 37.5% 的选取来源于对 0.618 黄金分割率的整数微调,旨在提供比传统 61.8% 更为清晰且易于记忆的刻度。
5.3 图形渲染引擎优化(内存与性能管理)
为了避免在大量历史 K 线上重复绘制矩形和线条导致图表卡顿,引擎采用 “惰性删除与单次实例化” 策略:
if barstate.islast
// 仅当加载完成且运行至图表最右侧时触发绘制
box.delete(boxMain) // 先销毁旧句柄
line.delete(lineL100) // 清理旧线
// ... 重新创建新对象
所有标签采用 label.style_label_left 右对齐样式,确保在图表最右侧整齐排列,绝不遮挡最新的 K 线实体,同时提供精确至交易所最小报价单位(`format.mintick`)的实时读数。
---
它不是占卜未来的水晶球,而是衡量当下的卡尺。
在充满不确定性的金融市场中, “位置感” 是纪律执行的基石。`Market Compass` 为您提供的不是圣杯,而是一张永远保持更新的 战场态势感知地图 。请将它融入您现有的交易系统中,作为过滤低质量交易机会的第一道关卡。
---
本指标及此说明文件仅供教育及技术分析参考之用,绝不构成任何形式的买入、卖出或持仓建议。金融衍生品及证券交易蕴含巨大风险,过往价格结构及百分位分布不构成对未来走势的绝对保证。您必须结合自身财务状况、风险承受能力及独立研判做出交易决策,盈亏自负。作者不承担任何因使用本指标而产生的直接或间接损失。
---
如果您认可这套价格定位逻辑,欢迎点赞、收藏并关注!
期待您在评论区分享将该框架融入实战交易后的心得体会。
Market Compass - Dynamic Range Framework
Version: 1.0 | Type: Non-Predictive Price Structure Positioning Tool | Author:
The vast majority of trading losses stem not from incorrect directional judgment, but from a lack of "positional awareness" . This indicator addresses this core pain point — it does not tell you whether price will go up or down, but it does tell you "the precise coordinates of price on the map, at this very moment" .
---
This indicator is not a traditional moving average or momentum oscillator. Instead, it is a price percentile range positioning system based on a fixed lookback period . It uses the highest high and lowest low over the most recent N bars (default 252, corresponding to approximately one trading year) as natural boundaries, constructing a dynamic box grid spanning from 0% to 100%.
The grid is not evenly divided. It employs an asymmetric golden ratio and extreme-value anchoring methodology to precisely define 9 key horizontal threshold levels. These levels are cleanly overlaid on the main price chart using colored rectangular bands and real-time right-aligned floating labels:
100% Peak Threshold (Red): The absolute ceiling within the lookback period.
89% Overbought Warning Zone (Orange): Extreme euphoria zone; high probability of bullish exhaustion.
75% Bullish Boundary (Yellow): The bull-bear dividing line; breaking above signals medium-term strength.
62.5% Bull Pivot Threshold (Purple): Secondary retracement support level within an uptrend.
50% Equilibrium Axis (White): The value equilibrium line; a dense area of long-term capital cost.
37.5% Bear Pivot Threshold (Cyan): Secondary retracement resistance level within a downtrend.
25% Bearish Boundary (Light Blue): Breaking below signals a confirmed medium-term bearish trend.
11% Oversold Warning Zone (Light Green): Extreme panic zone; high probability of bearish exhaustion.
0% Floor Threshold (Dark Blue): The absolute floor within the lookback period.
As new bars are generated, the entire framework rolls forward iteratively , always anchored to the most recent price activity range, ensuring the reference coordinates never become obsolete.
---
Traditional price charts suffer from severe perspective limitations , leading traders into frequent misjudgments:
"Absolute Value Illusion" and Anchoring Bias : Is a price of $100 high or low? Discussing absolute price without reference to the recent trading range is meaningless. This indicator converts price into a relative percentile from 0 to 100 , eliminating the distortion of price magnitude and allowing you to objectively assess whether the current price is "relatively high" or "relatively low."
"Range Amnesia" and Recency Bias : The human brain naturally assigns excessive weight to the most recent 5–10 bars, easily forgetting key prior support and resistance structures. Through rolling window calculations, this indicator forcibly and prominently plots the price extremes of the past N bars on the current chart, correcting this cognitive bias.
Mean Reversion and Extreme Magnetic Attraction Theory : Financial market prices have long exhibited a statistical tendency to "revert from extreme values toward the center (50% equilibrium line)" . When price enters the extreme tail regions above 89% or below 11%, statistical probability dictates an inevitable gravitational pull toward the 50% axis. This framework provides precise quantitative刻度 for this "magnetic force."
---
This indicator serves as an excellent auxiliary tool for trend filtering, risk-reward assessment, and dynamic stop-loss/take-profit placement . Do not treat it as an independent entry signal; instead, regard it as a "quantitative foundation for price-action decision-making."
3.1 Three Classic Strategies Based on Market Context
【Trend Following Strategy】— For Strong Directional Markets
When price, after sufficient consolidation, breaks decisively above the 75% Bullish Boundary with a high-volume bullish candle, this serves as a key confirmation that the medium-term trend is shifting from consolidation to strength. If price subsequently retests the 75% level and finds support (forming a long lower wick), it represents an excellent "go with the macro trend, counter the micro pullback" add-on opportunity. In such cases, place your stop-loss below the 62.5% Bull Pivot Threshold.
【Mean Reversion Strategy】— For Range-Bound Markets
When price spikes rapidly above the 89% Overbought Warning Zone and simultaneously exhibits clear exhaustion patterns (such as shooting stars or bearish engulfing), this can be viewed as a short-term selling opportunity. The first target is the 75% level, and the second target is the 50% Equilibrium Axis. Conversely, when price plummets below the 11% Oversold Warning Zone and shows reversal signals, a short-term buying opportunity emerges.
【Breakout-Pullback Confirmation Strategy】— For Key Support/Resistance Transitions
Every percentage threshold possesses dynamic support/resistance properties. When price breaks upward through a given level (e.g., the 62.5% level) and subsequently retests that level on diminishing volume without breaking back below, this confirms that the level has successfully transitioned from resistance to support. This represents a highly favorable "Grade-A Entry Point" (minimal stop-loss, substantial upside potential).
3.2 Dynamic Stop-Loss and Take-Profit Placement Guide
Swing Long Positions : Use the 37.5% Bear Pivot Threshold as your ultimate hard exit line. As long as price remains above this level, you can confidently hold your long position, avoiding premature exits caused by early-stage volatility.
Short-Term Short Positions : Use the 62.5% Bull Pivot Threshold as your hard stop-loss line. Should price stage a strong rally and close above this level, the bearish thesis is invalidated, and you must exit decisively.
3.3 Parameter Adjustment Recommendations (By Trading Timeframe)
Daily Chart (Swing / Medium-to-Long Term) : Keep the default 252 (approximately one trading year), ideal for capturing annual bull-bear transitions.
Weekly Chart (Macro Trend / Position Sizing) : Consider adjusting to 52 (approximately one year of weekly bars) for identifying extreme percentiles within broader cycles.
Hourly / Minute Charts (Intraday / Scalping) : Consider adjusting to 50–100 . Longer lookbacks on lower timeframes cause the framework to become overly rigid, diminishing its short-term relevance.
---
4.1 Optimal Use Cases
Highly Liquid Equity Markets : CSI 300, S&P 500, major index constituents, and liquid individual stocks.
High-Liquidity Commodities and FX : Gold, Crude Oil, EUR/USD, and other major pairs.
Large-Cap Cryptocurrencies : Bitcoin (BTC), Ethereum (ETH), and similar assets.
4.2 Scenarios to Avoid or Use with Caution (Risk Red Lines)
Strictly avoid newly listed stocks with fewer than N bars of history : Although the code includes a built-in adaptive shortening mechanism, new issues are extremely unstable, and their highs/lows are vulnerable to manipulation, rendering the percentile framework nearly worthless.
Use with caution during continuous limit-up/limit-down extreme conditions : In powerful short squeezes or liquidity-driven crashes, price may remain persistently glued above the 100% level or below the 0% level. In such cases, the indicator becomes "blunted" , and you must immediately switch to trend-following tools (such as SAR or moving average systems) for secondary confirmation.
Avoid low-float "pump-and-dump" penny stocks : Sparse trading volume leads to erratic price jumps, causing the computed range to become highly distorted.
---
This indicator strictly adheres to PulseWire best practices and contains absolutely no future functions . All signals are computed in real time based on deterministic historical data.
5.1 Adaptive Lookback Core Algorithm
The system first reads the user-defined `lookbackLength` (default 252). However, when the loaded instrument has fewer total bars on the chart than the configured period, the engine automatically triggers a protective mechanism:
effectiveLookback = math.min(i_lookbackLength, bar_index + 1)
This single line ensures the indicator functions from the very first trading day, and the window gradually expands as new bars are added until it reaches the user's desired standard period.
5.2 Nine-Level Linear Mapping (Percentile Segmentation Mathematics)
The process begins by determining the box extremes and range:
periodLow = ta.lowest(low, effectiveLookback) // Floor at 0%
periodHigh = ta.highest(high, effectiveLookback) // Peak at 100%
priceRange = periodHigh - periodLow
The range is then divided using a heuristic blend of Fibonacci ratios and statistically inspired thresholds :
priceL89 = periodLow + priceRange * 0.89 // Extreme warning
priceL75 = periodLow + priceRange * 0.75 // Bullish boundary
priceL625 = periodLow + priceRange * 0.625 // Golden ratio pivot
priceL50 = periodLow + priceRange * 0.50 // Equilibrium axis
// ... Symmetrical lower-level calculations follow the same logic
Note: The selection of 62.5% and 37.5% is derived from a slight integer adjustment to the 0.618 golden ratio, intended to provide cleaner and more memorable reference刻度 than the traditional 61.8%.
5.3 Rendering Engine Optimization (Memory & Performance Management)
To prevent chart lag caused by repeatedly drawing rectangles and lines across numerous historical bars, the engine employs a "lazy deletion with single-instantiation" strategy:
if barstate.islast
// Only triggered when loaded and running at the rightmost edge of the chart
box.delete(boxMain) // Destroy old handles first
line.delete(lineL100) // Clean up old lines
// ... Then create new objects
All labels use the label.style_label_left right-aligned format, ensuring they line up neatly on the far right of the chart without ever obscuring the most recent price bars. Prices are displayed with precision down to the exchange's minimum tick size (`format.mintick`).
---
It is not a crystal ball for predicting the future; it is a caliper for measuring the present.
In the inherently uncertain financial markets, "positional awareness" is the cornerstone of disciplined execution. `Market Compass` does not offer you a holy grail; it offers you an ever-updating situational awareness map of the battlefield . Integrate it into your existing trading system and use it as the first filter to eliminate low-probability trade setups.
---
This indicator and its accompanying description are provided for educational and technical analysis purposes only. They do not constitute, and should not be construed as, any form of investment advice or recommendation to buy, sell, or hold any financial instrument. Trading securities and derivatives involves substantial risk of loss. Past price structures and percentile distributions do not guarantee future results. You are solely responsible for your own trading decisions, taking into account your financial situation, risk tolerance, and independent judgment. Neither the author nor the hosting platform accepts any liability for losses arising from the use of this indicator.
---
If you find this price-positioning logic valuable, please like, bookmark, and follow!
I look forward to hearing how you integrate this framework into your live trading. Feel free to share your experiences and feedback in the comments section below.
Indicator

Chart Narrator [verticetrading]An analyst that writes. Chart Narrator reads your chart and describes it in plain sentences — no cryptic numbers, no jargon.
◆ WHAT IT DOES
It turns the chart into a written briefing: main trend and whether the higher timeframe agrees, unusual calm or agitation in volatility, the last structural break in plain words, nearest tested support/resistance with distances in %, fresh candlestick patterns, and volume participation. Everything is summarized in a bias header with a conviction score ("BULLISH — 4 of 5 signals point the same way").
◆ HOW IT WORKS
Six evidence modules (trend + higher-timeframe confirmation, volatility ranking, market structure, merged pivot levels weighted by touches, candlestick patterns, volume vs its average) each produce a verdict and the numbers behind it. A narration engine turns them into sentences, stays silent when a module has nothing to say, and detects confluences between modules (e.g. a bullish pattern printed on a tested support) to flag higher-quality situations. With enough history it also adds a day-of-week tendency note with its sample size.
◆ HOW TO USE IT
Add it to any symbol and timeframe. Read the panel top to bottom: bias first, evidence after. Set the "Bias flip" alert to receive the full written analysis when the overall picture changes. Interface in English and Spanish.
◆ WHAT MAKES IT ORIGINAL
Indicators show numbers; this one explains itself. Every sentence cites its evidence, only confirmed bars are narrated (no repainting), and the panel says "mixed, no clear edge" when that is the truth.
◆ LIMITATIONS
It describes the present; it does not predict. Not financial advice.
────────────────────────
ESPAÑOL — El analista que escribe
Convierte el gráfico en un informe escrito: tendencia y si la temporalidad mayor la confirma, calma o agitación inusual de la volatilidad, la última ruptura estructural en palabras llanas, soporte/resistencia más cercanos con distancias en %, patrones de velas recientes y participación del volumen — todo resumido en un sesgo con puntuación de convicción ("ALCISTA — 4 de 5 señales apuntan en la misma dirección"). Seis módulos de evidencia alimentan un motor de redacción que calla cuando no hay nada que decir y detecta confluencias entre señales. Solo narra velas confirmadas (sin repintado). Interfaz en inglés y español. Describe el presente, no predice; no es asesoramiento financiero. Indicator

RSI Levels & Regime Map Heatmap & Cardwell Reversal SignalsOVERVIEW
RSI is the most-used oscillator in the world, and almost nobody trades it — because "RSI is 62" is not something you can place an order against.
This tool moves RSI onto price.
RSI IS INVERTIBLE. Wilder's smoothing can be solved backwards, so for any RSI value there is an EXACT price that would produce it on the next bar. Instead of "RSI is 62", the chart tells you:
Close above 24,278 -> RSI 70 (resistance)
Close below 24,193 -> RSI 30 (support)
Those are real levels. You can put a stop there. You can put a target there.
The script draws the full ladder (30 / 40 / 50 / 60 / 70, all configurable), shades the bands between them into a regime heatmap, measures the Cardwell range regime, marks Cardwell positive and negative reversals with projected targets, shows a multi-timeframe strip — and then does the thing nobody else does: IT FORWARD-TESTS WHETHER ANY OF IT ACTUALLY HOLDS.
This is a research and framing tool. It is NOT a strategy, NOT a signal service, and NOT a validated edge.
THE MATHS (exact, not an approximation)
RSI = 100 - 100/(1 + AG/AL), where AG and AL are the Wilder-smoothed average gain and loss.
For a target T, let RSt = T/(100 - T). Solving the next bar's RSI for the move x required:
an UP move needs x = (n-1) * (RSt*AL - AG)
a DOWN move needs x = (n-1) * (AL - AG/RSt)
Level = close + x. The up form applies when it is non-negative; otherwise the down form does.
This is algebra, not curve fitting. Feed the derived price back through RSI and you get the target value back exactly. The levels are not estimates — they are the precise prices at which the RSI state changes, recomputed every bar. The ladder breathes with volatility on its own: it tightens in quiet markets and widens in violent ones, with no smoothing parameter to tune.
WHY THESE PARTS ARE ONE TOOL (mashup rationale)
1. THE INVERSE-RSI LADDER — the core. Every rung is the exact price at which RSI would print a chosen value.
2. THE HEATMAP — the bands between the rungs, shaded by regime. It shows at a glance how far price must travel to change the RSI story, which is the one question the oscillator pane can never answer.
3. THE CARDWELL REGIME — Andrew Cardwell's observation: in a BULL market RSI holds roughly 40-80, and 40 becomes SUPPORT. In a BEAR market it holds 20-60, and 60 becomes RESISTANCE. So "RSI 40" means the OPPOSITE thing in the two regimes. A tool that ignores this will cheerfully tell you to buy oversold all the way down a trend. The regime here is MEASURED over a lookback, not assumed — and the rung the script watches follows the regime rather than a fixed number.
4. CARDWELL REVERSALS — the signal almost nobody implements. A POSITIVE REVERSAL is RSI making a LOWER low while PRICE makes a HIGHER low. That is the mirror image of classic divergence, and it is a CONTINUATION signal, not a trend reversal. A NEGATIVE REVERSAL is the bearish mirror. A measured target is projected from each.
5. THE HONESTY LAYER — everyone says RSI 30 is support. Nobody checks. Every level test and every Cardwell reversal is logged and graded with a triple barrier against an unconditional control.
Remove any one and you are left with a prettier RSI that still cannot tell you whether RSI works.
THE CALIBRATION — AND THE TWO TRAPS IT TOOK A LIVE TEST TO FIND
Two subtle biases can make a level tool look brilliant while it is doing nothing at all. Both are handled explicitly here, and both are worth understanding whichever tool you use.
TRAP 1 — THE FILL ADVANTAGE.
A support test fires when price dips INTO the rung and closes back ABOVE it. If you enter the event AT THE RUNG (below the close) but compare it with a control entered at the CLOSE, the event gets a strictly better fill on EVERY trade. It then "beats" the control by construction — not because the level held, but because it bought lower. That is a rigged comparison, and it produces a large fake edge.
THE FIX: the level test is treated as a SIGNAL, NOT A FILL. The event and the control enter at the SAME reference price — the bar's close. The only thing that differs is which bars were selected.
TRAP 2 — DIRECTIONAL DRIFT.
Indices drift upward. If level tests are mostly LONG while the control is 50/50, the events win on drift alone and prove nothing.
THE FIX: longs are compared only with control longs, shorts only with control shorts, then blended back using the events' OWN direction mix. The panel also reports the baseline drift directly, so you can see whether the instrument is simply going up.
The control is UNCONDITIONAL: the same trade geometry taken on arbitrary bars, selected by no signal at all. If the levels cannot beat that, they carry no edge.
Results are reported as EXPECTANCY IN R, not hit rate. A Welch t-test decides whether the difference is real or luck — the panel does not say PROVEN unless t > 1.96.
Other conventions, all chosen so the tool cannot flatter itself:
· Both barriers touched on one bar -> the STOP is assumed first.
· Expired trades are marked to market, not booked as losses.
· The level tested is the one computed at the END OF THE PREVIOUS BAR — the price a trader could actually have rested an order at. Using the current bar's own level would be a look-ahead.
· Everything is logged and resolved on confirmed bars only.
HOW TO USE IT
1. READ THE REGIME FIRST. In a bull regime the 40 rung is support and you are hunting long tests of it. In a bear regime the 60 rung is resistance. In neutral, the ladder is simply a map.
2. The rungs are LEVELS. Price closing through one changes the RSI state, by definition.
3. A CARDWELL REVERSAL is a continuation signal with a projected target.
4. READ THE CALIBRATION BEFORE YOU WEIGHT ANY OF IT — and read the baseline-drift row next to it. If level tests show no proven edge on your instrument, the ladder is a MAP, not a probability.
5. Entry, stop and target are drawn at the same price the calibration measures. They are arithmetic, not advice.
DATA / SCOPE
Any symbol, any timeframe. No volume required. The source is an input, so the ladder can be built from close, hlc3, or even another indicator's plot.
NON-REPAINTING
The ladder is computed from confirmed values and projects FORWARD — it is a statement about what the NEXT bar would need to do, so it necessarily moves as new bars arrive. That is a projection, not a repaint, and it is stated plainly rather than hidden.
Level tests are evaluated against the PREVIOUS bar's level, so no future information is used. Reversal pivots use ta.pivot* and confirm a few bars after the fact; once printed, they do not move. The calibration harness logs AND resolves on confirmed bars only, so its statistics cannot inflate intrabar.
HONEST LIMITATIONS — PLEASE READ
The ALGEBRA is exact. THE CLAIMS ABOUT RSI ARE NOT.
"RSI 30 is support" is folklore until it is measured, which is exactly why this script measures it — and why it is built to be able to return "not proven".
Calibration figures are IN-SAMPLE, with no costs or slippage, and use overlapping windows. A proven in-sample edge is NOT a guarantee out-of-sample. Real fills, spreads and commissions will all reduce it.
Cardwell's rules are discretionary in origin and are mechanised here in one particular way. A different mechanisation would give different numbers.
Small samples are unreliable even when they look good. If the edge is near zero, negative, or unstable across timeframes, the honest conclusion is that it is not there.
Nothing here predicts price.
CONCEPT CREDITS
Relative Strength Index and its Wilder smoothing — J. Welles Wilder Jr.
Range rules, positive and negative reversals, and the measured-move projection — Andrew Cardwell.
Triple-barrier forward labelling — Marcos López de Prado.
Welch's t-test — B. L. Welch.
The inverse-RSI level engine, the regime map, the unconditional direction-matched control and the significance testing are the author's own. Clean-room implementation; no third-party code is reused. Not affiliated with, nor endorsed by, any of the above.
DISCLAIMER
Research and educational tool only. NOT financial advice, NOT a recommendation, and NO guarantee of results. Indicators describe past behaviour; they do not predict the future. Entry, stop and target output is arithmetic, not advice. Trading carries a risk of loss. Test out-of-sample and make your own decisions. The author accepts no liability for any use of this script. Indicator

Fractal Support & Resistance Zones invincible]Fractal Support & Resistance Zones
Fractal Support & Resistance Zones is an advanced market-structure and price-reaction framework designed to identify, evaluate, and dynamically manage support and resistance zones derived from confirmed fractal pivots.
Unlike traditional support and resistance indicators that simply draw horizontal levels at swing highs and lows, this indicator treats every zone as a dynamic market structure object. Each zone develops through its own lifecycle based on price interaction, independent retests, reaction strength, penetration, estimated buying and selling activity, structural confirmation, trend alignment, and eventual support/resistance role reversal.
The objective is not simply to show where price previously turned.
The objective is to evaluate which zones are still technically relevant, which have gained confirmation, which are weakening, and which may provide better structural trade locations.
---------------------------------------------------------------------------------------------
Fractal-Based Zone Detection
The indicator identifies two independent classes of fractal pivots:
Weak Fractals
Shorter-length pivots designed to capture local price reactions and minor structural turning points.
Major Fractals
Higher-strength pivots based on a larger fractal window. These represent more significant swing highs and swing lows and receive greater importance within the zone-quality model.
Fractal support zones are created from confirmed pivot lows, while fractal resistance zones are generated from confirmed pivot highs.
The detection timeframe can be independently selected, allowing zones from a higher timeframe to be displayed on a lower-timeframe chart.
Higher-timeframe fractal data is requested with lookahead disabled to prevent future data from being intentionally introduced into the pivot calculation.
---------------------------------------------------------------------------------------------
Dynamic Support and Resistance Zones
The indicator creates price zones rather than single horizontal lines.
Markets rarely react from one exact price. Orders, liquidity, and previous positioning are often distributed across a price range. The zone model therefore attempts to represent the broader reaction area surrounding a fractal pivot.
Three zone-width methods are available:
ATR
Zone width is calculated from Average True Range and automatically adapts to market volatility.
Pivot Candle
The structure of the original fractal candle is used to determine the zone width.
Hybrid Candle + ATR
Combines pivot-candle structure with an ATR-based volatility limit.
The hybrid method is designed to prevent unusually large pivot candles from creating excessively wide support or resistance areas.
A minimum tick-based width can also be configured for instruments with very small price movements.
---------------------------------------------------------------------------------------------
Fractal Zone Clustering
Markets frequently produce several nearby fractal pivots around the same price area.
Drawing every pivot independently can create overlapping boxes and unnecessary chart congestion.
The indicator therefore includes a fractal clustering engine.
Nearby same-side fractals may be merged into a common structural zone when:
* They are within the configured ATR merge distance.
* The resulting merged zone does not exceed the maximum permitted ATR width.
* The maximum cluster count has not been exceeded.
* Fresh major zones are not being merged into previously tested or damaged zones when protection is enabled.
The cluster count becomes one component of the zone-quality model.
A cluster does not automatically mean a zone is strong. It simply indicates that multiple independent fractal structures developed around a similar price area.
---------------------------------------------------------------------------------------------
Independent Retest Detection
A major feature of the indicator is the distinction between bars inside a zone and independent zone retests.
If price remains inside a support or resistance area for several candles, those candles are not counted as multiple tests.
A new test is counted only after price:
1. Interacts with the zone.
2. Moves sufficiently away from the zone.
3. Travels the configured ATR reset distance.
4. Returns to the zone again.
This creates a more realistic retest model and avoids artificially increasing the test count during sideways congestion.
The label displays the number of independent tests recorded for each selected zone.
---------------------------------------------------------------------------------------------
ATR-Based Reaction Measurement
After an independent zone retest, the indicator measures how strongly price reacts away from the zone.
Reaction strength is normalized using ATR.
For a support zone, the engine measures upward movement from the reaction anchor.
For a resistance zone, the engine measures downward movement from the reaction anchor.
The strongest reaction generated by the zone is stored as its **Best Reaction ATR**.
Two configurable reaction thresholds are used:
Verified Reaction
The zone has produced the minimum ATR reaction required for technical validation.
Proven Reaction
The zone has generated a stronger ATR reaction and has also accumulated sufficient independent testing.
This prevents a zone from receiving a high structural status simply because price briefly touched it.
The market must demonstrate an actual directional response.
---------------------------------------------------------------------------------------------
Dynamic Zone Status System
Every zone is continuously classified according to its current structural condition.
FRESH
A newly created major zone that has not yet received an independent retest.
Fresh zones may represent relatively untouched structural areas.
WEAK
A zone originating from the shorter weak-fractal detection model.
Weak zones can still produce valid reactions but receive a lower fractal-grade contribution in the quality model.
VERIFIED
A zone that has been tested and remains structurally active.
Reaction behaviour and zone validation contribute dynamically to its score.
PROVEN
A zone that has accumulated multiple independent tests and generated a reaction exceeding the configured Proven Reaction ATR threshold.
Proven zones represent areas with demonstrated historical reaction behaviour.
DAMAGED
Price has penetrated a configurable percentage of the zone.
A damaged zone has not necessarily broken, but deeper penetration reduces its quality score.
BROKEN
Price has invalidated the zone according to the selected break-confirmation method.
Break confirmation can use either:
* Close Beyond Zone
* Full Candle Beyond Zone
Broken zones may optionally remain visible for historical analysis.
FLIPPED SUPPORT / FLIPPED RESISTANCE
A previously broken zone has confirmed a structural role reversal.
Previous support may become resistance.
Previous resistance may become support.
The indicator does not immediately flip a zone when price crosses it. A separate role-reversal confirmation process is required.
---------------------------------------------------------------------------------------------
Zone Damage and Penetration Tracking
Zone quality is not binary.
A support or resistance area may gradually weaken before it completely breaks.
The indicator continuously measures the maximum percentage of zone penetration.
For support, penetration is measured downward through the support area.
For resistance, penetration is measured upward through the resistance area.
When penetration exceeds the configured damage threshold, the zone is classified as ** DAMAGED
Damage also applies a progressive penalty to the quality score.
This means a deeply penetrated zone may remain technically valid while receiving a lower structural ranking.
---------------------------------------------------------------------------------------------
Support and Resistance Role Reversal
The indicator contains a dedicated zone-flip engine.
After a support or resistance zone breaks, the engine monitors whether price moves sufficiently beyond the former zone.
The broken zone must first establish separation from price using a configurable ATR distance.
Price must then return to the previous structural area.
Depending on the selected confirmation mode, the indicator can require:
Zone Reclaim Only
The opposite-side retest itself is sufficient.
Close Away
Price must close a configurable ATR distance away from the zone.
Rejection or Engulfing
The retest can be confirmed through rejection behaviour, an engulfing candle, or a sufficiently strong close away from the zone.
Once confirmed:
* Broken support can become resistance.
* Broken resistance can become support.
The zone is then reset into a new lifecycle as a flipped structural area.
---------------------------------------------------------------------------------------------
Estimated Buy and Sell Activity
The indicator includes an estimated directional volume model.
Because standard PulseWire volume does not directly provide true executed bid and ask volume for every market, buying and selling activity is estimated from candle position within the candle range.
A close nearer the candle high allocates a greater portion of volume to estimated buying activity.
A close nearer the candle low allocates a greater portion of volume to estimated selling activity.
The model can use:
* Pivot volume only.
* Pivot volume plus independent retest activity.
Selected zone labels display estimated activity as:
B 64% | S 36%
This should be interpreted as an estimated directional participation model rather than true exchange-level order-flow delta.
---------------------------------------------------------------------------------------------
Multi-Factor Zone Quality Model
Every zone receives a dynamic quality score from 0 to 10.
The score is not based on a single condition.
The model combines several structural factors.
Fractal Grade
Major fractals receive a stronger contribution than weak fractals.
Rejection Wick
The pivot candle's rejection wick is normalized against ATR.
Larger relative rejection can increase the origin score.
Independent Retests
The model evaluates how many genuinely independent zone tests have occurred.
Importantly, unlimited retests do not continuously improve quality.
Excessive testing can weaken a zone.
Reaction Strength
The strongest measured ATR reaction contributes to zone validation.
Estimated Volume Confirmation
Pivot volume participation and directional estimated activity contribute to the score.
Fractal Cluster
Multiple nearby fractals can increase structural confidence.
Freshness
Newer zones receive a greater freshness contribution.
As a zone ages, this component gradually decreases.
The weight of every major quality component can be adjusted by the user.
---------------------------------------------------------------------------------------------
Origin Score and Validation Score
Internally, the quality engine separates zone evaluation into two conceptual stages.
Origin Quality
Evaluates how the zone was created.
This includes:
* Fractal grade.
* Pivot rejection wick.
* Pivot volume participation.
* Fractal clustering.
* Zone freshness.
Validation Quality
Evaluates what price did after the zone was created.
This includes:
* Independent retests.
* Reaction strength.
* Directional estimated activity.
Fresh zones are influenced more heavily by origin quality.
As price begins interacting with a zone, validation behaviour receives greater influence.
This allows the quality score to evolve with market behaviour rather than remaining permanently fixed at zone creation.
---------------------------------------------------------------------------------------------
Retest Exhaustion Penalty
A common assumption is that more support or resistance tests always make a zone stronger.
This indicator does not use that assumption.
Repeated interaction may gradually consume resting liquidity around a price area.
After the configured number of retests, the indicator begins applying an excess retest penalty.
The penalty increases with each additional independent test.
As a result, a heavily tested zone may receive a lower quality score even if it has not formally broken.
---------------------------------------------------------------------------------------------
Congestion Penalty
Price remaining inside a zone for an extended period may indicate balance, absorption, or structural deterioration.
The indicator tracks consecutive bars interacting with each zone.
After the configured congestion threshold, a progressive quality penalty is applied.
This helps distinguish a clean rejection from prolonged price acceptance inside the area.
---------------------------------------------------------------------------------------------
Trend Regime Alignment
An optional EMA-based trend regime is included in the quality model.
Support zones located in an unfavourable bearish regime can receive a counter-trend penalty.
Resistance zones located in an unfavourable bullish regime can also receive a penalty.
The trend filter does not automatically delete zones.
Instead, it modifies their relative quality.
This allows historically valid support and resistance areas to remain visible while acknowledging the current directional regime.
---------------------------------------------------------------------------------------------
Market Structure Break Detection
The indicator includes an independent Market Structure Break, or **MSB**, engine.
Confirmed swing highs and swing lows are detected using a configurable pivot length.
A bullish MSB occurs when price closes above the latest eligible structural high with sufficient momentum confirmation.
A bearish MSB occurs when price closes below the latest eligible structural low with sufficient negative momentum confirmation.
Momentum is normalized using a Z-score calculated from recent price changes.
This reduces the number of minor structural crossings classified as meaningful breaks.
Each structural pivot can generate only one MSB event, preventing repeated labels from appearing after the same swing has already been broken.
---------------------------------------------------------------------------------------------
Zone-to-Structure Confirmation
Market Structure Breaks can also validate previously tested zones.
When a bullish MSB occurs, the indicator searches for a recently touched support zone.
When a bearish MSB occurs, it searches for a recently touched resistance zone.
The most recent eligible zone can receive structural confirmation.
A configurable quality bonus is then applied.
This creates a basic structural sequence:
Zone interaction → Price reaction → Market Structure Break
The intention is to distinguish zones that merely produced a temporary bounce from zones followed by a measurable structural shift.
---------------------------------------------------------------------------------------------
Premium and Discount Trade Location
The indicator uses the latest structural swing high and swing low to estimate the current swing midpoint.
The midpoint represents the 50% equilibrium level of the structural range.
When Premium/Discount grading is enabled:
* Support zones are favoured when positioned in the discount portion of the swing.
* Resistance zones are favoured when positioned in the premium portion of the swing.
This condition contributes to the displayed Trade Grade.
It does not remove zones from the chart.
---------------------------------------------------------------------------------------------
Trade Grade System
Selected zones receive a simplified structural trade grade.
Grade A+
Reserved for high-quality zones with strong alignment between:
* Zone quality.
* Trend regime.
* Premium/discount location.
* Low structural damage.
* Limited retest exhaustion.
Grade A
Strong-quality zones with favourable trend alignment and low damage.
Grade B
Moderate-to-strong structural zones that are not classified as weak fractals.
Grade C
Lower-quality but still technically visible zones.
Grade D
Zones with poor overall structural quality.
The Trade Grade is a contextual ranking system.
It is not an automatic buy or sell signal.
---------------------------------------------------------------------------------------------
Star-Based Quality Display
To make the detailed labels easier to read, the numerical quality model is represented using stars.
★★★★★ = Quality 8.0 or higher
★★★★ = Quality 6.0 to 7.99
★★★ = Quality 4.0 to 5.99
★★ = Quality 2.0 to 3.99
★ = Quality below 2.0
The stars provide a quick visual representation of the underlying 0–10 quality score.
---------------------------------------------------------------------------------------------
Compact Detailed Labels
Selected zones can display compact one-line labels such as:
VERIFIED SUP | B 64% | S 36% | ★★★★ | Tests: 2 | Grade A
The label contains:
* Current zone status.
* Support or resistance classification.
* Estimated buying activity.
* Estimated selling activity.
* Quality stars.
* Independent retest count.
* Structural Trade Grade.
Because displaying a detailed label on every zone can create significant chart congestion, two label modes are available.
Nearest + Strongest
Prioritizes the nearest support, nearest resistance, and the highest-quality remaining zones.
All Visible Zones
Displays labels for every currently visible zone.
The maximum number of detailed labels can also be controlled.
---------------------------------------------------------------------------------------------
Nearest Zone Highlighting
The indicator continuously identifies:
* The nearest active support below price.
* The nearest active resistance above price.
These zones can receive stronger border highlighting.
This makes the most immediately relevant structural areas easier to identify without removing historical zones from the chart.
---------------------------------------------------------------------------------------------
Structural Equilibrium Zone
The latest confirmed structural swing high and swing low are used to calculate a 50% equilibrium area.
The indicator plots:
* Swing origin.
* Swing destination.
* 50% midpoint.
* Configurable equilibrium zone thickness.
Before price interacts with the equilibrium area, the zone is displayed as the current structural midpoint.
After price touches the area, the indicator changes its state to:
Equilibrium touched · wait for structure
This is intended to remind the trader that equilibrium interaction alone is not necessarily directional confirmation.
Additional market structure may be required.
---------------------------------------------------------------------------------------------
Alert Conditions
The indicator provides alert conditions for important zone and market-structure events:
* New fractal support zone.
* New fractal resistance zone.
* Independent zone retest.
* Zone verified by ATR reaction.
* Zone reaching Proven status.
* Zone becoming Damaged.
* Zone break.
* Support/resistance role reversal.
* Bullish Market Structure Break.
* Bearish Market Structure Break.
These alerts can be used to monitor structural changes without continuously watching the chart.
---------------------------------------------------------------------------------------------
Suggested Interpretation
This indicator is designed as a market context and structural analysis tool.
A possible analytical workflow is:
1. Identify the nearest active support and resistance.
2. Review the zone's current status.
3. Check estimated buy/sell activity.
4. Evaluate the quality stars.
5. Review the independent test count.
6. Check whether the zone is fresh, validated, damaged, or exhausted.
7. Evaluate trend alignment.
8. Check premium or discount location.
9. Observe whether price produces a structural break after the zone reaction.
10. Use the Trade Grade as an additional contextual ranking.
No single factor should be interpreted independently.
A five-star zone can still break.
A damaged zone can still generate a reaction.
A weak fractal can still become structurally relevant.
The purpose of the model is to organize multiple price-action variables into a consistent framework.
---------------------------------------------------------------------------------------------
Important Volume Note
The Buy and Sell percentages displayed by this indicator are estimated directional volume statistics.
They are calculated by allocating candle volume according to the closing position within the candle's high-low range.
They do not represent true bid/ask volume, footprint delta, or exchange-level aggressive buying and selling.
The values should therefore be used as a relative activity estimate only.
---------------------------------------------------------------------------------------------
Non-Repainting Considerations
Fractal pivots require confirmation bars.
A zone is created only after the corresponding pivot has been confirmed by the selected fractal length.
Higher-timeframe fractal calculations use `lookahead_off`.
Therefore, historical zones should be interpreted from the point at which the fractal became technically confirmed rather than assuming the pivot was known at the exact swing candle in real time.
Market Structure Break conditions are also evaluated using confirmed price and momentum conditions.
---------------------------------------------------------------------------------------------
Final Note
Fractal Support & Resistance Zones is designed for traders who prefer **dynamic structural zones instead of static support and resistance lines**.
The indicator combines fractal structure, volatility-normalized zone construction, independent retests, reaction measurement, damage analysis, estimated directional activity, structural breaks, trend regime, premium/discount location, and role reversal into a unified zone lifecycle model.
It is intended to help answer three practical questions:
Where is the important price structure?
How has price behaved around that structure?
Is the zone gaining validation, remaining fresh, or gradually losing structural quality?
This indicator is intended for technical analysis and research purposes only. It does not constitute financial advice. Traders should independently evaluate market conditions and apply appropriate risk management.
Indicator

Potential Well MapOverview
A volume or time profile tells you where price spent time. Potential Well Map tells you the forces acting at each level. It models the market as a particle drifting in a one-dimensional energy landscape and estimates that landscape directly from recent price action — the local drift (average next move) and diffusion (variance of the next move) at each price level — then integrates them into a potential curve. Its valleys are attractors (dynamical support/resistance that pulls price in); its peaks are barriers (levels price is repelled from). Two levels with identical occupancy can be opposite in dynamics — one an attractor, one a barrier — and this map tells them apart. It is a descriptive structure-and-risk map, not a predictive signal.
Why these components are ONE tool (mashup justification)
This is a four-stage chain where each stage produces something the previous one can't, and the honesty layer keeps the whole thing accountable:
Drift + diffusion per level — the raw forces. For every price bin, exponentially-decayed accumulators track the count, sum, and sum-of-squares of the next one-bar move that started there, giving the conditional first two moments (drift and diffusion) with recent regime weighted most. This is O(N) per bar — no window rebuild, no timeout.
The potential curve — the integral of drift ÷ diffusion. This turns the raw forces into a landscape whose valleys and peaks are attractors and barriers. It is the object an occupancy profile fundamentally cannot produce, because occupancy measures time spent, not the pull at a level.
Escape pressure — a bounded 0–100 breakout gauge derived from the remaining wall height between price and the nearest barrier. Because the potential is already diffusion-normalized, the escape factor is a clean exponential of the wall height, and it concentrates toward 100 as price approaches a wall.
The calibration harness — the honesty layer. When a barrier escape is flagged, did price actually travel that way more often than the unconditional base rate? It reports Hit / Base / Edge, resolved forward on confirmed bars only. The forces are a picture; the harness is the proof. Remove any one stage and the map either asserts structure it never tested, or shows a level with no dynamics behind it.
How it works
Price is detrended into a coordinate x = ln(price) − ln(slow anchor) so the distribution stays roughly centred as price trends. A grid of x-bins spans a few volatility units either side of zero. For each bin, the decayed accumulators build drift and diffusion; neighbour bins are sample-weighted-smoothed; the force (drift ÷ diffusion) is integrated into the potential; valleys and peaks that clear a prominence margin are marked as wells and barriers; and the escape pressure to each adjacent barrier is computed. Bins with too few effective samples are greyed out rather than trusted.
How to use it
Read the landscape as context. The green valley line is the active attractor — a mean-revert target. The dashed red lines are the barriers above and below. The shaded box is the expected range of a stiff well. In the dashboard, the escape pressures rise toward 100 as price nears a wall; a pin (fade-to-mean) is flagged only when price sits mid-well in a stiff, bounded valley, and an escape is flagged when price crosses a barrier after that side's pressure was already elevated. Watch the Edge row: a positive, matured Edge means escapes have led price on this instrument; near-zero means treat the map as structure only, not a trigger. It is never a standalone signal.
Universal & non-repainting
The source is an input and everything is self-scaling (vol-scaled grid, detrended coordinate), so it runs on any symbol and timeframe; defaults suit a liquid index/futures intraday chart. All statistics use closed past bars only — both the drift/diffusion accumulators and the calibration harness update solely on confirmed bars, so their numbers never inflate intrabar. The displayed landscape naturally evolves bar to bar because it is a live estimate, not a fixed level; confirmed escape and pin marks settle on the close of their bar. Edge figures are in-sample, close-to-close, with no costs — a study aid, not a backtest.
Originality
The building blocks are public physics and statistics: stochastic drift-diffusion dynamics, conditional-moment estimation of the drift and diffusion coefficients, and escape-rate theory. What's original is the application to a price series as a live, decayed, per-level energy landscape — the detrended coordinate, the exponential-memory conditional-moment accumulators, the diffusion-normalized potential integral, the prominence-gated well/barrier detection, the escape-pressure gauge, and the forward-calibration harness that scores escapes against their base rate. This is a clean-room implementation; no third-party Pine code is reused.
Concept credits
Stochastic drift-diffusion (Langevin) dynamics and the Fokker–Planck description of a probability landscape — Paul Langevin, Adriaan Fokker, Max Planck
Estimating drift and diffusion from the conditional moments of increments (Kramers–Moyal expansion) — Hendrik Kramers, José Enrique Moyal; exposition after Hannes Risken
Barrier escape / escape-rate theory — Kramers' escape-rate framework
Forward base-rate calibration discipline — standard out-of-sample evaluation practice
Disclaimer
Research and educational tool only. Not financial advice, no recommendation, no guarantee of results. It is an effective, empirical 1-D approximation of a memoryful, multi-factor market — treat "escape pressure" as a relative, normalized gauge, not a literal probability. Estimates are noisy where samples are sparse (the greyed bins). Indicators describe past behaviour; they do not predict the future. Trading carries risk of loss. Test out-of-sample and make your own decisions. The author accepts no liability. Indicator

Bedaiwi's Smart PivotsBedaiwi's Smart Pivots is a three-level market-structure indicator that classifies price turning points as Minor, Intermediate, and Major highs and lows.
HOW IT WORKS
Minor Pivots
A Minor High is confirmed when the middle bar of a three-bar formation has a high that is strictly higher than the highs immediately before and after it.
A Minor Low is confirmed when the middle bar has a low that is strictly lower than the lows immediately before and after it.
Equal highs and equal lows are not treated as Minor pivots.
Intermediate Pivots
Intermediate pivots are derived from confirmed sequences of Minor pivots.
An Intermediate High is identified when a higher Minor High is followed by a lower Minor High.
An Intermediate Low is identified when a lower Minor Low is followed by a higher Minor Low.
Major Pivots
Major pivots apply the same hierarchical logic to confirmed Intermediate pivots.
A Major High is identified when a higher Intermediate High is followed by a lower Intermediate High.
A Major Low is identified when a lower Intermediate Low is followed by a higher Intermediate Low.
SYMBOLS AND COLORS
- Red diamond: Intermediate High
- Green diamond: Intermediate Low
- Red exclamation mark: Major High
- Green exclamation mark: Major Low
Optional Minor pivots use the same High and Low color settings.
When the replacement option is enabled, an Intermediate symbol is removed and replaced with an exclamation mark if the same point is later promoted to Major status.
HISTORICAL PLOTTING AND CONFIRMATION DELAY
Pivot identification requires subsequent price information.
A Minor pivot is confirmed only after the following bar closes. Intermediate and Major pivots require additional confirmed pivot sequences, so their confirmation occurs later.
After confirmation, the indicator places the symbol on the historical bar where the relevant high or low occurred. Therefore, a symbol displayed on an earlier bar was not necessarily available in real time on that bar.
Historical placement is used only to show the actual location of the confirmed turning point. It should not be interpreted as a signal that was known on the historical pivot bar.
SETTINGS
Users can:
- Show or hide Minor pivots
- Show or hide Intermediate pivots
- Show or hide Major pivots
- Replace an Intermediate symbol when it becomes a Major pivot
- Customize High and Low pivot colors
PRACTICAL USE
Smart Pivots can help users:
- Study market structure
- Identify significant historical swing highs and lows
- Separate short-term fluctuations from higher-level price structure
- Review possible support and resistance areas
- Add context to discretionary price-action analysis
LIMITATIONS
Smart Pivots is an analytical indicator. It does not place trading orders and does not define entries, exits, stop-loss levels, profit targets, position sizing, or expected returns.
Pivot confirmation is delayed by design because later price action is required. Results may vary between symbols, timeframes, sessions, and data feeds.
The indicator does not identify final market tops or bottoms with certainty. Historical observations do not guarantee future market behavior.
This script is provided for research and educational purposes only. It is not financial or investment advice. Indicator

NSE/BSE Key Support & Resistance | MTF Pro-3.1Advanced pivot-based Support & Resistance with multi-timeframe confluence, strength scoring, volume-confirmed breaks, and adaptive zone visuals — built specifically for Indian stock market (NSE/BSE).
Overview
Most S&R indicators draw every pivot as an equal horizontal line and extend it infinitely to the right — creating cluttered, unreadable charts. This indicator solves that by scoring every level based on how strongly price rejected it , merging overlapping levels from different timeframes into a single confluence zone, and only showing the levels that actually matter.
Built and tuned specifically for NSE and BSE stocks, indices (Nifty 50, Bank Nifty, Sensex), and F&O instruments.
Key Features
🔷 Multi-Timeframe Support (4 TFs)
Enable up to 4 independent timeframes simultaneously. Each timeframe's pivots are detected separately and tagged in the label — , , , . You choose which timeframes to activate.
🔷 Cross-TF Confluence Merge
When two different timeframes produce a pivot at nearly the same price (within ATR proximity), they automatically merge into a single stronger zone instead of drawing two overlapping boxes. The label shows both sources — — and the level receives a confluence strength bonus. These merged zones are your highest-priority trade levels.
🔷 Advanced Strength Scoring
Every level carries a live strength score (★) that accumulates over time. Each touch is scored individually based on:
Wick size relative to candle range (how strongly price rejected)
Distance of close from the level (how convincingly price pulled back)
Whether volume was above average on that candle
Whether a strong body / engulfing candle formed
A barely touching wick scores ~0.5. A high-volume hammer rejection scores ~5–6. The score drives both zone opacity and zone width — strong levels appear bold and wide, weak levels fade visually.
🔷 Volume-Based Break Filter
A level is only invalidated when price closes beyond it and volume meets a configurable threshold (default: 1× average volume). Low-volume spikes through a level are ignored as false breakouts — the zone remains valid. Break alerts include the volume ratio so you know the conviction behind the move.
🔷 Adaptive Zone Visuals
No right extension — zones terminate at the current bar (valid) or the break bar (broken). No infinite lines cluttering the right side of your chart.
Opacity scales with strength — strongest levels are most visible, weakest levels are nearly transparent.
Zone width scales with strength — high-confidence zones are wider, giving a visual sense of the price area's importance.
🔷 Clean Labels
Each label shows the full picture at a glance:
21450.00 ★6.5 ×3
Timeframe source | Price | Strength score | Touch count
Settings Guide
SettingWhat it doesPivot LengthBars each side to confirm a pivot. Higher = fewer, stronger levelsMin StrengthHide levels below this score. Raise to show only confirmed levelsATR Merge DistanceHow close two levels must be to merge into oneInvalidationClose-based (reliable) or Wick-based (faster) break detectionVolume Break FilterRequire above-average volume to confirm a breakoutMin Volume MultiplierHow many times average volume needed to confirm a breakMax Active LevelsCap total zones shown on chartStrength → Zone OpacityToggle adaptive opacity based on strength score
How to Use
Bounce trades — price enters a green (support) zone → wait for a rejection candle with volume → enter above the rejection candle high, SL below zone bottom.
Rejection trades — price enters a red (resistance) zone → wait for a bearish candle with volume → enter below candle low, SL above zone top.
Breakout trades — price closes beyond a zone with high volume (break alert fires) → wait for pullback to the broken level → trade in the direction of the break.
Highest priority setups — zones tagged or with ★ score above 5 and multiple touches. These are the levels institutional money respects.
Alerts
The indicator fires alert() calls for:
Break confirmed — includes ticker, price, and volume ratio
Retest — includes ticker, price, and touch quality score
Set alert condition to "Any alert() function call" in PulseWire's alert dialog.
Notes
Designed and tested on NSE/BSE equities and F&O stocks
Works on any timeframe from 1 minute to Weekly
All calculations are original — pivot detection, strength engine, confluence merge, and volume filter are built from scratch in Pine Script v6 Indicator

Adaptive Consensus Trail Structure, Regime & SelfAdaptive Consensus Trail — Structure, Regime & Self-Test
A trailing stop that sits on the agreement of several structural references, adapts to the market regime, and forward-tests its own signals so the numbers it shows are measured, not asserted.
What it is
Most trailing stops follow one idea — an ATR band, a SuperTrend, a moving average. This one places the stop where a small committee of independent structural references agree, reads how confident that agreement is, widens or tightens itself according to the market regime, and then continuously audits its own flips and reports the edge it actually produced on your data.
The committee has five members, each locating support/resistance from a different lens:
Anchored VWAP band — fair value for the session/week/month
Session / naked volume Point-of-Control — the price the most volume traded at, carried forward until revisited
Fair-Value-Gap midpoint — unfilled imbalance
Swing pivot — structural memory
Order-flow absorption — where aggressive buying/selling was absorbed (via Bulk Volume Classification)
Why these parts belong in one script (mashup justification)
Each reference alone whipsaws on an index, and each is right in different conditions. They are combined because they correct one another, and the entire value of the script is in that interaction — not in any single line:
A reliability layer scores every reference's historical respect rate with a Wilson lower bound, so a reference that keeps getting ignored loses its vote instead of dragging the stop around.
A consensus layer keeps only the densest agreeing cluster of references, so the stop sits on genuine agreement rather than on an average nobody respects, and far-apart references never force a permanent "no signal."
A regime layer (efficiency ratio + ADX + band-width + a volatility-cluster read + a Hurst persistence estimate) widens the band and tightens the flip confirmation in chop — this is what removes the whipsaw.
A self-test layer forward-scores every flip and recalibrates the confidence number so it means what it says.
Split apart, these are five overlays that each mislead in a range. Wired together, they are one self-correcting, self-auditing trail. That is the reason for combining them.
How it works (six layers)
References are computed on the bar close.
Reliability — rolling-capped respect counts per reference give a Wilson lower-bound "trust." POC is a magnet, so it is judged by forward reaction (did price reject away before breaking through?), not a same-bar close, which keeps its trust honest.
Consensus — the densest agreeing cluster within an ATR band becomes the trail's target; the envelope and confidence are measured on that cluster only.
Adaptive backbone — an efficiency-ratio / regime-adaptive band (Adaptive, Chandelier, or Blend) that widens in chop.
The trail — high confidence pulls the stop toward structure (floored a minimum ATR off price); low confidence rides the wide band, so it flips less in noise.
Self-test — every flip is forward-resolved by triple-barrier first-touch against an unconditional base rate, split by strength tier and by regime, with a walk-forward in-sample→out-of-sample check, a runs test of independence, a Brier score, and a confidence recalibration.
How to use it
Read the top banner for the one-line bias — BULLISH / BEARISH / WAIT — and the READ legend for what to do. The coloured line is your stop: support in an uptrend, resistance in a downtrend. BUY / SELL labels print only on confirmed, sufficiently-confident, higher-timeframe-aligned flips.
The dashboard gives detail top-down: each reference's level and trust, the consensus, raw → calibrated confidence, regime (with Hurst and ADX), the higher-timeframe invalidation stop, and a FULL / HALF / STAND-ASIDE suggestion.
Before sizing, open the Self-Test panel and read the Edge column (hit% − base%), not the raw hit-rate. A ★ means the edge's confidence interval clears the base rate. Prefer signals where the walk-forward change isn't badly negative and the runs test isn't "streaky." Being honest about it: on many indices this tool shows real edge in range and volatile regimes on higher timeframes and little-to-none on very low timeframes or once a trend is already confirmed — the panel makes that transparent so you can pick your spots.
Works on any market
Set the Price source, and for symbols with no native volume set a Borrow-volume proxy (e.g. a futures contract). The panel theme adapts to your chart background automatically. Backbone: Adaptive / Chandelier / Blend. Absorption: order-flow (BVC) or simple. An optional intrabar resolution builds a finer volume profile where available.
Originality
The committee-of-references design, the cluster-not-average consensus, the reliability weighting that lets references lose their vote, the forward-reaction POC respect test, and the confidence self-calibration are the author's own work. The underlying techniques are standard and fully credited below.
Non-repaint
References, regime, consensus and the trail all evaluate on the close of the bar; the live bar is provisional and settles on close. Self-test events are logged and resolved only on confirmed bars and resolve on bars after their trigger at fixed barriers, so hit / base / edge use no look-ahead. The higher-timeframe stop uses a lookahead-off request.
Concept credits
Wilson score interval (E. B. Wilson); efficiency ratio (P. Kaufman); ADX / DMI / ATR / volatility-stop lineage (J. W. Wilder); anchored VWAP (industry standard); volume profile / value area / point-of-control — Market Profile (J. P. Steidlmayer, developed by J. F. Dalton); triple-barrier first-touch labelling (M. López de Prado); runs test of randomness (A. Wald & J. Wolfowitz); rescaled-range / Hurst exponent (H. E. Hurst); Brier score (G. W. Brier); Bulk Volume Classification / VPIN (D. Easley, M. López de Prado & M. O'Hara); reliability-bin (isotonic-style) calibration is standard forecasting practice.
Limitations & disclaimer
"Absorption" is a volume proxy — base data has no true tick order flow, so the buy/sell split is estimated from bar moves, not measured. Confidence is context, not a promise of profit. The self-test is descriptive of past behaviour on the loaded symbol (fixed barriers, no costs or slippage) — a study aid, not a backtest and not a guarantee. A measured edge is what flips did historically here, not a forecast.
This script is for research and education only. It is not financial advice, not a recommendation to buy or sell, and not a guarantee of any outcome. Trading carries risk of loss; your decisions are your own. Test on your own data and use independent risk management before relying on it. Indicator

ATH/ATL Fibonacci Retracement - Labels, Golden Pocket & AlertsPlots Fibonacci retracement levels anchored to the all-time high and all-time low of the loaded chart history. The range updates automatically as new highs or lows print, so the levels always reflect the full extent of price action without manual redrawing.
Features:
- Auto ATH/ATL tracking — the 0% and 100% anchors update dynamically across all available history.
- Flip toggle — switch 0% between the top (all-time high) and the bottom (all-time low) to suit your bias or the direction of the move you're measuring.
- Standard Fib levels — 0%, 23.6%, 38.2%, 50%, 61.8%, 78.6%, and 100%, each color-coded.
- On-chart labels — every level shows its retracement percentage alongside the exact price, placed to the right of the last bar. Adjustable offset.
- Golden pocket shading — the 61.8%–78.6% reaction zone is highlighted for quick visual reference. Toggle on/off.
- Built-in alerts — alert conditions on crosses of each major level, plus a golden-pocket entry alert, ready to wire up from the Create Alert dialog.
Notes: Levels are based on the chart's loaded history, so the all-time high/low depends on how far back your data goes and your timeframe. This is an analysis tool, not financial advice — use it alongside your own process and risk management. Indicator

Adaptive RSI Supertrend [MarkitTick]💡 A highly advanced, multi-dimensional momentum and volatility tracking ecosystem designed for professional market analysis. Rather than relying on traditional price-based trailing stops, this indicator projects a volatility-banded Supertrend directly onto an Adaptive Relative Strength Index (ARSI). This creates an incredibly responsive momentum oscillator that dynamically adjusts its own thresholds based on underlying market kinematics. By integrating high-order digital signal processing filters, higher timeframe confirmations, and volume-weighted validation, this tool provides a comprehensive, terminal-style perspective on market regime, momentum acceleration, and localized price extremes without succumbing to the noise typical of standard oscillators.
✨ Originality and Utility
The standard Relative Strength Index is frequently plagued by false signals, erratic whipsaws during consolidation, and a failure to contextualize momentum within broader structural trends. This script resolves these systemic inefficiencies through a deliberate and mathematically sound synthesis of disparate analytical domains. The combination of an ARSI with a localized Supertrend is not an arbitrary pairing; it solves the problem of static overbought/oversold boundaries. By mapping average true range (ATR) bands onto the RSI itself, the indicator creates dynamic, breathing support and resistance levels for momentum. Furthermore, the integration of advanced smoothing algorithms (Kalman and LLAMA) strips out high-frequency noise, ensuring that crossovers between the ARSI and the Supertrend-derived Merged Line represent statistically significant momentum shifts rather than fleeting market anomalies. This unified framework replaces the need for an overlapping array of disparate indicators, offering a singular, high-contrast dashboard for absolute market clarity.
🔬 Methodology and Concepts
The internal architecture of this tool is built upon several synchronized analytical layers, heavily optimized to protect the integrity of the underlying logic while delivering seamless visual output.
● Adaptive Momentum Core
At the heart of the script is the ARSI, which abandons traditional static lookbacks in favor of a responsive differential tracking model. It evaluates the absolute range of price action against directional movement, feeding these differences through a recursive smoothing engine. This results in an oscillator that remains highly sensitive to genuine trend initiation while heavily penalizing sideways chop.
● Digital Signal Processing (DSP) Filters
The raw momentum data is processed through user-selectable DSP algorithms to extract the true signal from market noise. The Kalman Filter dynamically estimates the true state of momentum by balancing process noise against measurement noise, adapting instantly to volatility spikes. Alternatively, the LLAMA filter applies an efficiency-ratio-driven alpha scaling model, tightening its smoothing factor during periods of low efficiency and relaxing it during strong directional bursts.
● Oscillator-Bound Supertrend
Instead of applying a Supertrend to price, the script calculates a specialized ATR based on the frame-to-frame variance of the ARSI. It then projects upper and lower deviation bands around the ARSI, maintaining a directional bias based on trailing breakouts. The resulting baseline is then averaged with the DSP-filtered signal to create the "Merged Line," serving as the ultimate zero-lag trailing threshold for momentum.
● Multi-Factor Regime Scoring
The script continuously evaluates the broader market context by scoring four distinct components: the absolute level of the ARSI, the trigonometric angle of the ARSI trajectory, the state of the oscillator Supertrend, and the relationship of price to a macroeconomic baseline moving average. These factors are normalized and aggregated into a 0-100 Regime Score, offering a unified metric of trend health.
🎨 Visual Guide
The visual presentation is engineered for high-contrast, dark-mode optimized aesthetics, providing immediate, terminal-style data processing without chart clutter.
● Chart Elements
Color-Matched Candles: Price candles are painted based on the kinetic relationship between the ARSI and its signal line. Neon Cyan indicates strong bullish momentum, Dark Teal indicates weak bullish momentum, Deep Crimson indicates strong bearish momentum, and Maroon denotes weak bearish pressure. Slate Gray represents a neutral momentum state.
Dynamic Support/Resistance Boxes: Translucent, neon-bordered zones (Cyan for Support, Crimson for Resistance) highlight localized structural extremes, providing immediate context for price breakouts.
Trade Projection Labels: When crossover signals fire, dashed projection lines emerge, extending forward to display precisely calculated Entry (Slate), Stop Loss (Crimson), and multi-tiered Take Profit (Neon Green) levels based on dynamic risk-to-reward parameters.
Chart Angle Label: A floating text label displays the exact trigonometric angle and classification of the current trend (e.g., "Strong Uptrend / 45.2°").
● Oscillator Pane Elements
Adaptive RSI Line: Plotted with a dynamic gradient that transitions from Deep Crimson (extreme weakness) to Neon Cyan (extreme strength), instantly conveying momentum depth.
Merged Signal Line: A distinct Neon Purple to Deep Pink gradient line acting as the trailing support/resistance for the ARSI.
Divergence Histogram: Translucent Cyan and Red histogram bars plot the delta between the ARSI and the Merged Line, visualizing the acceleration or deceleration of momentum crosses.
Background Shading: The oscillator pane background shifts to a deep blue/purple tone during overbought (above 80) and oversold (below 20) extremes. A striking Electric Gold background illuminates periods where momentum enters a highly compressed "Squeeze" state.
Signal Markers: Crisp "BULL" (Cyan) and "BEAR" (Red) text labels appear on the oscillator when fully validated crossovers occur.
● The Analytics Dashboard
A fixed, dark-background HUD presents granular telemetry using segmented block bars and color-coded text for rapid scannability:
ARSI Level: Percentage reading of the current momentum state.
Signal Strength: Block visualization of the DSP-filtered baseline.
Angle Momentum & Acceleration: Metrics tracking the velocity and delta-velocity of the trend trajectory.
Supertrend & Market Bias: Text readouts indicating the dominant structural direction.
HTF Trend & Volume: Validation checks displaying the alignment of higher timeframes and localized volume surges.
Volatility ATR & Last Cross: Precise numerical readouts of market expansion and the duration since the last major signal.
Regime Score: The composite 0-100 metric, color-coded from Crimson (Bear) to Neon Magenta (Transition) to Cyan (Bull).
📖 How to Use
Identify Momentum Regime: Monitor the Dashboard's Regime Score. A score above 70 combined with a Neon Cyan ARSI line indicates an environment where long positions are statistically favored.
Trade the Crossover: Wait for the ARSI to cross the Merged Line. Validated crosses will generate a distinct "BULL" or "BEAR" label. Check the Dashboard to ensure the Volume Filter and HTF Trend are aligned (marked with a green checkmark).
Navigate Squeezes: When the oscillator background turns Electric Gold, the market is experiencing a severe volatility contraction. Avoid initiating new positions during the squeeze. Wait for the background color to clear, accompanied by an Alert indicating a Squeeze Breakout, before trading the subsequent expansion.
Manage Risk via Trade Labels: Upon a valid signal, utilize the automatically projected Entry, SL, and TP lines on the main chart to structure your position sizing according to the script's ATR-derived risk mechanics.
⚙️ Inputs and Settings
ARSI & Signal Lengths: Controls the primary lookback periods for the oscillator and its baseline.
Signal Filter Type: Select between RMA, Kalman Filter, or LLAMA to dictate the specific mathematical model used for noise reduction.
Supertrend ATR Length & Factor: Adjusts the sensitivity and width of the volatility bands applied to the oscillator.
Volume Filter Multiplier: Determines the threshold required for volume validation (e.g., 1.5 requires volume to be 50% above its moving average).
HTF Timeframe: Defines the higher timeframe used for macro-trend alignment (defaults to Daily).
Squeeze Angle Threshold: The maximum absolute angle permitted to trigger a volatility contraction state.
Trade Labels (Risk:Reward): Allows fine-tuning of the Stop Loss padding and the precise ratios for TP1, TP2, and TP3 targets.
🔍 Deconstruction of the Underlying Scientific and Academic Framework
This indicator relies on a robust foundation of applied mathematics and digital signal processing. The core methodology employs non-linear dynamic state estimation. Unlike standard moving averages that suffer from inherent group delay, the integration of algorithms akin to the Kalman filter allows the script to recursively project the next state of momentum and update that projection based on incoming price data. This minimizes lag while aggressively smoothing standard deviation anomalies.
Furthermore, the application of volatility banding (ATR) directly to an bounded oscillator (RSI) represents a shift from price-domain analysis to momentum-domain analysis. By calculating the variance of the momentum itself, the script acknowledges that momentum has its own distinct volatility profile, independent of price action. The kinematics of the trend are evaluated using trigonometric functions to derive the slope (velocity) and the rate of change of the slope (acceleration). This multidimensional approach ensures that signals are not generated merely by price crossing a threshold, but by a mathematically validated shift in the kinetic energy of the market.
⚠️ Disclaimer
All provided scripts and indicators are strictly for educational exploration and must not be interpreted as financial advice or a recommendation to execute trades. We expressly disclaim all liability for any financial losses or damages that may result, directly or indirectly, from the reliance on or application of these tools. Market participation carries inherent risk where past performance never guarantees future returns, leaving all investment decisions and due diligence solely at your own discretion. Indicator

Dynamic Gravity Attractor (DGA) [MarkitTick]💡 An advanced technical indicator designed to identify, weight, and visualize significant price zones using a physics-inspired gravitational model. By treating historical price pivots as physical masses that exert gravitational pull on the current price, this tool dynamically highlights levels of high structural importance. This offers traders a unique, quantitative perspective on support, resistance, and the overarching market equilibrium based on continuous volume and touch data.
✨ Originality and Utility
Unlike standard static support and resistance indicators that simply draw horizontal lines at arbitrary swing highs and lows, this system introduces a dynamic, weighted engine based on volume execution and touch frequency.
Traditional indicators often clutter the chart with dozens of obsolete lines. This tool resolves the issue by clustering proximate price levels using an Average True Range based spatial resolution. This synthesizes fragmented levels into cohesive, highly actionable Gravity Zones.
The core utility lies in its ability to quantify the relative strength of these zones using a gravitational constant. Instead of merely sorting by recency, it sorts by actual structural pull. This allows traders to cleanly distinguish between minor intraday speed bumps and major macroeconomic price attractors that have a high probability of influencing future price routing.
🔬 Methodology and Concepts
The script operates on a robust foundation of interconnected logical pillars, ensuring a precise reading of historical market structure:
• Pivot Detection and Clustering: The indicator identifies standard non-repainting pivot highs and lows using a defined lookback window. Instead of plotting each pivot individually and causing chart noise, it evaluates if a new pivot falls within an existing cluster radius. This radius is dynamically determined by a user-defined percentage of the 14-period Average True Range. If a match is found, the cluster aggregate price, volume, and touch count are updated using a volume-weighted average formula.
• Mass Calculation: Each clustered zone is assigned a quantitative mass. This mass is a blended metric derived from the total trading volume transacted at that specific level and the frequency of price touches it has endured. Users can dynamically adjust the weighting of these two components to favor volume-heavy execution levels or frequently tested psychological levels.
• Gravitational Pull: Applying a concept directly akin to classical physics, the indicator calculates the gravitational force of each active zone relative to the current closing price. The formula incorporates the zone calculated mass, a user-defined Gravitational Constant, and the inverse square of the absolute distance between the zone and the current price.
• Net Force and Equilibrium: By aggregating the gravitational pull of all active zones above the current price and subtracting the zones below, the script calculates a continuous Live Net Force. This net force dictates the overall directional bias of the underlying market structure.
🎨 Visual Guide
The tool provides a rich, multi-layered visual experience, utilizing dark-mode optimized palettes to allow traders to interpret complex market structures at a rapid glance:
• Gravity Zone Lines: Horizontal lines representing the clustered price levels. The strongest mathematical attractor is plotted with a solid line, while weaker zones use dashed line styles to indicate secondary importance. The thickness of the line directly correlates with its top-ranking status.
• Zone Colors: Levels situated above the current price are colored in a visual gradient from vibrant purple to deep violet, representing resistance or overhead gravity. Levels situated below are colored in a gradient from yellow to dark orange, representing support or underlying gravity. The color intensity and opacity scale dynamically with the calculated mass of each zone.
• Gravity Fields (Halos): Semi-transparent background boxes surrounding the strongest top-ranked gravity zones. The vertical height of the box represents the zone mathematical sphere of influence, calculated using the true range and the zone specific mass.
• Gravity Center: A distinct dotted cyan line plotting the weighted center-of-mass between the strongest overhead attractor and the strongest underlying attractor. This acts as the market current fulcrum.
• Dynamic Labels: Textual tags attached to the right of the gravity lines. These indicate the exact price level, an arrow denoting if the force is pushing up or down, and a percentage representing its gravitational strength relative to the maximum active zone.
• Heatmap Candles: The main chart candles are recolored based on the Live Net Force. A bullish bias paints the candles in a specific underlying color, while a bearish bias paints them in an overhead color. Border and wick colors adapt similarly to show micro-shifts in pressure.
• Gravity Dashboard: A comprehensive on-chart data table displaying the active number of tracked levels, the exact prices of the top upper and lower attractors, the Net Force bias, the current cluster size, and a visual block-bar representation of the highest active mass percentage.
📖 How to Use
• Trend Identification: Observe the Heatmap Candles and the Net Force metric on the Gravity Dashboard. A sustained bullish color bias suggests the price is being pulled upward by a stronger overhead attractor or violently pushed from a massive underlying support base. Traders should look to align their directional trades with this dominant net force.
• Targeting and Exits: Use the strongest Gravity Zone Lines as primary profit targets or areas to scale out of positions. Because these zones possess high mass, price tends to inevitably gravitate toward them over time.
• Entry Confirmation: Wait for the price to enter a Gravity Field. If price action demonstrates rejection patterns, long wicks, or volume anomalies within these specific halo zones, it provides a high-probability entry for mean-reversion trades.
• Equilibrium Trading: The Gravity Center line represents a literal point of balance between the primary opposing structural forces. Observing the price crossing, retesting, and holding this level can indicate a fundamental shift in structural control from sellers to buyers, or vice versa.
• Automated Alerts: The script includes built-in alert conditions for when the price comes within a tight proximity to the strongest above or below zones. It also fires alerts when the overall Net Force shifts direction. All alerts and webhooks are constructed as strictly formatted JSON strings designed for flawless third-party execution, dynamically calculating and including the Entry Price, the precise Take Profit target, and the exact Stop Loss invalidation price.
⚙️ Inputs and Settings
• History Depth (bars): Determines how far back in time the script looks to evaluate active pivots. A higher number tracks long-term macro zones, while a lower number focuses on immediate intraday structure.
• Number of Gravity Zones: Limits the maximum number of attractor lines drawn on the chart to prevent visual clutter.
• Level Cluster Resolution (ATR%): Controls how closely pivots must be to merge into a single, heavier zone. A higher value aggregates more historical levels together, creating fewer but stronger zones.
• Gravitational Constant G: A mathematical multiplier that scales the overall gravity calculations. Adjusting this tweaks the sensitivity of the Net Force output.
• Mass Components (Volume & Touch Weight): Fractional sliders allowing the user to adjust whether a zone mass is more heavily derived from transacted volume or the sheer number of times the price has historically tested the level.
• Minimum Touch Count: The baseline number of times a price level must be tested before it is officially registered as having enough mass to generate gravity.
• Visual Settings: Comprehensive toggles to independently turn lines, text labels, halo fields, the dashboard table, and center-of-gravity boxes on or off according to individual visual preference and chart cleanliness. All colors are fully user-configurable without hardcoding.
🔍 Deconstruction of the Underlying Scientific and Academic Framework
The tool borrows directly from classical mechanics, specifically the law of universal gravitation, to mathematically model financial market microstructure. In standard physics, the attractive force of gravity between two independent objects is directly proportional to the product of their masses and inversely proportional to the square of the distance between their centers.
In the context of this script, the current market closing price acts as a dynamic point mass navigating a static field of larger, stationary masses, representing the historical support and resistance clusters. The script operationalizes this concept by calculating Mass as a composite statistical index of cumulative trading volume and historical test frequency. Volume acts as the density of the price level, representing committed capital and trapped liquidity, while touch frequency represents the psychological reinforcement and memory of the level among market participants.
By rigidly utilizing the inverse square law of distance, the indicator mathematically guarantees that nearby price levels exert exponentially more influence on current price action than distant levels. This accurately reflects the highly localized nature of market liquidity, order book depth, and slippage. Furthermore, the clustering algorithm employs a dynamic threshold based on Average True Range, introducing a volatility-normalized spatial resolution. This specific mechanism ensures that the radius of a mass point expands in highly volatile environments and contracts in tight consolidations, strictly adhering to established principles of adaptive signal processing, robust statistical smoothing, and dynamic time warping.
⚠️ Disclaimer
All provided scripts and indicators are strictly for educational exploration and must not be interpreted as financial advice or a recommendation to execute trades. We expressly disclaim all liability for any financial losses or damages that may result, directly or indirectly, from the reliance on or application of these tools. Market participation carries inherent risk where past performance never guarantees future returns, leaving all investment decisions and due diligence solely at your own discretion. Indicator

Order Blocks with Volume [Quantum Algo]Order Blocks with Volume
OVERVIEW
This indicator finds order blocks — the candles where a directional move originated before price broke market structure — and measures the buy and sell volume that traded inside each one. Every zone is drawn as a box that extends forward until price returns to it, and each active zone is labelled with its total volume and its buy/sell split, so you can tell at a glance which blocks were built on heavy participation and which were not.
It is built entirely from price and volume on the chart you apply it to. There is no repainting of confirmed zones: detection runs only on closed bars.
HOW DETECTION WORKS
1. Market structure. Confirmed swing highs and swing lows are located using a pivot of configurable length (Swing Length). A larger value isolates more significant structure and produces fewer, larger zones.
2. Break of structure. When a candle closes above the most recent confirmed swing high (bullish) or below the most recent confirmed swing low (bearish), the indicator treats it as a break of structure and looks for the order block that produced the move.
3. The order block candle. Starting from the breakout, the script steps back over the impulse candles and marks the last opposite-close candle before the move began — the last down-close candle for a bullish block, the last up-close candle for a bearish block. This is the origin of the displacement and the level price often revisits.
4. Zone range. The block is drawn from that candle using either its full high-to-low range (Wick) or its open-to-close body (Body).
VOLUME ENGINE
For each order block candle the indicator estimates how much of the traded volume was buying versus selling, using where the candle closed within its own range:
- Buy volume is weighted by how close the candle closed to its high.
- Sell volume is weighted by how close it closed to its low.
This split is shown two ways:
- Buy / Sell volume bars: two horizontal bars anchored at the left of the zone — buy on the top half, sell on the bottom half — with lengths proportional to each side. The Volume Bar Length setting controls how long they can extend (they are automatically kept inside the zone).
- Volume label: written inside the zone on the right edge, showing the total volume of the block and the buy% / sell% balance.
Volume strength is the block's volume divided by the average volume over a configurable baseline (Volume Baseline Length). It is used by the optional filter below to keep only the heaviest blocks.
ZONE LIFECYCLE
- Active. A live zone extends to the current bar and shows its volume bars and label.
- Mitigation. When price first trades back into a zone, the 50% line marks the equilibrium and an alert can fire.
- Invalidation. A zone is invalidated when price moves through its far edge. The source can be a wick touch or a candle close (Invalidation Source).
- Breaker. If "Flip Broken Zones to Breaker Blocks" is on, an invalidated zone is kept and re-coloured as a breaker, since broken support can act as resistance and vice versa.
- Historic. If "Keep Invalidated Zones (Historic)" is on, finished zones are frozen at the bar they died, re-coloured neutral, and their volume bars and text are removed to keep the chart clean.
- If neither option is on, invalidated zones are removed.
To avoid clutter the indicator will not stack a new zone on top of an existing active zone in the same area, limits the number of active zones per side, and automatically drops any zone older than the drawing range.
ON-CHART ELEMENTS
- Coloured boxes: bullish and bearish order blocks (and a neutral colour for breaker/historic).
- Two inner bars per active zone: buy (top) and sell (bottom) volume.
- A dotted line through the middle of active zones: the 50% mitigation / equilibrium level.
- Text inside active zones: total volume and buy% / sell%.
SETTINGS
Structure & Detection
- Swing Length — pivot length used to define structure. Higher = larger, more significant zones.
- Impulse Lookback (bars) — how far back to search for the origin candle after a break of structure.
- Zone Range — Wick (full range) or Body (open-to-close).
- Max Active Zones / Side — cap on simultaneously active zones per direction.
Invalidation
- Invalidation Source — Wick (a high/low piercing the zone) or Close (a candle closing beyond it).
- Flip Broken Zones to Breaker Blocks — keep and re-colour broken zones as breakers.
- Keep Invalidated Zones (Historic) — freeze finished zones instead of deleting them.
Volume Engine
- Show Volume Label — write volume and buy/sell% inside active zones.
- Show Buy / Sell Volume Bars — draw the proportional buy/sell bars.
- Volume Baseline Length — averaging length used to rate volume strength.
- Volume Bar Length (bars) — maximum length of the buy/sell bars.
Filters
- Only Show High-Volume Zones — hide blocks below the strength threshold.
- Min Volume Strength (x avg) — threshold as a multiple of average volume.
- Filter Oversized Zones — skip blocks taller than the ATR limit.
- Max Zone Height (ATR x) — the height limit, in multiples of ATR.
Style
- Bullish Zone, Bearish Zone, Buy Volume, Sell Volume, Breaker / Historic, Text — colours.
- Zone Extension (bars) — how far active zones project past the current bar.
- Show 50% Mitigation Line — toggle the equilibrium line.
ALERTS
Alerts are raised through the alert() function for two events: an order block being tapped (mitigation) and an order block being broken (breaker formed). To use them, create an alert on the indicator and choose the "Any alert() function call" condition.
HOW TO USE
Order blocks mark areas where significant orders were likely placed. Traders commonly watch for price to return to an un-mitigated block and react there, and use the buy/sell volume split and strength to judge how meaningful a block is — a block built on high, one-sided volume is generally treated as more significant than a thin one. Combine the zones with your own confirmation and risk management; this tool highlights levels, it does not generate buy or sell signals.
DISCLAIMER
Nothing here is financial advice or a guarantee of any outcome. Past behaviour of price around order blocks does not predict future results. Always do your own research and manage risk. Indicator

Monthly Statistical LevelsMonthly Statistical Levels is an open-source indicator that plots monthly reference levels based on historical monthly price extensions from the monthly open.
The goal of the script is to provide a clean statistical map for the current and recent months. It is designed as a market structure and reference-level tool, not as a buy/sell signal system.
How it works
The script uses completed monthly candles from PulseWire data.
For each completed month, it calculates two historical extensions:
High extension:
Monthly High minus Monthly Open, divided by Monthly Open.
Low extension:
Monthly Open minus Monthly Low, divided by Monthly Open.
These historical extensions are stored separately for upside and downside movement.
At the start of each new month, the script uses the current monthly open and projects five reference levels:
Strong High
Avg High
Open
Avg Low
Strong Low
Avg High is based on the historical average upside extension from the monthly open.
Avg Low is based on the historical average downside extension from the monthly open.
Strong High uses the average upside extension plus a configurable standard deviation multiplier.
Strong Low uses the average downside extension plus a configurable standard deviation multiplier.
By default, the strong multiplier is set to 1.0, meaning strong levels use the historical average extension plus one standard deviation.
Lookback options
Users can choose the statistical lookback used for the calculations:
24 months
36 months
60 months
120 months
All available history
Using all available history can make the levels more stable, but it may also mix different market regimes. This is especially important for assets with structural changes, short trading histories, or very different behavior across cycles.
No lookahead logic
The indicator uses completed monthly candles to build the historical sample.
Each month keeps the levels calculated with the information available at the start of that month. The current month is used only for its monthly open, which is known once the month begins.
This means the levels are not recalculated using future monthly highs or lows.
How to use it
The levels can be used as a visual reference for monthly range structure.
Possible uses include:
Identifying where price is trading relative to its monthly statistical range.
Comparing the current month with recent monthly behavior.
Observing when price reaches average or stronger historical extension zones.
Keeping a cleaner chart with only the most recent visible months.
Main settings
Visible months:
Controls how many recent months are displayed. The default is 6 and the maximum is 12 to keep the chart readable.
Statistical lookback:
Controls the historical sample used to calculate average and strong levels.
Minimum closed months:
Defines the minimum number of completed monthly candles required before plotting levels.
Strong multiplier:
Controls how far strong levels are placed from average extension levels using standard deviation.
Labels:
Users can show labels only for the current month, for all visible months, or turn labels off.
Alerts
The script includes optional alert conditions for touches of:
Strong High
Avg High
Open
Avg Low
Strong Low
Limitations
This indicator does not predict future price movement.
It does not identify support or resistance with certainty.
It does not generate buy or sell signals.
It does not evaluate trend, fundamentals, macro conditions, liquidity, positioning, or news.
The levels depend on the PulseWire symbol selected, the available historical data, and the chosen lookback window.
Why it may be useful
Many traders look at monthly opens, monthly ranges, and volatility-based zones separately. This script combines those ideas into one clean open-source tool: monthly open-based statistical levels built from completed historical monthly extensions.
It helps traders visualize where price is trading relative to its own historical monthly behavior, while keeping the chart simple and readable. Indicator

Auction Regime Atlas v1.0 # 🧭 Auction Regime Atlas v1.0
Auction Regime Atlas is a Pine Script v6 overlay indicator designed to visualize market acceptance, value migration, rejected auction areas, and contextual auction regimes directly on the chart.
❌ It is not a buy/sell signal tool.
❌ It is not a strategy.
❌ It is not an orderflow or liquidation-data replacement.
🎯 The goal is to help traders understand where price has been accepted, where value is forming, where price has moved away from value, and whether the current market context is balanced, transitional, displaced, or low quality.
---
## 💡 Core Idea
Markets often rotate around accepted value before moving into new auction areas.
Auction Regime Atlas maps that process by combining:
* price acceptance over a lookback window
* volume participation
* candle efficiency
* wick/rejection behavior
* higher-timeframe context
* regime classification
* distance from current value
📊 The result is a compact visual framework for understanding auction context without flooding the chart with signals.
---
## 🚀 Main Features
### 1. 🎯 Core Value Band
The Core Value Band highlights the price area where recent market activity shows the strongest acceptance.
It is calculated from a price-bin acceptance model using:
* time spent near price
* volume concentration
* close location
* wick/rejection behavior
⚠️ This band is meant as auction context, not as a mechanical support or resistance level.
---
### 2. 📏 Acceptance Edges
Upper and lower acceptance edges define the boundaries of the current accepted value area.
These edges help identify whether price is:
* inside accepted value
* above value
* below value
* far away from value
---
### 3. 🔄 Auction Regime
The dashboard shows a simplified auction regime state.
Current v1.0 regime states include:
* Neutral
* Balance
* Migration Up
* Migration Down
* Failed Auction
🛡️ The regime engine uses confirmed-bar logic and cooldown handling to avoid excessive state flipping.
---
### 4. 🌍 HTF Context
The indicator includes a higher-timeframe context layer based on confirmed higher-timeframe data.
ℹ️ This is used only as context and does not create entry or exit signals.
---
### 5. 📍 Location Awareness
The Location field shows where current price is relative to the accepted value area:
* Inside Value
* Above Value
* Below Value
* Away From Value
* No Value
When price is far away from the value zone, the visual relevance of the Core Band is reduced so the zone does not appear like an active trade signal.
---
### 6. 🎨 Visual Modes
Auction Regime Atlas includes three modes:
#### 🎯 Focus Mode
A clean minimal view for live chart reading.
Shows:
* Core Value Band
* Acceptance Edges
* compact dashboard
* no debug rows
#### ⚖️ Balanced Mode
Adds additional context zones while keeping the chart clean.
Shows:
* Core Value Band
* Acceptance Edges
* transitional/rejection context
* vacuum/context areas where applicable
#### 🔬 Research Mode
Adds validation and diagnostic rows for development, review, and deeper inspection.
Shows:
* object count
* validation status
* pending state information
* alert condition status
---
## 📋 Dashboard Fields
The compact dashboard includes:
* Mode
* Regime
* HTF Context
* Core Value Band
* Acceptance Score
* Location
* Activity
* Context Quality
🔬 Research Mode can additionally show:
* Validation Status
* Object Count
* State Debug
* Alert Debug
---
## 🔔 Alerts
The indicator includes four confirmed-bar alert conditions:
* New Auction Regime
* Value Migration Started
* Acceptance Edge Broken
* Failed Auction Detected
⚠️ Alerts are context alerts only.
They are not trade entry or exit instructions.
---
## 🛠️ Suggested Use
Auction Regime Atlas is best used as a context layer.
Useful questions:
* Is price currently inside accepted value?
* Is price moving away from value?
* Is the market balanced or transitioning?
* Did price leave value without building new acceptance?
* Is the current move happening near or far away from accepted value?
* Does higher-timeframe context support or contradict the current auction?
✅ Recommended starting use:
* Focus Mode for clean chart reading
* Balanced Mode for broader context
* Research Mode only for diagnostics and validation
---
## 📖 Practical Workflow
A simple way to interpret auction conditions is to combine Regime, Location Awareness, and HTF Context into a structured process.
### 1️⃣ Step 1: Start With HTF Context
First identify the higher-timeframe backdrop shown in the dashboard.
Ask:
* Is the higher timeframe supportive of directional movement?
* Is it balanced or already migrating?
* Does it align with the current chart or create conflict?
🌍 HTF Context provides the broader auction environment in which lower-timeframe activity is occurring.
### 2️⃣ Step 2: Check Current Location
Next evaluate where price is relative to accepted value.
* Inside Value suggests ongoing acceptance and rotational behavior.
* Above Value or Below Value suggests price is testing outside accepted value.
* Away From Value suggests displacement from the current auction area.
* No Value suggests acceptance has not yet formed clearly.
📍 Location helps determine whether price is interacting with value or operating away from it.
### 3️⃣ Step 3: Read the Active Regime
Then assess the current Auction Regime state.
* Balance implies acceptance and rotational trade around value.
* Migration Up or Migration Down implies value is attempting to relocate.
* Failed Auction suggests an attempted move has not established acceptance.
* Neutral indicates limited directional auction information.
🔄 The regime describes the current phase of the auction process rather than predicting the next move.
### 4️⃣ Step 4: Compare Regime and Location
The most useful information often comes from the relationship between regime and location.
Examples:
* Balance + Inside Value often reflects stable acceptance.
* Migration Up + Above Value may indicate value expansion higher.
* Migration Down + Below Value may indicate value expansion lower.
* Failed Auction + Away From Value may indicate rejection of a recent auction attempt.
📊 This comparison helps identify whether price behavior is consistent with the current auction state.
### 5️⃣ Step 5: Evaluate Market State Transitions
Watch for changes between regimes while monitoring location relative to value.
Common transitions include:
* Balance → Migration Up
* Balance → Migration Down
* Migration → Failed Auction
* Failed Auction → Balance
🔍 A transition becomes more meaningful when it is supported by location changes and aligned with HTF Context.
### 6️⃣ Step 6: Build a Contextual Narrative
Rather than treating any single field as a signal, combine all three layers:
1. Determine the higher-timeframe backdrop.
2. Identify where price is relative to value.
3. Assess the active auction regime.
4. Monitor whether the relationship between those factors is strengthening or weakening.
🧠 This workflow helps traders interpret whether the market is accepting value, rejecting value, migrating toward a new value area, or transitioning between auction states.
---
## 📈 Recommended Markets and Timeframes
The indicator is designed for liquid markets, especially:
* crypto perpetuals
* major crypto spot markets
* liquid index or futures markets
* high-volume intraday instruments
⏱️ Suggested timeframes:
* 5m
* 15m
* 1h for higher timeframe context
---
## ⚠️ Important Limitations
Auction Regime Atlas does not use true orderflow, footprint, delta, liquidation, or exchange-level positioning data.
All calculations are based on OHLCV data available in Pine Script.
❌ The indicator does not predict price direction.
❌ It does not guarantee reversals, continuations, or breakouts.
❌ It does not provide financial advice.
📌 The visual zones should be interpreted as auction context, not as automatic trade levels.
---
## 🛡️ Non-Repainting Design
The indicator is designed with confirmed-bar logic and non-repainting higher-timeframe requests.
Higher-timeframe context uses confirmed data and avoids lookahead behavior.
🔧 Visuals are updated with a stable object lifecycle to reduce flicker and avoid uncontrolled object creation.
---
## 📝 Release Notes — v1.0
🎉 Initial public release.
✅ Included:
* Acceptance Map Engine
* Core Value Band
* Acceptance Edges
* Minimal Auction Regime Engine
* HTF Context
* Location Awareness
* Focus / Balanced / Research modes
* Compact dashboard
* Confirmed-bar alerts
* Validation diagnostics in Research Mode
* Controlled object budget
* Non-repainting architecture
❌ Not included:
* strategy mode
* backtesting
* buy/sell signals
* automated entries or exits
* orderflow claims
* delta claims
* liquidation data
* machine learning
* multi-symbol logic
Indicator

Friction Map [NovaLens]Friction Map reads price structure the way a floor trader reads a room: it finds the price shelves where the market actually spent time, marks which ones are still live versus which the market has abandoned, and measures how much clear air you have to the nearest live shelf in each direction. It is a map of where structure is, how alive it is, and where the open space sits - not a buy or sell signal.
Most support/resistance tools draw static lines and leave them there forever, so the chart fills with levels that stopped mattering 300 bars ago. Friction Map keeps the same structure honest over time: every shelf carries a freshness that decays once the market stops trading at it, so the orange (live) shelves are the ones price has interacted with recently and the gray (fading) ones visibly age out.
═════════════════════════════════════════
◈ HOW TO READ IT
Friction Map draws directly on the price chart. There are two views of the same structure.
The shelves.
Orange = LIVE - price traded here recently; this is the current structure context.
Gray = FADING - price has not returned in a while; the market has moved on and the shelf dims the longer it stays untouched.
Faint dotted = BROKEN - price closed through it; an x-cross marks the exact bar it failed, and the dotted tail is kept so you can still see it existed.
KEY LEVEL - the strongest live shelf on the map (boldest line, brightest tag). The eye's anchor.
The room boxes. On the right edge, a box runs from current price to the nearest LIVE shelf above and below, with a label that reads the distance as a near-to-far range in ATR, for example "1 to 2.1 ATR" - meaning roughly 1 ATR of clear air, then the shelf running out to 2.1 ATR. ATR units make the read comparable on any symbol and timeframe. Teal means clear room; orange means a live shelf sits within about 1 ATR. When there is no live shelf in a direction the label reads "open air".
The breakout badge. On a confirmed close that breaks the recent range, and only at the extremes, the map prints a one-word context badge: CLEAR RUNWAY when there is no live shelf within the runway band ahead, or WALLED (with the distance) when a live shelf stands within about 1 ATR of the path. Only one CLEAR RUNWAY prints per clear-air leg - no repeats while price keeps running in the same open space, and it resets once price pulls back into a shelf. It is breakout context, never a direction call.
The info panel. A compact info panel compiles the read: the structure memory in bars; Room above and Room below as ATR ranges; Price now (open air, on a live shelf, or on a fading shelf); Last breakout (the most recent badge and how many bars ago); Shelves (how many live versus fading); and a one-line Reading takeaway.
The two views (Level view).
Anchored (default): each shelf line starts at its origin diamond, shows its current live (orange) / fading (gray) state from that origin, and marks the x-cross where it broke. An anchored structure story - where structure formed, how it reads now, and where it broke if broken - not a full per-era ledger.
Zones : every live shelf drawn as a clean full-width band straight across the chart, like a supply/demand map. Instant "where are my levels right now". No origin/break markers; broken shelves drop off.
═════════════════════════════════════════
◉ HOW IT WORKS
The density field. Across the lookback window, the indicator measures how often each price level sat inside the high-low range of the lookback bars - a time-at-price-style structure read. For every bar it asks which price levels the bar's high-low range covered, and accumulates that into a density field using a difference-array method (O(L+bins) per bar) so the script stays fast even on long charts and heavy lookbacks. Price levels where many bars overlapped are dense; levels price passed through quickly are thin.
Where shelves are born. A shelf forms at a density peak whose strength clears a RELATIVE floor - it must be at least a set fraction of the strongest peak currently on the map. That relative test is self-calibrating: it adapts to each asset and regime instead of relying on a fixed tick count, so the same indicator is designed to read BTC, SPY, EURUSD and gold without constant retuning. A small absolute floor screens out noise on near-empty windows.
Data-driven width. Each shelf's band is not a fixed width. It expands outward from the peak for as long as the neighbouring density holds at least half the peak value, then is capped to a readable range in ATR units. A wide consolidation earns a wide shelf; a tight one stays thin.
Aliveness (freshness). Every shelf carries a freshness equal to an exponential decay of the bars since the band was last traded (2^(-barsSinceTouch / halfLife)). Freshness is 1 while price is in the band and halves every half-life once price leaves. Above the live threshold a shelf renders LIVE (orange); below it the shelf renders FADING (gray) and dims further until it drops off the map.
Causal lifecycle. Shelves are born on confirmed bars and never re-placed. A shelf becomes BROKEN only when price, after arming on one side with real separation, closes through to the other side - the break bar is frozen and the line continues as a faint dotted tail. The ORIGIN anchor (the earliest bar within the lookback where price actually traded that level) and the BREAK anchor are both set once and never rewritten. That frozen history is the trust element: the map cannot quietly redraw the past to look right.
═════════════════════════════════════════
✦ HOW WE USE IT
A common read on a liquid crypto or index chart, default memory: price is pushing toward the top of its recent range. The panel Room above reads "0.4 to 1.6 ATR" in orange - there is a live shelf close overhead, so the map reads the upside as walled in the near term. Room below reads "open air" - nothing live underneath. Price is sitting in open air between an overhead live shelf and abandoned structure far below.
Now price closes through the recent high. Because the nearest live shelf overhead was inside the runway band, the map prints WALLED with the distance, not CLEAR RUNWAY - the break is into immediate structure, not open space. The badge does not say the break fails; it says there is a live shelf standing in the path, which is the context a discretionary trader wants before deciding whether the move has room.
Flip the situation: a confirmed break with Room ahead reading "open air" prints CLEAR RUNWAY . In our testing, clear-runway breakouts travelled further on average than walled ones (the effect was modest and weakest on rates). That is an observation about context, not a guarantee about the next bar.
The point of the map is the same in every case: see where the live structure is, see how much clear air you have to it in ATR, and read the breakout against that structure instead of against a static line.
═════════════════════════════════════════
❖ OTHER APPLICATIONS
Trade-location context : read entries against the nearest live shelf rather than a static S/R line - the orange shelves are the structure price has interacted with most recently.
Breakout context : CLEAR RUNWAY versus WALLED on a confirmed break, as a read on whether there is open space ahead or a live shelf in the path.
Stop and target context : the room ranges in ATR give a structure-aware sense of where the nearest live shelves sit above and below, for evaluating whether planned stops or targets sit near recent structure or out in open air, instead of at round numbers.
Chop filter : many overlapping live shelves with price standing on one ("on a live shelf" in the panel) is a congested read; sustained open air is cleaner trend space.
Structure classifier : use the Shelves row (live versus fading) and Room rows as a top-down structure filter for any external trade plan, independent of the badges.
Alert-driven workflow : subscribe to the clear-runway and walled breakout alerts and check the chart only when a confirmed breakout actually changes the structural picture.
═════════════════════════════════════════
⚙ GETTING STARTED
Friction Map ships with pre-tuned memory profiles plus a Custom override. Pick a memory and start reading the map - the default Auto setting matches the chart timeframe for you.
Structure memory:
Auto (match timeframe) (default): reads the chart - 30-minute and faster get Short, everything slower gets Medium.
Short (60 bars) : about one trading day on 5m, a week on 1H. Faster-moving map.
Medium (120 bars) : about a month on 1H, six months on 1D. Balanced.
Long (240 bars) : slow, full-cycle structure.
Custom : unlocks the Advanced group for full manual control.
Core display:
Level view : Anchored (causal story, default) or Zones (clean full-width bands).
Structure shelves : master toggle for the shelf lines. On by default. Under it, three per-state toggles let you choose which states draw:
Live shelves (orange) , Fading shelves (gray) , Broken shelves (dotted) - all on by default. Turn Broken off to declutter when a level has rebuilt live on top of old broken tails.
Room boxes + labels : the price-to-nearest-live-shelf boxes and ATR range labels. On by default.
Breakout badge : CLEAR RUNWAY / WALLED context badges on confirmed breakouts. On by default.
Shelf state tags : a small LIVE / FADING / KEY LEVEL tag at the right end of each shelf. On by default; turn off for a cleaner chart once the colours are familiar.
Show real shelf width : off by default (live shelves get a thin subtle halo). On draws each live shelf at its true data-driven width as a wider transparent band.
Info panel : pick where the summary panel anchors - Top Right (default), Top Left, Bottom Right, Bottom Left, Middle Right, or Off to hide it.
Dark theme panel : panel colours for dark charts; turn off on a light background.
Level reach (bars) : how far back the shelf lines and halos draw, so old structure does not stretch across the whole chart.
Appearance / Colours (4 pickers):
Live shelf, Fading shelf, Clear air, Broken shelf - each on its own line. The shelf lines, halos, room boxes, tags and badges all reference these inputs, so the palette adapts for colour-blind, light-mode or brand themes without forking the script.
Advanced (Memory = Custom only): Custom opens on the same defaults as the Medium profile (not a live copy of whichever profile you are currently on), so coming from Medium the switch is seamless; coming from Short or Long the map steps to that baseline first. Then every dial below is yours.
Lookback (bars) : structure memory in bars. Larger = more history considered, slower-moving map.
Freshness half-life : how fast a shelf fades once the market stops trading at it. After this many bars untouched a shelf is at half freshness.
Breakout lookback : a breakout is a confirmed close that newly breaks beyond the prior N-bar high or low (a fresh cross, so a sustained trend does not re-fire it every bar).
Min strength (vs strongest) : a shelf is born only if its density is at least this fraction of the strongest peak on the map. Raise for fewer, stronger shelves.
Merge distance (ATR) : shelf candidates closer than this to an existing shelf refresh it instead of spawning a duplicate.
Max shelves : cap on simultaneously tracked (non-broken) shelves; the weakest is pruned when a stronger one is born.
Live threshold : freshness above this renders a shelf LIVE (orange).
Runway band (ATR) : how far ahead of a breakout to scan for live shelves when deciding CLEAR RUNWAY versus WALLED.
═════════════════════════════════════════
△ LIMITATIONS
Descriptive, not predictive : Friction Map shows where price spent time and how alive that structure is. It makes no claim that a shelf will hold or that a breakout will follow through. There is no buy or sell signal anywhere in the tool.
Time-at-price, not volume : the density field is built from how much of the traded range sat at each level, not from volume. That keeps the read universally stable across every asset and data feed (crypto volume is fractured by exchange, FX volume is a tick proxy), but it does not weight a busy bar more than a quiet one.
Backward-looking by construction : in fast moves and gaps, room can jump to "open air" quickly as price leaps into untraded territory. That is accurate but may not persist.
Room measures to LIVE shelves only : the room ranges and the badge ignore fading shelves on purpose - the room read focuses on the current (orange) structure. A fading shelf still shows on the chart as a gray line; it just is not counted as room.
The breakout effect is context, not edge : in testing, clear-runway breakouts travelled further than walled ones on average, but the difference was modest and weakest on rates. Treat the badge as context to read alongside your own plan, not as a validated signal.
Recency fade : a structurally important level that has not been traded in a long time will fade from the map even if you still consider it important. Lengthen the memory or half-life if you want older structure to persist.
═════════════════════════════════════════
🔔 ALERTS
Two alert conditions are built in so you can monitor structure without watching every bar:
Clear-runway breakout : a confirmed breakout into clear air (no live shelf within the runway band ahead).
Walled breakout : a confirmed breakout into nearby live structure (a live shelf within about 1 ATR of the path).
Both fire on bar close (gated on `barstate.isconfirmed`) - no intrabar repaint. The indicator also emits a richer alert with a pure-JSON payload for routing to your own automation or webhook stack. The payload carries the brand, the indicator name, the event, the direction, the up and down clearance in ATR, the current price, the ticker, the timeframe and the bar time (the clearance fields are sent as text and read "open" when there is no live shelf that way). Pick ONE mechanism per event - the dropdown alert condition for a simple notification, or the JSON alert for a webhook - so you do not get duplicate notifications. Badges and alerts fire even when the on-chart badge is toggled off; alerts should not require chart clutter.
═════════════════════════════════════════
⌁ NOTES
Built on a containment-count density field (time-at-price), with data-driven band width, exponential freshness decay, and a causal frozen lifecycle (origin and break anchors set once and never moved).
Method lineage: the density field is a time-at-price construction, in the tradition of Market Profile (J. Peter Steidlmayer, popularised at the CBOT in the 1980s), which reads structure from where the market spent time rather than from volume. Friction Map adds the freshness decay and the causal live/fading/broken lifecycle on top of that classical time-at-price idea.
Repaint: non-repainting on confirmed bars. Births, breaks, clearance, badges and alerts are computed on bar close; the current bar updates in real time. Live/fading colour reflects current state, so a re-traded faded shelf can re-colour live - no past origin or break anchor is ever changed.
Original construction. The engine is built from first principles for this tool; there is no external reference implementation, so no validation-correlation claim is made.
Open-source under MPL 2.0. Free to use, fork, study.
NovaLens Indicator

Liquidity Vault [Dojo La Nuit]Liquidity Vault maps resting liquidity on your chart as clean horizontal levels and tracks what happens to them — without any buy/sell signals or predictions. It is a pure visualization tool for traders who read price around liquidity.
HOW IT WORKS
The script detects swing pivots and clusters nearby highs (and nearby lows) into single liquidity zones using an ATR-based tolerance, so the levels travel across instruments without re-tuning. Each zone gets a strength score from 0 to 100 built from three factors:
• Touches — how many times price reacted at the level
• Freshness — recent levels score higher and decay over time (configurable half-life)
• Volume — relative volume that accumulated at the level
HOW TO READ IT
• Red lines = sell-side liquidity (resting above price)
• Green lines = buy-side liquidity (resting below price)
• Opacity = strength: the stronger the zone, the more solid the line
• Dimmed, dotted lines = zones that have already been swept (price wicked through the level). They are kept as context, not removed.
SETTINGS
• Zone Detection — adaptive or fixed pivot length, clustering tolerance, lookback, max live zones
• Zone Strength — minimum score to display, freshness half-life, volume weighting on/off
• Visuals — theme (auto/dark/light), strength-based intensity, keep swept zones, line width
• Colors — fully customizable buy-side / sell-side colors
NOTES
Strength is shown through line opacity by design, to keep the chart minimal. Zones are recalculated on confirmed bars. This tool highlights where liquidity rests and when it gets taken — it does not generate entries, targets or signals.
This indicator is for educational and analytical purposes only. It is not financial advice. Always do your own research and manage your own risk.
─────────────────────────
🌙 LIQUIDITY VAULT — Dojo La Nuit
Liquidity Vault mostra la liquidità presente sul grafico come livelli orizzontali puliti e ne traccia l'evoluzione, senza segnali di acquisto/vendita e senza previsioni. È uno strumento puramente visivo per chi opera attorno alla liquidità.
COME FUNZIONA
Lo script individua i pivot di mercato e raggruppa i massimi (e i minimi) vicini in un'unica zona di liquidità tramite una tolleranza basata sull'ATR, così i livelli funzionano su strumenti diversi senza dover ritoccare i parametri. A ogni zona viene assegnato un punteggio di forza da 0 a 100, calcolato su tre fattori:
• Tocchi — quante volte il prezzo ha reagito al livello
• Freschezza — i livelli recenti pesano di più e si attenuano nel tempo (half-life configurabile)
• Volume — il volume relativo accumulato sul livello
COME SI LEGGE
• Linee rosse = liquidità sell-side (sopra il prezzo)
• Linee verdi = liquidità buy-side (sotto il prezzo)
• Opacità = forza: più la zona è forte, più la linea è piena
• Linee attenuate e puntinate = zone già spazzate (il prezzo ha bucato il livello con un'ombra). Restano come contesto, non vengono rimosse.
IMPOSTAZIONI
• Rilevamento zone — pivot adattivo o fisso, tolleranza di clustering, lookback, numero massimo di zone attive
• Forza zone — punteggio minimo da mostrare, half-life della freschezza, peso del volume on/off
• Visual — tema (auto/scuro/chiaro), intensità in base alla forza, mantieni zone spazzate, spessore linea
• Colori — colori buy-side / sell-side completamente personalizzabili
NOTE
La forza è rappresentata tramite l'opacità della linea, per scelta, per mantenere il grafico minimale. Le zone vengono ricalcolate sulle barre confermate. Lo strumento evidenzia dove si trova la liquidità e quando viene presa: non genera entrate, target o segnali.
Questo indicatore è a scopo puramente didattico e di analisi. Non è consulenza finanziaria. Fai sempre le tue valutazioni e gestisci il tuo rischio. Indicator

Liquidity Map & Execution Cost# Liquidity Map & Execution Cost
## What this script does
LMX answers three execution questions most indicators ignore: **how expensive is it to get in and out right now, how hard would it be to move size, and where on the chart will price struggle versus travel freely.** It reads only the chart's own price and volume — no symbol is hardcoded, so it runs on any asset and any market (equities, futures, FX, crypto, indices) — and turns the answers into a plain-language trade check: liquidity state, suggested position size, order type, estimated slippage, and a colour-coded map of support, resistance, walls and open gaps.
## Why these components are combined (mashup justification)
This is not several indicators stacked together — it is one liquidity model whose parts each answer a question the others cannot, and they are designed to be read together. Removing any one leaves a specific blind spot:
1. **Cost to cross — effective spread.** Estimated with the EDGE estimator (Ardia, Guidotti & Kroencke 2024) from open/high/low/close, cross-checked against Abdi-Ranaldo (2017) and Corwin-Schultz (2012). This tells you the round-trip cost of entering, which spread-blind tools cannot show. Alone, it says nothing about moving size or about levels.
2. **Cost to move size — price impact.** The Amihud (2002) illiquidity ratio with a high-low refinement, plus a rolling Kyle (1985) lambda computed as a true regression slope. This tells you how far your own order would push price — the question that matters for sizing, and one a spread estimate cannot answer.
3. **Direction of pressure — order imbalance.** A close-location signed-volume imbalance and its persistence. This tells you which side is leaning now, adding direction that the cost measures lack.
4. **The spatial map — volume at price.** A time-decay-weighted, range-distributed volume profile that yields the Point of Control and Value Area (standard 70% method), rendered as directional zones: green support below price, red resistance above, solid = a wall price struggles at, faint = an open gap price slides through. This converts the abstract cost/impact numbers into *locations* on the chart.
5. **Anchored VWAP — fair value.** A volume-weighted average anchored to your chosen reference (last major swing by default; or session/week/month open, or the highest-volume bar), drawn as a trend-coloured line. It is the dynamic counterpart to the static profile: where the average participant is positioned, and whether price is rich or cheap versus that.
Together they form one decision: the spread and impact set the **cost and size**, the imbalance and VWAP set the **direction and fair value**, and the map sets the **location** — so the output is "trade full size with market orders, buyers in control, room to run up to the gap above," not five separate readings.
## How a reading is produced
Each estimator is normalised to a percentile of its own history so thresholds adapt to every symbol and timeframe. The inverted spread, inverted impact and depth combine into a 0–100 **Liquidity Score**, classified as Deep / Normal / Thin / Stressed (a sudden impact spike forces Stressed). The score drives the suggested size multiplier, the order-type advice and the slippage estimate. The map is rebuilt on the last bar from the volume-at-price profile.
## How to use it
- Apply to any symbol. Set the price source and, if you trade very low intraday timeframes, optionally fix the calc timeframe (e.g. Daily) so the spread estimators stay stable. On symbols without real volume the volume modules disable automatically and the score leans on the spread estimators (the panel shows "price-only").
- **Simple mode (default)** gives plain-language guidance: Liquidity, Trade cost, Pressure, Position size, Orders, Watch-out, Fair value, and a one-line verdict. **Pro mode** exposes the full readout (spread in bps, Amihud and Kyle percentiles, depth, imbalance, flow persistence, value-area levels).
- On the chart: trade toward green support, expect resistance at red, size down where the map is thin (price moves fast there), and read the trend-coloured fair-value line for rich/cheap context.
- Alerts: liquidity-state change and sudden liquidity withdrawal.
## Originality
The combination is the original contribution: a single overlay that fuses low-frequency **spread**, **impact** and **imbalance** estimators with a **time-decay, range-distributed volume profile** and an anchored fair-value line, then translates all of it into sizing/order/slippage decisions in plain language. The building blocks are public-domain methods (EDGE, Abdi-Ranaldo, Corwin-Schultz, Amihud, Kyle, volume-profile Value Area, anchored VWAP), each used for the specific job described above and cited in the script header.
## Limitations (please read)
- These are **low-frequency estimators** of quantities normally measured from quote/tick data. They approximate — they do not measure — the true spread, depth, or dealer book.
- Volume-based modules require a real volume feed; they disable on symbols without one.
- Spread estimators were validated on daily-type bars; on very fast intraday timeframes they are noisier — use the calc-timeframe option if needed.
- The on-panel statistics are computed on the loaded chart history.
- This is an analysis tool, **not financial advice.** Test before use and trade at your own risk.
Indicator

Liquidity Sweep Retracements [MarkitTick]💡An advanced analytical framework designed to decode market micro-structure by evaluating the depth, speed, and statistical probability of price pullbacks. Rather than relying solely on static Fibonacci levels, this tool dynamically tracks the historical characteristics of an asset's swing behavior, alerting the user to structural anomalies and shifts in momentum. By intersecting retracement analysis with liquidity sweep detection and a built-in heatmap, this framework offers a comprehensive lens into market behavior, isolating environments where trend continuation is highly probable versus areas prone to exhaustion.
✨ Originality and Utility
Standard market analysis often relies on rigid tools that do not adapt to changing volatility conditions. This script introduces a highly original dynamic evaluation method by actively saving the characteristics of recent price swings into an internal array and establishing a moving statistical baseline.
The primary utility of this script lies in its multidimensional analysis. It does not just measure how far price has pulled back; it calculates how fast the pullback occurred and compares this velocity to the asset's recent historical baseline. This enables the framework to categorize price action not merely as a "pullback," but as a statistically significant "Anomaly" or an "Aggressive" move. Furthermore, by weaving Higher Timeframe (HTF) trend alignments and localized liquidity sweep detections into a single, cohesive dashboard and visual charting environment, it reduces chart clutter while exponentially increasing the depth of available data.
🔬 Methodology and Concepts
● Swing Structuring and Pivot Detection
The foundational logic relies on identifying structural pivot highs and lows through a localized lookback and look-forward window. The algorithm requires a definitive peak or trough isolated by user-defined left and right bars, establishing the anchor points for all subsequent mathematical measurements.
● Dynamic Retracement Scoring
Once a swing structure is confirmed, the script calculates the exact percentage of the retracement relative to the preceding impulse. These percentages are continuously categorized into defined behavioral zones:
Impulse (Less than 23%)
Shallow (Less than 38%)
Healthy (Up to 61.8%)
Deep (Up to 78.6%)
Reversal (Beyond 78.6%)
● Retracement Momentum Velocity (RMV)
Time and price are merged to extract velocity. By dividing the total percentage of the retracement by the number of bars it took to form, the script generates a velocity reading. This reading is dynamically compared against an array of historical velocities to determine if the current counter-trend move is unusually aggressive.
● Statistical Anomaly Detection
The script manages historical arrays of past retracement data, calculating a rolling mean (average) and standard deviation. An anomaly is triggered when a live retracement deviates significantly from this moving baseline, determined by a user-defined standard deviation multiplier. This mathematically highlights structural shifts before they mature into full trend reversals.
● Liquidity Sweep Verification
The indicator actively monitors price interactions with localized structural extremes. A bullish sweep occurs when price pierces a recent significant low but closes decisively above it, creating a structural trap. Bearish sweeps apply the inverse logic to structural highs.
🎨 Visual Guide
● Heatmap Candles
The script overrides standard candle colors with a dynamic heatmap that visually translates the health and speed of the current retracement:
Green indicates a healthy, standard retracement zone.
Orange highlights a weak zone, suggesting the trend is losing foundational strength.
Red warns of a deep structural violation bordering on a reversal.
Purple explicitly signifies an aggressive Retracement Momentum Velocity (RMV), warning of high counter-trend momentum.
● Price Action Overlays and Labels
Pivot Highs and Lows are marked precisely with small red and green crosses. (Note: These appear retroactively once the defined right-side bars confirm the pivot).
Data Labels are plotted at swing extremes. These carry a dark blue-gray background with dynamic text colors. They display the exact retracement percentage alongside quality badges, anomaly alerts (orange for opportunity, red for danger), and RMV warnings.
● Liquidity Markers
When a sweep is detected, small distinct shapes appear. "LS" text markers are plotted in bright green below bullish sweeps and bright red above bearish sweeps, visually anchoring liquidity traps directly onto the price action.
● The Analytical Dashboard
Located in the top right corner, this panel serves as the central intelligence hub. It utilizes shaded backgrounds to organize critical data natively on the chart.
Retracement and Health bars utilize block characters (█/░) to visualize strength out of 100%.
HTF Alignment displays the macro bias via clear text and color codes (Green for Bullish, Red for Bearish).
The dashboard aggregates averages, velocities, and quality metrics into a readable, high-contrast matrix.
📌 Note : the best way to resolve visual overlap is to navigate to the Object Tree and drag the indicator above the main chart layer, or simply hide the native candles in your chart settings.
📖 How to Use
Traders should monitor the dynamic relationship between the visual candle heatmap and the dashboard metrics.
Trend Continuation: Look for retracements that remain within the "Healthy" or "Shallow" zones (highlighted by green candles and positive dashboard health scores) that align with a bullish HTF signal.
Anomaly Exploitation: If an anomaly label appears marking a shallow retracement (orange text warning), this historically suggests an unusually strong impulse where standard deep pullbacks may not materialize.
Exhaustion Warnings: If the candles shift to purple, indicating an RMV Aggressive state, the counter-trend velocity is statistically high. Traders may use this to delay entries until momentum normalizes, or to identify structural traps if this aggression ends in a marked Liquidity Sweep (LS marker).
⚙️ Inputs and Settings
• Swing Settings
Controls the sensitivity of pivot detection. Higher values filter out market noise for major swing structures, while lower values react quickly to micro-trends.
• Retracement and Anomaly Parameters
Dictates the maximum number of historical retracements held in the memory array. The Standard Deviation Threshold allows users to expand or contract the mathematical boundary for what qualifies as an anomaly.
• RMV (Velocity) Limits
Controls the aggression threshold. Adjusting the multiplier determines how much faster a retracement must be compared to the historical average to trigger the purple heatmap and aggressive warnings.
• Liquidity Sweeps
Defines the lookback length for identifying local highs and lows that act as liquidity pools.
• Alerts and Dashboard Configuration
Enables fully customizable JSON-formatted alerts based on statistical deviations, and allows users to toggle or completely restyle the visual dashboard and heatmap components.
🔍 Deconstruction of the Underlying Scientific and Academic Framework
This indicator is heavily anchored in statistical mechanics and kinematics principles applied to financial time-series data.
• Gaussian Distribution and Variance
Instead of utilizing fixed geometric sequences (such as the Golden Ratio), the framework treats market swings as a dataset exhibiting normal distribution characteristics. By calculating the variance and extracting the standard deviation of historical swing depths, the script establishes mathematically sound confidence intervals. When price action breaches these standard deviation bands, it represents a statistically significant outlier, formally alerting the user to a fat-tail market event.
• Financial Kinematics
The integration of Retracement Momentum Velocity (RMV) introduces physics-based kinematic principles to price action. In traditional mechanics, velocity is the rate of change of position with respect to a frame of reference. The algorithm defines the frame of reference as the structural swing, calculating velocity as the percentage of displacement per unit of time (bars). By tracking the rolling average of this velocity, the script can algorithmically determine when kinetic energy in a counter-trend direction is statistically abnormal, independent of the actual price level reached.
⚠️ Disclaimer
All provided scripts and indicators are strictly for educational exploration and must not be interpreted as financial advice or a recommendation to execute trades. We expressly disclaim all liability for any financial losses or damages that may result, directly or indirectly, from the reliance on or application of these tools. Market participation carries inherent risk where past performance never guarantees future returns, leaving all investment decisions and due diligence solely at your own discretion. Indicator

Elaris Absorption Zones ProElaris Absorption Zones Pro
Elaris Absorption Zones Pro is an advanced price-action and volume analysis indicator designed to identify potential absorption events where aggressive market orders are absorbed by opposing passive liquidity.
The indicator focuses on situations where price attempts to break an important level but fails to continue, suggesting that significant limit orders may be absorbing the incoming buying or selling pressure.
Unlike traditional breakout indicators that look for continuation, this tool is designed to highlight failed auctions, rejection events, and potential liquidity absorption zones that may lead to reversals, pullbacks, or reduced directional momentum.
---
What Is Absorption?
Absorption occurs when aggressive participants repeatedly attempt to push price through a level using market orders, but opposing limit orders absorb that pressure and prevent further movement.
Examples include:
• Buyers aggressively pushing above resistance but failing to achieve continuation.
• Sellers aggressively pushing below support but failing to achieve continuation.
• Large rejection wicks appearing after a breakout attempt.
• High volume with limited price progress (Effort vs Result imbalance).
These conditions can indicate the presence of significant liquidity providers defending a price area.
---
How The Indicator Works
The indicator combines multiple confirmation layers:
Market Structure Analysis
The script monitors:
• Confirmed swing highs and swing lows
• Recent trading ranges
• Failed breakout attempts
Price must first attempt to break an important structural level before absorption conditions can be evaluated.
Rejection Analysis
The indicator evaluates:
• Upper wick size
• Lower wick size
• Body-to-range relationship
Large rejection wicks combined with small candle bodies may indicate strong opposing liquidity.
Volume Confirmation
Volume is evaluated using:
• Relative volume
• Volume moving averages
• Optional volume Z-score analysis
This helps identify situations where participation is elevated compared to normal market activity.
Effort vs Result Model
One of the core components of the indicator is Effort vs Result analysis.
High volume combined with poor directional progress can indicate that incoming orders are being absorbed rather than successfully moving the market.
Absorption Scoring
Every detected signal receives a strength score based on:
• Rejection quality
• Relative volume
• Candle efficiency
Higher scores generally indicate stronger absorption characteristics.
---
Features
✔ Bullish absorption detection
✔ Bearish absorption detection
✔ Failed breakout recognition
✔ Confirmed swing structure analysis
✔ Range breakout absorption detection
✔ Relative volume filters
✔ Volume Z-score filtering
✔ Effort vs Result analysis
✔ Absorption strength scoring
✔ Optional absorption zones
✔ Zone retest detection
✔ Dashboard with live metrics
✔ Alert conditions
✔ Non-repainting confirmation mode
---
Bullish Absorption
Bullish absorption may occur when:
1. Price breaks below support.
2. Sellers attempt continuation.
3. Price quickly returns above the level.
4. A strong lower rejection wick forms.
5. Volume confirms elevated participation.
This may suggest that passive buyers absorbed the selling pressure.
---
Bearish Absorption
Bearish absorption may occur when:
1. Price breaks above resistance.
2. Buyers attempt continuation.
3. Price closes back below the level.
4. A strong upper rejection wick forms.
5. Volume confirms elevated participation.
This may suggest that passive sellers absorbed the buying pressure.
---
How To Use
Many traders use absorption signals as:
• Early reversal warnings
• Liquidity sweep confirmations
• Support and resistance confirmation
• Market structure confirmation
• Trade management tools
For best results, consider combining absorption signals with:
• Trend analysis
• Market structure
• Higher timeframe context
• Risk management rules
• Additional confirmation tools
---
Non-Repainting
When "Confirm Only After Candle Close" is enabled, signals are generated only after a candle has fully closed.
Confirmed swing levels are based on completed pivot structures.
This helps reduce signal instability and prevents intrabar repainting behavior.
---
Important Notes
This indicator does not use Level II, order book, footprint, or exchange matching engine data.
Because PulseWire Pine Script does not have direct access to actual market order flow, absorption is estimated using a combination of price action, rejection behavior, volume analysis, and structural breakout failure characteristics.
As with all trading tools, signals should be used as part of a complete trading plan and not as standalone buy or sell recommendations.
Indicator

Volume Profile Composite, Naked POC & Value-AreaVolume Profile — Composite, Naked POC & Value-Area
==================================================
WHAT IT IS
A volume-at-price profile built for depth and decisions. It measures where trade
actually concentrated across the loaded history, distils that distribution into
the levels traders use — Point of Control (POC), Value Area (VAH/VAL), High and
Low Volume Nodes (HVN/LVN), and untested "naked" prior-session POCs — and then
converts those levels into a plain-language read of where price sits in the
auction (premium, discount, or inside value; balancing or migrating).
It is a study for chart analysis and education. It plots levels and context; it
does not place orders and does not output buy/sell signals.
HOW IT WORKS (ENGINE)
Volume is accumulated bar by bar into a price-keyed map on a fine grid (the
symbol's minimum tick multiplied by a user factor), then re-aggregated to the
chosen number of display rows. Because the engine uses a map rather than a fixed
lookback array, the profile can span every loaded bar instead of only a recent
window, and it is not limited by the historical bar-reference ceiling.
Each bar's volume is distributed across that bar's high-low range over a capped
number of samples, and tagged buy or sell by bar direction, producing a two-tone
histogram and a per-level delta. Where intrabar (lower-timeframe) data is
available, recent history can optionally be refined from it; older bars fall back
to the bar-range method. The Value Area is grown outward from the POC bin until
the chosen percentage of total volume is captured. Prior-day, prior-week and
full-history composite levels reuse the same value-area routine on their own maps.
The heavy redraw runs on bar open/close rather than on every realtime tick, to
keep live charts responsive.
WHY THESE COMPONENTS ARE COMBINED (MASHUP JUSTIFICATION)
This is one volume-profile engine, not a stack of independent indicators. Every
layer is computed FROM THE SAME accumulated volume map, and each one exists to
remove a specific blind spot of the raw histogram. A bare histogram only answers
"where did volume happen"; it cannot tell you whether price is rich or cheap,
which level matters next, or whether the market is balancing or trending. The
combined layers answer those questions, and they work together as follows:
- POC and Value Area transform the raw distribution into a fair-value frame, so
every other reading can be expressed as premium, discount, or inside value.
- HVN and LVN classify each price level produced by that same distribution as
acceptance (a volume shelf where reactions are more likely) or a thin gap
(where price tends to move quickly). This tells you how a level is likely to
behave, which the POC/Value Area alone do not.
- Naked prior-session POCs carry acceptance forward in time: they are POCs from
earlier sessions that price has not yet traded back through, derived from the
same per-session maps, and they act as revisit references.
- Value migration is simply the sequence of those session POCs read as a
direction, turning the profile history into a balancing-versus-trending read.
- The composite overlay keeps the full-history POC and Value Area in view while
you work a shorter, more legible recent window, so context is never lost.
- VWAP, Initial Balance, an expected-move band, and cumulative-volume-delta
divergence are confluence layers. They are optional and each degrades
gracefully if its data is absent. They are included because volume-profile
levels are used in context: VWAP gives the session's volume-weighted mean,
Initial Balance gives the opening reference, the expected-move band frames a
realistic day's range, and CVD-versus-price flags exhaustion. Each one answers
"does independent volume/price information agree with what the profile shows
here?", which is exactly how these levels are traded in practice.
- The Auto-Read is the synthesis step: it does not add new data, it ranks the
levels the engine already produced by distance to price and states the auction
context in words.
In short, the histogram is the raw material and every other element is a
transformation of that same data into a level, a classification, a confluence
check, or a written read. That shared derivation is the reason they belong in a
single script rather than as separate indicators.
WHAT IT PLOTS
- Buy/sell two-tone histogram, drawn in the clear space to the right of price so
candles stay visible.
- POC, Value Area (VAH/VAL, adjustable percentage), HVN/LVN nodes.
- Naked daily POCs, with a creation-time check that skips levels already traded
through and an optional age-out so the list stays meaningful.
- Polarity flip: a prior-day Value Area edge that price closes decisively beyond
and holds changes role (broken VAH becomes support; broken VAL becomes
resistance) and feeds the support/resistance read.
- Prior-day and prior-week POC/Value Area, full-history composite overlay,
developing POC.
- VWAP with standard-deviation bands, Initial Balance, expected-move band,
cumulative-volume-delta divergence, buy/sell imbalance shelves, poor highs/lows,
single-print gaps.
- Higher-timeframe POC bias (a light proxy — see Limitations).
- Auto-Read dashboard (full or compact), one-line headline, and an on-chart
identity strip showing the script name, symbol and timeframe.
HOW TO USE
1. Choose a scope: Rolling (default), Composite (all history), From date, or
Fixed range. The composite overlay keeps the big-picture levels visible.
2. Read location first from the headline or dashboard: inside value, premium, or
discount, and whether value is migrating up, down, or flat.
3. Treat the levels as a map, not a signal. POC acts as a mean-revert magnet;
Value Area edges are balance boundaries; HVN suggests stalls; LVN suggests
fast moves; a naked POC is a revisit reference.
4. Look for confluence with VWAP, Initial Balance, and prior-session levels, and
treat CVD divergence as a caution flag.
5. Detail presets (Simple / Standard / Pro) gate how much is shown. A compact
dashboard toggle trims the table to the key decision fields.
WHAT MAKES IT ORIGINAL
- Full-history depth via the price-keyed map, beyond a fixed lookback window.
- A built-in, past-only calibration of the profile's own claims: it logs
value-edge and POC-stretch reversion events against the prior-day Value Area
(which exists on every bar, so the measurement backfills over history), waits a
fixed horizon, and reports the realised hit-rate with a 95% confidence
interval. This is descriptive of past behaviour on the specific instrument; it
is explicitly not a backtest and not a forecast.
- A decision-ordered, plain-language Auto-Read derived entirely from the engine's
own levels.
DATA SOURCE AND ANY-MARKET USE
The volume source is user-selectable (Settings > Data source), so the profile can
be built from the symbol's own volume or from any other series your feed
provides. For symbols that report no native volume (some cash indices and FX
feeds), an optional "borrow volume" field lets you supply a volume-bearing proxy
for the same instrument; it only activates when the charted symbol genuinely has
no volume. The volatility-index symbol for the expected-move band is also
user-set and falls back to a daily-ATR band when left blank. An optional
asset-class auto-tune adapts the grid and node percentiles to the detected class.
All of these are blank or off by default, so nothing is tied to one market.
CALIBRATION NOTE
The calibration panel is descriptive only. It reports how often, in the past, on
the current symbol, price followed through after the logged events. Small samples
are flagged. It is not a probability of future results.
LIMITATIONS (HONEST)
- This uses a BAR-RANGE volume distribution (optionally refined by lower-timeframe
bars). It approximates where volume traded within each bar. It is NOT exchange
price-by-price volume, tick data, or order-flow/footprint, and it cannot see
bid/ask.
- It needs real volume. Cash indices often report none — use the matching future
or continuous contract, or the borrow-volume field.
- The higher-timeframe POC is a light single-bar proxy (the price of the
highest-volume higher-timeframe bar over a lookback), not a full higher-
timeframe profile.
- All readings are probabilistic context, not predictions.
DISCLAIMER
This script is a study/indicator for chart analysis and education only. It is NOT
a strategy, NOT a recommendation, and NOT financial advice. It places no orders
and guarantees no result. Trading involves substantial risk; a level's past
behaviour does not assure future behaviour. Do your own research and manage your
own risk.
Indicator
