Initial Balance Breakout Signals [LuxAlgo]The Initial Balance Breakout Signals help traders identify breakouts of the Initial Balance (IB) range.
The indicator includes automatic detection of IB or can use custom sessions, highlights top and bottom IB extensions, custom Fibonacci levels, and goes further with an IB forecast with two different modes.
🔶 USAGE
The initial balance is the price range made within the first hour of the trading session. It is an intraday concept based on the idea that high volume and volatility enter the market through institutional trading at the start of the session, setting the tone for the rest of the day.
The initial balance is useful for gauging market sentiment, or, in other words, the relationship between buyers and sellers.
Bullish sentiment: Price trades above the IB range.
Mixed sentiment: Price trades within the IB range.
Bearish sentiment: Price trades below the IB range.
The initial balance high and low are important levels that many traders use to gauge sentiment. There are two main ideas behind trading around the IB range.
IB Extreme Breakout: When the price breaks and holds the IB high or low, there is a high probability that the price will continue in that direction.
IB Extreme Rejection: When the price tries to break those levels but fails, there is a high probability that it will reach the opposite IB extreme.
This indicator is a complete Initial Balance toolset with custom sessions, breakout signals, IB extensions, Fibonacci retracements, and an IB forecast. All of these features will be explained in the following sections.
🔹 Custom Sessions and Signals
By default, sessions for Initial Balance and breakout signals are in Auto mode. This means that Initial Balance takes the first hour of the trading session and shows breakout signals for the rest of the session.
With this option, traders can use the tool for open range trading, making it highly versatile. The concept behind open range (OR) is the same as that of initial balance (IB), but in OR, the range is determined by the first minute, three or five minutes, or up to the first 30 minutes of the trading session.
As shown in the image above, the top chart uses the Auto feature for the IB and Breakouts sessions. The bottom chart has the Auto feature disabled to use custom sessions for both parameters. In this case, the first three minutes of the trading session are used, turning the tool into an Open Range trading indicator.
This chart shows another example of using custom sessions to display overnight NASDAQ futures sessions.
The left chart shows a custom session from the Tokyo open to the London open, and the right chart shows a custom session from the London open to the New York open.
The chart shows both the Asian and European sessions, their top and bottom extremes, and the breakout signals from those extremes.
🔹 Initial Balance Extensions
Traders can easily extend both extremes of the Initial Balance to display their preferred targets for breakouts. Enable or disable any of them and set the IB percentage to use for the extension.
As the chart shows, the percentage selected on the settings panel directly affects the displayed levels.
Setting 25 means the tool will use a quarter of the detected initial balance range for extensions beyond the IB extremes. Setting 100 means the full IB range will be used.
Traders can use these extensions as targets for breakout signals.
🔹 Fibonacci Levels
Traders can display default or custom Fibonacci levels on the IB range to trade retracements and assess the strength of market movements. Each level can be enabled or disabled and customized by level, color, and line style.
As we can see on the chart, after the IB was completed, prices were unable to fall below the 0.236 Fibonacci level. This indicates significant bullish pressure, so it is expected that prices will rise.
Traders can use these levels as guidelines to assess the strength of the side trying to penetrate the IB. In this case, the sellers were unable to move the market beyond the first level.
🔹 Initial Balance Forecast
The tool features two different forecasting methods for the current IB. By default, it takes the average of the last ten values and applies a multiplier of one.
IB Against Previous Open: averages the difference between IB extremes and the open of the previous session.
Filter by current day of the week: averages the difference between IB extremes and the open of the current session for the same day of the week.
This feature allows traders to see the difference between the current IB and the average of the last IBs. It makes it very easy to interpret: if the current IB is higher than the average, buyers are in control; if it is lower than the average, sellers are in control.
For example, on the left side of the chart, we can see that the last day was very bullish because the IB was completely above the forecasted value. This is the IB mean of the last ten trading days.
On the right, we can see that on Monday, September 15, the IB traded slightly higher but within the forecasted value of the IB mean of the last ten Mondays. In this case, it is within expectations.
🔶 SETTINGS
Display Last X IBs: Select how many IBs to display.
Initial Balance: Choose a custom session or enable the Auto feature.
Breakouts: Enable or disable breakouts. Choose custom session or enable the Auto feature.
🔹 Extensions
Top Extension: Enable or disable the top extension and choose the percentage of IB to use.
Bottom extension: Enable or disable the bottom extension and choose the percentage of IB to use.
🔹 Fibonacci Levels
Display Fibonacci: Enable or disable Fibonacci levels.
Reverse: Reverse Fibonacci levels.
Levels, Colors & Style
Display Labels: Enable or disable labels and choose text size.
🔹 Forecast
Display Forecast: Select the forecast method.
- IB Against Previous Open: Calculates the average difference between the IB high and low and the previous day's IB open price.
- Filter by Current Day of Week: Calculates the average difference between the IB high and low and the IB open price for the same day of the week.
Forecast Memory: The number of data points used to calculate the average.
Forecast Multiplier: This multiplier will be applied to the average. Bigger numbers will result in wider predicted ranges.
Forecast Colors: Choose from a variety of colors.
Forecast Style: Choose a line style.
🔹 Style
Initial Balance Colors
Extension Transparency: Choose the extension's transparency. 0 is solid, and 100 is fully transparent.
枢轴点和水平
m1scfx Key Open LevelsICT Key Opens plots the most important session opening prices used in ICT concepts. These levels serve as key reference points for intraday bias, liquidity grabs, and market structure shifts. The indicator automatically marks the Midnight Open, London Open, and New York Open (with options for additional opens such as Weekly or Asian), so you never need to plot them manually. Each level is customizable with colors and styles, making it easy to track how price reacts around them. Perfect for traders who follow ICT concepts, this tool helps you quickly identify bias, anticipate liquidity hunts, and align your setups with institutional order flow.
Universal Gann Square & Cube LevelsUniversal Gann Square & Cube Levels - Dynamic Support/Resistance
Description:
📊 UNIVERSAL GANN LEVELS INDICATOR
This powerful indicator automatically plots Gann Square and Cube levels around the current stock price, providing dynamic support and resistance levels based on W.D. Gann's mathematical theories.
🎯 KEY FEATURES:
✅ Auto-Adaptive: Works for ANY stock price (₹20 to ₹100,000+)
✅ Real-time Detection: Uses current close price automatically
✅ Dual Level System: Square levels (black) + Cube levels (red)
✅ Customizable Range: Adjust percentage range (5% to 50%)
✅ Clean Display: Toggle square/cube lines independently
✅ Universal Compatibility: Works on all timeframes and instruments
📈 HOW IT WORKS:
Square Levels (Black Lines): Based on perfect squares (n²) around current price
Cube Levels (Red Lines): Based on perfect cubes (n³) around current price
Smart Range: Automatically calculates relevant levels within your specified percentage range
Info Display: Shows current price and level counts
⚙️ SETTINGS:
Price Range %: Control how many levels appear (default: 15%)
Show Square Levels: Toggle black square lines on/off
Show Cube Levels: Toggle red cube lines on/off
🔥 PERFECT FOR:
Day traders seeking precise entry/exit points
Swing traders identifying key support/resistance zones
Gann theory practitioners and students
Multi-timeframe analysis across all instruments
💡 USAGE TIPS:
Use 10-20% range for active day trading
Use 30-50% range for swing trading analysis
Watch for price reactions at square/cube intersections
Combine with volume analysis for confirmation
🌟 WHY THIS INDICATOR?
Unlike fixed Gann calculators, this indicator dynamically adapts to ANY price level, making it truly universal for Indian stocks, crypto, forex, and commodities.
⚠️ DISCLAIMER:
This indicator is for educational and informational purposes only. It is not financial advice and should not be considered as a recommendation to buy or sell any security. Trading involves significant risk of loss and may not be suitable for all investors. Past performance does not guarantee future results. Always conduct your own research and consult with a qualified financial advisor before making any investment decisions. The developer assumes no responsibility for any trading losses incurred through the use of this indicator.
📋 COMPATIBILITY:
All TradingView plans
All timeframes (1m to 1M)
Stocks, Crypto, Forex, Commodities
Mobile and desktop platforms
BOS + Liquidity Sweep Entries//@version=5
indicator("BOS + Liquidity Sweep Entries (Both Directions) — Fixed", overlay=true, shorttitle="BOS+LS")
// ===== INPUTS =====
swingLen = input.int(5, "Swing lookback", minval=1)
sweepATRmult = input.float(0.5, "Sweep wick threshold (ATR multiplier)", minval=0.0, step=0.1)
maxBarsSinceBOS = input.int(50, "Max bars to wait for sweep after BOS", minval=1)
showLabels = input.bool(true, "Show labels", inline="lbl")
showShapes = input.bool(true, "Show shapes", inline="lbl")
atr = ta.atr(14)
// ===== PIVOTS =====
ph_val = ta.pivothigh(high, swingLen, swingLen)
pl_val = ta.pivotlow(low, swingLen, swingLen)
// persist last pivots and their bar indices
var float lastPH = na
var int lastPH_bar = na
var float lastPL = na
var int lastPL_bar = na
if not na(ph_val)
lastPH := ph_val
lastPH_bar := bar_index - swingLen
if not na(pl_val)
lastPL := pl_val
lastPL_bar := bar_index - swingLen
// ===== BOS DETECTION (record the bar where BOS first confirmed) =====
var int bull_bos_bar = na
bull_bos = not na(lastPH) and close > lastPH and bar_index > lastPH_bar
if bull_bos
// store first confirmation bar (overwrite only if new)
if na(bull_bos_bar) or bar_index > bull_bos_bar
bull_bos_bar := bar_index
var int bear_bos_bar = na
bear_bos = not na(lastPL) and close < lastPL and bar_index > lastPL_bar
if bear_bos
if na(bear_bos_bar) or bar_index > bear_bos_bar
bear_bos_bar := bar_index
// If pivots update to a more recent pivot, clear older BOS/sweep markers that predate the new pivot
if not na(lastPH_bar) and not na(bull_bos_bar)
if bull_bos_bar <= lastPH_bar
bull_bos_bar := na
// clear bull sweep when pivot updates
var int last_bull_sweep_bar = na
if not na(lastPL_bar) and not na(bear_bos_bar)
if bear_bos_bar <= lastPL_bar
bear_bos_bar := na
var int last_bear_sweep_bar = na
// ensure sweep tracking vars exist (declared outside so we can reference later)
var int last_bull_sweep_bar = na
var int last_bear_sweep_bar = na
// ===== SWEEP DETECTION =====
// Bullish sweep: wick above BOS (lastPH) by threshold, then close back below the BOS level
bull_sweep = false
if not na(bull_bos_bar) and not na(lastPH)
bars_since = bar_index - bull_bos_bar
if bars_since <= maxBarsSinceBOS
wick_above = high - lastPH
if (wick_above > sweepATRmult * atr) and (close < lastPH)
bull_sweep := true
last_bull_sweep_bar := bar_index
// Bearish sweep: wick below BOS (lastPL) by threshold, then close back above the BOS level
bear_sweep = false
if not na(bear_bos_bar) and not na(lastPL)
bars_since = bar_index - bear_bos_bar
if bars_since <= maxBarsSinceBOS
wick_below = lastPL - low
if (wick_below > sweepATRmult * atr) and (close > lastPL)
bear_sweep := true
last_bear_sweep_bar := bar_index
// ===== ENTRY RULES (only after sweep happened AFTER BOS) =====
long_entry = false
if not na(last_bull_sweep_bar) and not na(bull_bos_bar)
if (last_bull_sweep_bar > bull_bos_bar) and (bar_index > last_bull_sweep_bar) and (close > lastPH)
long_entry := true
// avoid duplicate triggers from the same sweep
last_bull_sweep_bar := na
short_entry = false
if not na(last_bear_sweep_bar) and not na(bear_bos_bar)
if (last_bear_sweep_bar > bear_bos_bar) and (bar_index > last_bear_sweep_bar) and (close < lastPL)
short_entry := true
// avoid duplicate triggers from the same sweep
last_bear_sweep_bar := na
// ===== PLOTTING LINES =====
plot(lastPH, title="Last Swing High", color=color.orange, linewidth=2, style=plot.style_linebr)
plot(lastPL, title="Last Swing Low", color=color.teal, linewidth=2, style=plot.style_linebr)
// ===== LABELS & SHAPES (managed to avoid label flooding) =====
var label lb_bull_bos = na
var label lb_bear_bos = na
var label lb_bull_sweep = na
var label lb_bear_sweep = na
var label lb_long_entry = na
var label lb_short_entry = na
if showLabels
if bull_bos
if not na(lb_bull_bos)
label.delete(lb_bull_bos)
lb_bull_bos := label.new(bar_index, high, "Bull BOS ✓", yloc=yloc.abovebar, style=label.style_label_up, color=color.green, textcolor=color.white)
if bear_bos
if not na(lb_bear_bos)
label.delete(lb_bear_bos)
lb_bear_bos := label.new(bar_index, low, "Bear BOS ✓", yloc=yloc.belowbar, style=label.style_label_down, color=color.red, textcolor=color.white)
if bull_sweep
if not na(lb_bull_sweep)
label.delete(lb_bull_sweep)
lb_bull_sweep := label.new(bar_index, high, "Bull Sweep", yloc=yloc.abovebar, style=label.style_label_down, color=color.purple, textcolor=color.white)
if bear_sweep
if not na(lb_bear_sweep)
label.delete(lb_bear_sweep)
lb_bear_sweep := label.new(bar_index, low, "Bear Sweep", yloc=yloc.belowbar, style=label.style_label_up, color=color.purple, textcolor=color.white)
if long_entry
if not na(lb_long_entry)
label.delete(lb_long_entry)
lb_long_entry := label.new(bar_index, low, "LONG ENTRY", yloc=yloc.belowbar, style=label.style_label_up, color=color.lime, textcolor=color.black)
if short_entry
if not na(lb_short_entry)
label.delete(lb_short_entry)
lb_short_entry := label.new(bar_index, high, "SHORT ENTRY", yloc=yloc.abovebar, style=label.style_label_down, color=color.red, textcolor=color.white)
// optional shapes (good for quick visual scanning)
if showShapes
plotshape(bull_sweep, title="Bull Sweep Shape", location=location.abovebar, color=color.purple, style=shape.triangledown, size=size.tiny)
plotshape(bear_sweep, title="Bear Sweep Shape", location=location.belowbar, color=color.purple, style=shape.triangleup, size=size.tiny)
plotshape(long_entry, title="Long Shape", location=location.belowbar, color=color.lime, style=shape.triangleup, size=size.small)
plotshape(short_entry, title="Short Shape", location=location.abovebar, color=color.red, style=shape.triangledown, size=size.small)
// ===== ALERTS =====
alertcondition(bull_bos, title="Bullish BOS", message="Bullish BOS confirmed above swing high")
alertcondition(bear_bos, title="Bearish BOS", message="Bearish BOS confirmed below swing low")
alertcondition(bull_sweep, title="Bullish Sweep", message="Liquidity sweep above swing high detected")
alertcondition(bear_sweep, title="Bearish Sweep", message="Liquidity sweep below swing low detected")
alertcondition(long_entry, title="LONG Entry", message="LONG Entry: BOS -> sweep -> reclaim")
alertcondition(short_entry, title="SHORT Entry", message="SHORT Entry: BOS -> sweep -> reclaim")
Algorithmic Value Oscillator [CRYPTIK1]Algorithmic Value Oscillator
Introduction: What is the AVO? Welcome to the Algorithmic Value Oscillator (AVO), a powerful, modern momentum indicator that reframes the classic "overbought" and "oversold" concept. Instead of relying on a fixed lookback period like a standard RSI, the AVO measures the current price relative to a significant, higher-timeframe Value Zone .
This gives you a more contextual and structural understanding of price. The core question it answers is not just "Is the price moving up or down quickly?" but rather, " Where is the current price in relation to its recently established area of value? "
This allows traders to identify true "premium" (overbought) and "discount" (oversold) levels with greater accuracy, all presented with a clean, futuristic aesthetic designed for the modern trader.
The Core Concept: Price vs. Value The market is constantly trying to find equilibrium. The AVO is built on the principle that the high and low of a significant prior period (like the previous day or week) create a powerful area of perceived value.
The Value Zone: The range between the high and low of the selected higher timeframe.
Premium Territory (Distribution Zone): When the oscillator moves into the glowing pink/purple zone above +100, it is trading at a premium.
Discount Territory (Accumulation Zone): When the oscillator moves into the glowing teal/blue zone below -100, it is trading at a discount.
Key Features
1. Glowing Gradient Oscillator: The main oscillator line is a dynamic visual guide to momentum.
The line changes color smoothly from light blue to neon teal as bullish momentum increases.
It shifts from hot pink to bright purple as bearish momentum increases.
Multiple transparent layers create a professional "glow" effect, making the trend easy to see at a glance.
2. Dynamic Volatility Histogram: This histogram at the bottom of the indicator is a custom volatility meter. It has been engineered to be adaptive, ensuring that the visual differences between high and low volatility are always clear and dramatic, no matter your zoom level. It uses a multi-color gradient to visualize the intensity of market volatility.
3. Volatility Regime Dashboard: This simple on-screen table analyzes the histogram and provides a clear, one-word summary of the current market state: Compressing, Stable, or Expanding.
How to Use the AVO: Trading Strategies
1. Reversion Trading This is the most direct way to use the indicator.
Look for Buys: When the AVO line drops into the teal "Accumulation Zone" (below -100), the price is trading at a discount. Watch for the oscillator to form a bottom and start turning up as a signal that buying pressure is returning.
Look for Sells: When the AVO line moves into the pink "Distribution Zone" (above +100), the price is trading at a premium. Watch for the oscillator to form a peak and start turning down as a signal that selling pressure is increasing.
2. Best Practices & Settings
Timeframe Synergy: The AVO is most effective when your chart timeframe is lower than your selected "Value Zone Source." For example, if you trade on the 1-hour chart, set your Value Zone to "Previous Day."
Confirmation is Key: This indicator provides powerful context, but it should not be used in isolation. Always combine its readings with your primary analysis, such as market structure and support/resistance levels.
Round Number Zones (100, 50, 25)Of course. Here is the indicator fully converted to English, along with a detailed guide on what it does and how to use it.
-----
### 📜 Round Number Zones Indicator Code (English Version)
This is the complete code for the indicator. Copy and paste it into your Pine Editor.
```pinescript
//@version=5
indicator("Round Number Zones (100, 50, 25)", "Zones", overlay=true, max_boxes_count = 100, max_labels_count = 100)
// ==========================
// --- 100-Level Zones (Primary) ---
// ==========================
GROUP_100 = "100-Level Zones (Primary)"
show100 = input.bool(true, "Show 100-Levels", group=GROUP_100)
count100 = input.int(5, "Number of Levels Above/Below", minval=1, group=GROUP_100)
offset100 = input.float(15.0, "Zone Size (+/-)", step=0.1, group=GROUP_100)
color100 = input.color(color.new(color.blue, 85), "Zone Color", group=GROUP_100)
// ==========================
// --- 50-Level Zones (Secondary) ---
// ==========================
GROUP_50 = "50-Level Zones (Secondary)"
show50 = input.bool(true, "Show 50-Levels", group=GROUP_50)
count50 = input.int(5, "Number of Levels Above/Below", minval=1, group=GROUP_50)
offset50 = input.float(7.0, "Zone Size (+/-)", step=0.1, group=GROUP_50)
color50 = input.color(color.new(color.gray, 85), "Zone Color", group=GROUP_50)
// ==========================
// --- 25-Level Zones (Tertiary) ---
// ==========================
GROUP_25 = "25-Level Zones (Tertiary)"
show25 = input.bool(true, "Show 25-Levels", group=GROUP_25)
count25 = input.int(5, "Number of Levels Above/Below", minval=1, group=GROUP_25)
offset25 = input.float(3.0, "Zone Size (+/-)", step=0.1, group=GROUP_25)
color25 = input.color(color.new(color.yellow, 90), "Zone Color", group=GROUP_25)
// Arrays to store drawings for updating
var box boxes100 = array.new_box()
var label labels100 = array.new_label()
var box boxes50 = array.new_box()
var label labels50 = array.new_label()
var box boxes25 = array.new_box()
var label labels25 = array.new_label()
// Function to delete old drawings
f_deleteDrawings(boxes, labels) =>
for b in boxes
box.delete(b)
for l in labels
label.delete(l)
array.clear(boxes)
array.clear(labels)
// Execute on the last bar only for performance
if barstate.islast
// Delete old drawings first
f_deleteDrawings(boxes100, labels100)
f_deleteDrawings(boxes50, labels50)
f_deleteDrawings(boxes25, labels25)
// Calculate the reference point based on the current close price
base_level100 = math.round(close / 100) * 100
base_level50 = math.round((close - 50) / 100) * 100 + 50
base_level25 = math.round(close / 25) * 25
// --- Draw Tertiary Levels (25, 75, 125...) ---
if show25
for i = -count25 to count25
level25 = base_level25 + (i * 25)
// Don't draw a 25-level if it's also a 50 or 100 level
if level25 % 50 != 0
lower25 = level25 - offset25
upper25 = level25 + offset25
b_25 = box.new(bar_index, upper25, bar_index + 1, lower25, extend=extend.right, border_color=na, bgcolor=color25)
l_25 = label.new(bar_index, level25, "Level 25: " + str.tostring(level25), xloc=xloc.bar_time, yloc=yloc.price, style=label.style_label_left, color=color.new(color25, 100), textcolor=color25, size=size.tiny)
array.push(boxes25, b_25)
array.push(labels25, l_25)
// --- Draw Secondary Levels (50, 150, 250...) ---
if show50
for i = -count50 to count50
level50 = base_level50 + (i * 100)
if level50 % 100 != 0
lower50 = level50 - offset50
upper50 = level50 + offset50
b_50 = box.new(bar_index, upper50, bar_index + 1, lower50, extend=extend.right, border_color=na, bgcolor=color50)
l_50 = label.new(bar_index, level50, "Level 50: " + str.tostring(level50), xloc=xloc.bar_time, yloc=yloc.price, style=label.style_label_left, color=color.new(color50, 100), textcolor=color50, size=size.small)
array.push(boxes50, b_50)
array.push(labels50, l_50)
// --- Draw Primary Levels (100, 200, 300...) ---
if show100
for i = -count100 to count100
level100 = base_level100 + (i * 100)
lower100 = level100 - offset100
upper100 = level100 + offset100
b_100 = box.new(bar_index, upper100, bar_index + 1, lower100, extend=extend.right, border_color=na, bgcolor=color100)
l_100 = label.new(bar_index, level100, "Level 100: " + str.tostring(level100), xloc=xloc.bar_time, yloc=yloc.price, style=label.style_label_left, color=color.new(color100, 100), textcolor=color100, size=size.small)
array.push(boxes100, b_100)
array.push(labels100, l_100)
```
-----
## 📈 Detailed Guide to the Round Number Zones Indicator
### Core Concept
This indicator automatically identifies and highlights key psychological price levels on your chart. Traders and institutions often place orders around "round numbers" (like $100, $50, or $25), which causes these levels to act as natural areas of support and resistance. This script saves you the manual work of finding and drawing these important zones.
### How It Works
The indicator operates by finding the current price and then calculating the nearest multiples of 100, 50, and 25 around it. It then draws colored zones to visually represent these levels.
* **Primary Zones (Multiples of 100):** These are the strongest psychological levels (e.g., 6500, 6600, 6700). They are shown in blue by default and have the largest zone size.
* **Secondary Zones (Multiples of 50):** These are intermediate levels (e.g., 6550, 6650). They are shown in gray by default.
* **Tertiary Zones (Multiples of 25):** These are minor, short-term levels (e.g., 6525, 6575). They are shown in yellow by default.
The indicator is "smart"—it will not draw a 50-level zone if it's already a 100-level, and it won't draw a 25-level if it's already a 50 or 100. This keeps your chart clean and easy to read.
### How to Use It in Your Trading
* **Support & Resistance:** The primary use is to identify potential S/R. When the price approaches one of these zones, expect a reaction. A wider, primary (100) zone is a stronger level than a smaller, tertiary (25) zone.
* **Entry and Exit Targets:** Use these zones as logical places to take profit or to look for entry signals. For example, a bullish rejection candle forming in a 100-level support zone can be a powerful long signal.
* **Confluence:** The zones are most effective when they align with other technical analysis tools, such as moving averages, trendlines, or Fibonacci levels. A confluence of signals at a round number zone significantly increases its importance.
### ⚙️ Indicator Settings
You have full control over the indicator's appearance through its settings menu (click the ⚙️ icon):
* **Show Levels:** Each level type (100, 50, 25) can be turned on or off individually.
* **Number of Levels Above/Below:** Controls how many zones are drawn around the current price. You can reduce this number to declutter your chart or increase it to see a wider range.
* **Zone Size (+/-):** This determines the thickness of the colored zone around the round number, allowing you to define a wider or tighter area of interest.
* **Zone Color:** Fully customize the colors of each zone type to match your chart's theme.
OHMLC Dextor Indicator shows Open High Mid Low Close for D,W,M time frame make trading easy with label and look back option
QTheoryQTheory –
This indicator is built on Quarterly Theory (developed by Daye)
🔹 Quarterly Theory
Markets often unfold in repeating quarterly cycles (Q1–Q4) across multiple timeframes — yearly, monthly, weekly, daily, 90-minute, and even micro cycles. By dividing price action into these quarters, traders can better anticipate structural shifts, accumulation/distribution phases, and liquidity runs.
🔹 Sequential SMT (SSMT)
Sequential SMT extends standard SMT (Smart Money Technique) by comparing multiple assets (such as FX majors vs. DXY) to identify divergences across quarters.
🔹 Features of QTheory
Automatic detection of quarterly cycles across multiple timeframes.
Visual cycle boxes & customizable dividers.
Integrated SSMT signals with divergence line visualization.
DFR (Defining Range) with Fibonacci levels.
Support for up to 5 comparison assets, with inversion options.
Auto-cycle selection for seamless multi-timeframe adaptation.
Extensive customization for colors, opacity, and signal display.
⚠️ Disclaimer: This tool is for educational purposes only. It does not constitute financial advice. Always perform your own analysis and risk management.
J. YOUNG INDICATOR (2)QUICK REFERENCE to help with a PRICE FOR OPTIONS and or B/H entry MEDIAN PRICE of the MONTHLY/QUARTERLY aVWAPS to get a more accurate price point
CB Charts - GEX MESZ2025/ESZ2025Last Updated: 09/22/2025 6:41 a.m. PST
*DISCLAIMER: Only intended for ESZ2025/MESZ2025 charts.
This indicator plots horizontal levels based on batched GEX levels for ESZ2025/MESZ2025. The batched data is derived from contracts expiring: 0DTE, 1DTE, EoW, EoM, Next Week, Next Month and 3-months out. Labels are available for a high-level view of which levels are which. Hovering (or long-pressing on mobile TV) over the labels will display the nominal values and Rank. This script is manually updated and may not be always updated.
When and what to use:
- Most respected levels come from 1DTE, EoW and EoM.
- 0DTE is included for when this script becomes intraday updated. (CURRENTLY NOT UPDATED INTRADAY)
- Next Week setting is best used only for Friday and Sunday trading
- Next Month setting is best for weeks close to the end of the current month
Powered by the Camels of Wallstreet
Adaptive Pivot Zones█ OVERVIEW
The "Adaptive Pivot Zones" indicator is a versatile tool designed to identify and visualize key pivot levels directly on the price chart. By detecting pivot highs and lows, the indicator calculates dynamic support and resistance zones based on user-defined levels (default: 0.382, 0.5, 0.618). These zones adapt to market volatility, providing traders with clear visual cues for potential reversal or continuation points. The indicator offers extensive customization options, such as adjusting colors, smoothing lines, and setting fill transparency, making it highly adaptable to various trading styles.
█ CONCEPTS
The "Adaptive Pivot Zones" indicator simplifies the identification of significant price levels by plotting three dynamic pivot lines, which can be smoothed to reduce market noise. The indicator dynamically changes the colors of the lines and fill zones based on price action, using bullish, bearish, or neutral colors to reflect market sentiment.
█ CALCULATIONS
The indicator relies on the following calculations:
- Pivot Detection: Pivot highs (ta.pivothigh) and pivot lows (ta.pivotlow) are identified using a user-defined pivot length (default: 10). Pivots represent significant price peaks and troughs. Higher pivot length values produce more stable levels but introduce a delay equal to the set value. For more aggressive strategies, the pivot length can be reduced.
- Pivot Levels: When both a pivot high and low are detected, the range between them is calculated (rng = drHigh - drLow). Three pivot levels are computed as:
Line 1: drLow + rng * pivotLevel1
Line 2: drLow + rng * pivotLevel2
Line 3: drLow + rng * pivotLevel3
- Smoothing: Pivot lines can be smoothed using a simple moving average (SMA) with a user-defined smoothing length (default: 1) to reduce noise and improve readability.
- Color Logic: Lines and fill zones are colored based on the price position relative to the pivot zones:
If the price is below the lowest pivot line, a bearish color is used (default: red).
If the price is above the highest pivot line, a bullish color is used (default: green).
If the price is within the pivot zones and the neutral color option is enabled, a neutral color is used (default: gray); otherwise, the previous color is retained.
- Fill Zones: The areas between pivot lines are filled with a user-defined transparency level (default: 80) to visually highlight support and resistance zones.
█ INDICATOR FEATURES
- Dynamic Pivot Lines: Three adaptive pivot lines (default levels: 0.382, 0.5, 0.618) are plotted on the price chart, adjusting to market volatility.
- Smoothing: User-defined smoothing length (default: 1) for pivot lines to reduce noise and enhance signal clarity.
- Dynamic Coloring: Lines and fill zones change color based on price action (bullish, bearish, or neutral when the price moves within the zone), reflecting market sentiment.
- Fill Zones: Transparent fills between pivot lines to visually highlight support and resistance zones.
- Customization: Options to adjust pivot length, pivot levels, smoothing, colors, transparency, and enable/disable neutral color logic.
█ HOW TO SET UP THE INDICATOR
- Add the "Adaptive Pivot Zones" indicator to your TradingView chart.
- Configure parameters in the settings, such as pivot length, pivot levels, smoothing length, and colors, to align with your trading strategy. Without smoothing, lines behave like levels; with smoothing, they act like bands. All three levels can be set to the same value to obtain a single level or a line behaving like a moving average derived from pivots.
- Enable or disable the neutral color option (for prices moving within the zone) and adjust fill transparency for optimal visualization.
- Adjust line thickness and style in the "Style" section to improve chart readability.
Example of bands – lines behave like support/resistance zones.
Example of a moving average derived from pivots – line behaves like a pivot-based MA.
█ HOW TO USE
Add the indicator to your chart, adjust the settings, and observe price interactions with the pivot lines and zones to identify potential trading opportunities. Key signals include:
- Price Interaction with Pivot Lines: When the price approaches or crosses a pivot line, it may indicate a potential support or resistance level. A bounce from a pivot line could signal a reversal, while a breakout might suggest trend continuation.
- Zone-Based Signals and Trend Line Usage: Price movement within or outside the filled zones can indicate market sentiment. Price below the lowest pivot line suggests bearish momentum, price above the highest pivot line suggests bullish momentum, and price within the zones may indicate consolidation. With higher pivot length values, the indicator can be used as a trend line, particularly during clear market movements.
- Color Changes: Shifts in line and fill colors (bullish, bearish, or neutral) provide visual cues about changing market conditions.
- Confirmation with Other Tools: Combine the indicator with tools like RSI or Bollinger Bands to validate signals and improve trade accuracy. For example, a buy signal from RSI in the oversold zone combined with a bounce from the lowest pivot line may indicate a strong entry point.
Smart Money LITE — Daily Sweep → HQ Signals (VWAP • FVG • CHoCH) 🔗 PRO VERSION (VWAP + FVG + CHoCH — full confirmations, all timeframes):
chartedgepro.gumroad.com/l/rmnbhw
Daily liquidity sweep → confluence signals with VWAP, FVG & CHoCH. Works on all timeframes & markets (Indices, Forex, Crypto).
WHAT IT DOES
Smart Money LITE+ highlights high-quality LONG/SHORT signals only after daily liquidity is swept (previous day high/low) with confluence from VWAP, FVG and structure (BOS/CHoCH).
Works on all timeframes and across markets: indices, forex, crypto.
KEY FEATURES (Lite)
• Daily sweep logic (PDH/PDL) + previous day zones
• VWAP + deviation bands (optional) and proximity filter
• 3-bar FVG boxes (visual) with adjustable extension
• ATR/volatility filter, optional HTF trend filter
• Anti-spam cooldown, clean LONG/SHORT labels
• Alerts: HQ LONG / HQ SHORT
HOW TO USE
1. Wait for price to sweep PDH/PDL → indicator opens “signal window”.
2. Look for confluence: VWAP touch/proximity + CHoCH or BOS in direction.
3. Enter with proper risk management (stop beyond swing/zone, partials).
SETTINGS TIPS
• Enable “Require VWAP Confluence?” for strictest setups.
• Use “HTF Trend Filter?” to align with higher-timeframe EMA trend.
• Adjust “After sweep (bars)” to define signal validity window.
• FVGs are visual in Lite — advanced filtering and confirmation are in Pro.
WHO IT'S FOR
Scalpers, intraday, and swing traders looking for objective, visual signals based on liquidity sweeps and VWAP/FVG confluence.
PRO VERSION (full confirmations)
Adds advanced FVG/iFVG logic, more confluence filters, dynamic risk tools and extended alert packages — optimized for all timeframes.
👉 chartedgepro.gumroad.com/l/rmnbhw
NOTES
• For educational purposes only. No financial advice.
• “Lite” is open-source; redistribution of code follows TradingView rules.
Sessions Highs & Lows with MTF Zones [AlgoRich] Sessions Highs & Lows with MTF Zones — Description for Publication
What it does
This indicator marks and works with intra-session extremes and repeating liquidity zones:
Three configurable sessions (Asia / London / NY) with user-defined hours and colors. It shades the background during each session in your time zone (default UTC-3).
Session High/Low: while a session is open, it continuously updates its High/Low; when the session closes, it places labels at the exact bars where those extremes occurred (using the session name).
Equal Highs / Equal Lows (EQH / EQL) detection based on pivots and an ATR tolerance threshold. When two highs (or lows) are detected as “nearly equal,” it draws a line between them and tags EQH/EQL, highlighting potential liquidity/reaction areas.
How it works (under the hood)
The internal function f_sesion() checks whether a bar belongs to a session, whether it’s the start or end, and stores the session hi/lo and their bar_index. When the session ends, it creates the high/low labels.
Pivots are computed with ta.pivothigh / ta.pivotlow using pivotLength.
“Equality” between two extremes is decided by:
|Extreme1 − Extreme2| ≤ ATR(confluenceAtrLength) × threshold.
If Wait For Confirmation is enabled, the pivot must be fully formed (fewer signals, more robust). If disabled, it confirms with only 1 bar to the right (faster, more sensitive).
Parameters
General
UTC Zone: string like UTC-3 to evaluate session times correctly.
Session 1 / 2 / 3
Session name (e.g., Asia, London, NY).
Hours (format HHMM-HHMM, 24h).
Background shading ON/OFF and background color.
Label colors for the session’s High and Low.
Settings
Pivot Length: left/right bars to form a pivot.
ATR Length: ATR period used for the equality tolerance.
Threshold (0–1): ATR multiplier to decide whether two extremes are “equal” (e.g., 0.10 = difference ≤ 0.1 × ATR).
Wait For Confirmation: true = fully confirmed pivots; false = quicker confirmation (more anticipation, more noise).
Reading & suggested use
Session High/Low often act as liquidity references and potential resistance/support for the following session.
EQH/EQL can point to resting liquidity (areas prone to sweeps or breaks).
Use it as a map: combine these references with your plan (e.g., London/NY ORB, VWAP, order blocks).
$ - HTF Sweeps & PO3HTF Sweeps & PO3 Indicator
The HTF Sweeps & PO3 indicator is a powerful tool designed for traders to visualise higher timeframe (HTF) candles, identify liquidity sweeps, and track key price levels on a lower timeframe (LTF) chart. Built for TradingView using Pine Script v6, it overlays HTF candle data and highlights significant price movements, such as sweeps of previous highs or lows, to help traders identify potential liquidity sweep and reversal points. The indicator is highly customisable, offering a range of visual and alert options to suit various trading strategies.
Features
Higher Timeframe (HTF) Candle Visualisation:
- Displays up to three user-defined HTF candles (e.g., 15m, 1H, 4H) overlaid on the LTF chart.
- Customisable candle appearance with adjustable size (Tiny to Huge), offset, spacing, and colours for bullish/bearish candles and wicks.
- Option to show timeframe labels above or below HTF candles with configurable size and position.
Liquidity Sweep Detection:
- Identifies bullish and bearish sweeps when price moves beyond the high or low of a previous HTF candle and meets specific conditions.
- Displays sweeps on both LTF and HTF with customisable line styles (Solid, Dashed, Dotted), widths, and colours.
- Option to show only the most recent sweep per candle to reduce chart clutter.
Invalidated Sweep Tracking:
- Detects and visualises invalidated sweeps (when price moves past a sweep level in the opposite direction).
- Configurable display for invalidated sweeps on LTF and HTF with distinct line styles and colours.
Previous High/Low Lines:
- Plots horizontal lines at the high and low of the previous HTF candle, extending on both LTF and HTF.
- Customisable line style, width, and color for easy identification of key levels.
- Real-Time Sweep Detection:
-Optional real-time sweep visualisation for active candles, enabling traders to monitor developing price action.
Alert System:
- Triggers alerts for sweep formation (when a new sweep is detected).
- Triggers alerts for sweep invalidation (when a sweep is no longer valid).
- Alerts include details such as timeframe, ticker, and price level for precise notifications.
Performance Optimisation:
- Efficiently manages resources with configurable limits for lines, labels, boxes, and bars (up to 500 each).
- Cleans up outdated visual elements to maintain chart clarity.
Flexible Configuration:
- Supports multiple timeframes for HTF candles with user-defined settings for visibility and number of candles displayed (1–60).
- Toggle visibility for HTF candles, sweeps, invalidated sweeps, and high/low lines independently for LTF and HTF.
This indicator is ideal for traders focusing on liquidity hunting, order block analysis, or price action strategies, providing clear visual cues and alerts to enhance decision-making.
Pro AI Trading - Month Week OpenThis is a indicator that primarily marks monthly 1 hour initial balances, while highlighting every yearly half/quarter. Additionally has 9 different types of MA bands + D/W/M vertical separators. Marks custom % pivot points for easier zone marking. Possibility of generating signals based on mid line candle crosses.
52WH/last52WHbefore3Months/ATHThis indicator calculates and displays three values:
First, it calculates the current 52-week high and displays it as a line and in a table at the top right with the name, date, and price.
Corresponding color markings are also displayed on the price scale.
Next, the 52-week high that is at least three months ago is determined.
The corresponding candle is also labeled with a date. This past high is also displayed as a line, on the price scale, and in the table.
Finally, the current all-time high is determined and also displayed as a line, in the price scale, and in the table.
All display values can be turned on or off in the view, and the corresponding colors of the displays can also be freely selected.
(This script was developed by J. Heina, jochen.heina(at)gmail, in collaboration with the ChatGPT tool).
=====
SMC BOS - Structure Breaks & Median Continuation ProjectionsThis tool shows what usually happens after a Break of Structure (BOS).
It scans past BOS events on your chart, finds the ones most similar to the latest break (using ATR to filter by volatility), and then plots the median continuation path.
Optional percentile bands (P10–P90) display the possible range of outcomes around the median.
Key features:
• Automatic detection of bullish and bearish BOS events
• Library of past BOS with adjustable size and spacing
• ATR-based similarity and recency weighting
• Median continuation projections with optional percentile bands
• Customizable colors, signals, and stats table
• Works on any market and timeframe
Use cases:
• See how price typically behaves after a BOS
• Support SMC analysis with data-driven projections
• Improve trade planning by visualizing likely continuations
• Apply across crypto, forex, stocks, and futures
Originality:
Instead of only marking BOS, this script learns from history and projects forward the median path of the most similar past cases, adjusted for volatility. It turns BOS signals into practical continuation scenarios.
Instructions:
Add the indicator to your chart. When a BOS is detected, the projection is drawn automatically.
Use the settings to adjust the library, ATR weighting, projection style, percentile bands, and the display of signals or stats.
For questions or customization, contact Julien Eche (Julien_Eche) on TradingView.
Tomorrow's Pivot Points [SMH]這個TradingView指標不同於內置的Pivot Point指標,因為它能夠提前顯示明天的Pivot Point。透過預測下一交易日的支撐與阻力位置,交易員可以更早部署策略,為隔日的市場波動做好準備。
This TradingView indicator is different from the built-in Pivot Point tool because it can display tomorrow’s Pivot Points in advance. By forecasting support and resistance levels for the next trading day, traders can position their strategies earlier and be well-prepared for upcoming market movements.
Nifty CPR by Foresight Trading📌 Indicator Name:
Nifty CPR by Foresight Trading
📖 Description:
This indicator plots the Central Pivot Range (CPR) along with the first resistance (R1) and first support (S1) levels, calculated from the previous day’s OHLC values.
Pivot (P) = (High + Low + Close) ÷ 3
BC (Bottom Central Pivot) = (High + Low) ÷ 2
TC (Top Central Pivot) = P + (P – BC)
R1 = (2 × Pivot) – Low
S1 = (2 × Pivot) – High
✅ The CPR and pivot levels are locked for the entire trading day, so they do not repaint intraday.
✅ Plotted as colored circles (dots) across the day for clear visibility.
✅ New levels are generated only at the start of a new session.
🎯 Usage:
Traders use CPR as a trend bias tool:
Narrow CPR → higher probability of trending day.
Wide CPR → higher probability of sideways/consolidation day.
R1 and S1 act as key intraday support & resistance zones.
⚡ Best For:
Intraday traders & scalpers
Index traders (Nifty, BankNifty, Stocks etc.)
Anyone who uses Pivot Point + CPR trading strategies
Nifty CPR by Foresight Trading📌 Indicator Name:
Nifty CPR by Foresight Trading
📖 Description:
This indicator plots the Central Pivot Range (CPR) along with the first resistance (R1) and first support (S1) levels, calculated from the previous day’s OHLC values.
Pivot (P) = (High + Low + Close) ÷ 3
BC (Bottom Central Pivot) = (High + Low) ÷ 2
TC (Top Central Pivot) = P + (P – BC)
R1 = (2 × Pivot) – Low
S1 = (2 × Pivot) – High
✅ The CPR and pivot levels are locked for the entire trading day, so they do not repaint intraday.
✅ Plotted as colored circles (dots) across the day for clear visibility.
✅ New levels are generated only at the start of a new session.
🎯 Usage:
Traders use CPR as a trend bias tool:
Narrow CPR → higher probability of trending day.
Wide CPR → higher probability of sideways/consolidation day.
R1 and S1 act as key intraday support & resistance zones.
⚡ Best For:
Intraday traders & scalpers
Index traders (Nifty, BankNifty, Stocks etc.)
Anyone who uses Pivot Point + CPR trading strategies
Analitica Trading — Previous Day SR (2 lines + labels) 2.0📊 Analitica Trading — Previous Day SR (Support & Resistance)
This indicator displays the previous day’s key levels on any timeframe:
Prev High → Green horizontal line with label.
Prev Low → Red horizontal line with label.
🔹 Stable across timeframes: The levels are calculated from the daily candles and remain fixed, no matter if you switch to 1D, 1H, or 5m.
🔹 Simple & clean: Exactly two lines only (no duplicates).
🔹 Price labels included: Each line has a clear tag showing the exact level.
🔹 Dynamic update: Lines refresh automatically at the start of each new daily session.
🔹 Alerts: Optional alerts trigger when the price breaks above the Prev High or below the Prev Low.
💡 Ideal for support/resistance trading, breakouts, and Smart Money Concepts (SMC) strategies.
4H IB + BO Midpoint – [SANIXLAB]This indicator plots the Initial Balance (IB) high and low for each 4-hour period and automatically calculates potential breakout levels and midpoints.
At the start of every new 4-hour block the script:
Captures that block’s high and low (Initial Balance),
Draws horizontal lines at the IB high, low and midpoint,
Calculates breakout targets above and below the IB using (optional) extension factor,
Creates horizontal lines at those breakout levels and their midpoint,
Breakout areas extend as new bars arrive.
MR.L
CQ_Fibonacci IntraMonth Range [UL]THIS INDICATOR IS MEMBER OF A SET OF 3 INDICATORS:
1. CQ_Fibonacci intraday Range
2. CQ_Fibonacci intraweek Range
3. CQ_Fibonacci Intramonth Range (This One)
If you are using my CQ_MTF Target Price Lines indicator, this indicator is automatically loaded along with it.
The Fibonacci Period Range Indicator is a powerful trading tool designed to draw levels of support and resistance based on key Fibonacci levels. This script identifies the high and low of a user-specified range and then draws several levels of support and resistance within this range. Additionally, it can draw extension levels outside the specified range, which are also based on Fibonacci levels. These extension levels can be turned off in the indicator settings. Each level is labeled to help traders understand what each line represents, and these labels can also be turned off in the settings.
The purpose of this script is to simplify the trading experience by allowing users to customize the time period that is identified and then draw levels of support and resistance based on the price action during this time.
Usage
In the indicator settings, users have access to a setting called Session Range, which allows them to control the range that will be used. The script will then identify the high and low of the specified range and draw several levels of support and resistance based on Fibonacci levels within this range. Users can also choose to display extension levels that show more levels outside the range. These lines will extend until the end of the current trading day at 5:00 pm EST.
Settings
Configuration
• Display Mode: Determines the number of days that will be displayed by the script.
• Show Labels: Determines whether or not identifying labels will be displayed on each line.
• Font Size: Determines the text size of labels.
• Label Position: Determines the justification of labels.
• Extension Levels: Determines whether or not extension levels will be drawn outside the high and low of the specified range.
Session
• Session Range: Determines the time period that will be used for calculations.
• Offset (+/-): Determines how many hours the session should be offset by.