Gold THB per Baht (XAU -> Thai baht gold)What it does
This indicator converts international gold prices (XAU) into Thai retail “baht gold” price (THB per 1 baht gold weight) in real time. It multiplies the XAU price (per troy ounce) by USD/THB and converts ounces to Thai baht-weight using the exact gram ratios.
Formula
THB per baht gold = XAU (USD/oz) × USDTHB × (15.244 / 31.1035) × (1 + Adjustment%) + FlatFeeTHB
1 troy ounce = 31.1035 g
1 Thai baht gold = 15.244 g
Conversion factor ≈ 0.490103
Indicators and strategies
Key Levels: Prior Open & Close (D/W/M/Q/Y)This indicator plots the previous period's open and close levels for multiple timeframes—daily, weekly, monthly, quarterly, and yearly—on your chart. It uses Pine Script's request.security() function to pull the prior period's open and close prices for each timeframe, then draws horizontal dotted lines extending to the right at those levels. Each line is labeled and color-coded for easy distinction. These levels can help highlight potential support/resistance areas, but they are reference points only and not trading signals.
NSR Dynamic Channel - HTF + ReversionNSR Dynamic Channel – HTF Volatility + Reversion
(Beginner-friendly, pro-grade, non-repainting)
The NSR Dynamic Channel builds an adaptive volatility envelope that compares current price action to a statistically-derived “expected” range pulled from a user-selected higher timeframe (HTF).
Is this just another keltner variation?
In short: Keltner reacts. NSR anticipates.
Keltner says “price moved a lot.”
NSR says “this move is abnormal compared to the last 2 days on a higher timeframe — and here’s the probability it snaps back.”
The channel is not a simple multiple of recent ATR or standard deviation; instead it:
Samples HTF volatility over a rolling window (default: last 2 days on the chosen HTF).
Expected Range
HTF Volatility Spread = StDev of 1-bar ATR on the HTF
Scales this HTF range to the current chart’s volatility using a compression ratio :
compRatio = SMA(High-Low over lookback) / Expected Range
This makes the channel tighten in low-vol regimes and widen in high-vol regimes .
Centers the channel on a composite mean ( AVGMEAN ) calculated from:
Smoothed Adaptive Averages of the current timeframe close
SMA of close over the user-defined lookback ( Slow )
The three means are averaged to reduce lag and noise.
Draws two layers :
HTF Expected Channel (gray fill) = PAMEAN ± expectedD
Dynamic Expected Band (inner gray) = HTF Expected Range
Adds a fast 2σ envelope around AVGMEAN using the standard deviation of close over the lookback period.
Core Calculations (Conceptual Overview)
HTF Baseline → ATR on user HTF → SMA & StDev over a defined number of days
Compression Ratio → Normalizes current range to HTF “normal” volatility
Expected Band Width → Expected Range × CompressionRatio
Bias Detection → % change of composite mean over 2 bars → “bullish” / “bearish” filter
Overextension % → Position of price within the expected band (0–100%)
How to Use It (3 Steps)
Apply to any chart – defaults work on futures (NQ/ES), stocks (SPY), crypto (BTC), forex, etc.
Price is outside both the fast 2σ envelope and the HTF-scaled expected band
Expect some sort of reversion
Enable alerts – two built-in conditions:
NSR Exit Long – bullish bias + high crosses upper expected edge
NSR Exit Short – bearish bias + low crosses lower expected edge
Optional toggles :
Show 2σ Price Range → fast overextension lines
Expected Channel → HTF-based gray fill
Mean → MEAN centerline
Why It Works
Context-aware : Uses HTF “normal” volatility as anchor
Adaptive : Shrinks in consolidation, expands in breakouts
Filtered signals : Only triggers when both statistical layers agree
Non-repainting : All calculations use confirmed bars
Happy trading!
nsrgroup
Moon Phases: 1st Quarter, Full, 3rd QuarterTracks the Lunar phase or Moon phase, which is the apparent shape of the Moon's day and night phases of the lunar day as viewed from earth.
Quantum Confluence Matrix [SurgeGuru]Executive Summary: The Quantum Market Matrix
This is not an indicator; it is a Multi-Dimensional Confluence Engine. It operates on the principle that when multiple, independent analytical dimensions converge at a single price point, they create a high-probability "reality distortion" in the market. It synthesizes:
Fibonacci Trend Structure (Mathematical Precision)
Rolling Angled Volume Profile (Market Energy & Liquidity)
Power Hour Analysis (Institutional Time-Based Liquidity)
Volume-Confirmed Breakouts (Momentum & Participation)
Solfeggio Harmonic Resonance (Proprietary Geometric Alignment - Beta)
The result is a tool that doesn't just show you what is happening, but predicts where the market is most likely to find significant support or resistance based on the confluence of mathematical, volume, temporal, and harmonic forces.
Core Analytical Dimensions
1. Adaptive Fibonacci Trend Framework
Dynamic Sensitivity: 12 user-selectable trend levels, from "Extreme" (0.5) for scalpable micro-moves to "Maximum" (7.0) for only the most dominant trends.
Volume-Integrated Fibs: Each Fibonacci level (0.236, 0.382, 0.618, 0.786) is dynamically weighted based on historical volume concentration, transforming static lines into volume-weighted probability zones.
Real-Time Confirmation: Live ✓/✗ signals appear when price touches a Fib level, filtered by real-time volume momentum, distinguishing high-conviction bounces from weak rejections.
2. Rolling Angled Volume Profile (RAVP)
Dynamic Liquidity Mapping: Projects a rolling volume histogram at an angle, visually mapping where the market has actually been transacting over the last N bars.
Energy Visualization: The slope and density of the profile show whether volume is expanding on advances (bullish energy) or declines (bearish energy), revealing the underlying force behind the trend.
3. Power Hour Institutional Framework
Critical Time Analysis: Identifies and analyzes the most volatile and significant period of the trading day (e.g., 3-4 PM NY Time).
Multi-Session Memory: Tracks and displays the last X Power Hour zones, showing how price interacts with these key institutional decision areas.
Fibonacci Projection: Overlays a Fibonacci grid on each Power Hour range, projecting key retracement and extension levels that often act as magnets for price.
4. Volume-Confirmed Breakout System
Momentum Validation: Replaces simple breakout arrows with a sophisticated volume confirmation system. A breakout with expanding volume gets a "✓" (high conviction), while a breakout on weak volume gets a "✗" (low conviction, potential false break).
5. Solfeggio Harmonic Resonance (Beta - The "Secret Sauce")
Geometric Confluence: This proprietary layer searches for alignment between classical Fibonacci levels and the ancient Solfeggio frequency ratios (396Hz, 417Hz, 528Hz, etc.).
Harmonic Convergence Zones: Highlights rare areas where three forces align: 1) a Fibonacci level, 2) a high volume node, and 3) a Solfeggio harmonic ratio.
Resonance Detection: Acts as a market "tuning fork," showing a cyan pulse (●) when price touches a harmonic zone with expanding volume, signaling a potent bounce or reversal point.
Golden Harmonic: Specifically marks zones where the 528Hz/396Hz ratio (approximating the Golden Ratio) aligns with Fibonacci, representing the strongest harmonic support/resistance.
Code Architecture: The Confluence Engine
The script is a state-managed, multi-layer event processor. It doesn't calculate continuous oscillators but instead identifies specific market events and manages their lifecycle.
Core Data Structures & State Management
fibData Structure: The central anchor. Manages the entire Fibonacci trend—the high, low, all Fib levels, labels, and volume confirmation markers. It's completely rebuilt on each trend change.
PowerHour Array: A rolling array that stores each Power Hour session as a self-contained object with its high, low, Fibonacci lines, and breakout labels.
HarmonicZone Array: Manages the Solfeggio harmonic elements—convergence boxes, resonance markers, and golden ratio tags.
The Operational Workflow (On Every Bar)
STEP A: Trend & Fibonacci Update
The supertrend() function determines the primary trend direction.
The core draw_fibb() function is called. This massive function:
Manages the lifecycle of the entire Fibonacci structure.
Calculates new Fib levels based on the current trend's high and low.
Calculates Volume Strength for each Fib level, scoring them from 0-100 based on historical volume concentration.
Dynamically adjusts line thickness and style based on volume strength.
Checks if price is touching any Fib level and, if so, places a ✓ or ✗ based on live volume momentum.
STEP B: Power Hour Management
gatherPowerHourData() checks if we are inside a Power Hour session. If so, it updates the current Power Hour's high and low.
drawPowerHours() renders the completed Power Hour zones, their Fibonacci grids, and extensions.
STEP C: Harmonic Analysis (If Enabled)
Convergence Checking: For each Fibonacci level, it checks if its ratio aligns with any Solfeggio frequency within the harmonicTolerance.
Zone Creation: If a Fibonacci level has strong volume AND harmonic alignment, it draws a "Harmonic Convergence Zone."
Resonance Marking: If price is currently touching a harmonic zone, it places a pulse marker (● for strong volume, ○ for weak).
STEP D: Breakout Detection
Checks for breaks of the most recent Power Hour high/low, filtering the signal through the volume confirmation system.
STEP E: Volume Profile Rendering (On Last Bar)
On the chart's final bar, it performs the computationally intensive task of calculating and drawing the angled volume profile, showing the distribution of volume over the lookback period.
The Synthesis: Why It's Revolutionary
The genius of this script is confluence. A trader isn't just seeing a "support level." They are seeing:
"A 0.618 Fibonacci retracement, which is also a 70-volume-strength level, that aligns with a Solfeggio harmonic ratio, and is being tested during the New York Power Hour session."
This multi-dimensional confirmation provides an institutional-grade edge, transforming subjective technical analysis into a systematic, probability-weighted decision framework. It answers not just "where" price might react, but "why here, why now, and with what conviction?"
SJ WaveTrendWaveTrend Indicator – Full English Brief for TradingView
Description:
The WaveTrend Oscillator (WT) is a momentum-based indicator originally developed by LazyBear, designed to identify overbought and oversold market conditions with high precision. It is conceptually similar to the RSI and Stochastic Oscillator but uses a wave-based mathematical approach to detect turning points in price action earlier and more smoothly.
⸻
🔍 How It Works
WaveTrend analyzes the difference between price and its moving average (typically the exponential moving average of the Typical Price).
It then applies multiple layers of smoothing to filter out noise and produce two oscillating lines — WT1 (fast) and WT2 (slow).
The crossing points between WT1 and WT2 are used to identify momentum shifts:
• When WT1 crosses above WT2 from below the oversold zone → Bullish signal
• When WT1 crosses below WT2 from above the overbought zone → Bearish signal
⸻
⚙️ Core Formula Concept
The WaveTrend calculation typically follows this process:
1. Compute the Typical Price (TP) = (High + Low + Close) / 3
2. Calculate the Exponential Moving Average (EMA) of TP over a short length
3. Determine the Raw Wave (ESA) and De-trended Price Oscillator (DPO)
4. Apply double smoothing to produce the final WT1 and WT2 values
These smoothed waves behave like energy waves that expand and contract based on market volatility — hence the name WaveTrend.
⸻
📈 Interpretation
• Overbought Zone: WT values above +60 to +70
• Oversold Zone: WT values below -60 to -70
• Crossovers: WT1 crossing WT2 signals a potential trend reversal
• Divergence: When price makes a new high/low but WT does not, it signals momentum weakening
⸻
🧠 Trading Insights
• Best used on higher timeframes (H1 and above) for trend confirmation, and on lower timeframes (M15–M30) for precise entries.
• Combine with ADX, EMA Cloud, or Volume Filters to confirm real momentum shifts and avoid false signals.
• You can highlight WT Diff (WT1 - WT2) to visualize momentum expansion and contraction; large positive or negative differences often precede strong reversals.
Consecutive Gap FinderLooks for consecutive gaps based on daily chart using ATR multiplier.
Highlights them when a certain number are found.
نقدینگی و اردر های نواحی {وحید}// This work is licensed under a Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0) creativecommons.org
// © amir
//@version=5
indicator("نقدینگی و اردر های نواحی {وحید}"
, overlay = true
, max_lines_count = 500
, max_labels_count = 500
, max_boxes_count = 500)
//------------------------------------------------------------------------------
//Settings
//-----------------------------------------------------------------------------{
length = input(14, 'Pivot Lookback')
area = input.string('Wick Extremity', 'Swing Area', options = )
intraPrecision = input(false, 'Intrabar Precision', inline = 'intrabar')
intrabarTf = input.timeframe('1', '' , inline = 'intrabar')
filterOptions = input.string('Count', 'Filter Areas By', options = , inline = 'filter')
filterValue = input.float(0, '' , inline = 'filter')
//Style
showTop = input(true, 'Swing High' , inline = 'top', group = 'Style')
topCss = input(color.red, '' , inline = 'top', group = 'Style')
topAreaCss = input(color.new(color.red, 50), 'Area', inline = 'top', group = 'Style')
showBtm = input(true, 'Swing Low' , inline = 'btm', group = 'Style')
btmCss = input(color.teal, '' , inline = 'btm', group = 'Style')
btmAreaCss = input(color.new(color.teal, 50), 'Area', inline = 'btm', group = 'Style')
labelSize = input.string('Tiny', 'Labels Size', options = , group = 'Style')
//-----------------------------------------------------------------------------}
//Functions
//-----------------------------------------------------------------------------{
n = bar_index
get_data()=>
= request.security_lower_tf(syminfo.tickerid, intrabarTf, get_data())
get_counts(condition, top, btm)=>
var count = 0
var vol = 0.
if condition
count := 0
vol := 0.
else
if intraPrecision
if n > length
if array.size(v ) > 0
for in v
vol += array.get(l , index) < top and array.get(h , index) > btm ? element : 0
else
vol += low < top and high > btm ? volume : 0
count += low < top and high > btm ? 1 : 0
set_label(count, vol, x, y, css, lbl_style)=>
var label lbl = na
var label_size = switch labelSize
'Tiny' => size.tiny
'Small' => size.small
'Normal' => size.normal
target = switch filterOptions
'Count' => count
'Volume' => vol
if ta.crossover(target, filterValue)
lbl := label.new(x, y, str.tostring(vol, format.volume)
, style = lbl_style
, size = label_size
, color = #00000000
, textcolor = css)
if target > filterValue
label.set_text(lbl, str.tostring(vol, format.volume))
set_level(condition, crossed, value, count, vol, css)=>
var line lvl = na
target = switch filterOptions
'Count' => count
'Volume' => vol
if condition
if target < filterValue
line.delete(lvl )
else if not crossed
line.set_x2(lvl, n - length)
lvl := line.new(n - length, value, n, value
, color = na)
if not crossed
line.set_x2(lvl, n+3)
if crossed and not crossed
line.set_x2(lvl, n)
line.set_style(lvl, line.style_dashed)
if target > filterValue
line.set_color(lvl, css)
set_zone(condition, x, top, btm, count, vol, css)=>
var box bx = na
target = switch filterOptions
'Count' => count
'Volume' => vol
if ta.crossover(target, filterValue)
bx := box.new(x, top, x + count, btm
, border_color = na
, bgcolor = css)
if target > filterValue
box.set_right(bx, x + count)
//-----------------------------------------------------------------------------}
//Global variables
//-----------------------------------------------------------------------------{
//Pivot high
var float ph_top = na
var float ph_btm = na
var bool ph_crossed = na
var ph_x1 = 0
var box ph_bx = box.new(na,na,na,na
, bgcolor = color.new(topAreaCss, 80)
, border_color = na)
//Pivot low
var float pl_top = na
var float pl_btm = na
var bool pl_crossed = na
var pl_x1 = 0
var box pl_bx = box.new(na,na,na,na
, bgcolor = color.new(btmAreaCss, 80)
, border_color = na)
//-----------------------------------------------------------------------------}
//Display pivot high levels/blocks
//-----------------------------------------------------------------------------{
ph = ta.pivothigh(length, length)
//Get ph counts
= get_counts(ph, ph_top, ph_btm)
//Set ph area and level
if ph and showTop
ph_top := high
ph_btm := switch area
'Wick Extremity' => math.max(close , open )
'Full Range' => low
ph_x1 := n - length
ph_crossed := false
box.set_lefttop(ph_bx, ph_x1, ph_top)
box.set_rightbottom(ph_bx, ph_x1, ph_btm)
else
ph_crossed := close > ph_top ? true : ph_crossed
if ph_crossed
box.set_right(ph_bx, ph_x1)
else
box.set_right(ph_bx, n+3)
if showTop
//Set ph zone
set_zone(ph, ph_x1, ph_top, ph_btm, ph_count, ph_vol, topAreaCss)
//Set ph level
set_level(ph, ph_crossed, ph_top, ph_count, ph_vol, topCss)
//Set ph label
set_label(ph_count, ph_vol, ph_x1, ph_top, topCss, label.style_label_down)
//-----------------------------------------------------------------------------}
//Display pivot low levels/blocks
//-----------------------------------------------------------------------------{
pl = ta.pivotlow(length, length)
//Get pl counts
= get_counts(pl, pl_top, pl_btm)
//Set pl area and level
if pl and showBtm
pl_top := switch area
'Wick Extremity' => math.min(close , open )
'Full Range' => high
pl_btm := low
pl_x1 := n - length
pl_crossed := false
box.set_lefttop(pl_bx, pl_x1, pl_top)
box.set_rightbottom(pl_bx, pl_x1, pl_btm)
else
pl_crossed := close < pl_btm ? true : pl_crossed
if pl_crossed
box.set_right(pl_bx, pl_x1)
else
box.set_right(pl_bx, n+3)
if showBtm
//Set pl zone
set_zone(pl, pl_x1, pl_top, pl_btm, pl_count, pl_vol, btmAreaCss)
//Set pl level
set_level(pl, pl_crossed, pl_btm, pl_count, pl_vol, btmCss)
//Set pl labels
set_label(pl_count, pl_vol, pl_x1, pl_btm, btmCss, label.style_label_up)
//-----------------------------------------------------------------------------}
Relative Rotation - RRG JdK RS-Ratio & RS-MomentumThis indicator calculates the JdK RS-Ratio and RS-Momentum, which form the basis of Relative Rotation Graphs (RRG). It compares the performance of any asset against a benchmark (default: SPY) to identify the current RRG quadrant: LEADING, WEAKENING, LAGGING, or IMPROVING.
The RS-Ratio (red line) and RS-Momentum (green line) are plotted around a baseline of 100. The background color indicates the current quadrant, and an optional feature allows coloring chart candles based on the RRG phase.
Alerts can be configured to notify when the asset transitions between quadrants, helping traders identify rotational shifts in relative strength.
Iani Indicator 📊 **Iani Indicator**
**Clean and simple trend direction tool**
**Description:**
Iani Indicator is a compact and easy-to-read visual tool based on EMA crossovers to identify market bias: **Buy, Sell, or Neutral**.
* The background between EMAs shows the current trend:
🟩 **Green** – bullish trend (Buy)
🟥 **Red** – bearish trend (Sell)
🟨 **Yellow** – flat / neutral zone
* Text labels “Buy”, “Sell”, or “Neutral” appear automatically when direction changes.
* Works smoothly on any timeframe – ideal for both scalping and swing trading.
**Purpose:**
To give traders a clear, noise-free view of market direction at a glance.
---
👉 Short version (for TradingView “Short Description” field):
**Simple EMA-based indicator showing Buy, Sell, or Neutral bias with clean background colors.**
SH/SL with Trend TableHelps in identify Swing High and Swing Low in chart time frame.
Trend is also mentioned in Chart.
Vol Vahid// This source code is subject to the terms of the Mozilla Public License 2.0 at mozilla.org
// © amir
//@version=5
indicator("Vol Vahid")
=ta.dmi(14,14)
sw=input.bool(true,'Highlight Ranging/Sideways')
showbarcolor=input.bool(true,'Apply Barcolor')
show_Baseline=input.bool(true,'Show Hull Trend')
rsiLengthInput = input.int(14, minval=1, title="RSI Length1", group="RSI Settings")
rsiLengthInput2 = input.int(28, minval=1, title="RSI Length2", group="RSI Settings")
trendlen= input(title='Hull Trend Length', defval=30,group='Hull Trend')
oversold=input.int(30, minval=1, title="Over Sold", group="RSI Settings")
overbought=input.int(70, minval=1, title="Over Bought", group="RSI Settings")
BBMC=ta.hma(close,trendlen)
MHULL = BBMC
SHULL = BBMC
hmac=MHULL > SHULL ?color.new(#00c3ff , 0):color.new(#ff0062, 0)
buysignal=MHULL > SHULL
sellsignal=MHULL < SHULL
frsi=ta.hma(ta.rsi(close,rsiLengthInput),10)
srsi=ta.hma(ta.rsi(close,rsiLengthInput2),10)
hullrsi1=ta.rsi(MHULL,rsiLengthInput)
hullrsi2=ta.rsi(SHULL,rsiLengthInput)
rsic=frsi>srsi?color.new(#00c3ff , 0):color.new(#ff0062, 0)
barcolor(showbarcolor?hmac:na)
hu1=plot(show_Baseline?hullrsi1:frsi,title='HMA1',color=color.gray,linewidth=1,display=display.none)
hu2=plot(show_Baseline?hullrsi2:srsi,title='HMA2',color=color.gray,linewidth=1,display=display.none)
fill(hu1,hu2,title='HULL RSI TREND',color=show_Baseline?hmac:rsic)
fill(hu1,hu2,title='HULL with Sideways',color=sw and adx<20?color.gray:na)
rsiUpperBand2 = hline(90, "RSI Upper Band(90)", color=color.red,linestyle=hline.style_dotted,display=display.none)
rsiUpperBand = hline(overbought, "RSI Upper Band", color=color.red,linestyle=hline.style_dotted,display=display.none)
fill(rsiUpperBand2,rsiUpperBand,title='Buy Zone',color=color.red,transp=80)
hline(50, "RSI Middle Band", color=color.new(#787B86, 50),linestyle=hline.style_solid)
rsiLowerBand = hline(oversold, "RSI Lower Band", color=color.green,linestyle=hline.style_dotted,display=display.none)
rsiLowerBand2 = hline(10, "RSI Lower Band(10)", color=color.green,linestyle=hline.style_dotted,display=display.none)
fill(rsiLowerBand,rsiLowerBand2,title='Sell Zone',color=color.green,transp=80)
plotshape(buysignal and sellsignal ?hullrsi1 :na, title='Buy', style=shape.triangleup, location=location.absolute, color=color.new(color.yellow, 0), size=size.tiny, offset=0)
plotshape(sellsignal and buysignal ?hullrsi1 :na, title='Sell', style=shape.triangledown, location=location.absolute, color=color.new(color.red, 0), size=size.tiny, offset=0)
alertcondition(buysignal and sellsignal ,title='RSI TREND:Buy Signal',message='RSI TREND: Buy Signal')
alertcondition(sellsignal and buysignal ,title='RSI TREND:Sell Signal',message='RSI TREND: Sell Signal')
ROBUST iFVG [SurgeGuru]The FVG/iFVG Robust Lifecycle indicator is a sophisticated market structure tool that moves beyond simple gap detection. It tracks the complete narrative of a Fair Value Gap—from its creation as a market imbalance to its resolution and the establishment of a new equilibrium zone. This dual-phase, institutional-grade approach provides a dynamic map of support and resistance, offering a profound edge in predicting price behavior.
Core Concept: The Two-Phase Lifecycle
The indicator is built on the principle that a Fair Value Gap has two distinct lives:
Phase 1: The Imbalance (FVG)
What it is: A rapid price move that leaves behind a "gap" or "void" with no trading activity.
Market Implication: Represents a moment of intense buying or selling pressure, creating an inefficient area price is statistically likely to return to.
Phase 2: The Equilibrium (iFVG)
What it is: A powerful support/resistance zone that forms the instant the original FVG is filled.
Market Implication: Represents the market's new consensus of "fair value" after the initial imbalance has been arbitraged away. This is often where institutional order flow resides for the next significant move.
Differentiators & "Robust" Features
Lifecycle Tracking: Unlike basic FVG tools that disappear once filled, this indicator captures the subsequent, often more important, iFVG phase.
Configurable Longevity: Offers two professional methods for managing iFVG lifespan (Full Cross or Number of Bars), preventing chart clutter while preserving relevant levels.
Advanced Alerting: Provides separate, configurable alerts for both FVG creation and iFVG formation, allowing traders to anticipate both the fill of an imbalance and the reaction at the new equilibrium.
Visual Hierarchy: Uses distinct, customizable colors and borders to instantly communicate the difference between an active imbalance (FVG) and an active decision zone (iFVG).
Code Architecture & How It Works
The script is a state management system built around two primary arrays that track the lifecycle of detected gaps.
1. Core Data Structures
The entire system is powered by parallel arrays that maintain the state of each detected zone:
FVG Arrays (Tracks Phase 1 - The Imbalance):
fvg_boxes : Stores the drawing object for each FVG.
fvg_top & fvg_bot : Store the price boundaries of the gap.
fvg_is_bull : Stores whether the FVG is bullish or bearish.
fvg_mitigated : The core state flag; becomes true when the FVG is filled, triggering the creation of an iFVG.
iFVG Arrays (Tracks Phase 2 - The Equilibrium):
ifvg_boxes : Stores the drawing object for each Inverse FVG.
ifvg_top & ifvg_bot : Inherits the price values from the parent FVG.
ifvg_is_bull : Is the inverse of the parent FVG's bias.
ifvg_original_fvg_index : Maintains a link back to the parent FVG for advanced management.
2. The Operational Workflow (Step-by-Step)
On every new bar, the script executes the following sequence:
STEP A: FVG Detection
The script checks for the 3-bar FVG pattern:
bullish_fvg = low > high (Current low is above the high from two bars ago)
bearish_fvg = high < low (Current high is below the low from two bars ago)
Upon detection, it creates a new box and pushes all its properties (price levels, bullish flag, etc.) into the FVG Arrays.
STEP B: FVG Management & Mitigation Check
The script iterates through all active FVGs in the fvg_boxes array.
For each FVG, it checks if the current price has "mitigated" (filled) the gap:
A Bullish FVG is mitigated if the current bar's low (body_low) crosses below the FVG's bottom boundary (bot_val).
A Bearish FVG is mitigated if the current bar's high (body_high) crosses above the FVG's top boundary (top_val).
If mitigation occurs, the script sets the FVG's fvg_mitigated flag to true.
STEP C: iFVG Creation (The Phase Transition)
The moment an FVG's fvg_mitigated flag is set to true, the script immediately creates a new iFVG.
It takes the exact same price levels from the parent FVG but inverts the bias (a mitigated Bullish FVG creates a Bearish iFVG, and vice versa).
It draws a new box with the user-defined iFVG color and border, and pushes all its properties into the iFVG Arrays.
STEP D: iFVG Lifecycle Management
The script iterates through all active iFVGs.
Depending on the user's setting, it manages the iFVG's lifespan:
Full Cross Mode: The iFVG remains active until price fully crosses through it again. Once crossed, the iFVG and its parent FVG are permanently deleted.
Number of Bars Mode: The iFVG remains visible for a fixed number of bars after its creation, then is automatically deactivated.
STEP E: Cleanup & Garbage Collection
The script constantly manages the visibility of boxes based on user toggles (show_normal_fvg, show_ifvg). If a feature is turned off, the boxes are not deleted but made transparent, allowing for fast performance and instant reactivation.
3. Alert System Architecture
The alert system is integrated into the state transitions:
FVG Alerts fire during STEP A (on creation).
iFVG Alerts fire during STEP C (on creation, which is the moment of FVG mitigation).
iFVG Mitigation Alerts fire during STEP D (when an iFVG is removed in Full Cross mode).
Conclusion
The FVG/iFVG Robust Lifecycle is not a mere indicator; it is a state-aware market analysis engine. By architecting a system that tracks the entire lifecycle of a price gap, it provides a dynamic, self-cleaning map of market imbalance and subsequent equilibrium. This offers a systematic framework for identifying high-probability support/resistance zones, making it an indispensable tool for discerning the underlying structure of price action.
Credits: TONO . this robust system was upgraded from his code.
Day Range Divider DTSCopied it for DTS purposes to ensure proper tracking, testing, and verification within the DTS workflow. This copy is intended for reference, analysis, and any required adjustments without affecting the original version.
AI ALGO LIVEAI ALGO LIVE is an advanced algorithmic visualization tool designed to analyze market momentum, trend direction, and potential reversal areas.
Built with an ATR-based dynamic trailing system, it tracks price movement and highlights possible Buy / Sell zones.
It automatically adapts to market volatility, aiming to identify trend shifts early and visually.
The system works seamlessly with Heikin Ashi candles, Stochastic, MACD, and MFI, helping viewers understand how multi-indicator alignment occurs during market cycles.
Its goal is to enhance market awareness — not to provide trade signals or financial advice.
⚠️ Disclaimer:
This indicator is for educational and analytical purposes only.
The visual signals on screen do not constitute investment advice or recommendations.
Always perform your own analysis and manage your risk responsibly.
Institutional Confluence Suite [SurgeGuru]Executive Summary
This is not an indicator; it is a Predictive Confluence Engine. It represents a quantum leap in technical analysis by synthesizing four distinct analytical dimensions—Fibonacci mathematics, temporal market energy, volume dynamics, and harmonic resonance—into a single, predictive framework. Its specialty lies in identifying High-Probability Confluence Zones where multiple independent factors align to signal potent market turning points.
Core Differentiators
Adaptive Fibonacci-Volume Synthesis:
Dynamic Support/Resistance: Transforms static Fibonacci levels into dynamic, volume-weighted zones. The script calculates a Volume Strength Score (0-100) for each key Fib level (0.236, 0.382, 0.618, 0.786).
Intelligent Visualization: Line thickness and style adapt in real-time: Thick/Solid for high-volume, high-confidence levels, and Thin/Dotted for low-volume, weak levels.
Real-Time Confirmation: Provides immediate ✓/✗ signals when price touches a Fib level, filtered by live volume momentum, distinguishing between high-conviction rejections and weak bounces.
Temporal Power Zone Analysis (Power Hour):
Institutional-Grade Confluence Detection: The system's masterstroke is identifying when a Power Hour Fibonacci level aligns with the Primary Trend Fibonacci level. These rare convergences are marked with a lightning bolt (⚡) and represent a consensus across timeframes and participant groups.
Structural Context: Power Hour zones provide the macro-structure, framing the market's most recent high-volatility battle. The subsequent price action within and around this zone reveals the dominant force's next intended direction.
Solfeggio Harmonic Resonance (Proprietary Beta):
Predictive Convergence: Identifies the rarest and most powerful market condition: a Harmonic Convergence Zone. This occurs when a Fibonacci level, a high-volume node, and a Solfeggio frequency ratio all align within a precise tolerance.
Market "Tuning Fork": The system acts as a resonance detector. A cyan pulse marker (●) signals when price touches a harmonic zone with expanding volume—like striking a tuning fork—indicating a high-probability bounce or reversal.
Unified Trend Framework:
Granular Trend Control: Offers 12 levels of trend sensitivity, from "Extreme" (0.5) for scalpers to "Maximum" (7.0) for position traders, ensuring the analysis is tailored to any trading style or timeframe.
Volume-Fueled Trends: The Angled Volume Profile visually demonstrates whether a trend is pushing (volume dominant on upper bars), breaking (volume dominant on lower bars), or healthy and sustained (balanced volume distribution).
Synthesis: The Confluence Engine
The true genius of this system is how these dimensions interact:
The Power Hour sets the tactical battlefield.
The Fibonacci-Volume analysis identifies the key defensive and offensive lines within that battlefield.
The Solfeggio Harmonics act as a sonar, pinging at the most potent points of alignment.
The Unified Trend Framework provides the strategic context and confirms the overall campaign's direction.
Conclusion
This script moves beyond analysis into the realm of market forecasting. It doesn't just show you what is happening; it predicts where the market is most likely to respect structure by identifying zones where mathematics, market energy, time, and resonance converge. This is institutional-grade intelligence, delivering a definitive and actionable edge by answering the critical question: "Where is the highest probability for the next significant move?"
Overall Architecture
The script operates as a multi-layered event detector. Instead of calculating continuous oscillators, it identifies specific market events (like a new swing high) and then performs complex logic to draw the appropriate structures (like an Order Block). It maintains internal arrays (lists) of these events and their corresponding drawings, constantly updating and cleaning them as new price data arrives.
1. Market Structure & Swing Detection
This is the foundational layer that identifies the market's basic rhythm.
How it Works:
Swing Point Identification: The core function queryPatterns(lastPrice, midPrice, prevPrice, isSwingHigh) looks for a three-bar pattern. For a swing high, it checks if the middle bar is higher than both its immediate neighbor bars. For a swing low, it checks if the middle bar is lower.
Multi-Timeframe Stack: The script creates three independent analyzers for Short-Term (stHigh, stLow), Intermediate-Term (itHigh, itLow), and Long-Term (ltHigh, ltLow) structures.
Short-Term: Reacts directly to the 3-bar pattern on the raw price series.
Intermediate-Term: Its input is the output of the Short-Term detector. It only records a new swing point when the Short-Term system identifies one. This creates a higher-quality, filtered set of swings.
Long-Term: Likewise, it builds upon the Intermediate-Term swings. This hierarchical filtering ensures each timeframe captures genuinely significant structural points.
Structure Breaks (MSS/BOS): The renderStructures() method is the key. It waits for price to "cross" a previously identified swing point.
If price crosses above a prior swing high, it draws a bullish line and labels it a Break of Structure (BOS), indicating renewed bullish momentum.
If price crosses below a prior swing low, it draws a bearish line and labels it a Change of Character (CHoCH) or Market Structure Shift (MSS), indicating a potential trend reversal.
2. Order Block & Breaker Block Detection (LuxAlgo Logic)
This layer identifies areas where "smart money" likely placed significant orders.
How it Works:
Fractal Detection: It uses a fractalHigh and fractalLow system (arrays of recent swing points) to identify the most significant pivot highs and lows, filtered by the user-selected term.
Block Creation - The "Cause": When price closes beyond a fractal high/low, it triggers a lookback period.
For a Bullish Order Block (after breaking a high): It looks back from the break point to the fractal and finds the bar with the lowest low within that range. The high and low (or open/close if body is selected) of that bar define the Order Block. The logic is that this was the last consolidation area before the bullish breakout.
Breaker Block - The "Effect": The script then monitors these Order Blocks.
If price re-enters a Bullish Order Block and breaks below its low, that block is "breached." It is then re-classified as a Breaker Block and visually changes (e.g., color, extended lines). This indicates the failure of that buy-side level, which now becomes resistance.
3. Liquidity Analysis (Buyside/Sellside & Voids)
This layer maps out the market's "why" - the liquidity pools that price is drawn to.
Buyside/Sellside Liquidity:
Pivot-Based Aggregation: It uses the multi-timeframe swing points (topLQ, btmLQ) as potential liquidity targets.
Zone Confirmation: It doesn't just use a single swing point. It checks a historical array of all prior pivots (aZZ). If it finds several pivots clustered within a narrow band (defined by atr / liqMar), it marks the entire zone as a Liquidity Pool.
Visualization: It draws a semi-transparent box around this zone. A "Buyside Liquidity" zone is below price (where sell-stops are hunted), and a "Sellside Liquidity" zone is above price (where buy-stops are hunted).
Liquidity Voids:
Gap Detection: This is a simpler, more geometric concept. It looks for large gaps between candles that exceed a threshold (based on atr200).
Visual Representation: When such a gap is found (e.g., the current low is significantly above the high of two bars ago), it fills the space with a series of small, colored boxes. This creates a clear visual "void" area, indicating a price range with little trading activity that will likely be traversed quickly.
4. Enhanced Liquidity Detection (BigBeluga Logic)
This is a separate, volume-informed system for spotting immediate liquidity.
How it Works:
Volume Spike Context: It calculates a normalized volume value (norm_vol) by comparing current volume to a high percentile of recent volume. This identifies unusually high volume activity.
Price Rejection: It looks for simple price patterns: a bar that makes a new high (or low) and is immediately rejected (the next bar does not continue in that direction).
Dynamic Box Creation: When these two conditions align (high volume + price rejection), it draws a box extending from that high/low. The opacity and size of the box are directly tied to the strength of the volume spike. A massive volume spike creates a very prominent box, signaling a critical liquidity level where a significant battle between buyers and sellers occurred.
Synthesis: The "Behind the Scenes" Workflow
On every new bar, the script performs this orchestrated sequence:
Update & Detect: It updates all its internal swing point arrays and checks for new Market Structure events.
Check Conditions: It runs the Order Block logic to see if any fractal levels have been breached, creating new blocks.
Monitor & Modify: It checks all existing Order Blocks to see if any have been "breached," converting them to Breaker Blocks.
Map Liquidity: It updates the liquidity pools based on the latest swings and checks for new liquidity voids based on recent price gaps.
Volume Analysis: The enhanced system checks for volume-based liquidity zones.
Garbage Collection: It constantly cleans up old drawings (lines, boxes, labels) that are no longer relevant to keep the chart performant and uncluttered.
In essence, the code acts as a state machine that tracks the market's evolution through its structural breaks, order placements, and liquidity interactions, translating this complex state into a clear, visual narrative for the trader.
Credits: LuxAlgo, PrimeChart, Trendoscope
Sector Relative StrengthThis indicator measures a stock's Real Relative Strength against its sector benchmark, helping you identify stocks that are outperforming or underperforming their sector peers.
The concept is based on the Real Relative Strength methodology popularized by the r/realdaytrading community.
Unlike traditional relative strength calculations that simply compare price ratios, this indicator uses a more sophisticated approach that accounts for volatility through ATR (Average True Range), providing a normalized view of true relative performance.
Key Features
Automatic Sector Detection
Automatically detects your stock's sector using TradingView's built-in sector classification
Maps to the appropriate SPDR Sector ETF (XLK, XLF, XLV, XLY, XLP, XLI, XLE, XLU, XLB, XLC)
Supports all 20 TradingView sectors
Sector ETF Mappings
The indicator automatically compares your stock against:
Technology: XLK (Technology Services, Electronic Technology)
Financials: XLF (Finance sector)
Healthcare: XLV (Health Technology, Health Services)
Consumer Discretionary: XLY (Retail Trade, Consumer Services, Consumer Durables)
Consumer Staples: XLP (Consumer Non-Durables)
Industrials: XLI (Producer Manufacturing, Industrial Services, Transportation, Commercial Services)
Energy: XLE (Energy Minerals)
Utilities: XLU
Materials: XLB (Non-Energy Minerals, Process Industries)
Communications: XLC
Default: SPY (for Miscellaneous or unclassified sectors)
Customizable Settings
Comparison Mode: Choose between automatic sector comparison or custom symbol
Length: Adjustable lookback period (default: 12)
Smoothing: Apply moving average to reduce noise (default: 3)
Visual Clarity
Green line: Stock is outperforming its sector
Red line: Stock is underperforming its sector
Zero baseline: Clear reference point for performance
Clean info box: Shows which ETF you're comparing against
How It Works
The indicator calculates relative strength using the following methodology:
Rolling Price Change: Measures the price movement over the specified length for both the stock and its sector ETF
ATR Normalization: Uses Average True Range to normalize for volatility differences
Power Index: Calculates the sector's strength relative to its volatility
Real Relative Strength: Compares the stock's performance against the sector's power index
Smoothing: Applies a moving average to reduce single-candle spikes
Formula:
Power Index = (Sector Price Change) / (Sector ATR)
RRS = (Stock Price Change - Power Index × Stock ATR) / Stock ATR
Smoothed RRS = SMA(RRS, Smoothing Length)
RSI + MFIRSI and MFI combined, width gradient fields if OS or OB, shows divergences separate for wicks and bodies, shows dots when mfi and rsi oversold at the same time.
Continuation Probability (0–100)This indicator helps measure how likely the current candle trend will continue or reverse, giving a probability score between 0–100.
It combines multiple market factors trend, candle strength, volume, and volatility to create a single, intuitive signal.
True Previous Day/Week High & LowTrue Previous Day/Week High & Low
What makes this indicator unique:
Unlike most previous day high/low indicators that only track SESSION data (e.g., 6:00 PM - 5:00 PM for futures), this indicator calculates the TRUE calendar day high and low from MIDNIGHT TO MIDNIGHT (00:00 - 23:59) in New York time.
Why this matters:
- Session-based indicators miss crucial price action that occurs during overnight hours
- True midnight-to-midnight calculation gives you the ACTUAL daily range
- Essential for traders who need accurate previous day levels for support/resistance
- Works perfectly on 24-hour markets like futures (NQ, ES, YM, etc.)
Features:
✓ True calendar day high/low (00:00-23:59 NY time)
✓ Previous week high/low
✓ Customizable line colors, widths, and styles (solid, dashed, dotted)
✓ Optional labels with adjustable size, color, and spacing
✓ Values displayed on price scale
✓ Toggle individual levels on/off
✓ Optimized for 1-minute charts but works on all timeframes
Perfect for:
- Futures traders (NQ, ES, YM, RTY)
- Day traders using previous day levels as key support/resistance
- Swing traders tracking weekly ranges
- Anyone who needs accurate 24-hour high/low levels
Settings are clean and intuitive - just add to your chart and customize the appearance to match your setup!
RSI + Elder Bull-Bear pressure RSI + Bull/Bear (Elder-Ray enhanced RSI)
What it is
An extended RSI that overlays Elder-Ray Bull/Bear Power on the same, zero-centered scale. You get classic RSI regime cues plus a live read of buy/sell pressure, with optional smoothing, bands, and right-edge value labels.
Key features
RSI with bands – default bands 30 / 50 / 70 (editable).
Bull/Bear Power (Elder) – ATR-normalized; optional EMA/SMA/RMA/HMA smoothing.
One-pane overlay – RSI and Bull/Bear share a common midline (RSI-50 ↔ panel 0).
Right-edge labels – always visible at the chart’s right margin with adjustable offsets.
How to read it
Cyan line = RSI (normalized)
Above the mid band = bullish regime; below = bearish regime.
Green = Bull Power, Red = Bear Power
Columns/lines above 0 show buy pressure; below 0 show sell pressure.
Smoothing reduces noise; zero-line remains your key reference.
Trade logic (simple playbook)
Entry
BUY (primary):
RSI crosses up through 50 (regime turns bullish), and
Bull (green) crosses up through 0 (buy pressure confirms).
SELL (primary):
RSI crosses down through 50, and
Bear (red) crosses down through 0 (sell pressure confirms).
Alternative momentum entries
Aggressive BUY: Bull (green) pushes above RSI-80 band (strong upside impulse).
Aggressive SELL: Bear (red) pushes below RSI-30 band (strong downside impulse).
Exits / trade management
In a long: consider exiting or tightening stops if Bear (red) dips below the 0 line (rising sell pressure) or RSI loses 50.
In a short: consider exiting or tightening if Bull (green) rises above 0 or RSI reclaims 50.
Tip: “0” on the panel is your pressure zero-line (maps to RSI-50). Most whipsaws happen near this line; smoothing (e.g., EMA 21) helps.
Defaults (on first load)
RSI bands: 30 / 50 / 70 with subtle fills.
Labels: tiny, pushed far right (large offsets).
Bull/Bear smoothing: EMA(21), smoothed line plot mode.
RSI plotted normalized so it overlaps the pressure lines cleanly.
Tighten or loosen the Bull/Bear thresholds (e.g., Bull ≥ +0.5 ATR, Bear ≤ −0.5 ATR) to demand stronger confirmation.
Settings that matter
Smoothing length/type – balances responsiveness vs. noise.
Power/RSI Gain – visual scaling only (doesn’t change logic).
Band placement – keep raw 30/50/80 or switch to “distance from 50” if you prefer symmetric spacing.
Label offsets – move values clear of the last bar/scale clutter.
Good practices
Combine with structure/ATR stops (e.g., 1–1.5× ATR, swing high/low).
In trends, hold while RSI stays above/below 50 and the opposite pressure line doesn’t dominate.
In ranges, favor signals occurring near the mid band and take profits at the opposite band.
Disclaimer: This is a research/visual tool, not financial advice at any kind. Test your rules on multiple markets/timeframes and size positions responsibly.
FuTech : Darvas Box (Original Theory) IndicatorFuTech : Darvas Box (Original Theory) Indicator
📈 Introduction
🔹 This indicator implements the legendary Darvas Box theory developed by Nicolas Darvas in the 1950s, which helped him turn $25,000 into $2,000,000 in just 18 months.
🔹 Unlike other box indicators, this implementation strictly follows Darvas' original methodology while adding modern technical features for enhanced usability in today's markets.
===============================================================================
📊 What Makes This Implementation Unique
🔹 This indicator stands apart from other Darvas Box implementations in several key ways:
🔹 It implements the exact "high before low" rule that Darvas used - first identifying the roof (top) of the box, then waiting for the floor (bottom) to form
🔹 It offers two distinct methods for box detection - Swing Confirmation (which waits for price confirmation) and Lookback Period (simpler approach)
🔹 It includes Darvas' critical volume confirmation requirement with customizable parameters
🔹 It incorporates Darvas' focus on strong stocks near their highs through the 52-week high filter
🔹 It provides multi-timeframe capability, allowing application to intraday, daily, weekly, or monthly charts
🔹 It features dynamic box coloring based on breakout direction (green for upward, red for downward)
===============================================================================
🔍 Technical Implementation Details
📦 Box Formation Algorithm
🔹 The indicator constructs boxes using a sophisticated algorithm that follows Darvas' original approach:
🔹 For Swing Confirmation mode:
🔸 The system identifies potential swing highs by looking for price points that are higher than the previous N bars (user-defined)
🔸 Similarly, swing lows are identified as points lower than the previous N bars
🔸 The "high before low" rule ensures a roof is established before a floor is determined
🔸 Once both parameters are locked in, the box is drawn and extended horizontally
🔹 For Lookback Period mode:
🔸 The box high is simply the highest high of the last X bars (user-defined)
🔸 The box low is the lowest low of the last X bars
🔸 This provides a simpler but still effective implementation of Darvas' concept
🚀 Breakout Detection System
🔹 The indicator employs a dual-confirmation system for breakouts:
🔹 Upward Breakout Conditions:
🔸 Price must close above the box roof
🔸 Volume must exceed the volume moving average (default 20-period) multiplied by a factor (default 1.5x)
🔸 The 52-week high filter must be satisfied (price must be within the maximum drawdown percentage from the 52-week high)
🔹 Downward Breakout Conditions:
🔸 Price must close below the box floor
🔸 No volume confirmation is required for downward breakouts (following Darvas' approach)
📊 Volume Confirmation Mechanism
🔹 The indicator calculates volume thresholds using:
🔸 Volume Average = SMA(volume, N) where N is the user-defined period (default 20)
🔸 Volume Threshold = Volume Average × Volume Factor (default 1.5)
🔸 Only when current volume exceeds this threshold is an upward breakout considered valid
📈 Uptrend Filter
🔹 The indicator implements Darvas' focus on strong stocks through:
🔸 52-week High Calculation = Highest price over the past 52 weeks
🔸 Minimum Price Requirement = 52-week High × (1 - Maximum Drawdown %)
🔸 This ensures only stocks that are not too far from their highs generate signals
===============================================================================
🎯 How to Use This Indicator
🔷 Entry Signals
🔹 Wait for a green box to appear, indicating an upward breakout
🔹 Confirm that volume was above average during the breakout (shown by the indicator)
🔹 Verify the stock is within your acceptable distance from its 52-week high
🔹 Consider entering on the next candle after confirmation
🔷 Exit Signals
🔹 Exit when a red box appears, indicating a downward breakout
🔹 Alternatively, use trailing stops below newly formed box lows
🔹 Consider partial exits at predefined profit targets while letting the remainder run
🔷 Parameter Optimization
🔹 For swing traders, use longer lookback periods (20-50 bars)
🔹 For day traders, use shorter periods (5-15 bars)
🔹 Adjust the volume factor based on the asset's typical volatility
🔹 Modify the maximum drawdown percentage based on your risk tolerance
===============================================================================
📚 Historical Context and Trading Philosophy
🔹 Nicolas Darvas developed his box theory while traveling the world as a dancer.
🔹 With limited access to market information, he relied only on price charts and telegrams.
🔹 He discovered that strong stocks tend to pause after hitting new highs, forming what he called "boxes" - sideways ranges where the stock "rests" before its next move.
🔹 By buying only when price broke above these ranges with unusually high volume, he was able to ride powerful uptrends while cutting losses quickly when the breakdown occurred.
🔹 This indicator captures the essence of Darvas' approach - focusing on strength, confirming with volume, and selling weakness quickly - while adding modern technical features to enhance its utility in today's electronic trading environment.
===============================================================================
⚙️ Calculation Summary
🔹 The indicator performs the following calculations:
🔸 Box High = Highest swing high or lookback high (depending on selected method)
🔸 Box Low = Lowest swing low or lookback low (depending on selected method)
🔸 Upward Breakout = Price > Box High AND Volume > (Volume Average × Volume Factor)
🔸 Downward Breakout = Price < Box Low
🔸 Volume Average = SMA(Volume, N) where N is the volume period
🔸 Uptrend Filter = Price ≥ (52-week High × (1 - Maximum Drawdown %))
===============================================================================
🔔 Alert Configuration
🔹 To set up alerts:
🔸 Right-click on the chart and select "Add Alert"
🔸 Choose the Darvas Box indicator as the alert condition
🔸 Select either "Breakout Up" or "Breakout Down" as the alert condition
🔸 Configure your preferred notification method
🔹 This modernizes Darvas' telegram-based approach, allowing you to receive instant notifications when potential trading opportunities occur.
===============================================================================
📈 Conclusion
🔹 This FuTech : Darvas Box (Original Theory) indicator faithfully implements Nicolas Darvas' legendary trading method while adding modern technical features.
🔹 By focusing on strength, confirming with volume, and providing clear entry and exit signals, it offers traders a structured approach to trend following that has stood the test of time.
🔹 The indicator's multiple detection methods, volume confirmation, and trend filtering make it a comprehensive tool for implementing Darvas' box theory in today's markets.
===============================================================================
🙏 Credits : Inspired by @LevelUpTools
Prev Daily Closes — Prev1 & Prev2 (intraday) RAJESH MAYEKARit gives last 2 days close line. when last 2 days close broke you get momentum for BTST






















