Fractal Suite: MTF Fractals + BOS/CHOCH + OB + FVG + Targets Kese Way
Fractals (Multi-Timeframe): Automatically detects both current-timeframe and higher-timeframe Bill Williams fractals, with customizable left/right bar settings.
Break of Structure (BOS) & CHoCH: Marks structural breaks and changes of character in real time.
Liquidity Sweeps: Identifies sweep patterns where price takes out a previous swing high/low but closes back within range.
Order Blocks (OB): Highlights the last opposite candle before a BOS, with customizable extension bars.
Fair Value Gaps (FVG): Finds 3-bar inefficiencies with a minimum size filter.
Confluence Zones: Optionally require OB–FVG overlap for high-probability setups.
Entry, Stop, and Targets: Automatically calculates entry price, stop loss, and up to three take-profit targets based on risk-reward ratios.
Visual Dashboard: Mini on-chart table summarizing structure, last swing points, and settings.
Alerts: Set alerts for new fractals, BOS events, and confluence-based trade setups.
Breadth Indicators
Stage + ATR Matrix + Extension LadderInspired by @SteveJacobs on X.com "Stage Analysis" and combined with ATR Extended Ladder.
Angle Market Structure [Mark804]Got it! Since I couldn’t find any existing public references to Angle Market Structure \ I’ll proceed based on the description you provided—rewriting it with improved clarity, flow, and impact. Let me know if you’d like to tweak anything further!
Angle Market Structure (Mark804) — Refined Overview
Angle Market Structure (Mark804) is an intelligent pivot-based indicator tailored for traders seeking early detection of breakouts and breakdowns. By dynamically angling its pivot levels toward current price action, it not only sharpens structural clarity but also accelerates signals for price movement.
Core Concepts
Adaptive Market Structure
Highlights pivot highs and lows as evolving support and resistance levels. These levels gradually converge toward price action using an angle derived from ATR (Average True Range), giving you faster, more responsive structure cues.
Breakout Acceleration
Each bar subtly shifts pivot-high levels downward and pivot-low levels upward—accelerating breakout detection and helping you act more decisively on emerging trends.
Deviation Zones
Upon a confirmed breakout or breakdown, the indicator projects three extension levels on either side (+1, +2, +3 or –1, –2, –3) to visually map price overextension and guide potential exit or trail-stop levels.
Sequential Break Count
Each structural break is numbered in sequence—providing real-time insight into trend strength and continuity.
Visual Intelligence
Utilizes color-coded pivot points, angling trend lines, and labeled deviation zones to ensure structure is intuitive and immediately actionable.
Feature Set
Pivot detection with customizable lookback length.
ATR-based “angle modifier” that dynamically tilts levels toward price.
Distinct breakout and breakdown line plotting with smooth visual extension.
Deviation level customization (+1 to +3 or –1 to –3).
Color-coded trend-break count labels (bullish or bearish).
Adaptive label sizing with theme awareness for light/dark modes.
Smart label placement to minimize visual clutter.
Cap on deviation layers to preserve performance and chart clarity.
Trading Guide
1. Use pivot-aligned structure levels to identify potential breakout/breakdown zones.
2. Monitor crossovers (for bullish continuation) or crossunders (for bearish) as potential entry signals.
3. Reference deviation levels for assessing overextension—use them to plan exits or trailing stops.
4. Watch the breakout sequence count—higher counts often correlate with stronger price momentum.
5. For validated entries, pair with volume or order-flow analysis during breakouts.
6. Adjust the ATR-based angle sensitivity based on market volatility to filter for ideal signal timing.
Final Thoughts
Angle Market Structure (Mark804) upgrades classic pivot analysis with angle-driven responsiveness and structured extension tracking. Whether scanning for impulsive moves or structural shifts, this tool brings precision, clarity, and momentum awareness to your charts—making it a go-to for proactive traders who value speed and structural insight.
NTX STOCKS V.1الوصف بالعربي
مؤشر NTX STOCKS V.1 مصمم خصيصًا لتداول الأسهم على مختلف الأسواق، ويعمل بكفاءة عالية على الفريمات الكبيرة: ساعة، 4 ساعات، ويومي.
المؤشر مناسب للتداول في السوق السعودي و السوق الأمريكي، ويوفر إشارات دخول وخروج واضحة تساعد المتداول على اتخاذ قراراته بثقة.
المميزات:
• يعمل على فريم الساعة، 4 ساعات، واليومي.
• إشارات بيع وشراء واضحة.
• مناسب للأسواق السعودية والأمريكية.
• سهل الاستخدام وملائم للمتداولين المبتدئين والمحترفين.
⸻
Description in English
The NTX STOCKS V.1 indicator is designed specifically for stock trading across multiple markets, performing best on higher timeframes: 1 Hour, 4 Hours, and Daily.
It is suitable for both the Saudi stock market and the U.S. stock market, providing clear buy and sell signals to help traders make confident decisions.
Features:
• Works on 1H, 4H, and Daily charts.
• Clear buy/sell signals.
• Suitable for Saudi and U.S. stock markets.
• Easy to use for both beginners and professional traders.
⸻
super super123//@version=5
indicator("Supertrend", overlay=true, timeframe="", timeframe_gaps=true)
atrPeriod = input(11, "ATR Length")
factor = input.float(2.0, "Factor", step = 0.01)
= ta.supertrend(factor, atrPeriod)
bodyMiddle = plot((open + close) / 2, display=display.none)
upTrend = plot(direction < 0 ? supertrend : na, "Up Trend", color = color.green, style=plot.style_linebr)
downTrend = plot(direction < 0? na : supertrend, "Down Trend", color = color.red, style=plot.style_linebr)
fill(bodyMiddle, upTrend, color.new(color.green, 90), fillgaps=false)
fill(bodyMiddle, downTrend, color.new(color.red, 90), fillgaps=false)
atr_2 = input(10, "ATR Length 2")
factor_2 = input.float(1.0, "Factor 2", step = 0.01)
= ta.supertrend(factor_2, atr_2)
bodyMiddle_2 = plot((open + close) / 2, display=display.none)
upTrend_2 = plot(direction_2 < 0 ? supertrend_2 : na, "Up Trend", color = color.green, style=plot.style_linebr)
downTrend_2 = plot(direction_2 < 0? na : supertrend_2, "Down Trend", color = color.red, style=plot.style_linebr)
fill(bodyMiddle_2, upTrend_2, color.new(color.green, 90), fillgaps=false)
fill(bodyMiddle_2, downTrend_2, color.new(color.red, 90), fillgaps=false)
atrPeriod_3 = input(12, "ATR Length 3")
factor_3 = input.float(3.0, "Factor 3", step = 0.01)
= ta.supertrend(factor_3, atrPeriod_3)
bodyMiddle_3 = plot((open + close) / 2, display=display.none)
upTrend_3 = plot(direction_3 < 0 ? supertrend_3 : na, "Up Trend", color = color.green, style=plot.style_linebr)
downTrend_3 = plot(direction_3 < 0? na : supertrend_3, "Down Trend", color = color.red, style=plot.style_linebr)
fill(bodyMiddle_3, upTrend_3, color.new(color.green, 90), fillgaps=false)
fill(bodyMiddle_3, downTrend_3, color.new(color.red, 90), fillgaps=false)
Gabriel's KusKus Starlight✨ Gabriel’s KusKus Starlight – Volume-Powered Momentum & Reversal Signals
Overview:
Gabriel’s KusKus Starlight is a powerful momentum and reversal indicator that uses Cumulative Volume Delta (CVD) to detect where the real market pressure is—behind the candles. Instead of just watching price, this tool listens to the story told by volume and trader aggression, making it especially effective during choppy or manipulative markets.
🧠 What Makes It Unique?
📦 Volume-Driven Core (CVD):
Tracks whether buyers or sellers are in control by accumulating volume differences between bullish and bearish candles.
🎯 Fisher Transform Smoothing:
Transforms CVD signals into a more readable, Gaussian-like curve to detect turning points more clearly.
🌀 Double Smoothing for Stability:
Adjustable smoothing settings give you full control over how reactive or calm the signal behaves.
📉 Jurik Moving Average (JMA) Signal Line:
Smooth, adaptive trendline that helps confirm entries and filters out noise. Think of it as a trend “compass” for your oscillator.
📊 Z-Score Highlighting:
Uses statistical normalization to flag overbought and oversold conditions with lime and fuchsia highlights when things get extreme.
🚀 Velocity of Z-Score (Bonus Signal):
Measures how fast momentum is changing, helping you spot accelerations in sentiment before price catches up. Typically Oscillator values below this shaded area, are underwater.
📊 Divergence Detection Suite
🔍 Supports
📈 Regular Divergences (trend reversal signals)
📉 Hidden Divergences (trend continuation signals)
🕰 Timeframe Flexibility
📊 Works on the primary chart or
⏳ Alternate timeframe for higher-timeframe confirmation
🎯 Pivot Sources
🌟 Starlight Momentum (Fisher-based)
📏 Jurik Signal Line
📊 Z-Score of Momentum
⚡ Velocity of Momentum
⚙ Customization
🎚 Configurable pivot sensitivity
📏 Adjustable maximum bars to check
🎨 Custom line styles/colors for easy chart interpretation
🔔 Alerts Included:
✅ Bullish CVD Signal: When momentum flips above zero and Z-Score is rising.
❌ Bearish CVD Signal: When momentum dips below zero and Z-Score is falling.
🎨 How to Read It:
Lime bars = Strong bullish breakout building
Green bars = Uptrend holding
Fuchsia bars = Strong bearish breakdown forming
Red bars = Downtrend continuing
Yellow line = Jurik signal MA (watch slope)
Blue area = Speed of change in momentum (Z-Score velocity)
Faded Teal and Maroon lines = Divergence Engine
🧪 Best Use Cases:
Spot early trend reversals powered by actual volume behavior.
Confirm or fade breakouts with real-time buyer/seller strength.
Pair with price action or divergence for high-conviction entries.
Use the Z-Score background highlight for potential exhaustion zones.
⚙️ Fully Customizable Inputs:
Input Description
CVD Range Periods Defines the lookback range for volume shifts
Fisher Smoothing Controls how reactive the Fisher transform is
Index Smoothing Smooths the Fisher output even further
Jurik MA Length Governs the adaptive smoothing of the signal line
📌 Final Word:
If you’re tired of laggy indicators or false signals in low-volume zones, Gabriel’s KusKus Starlight gives you true market intent—based on volume delta, not guesses. It's simple to read, surprisingly deep, and battle-tested.
Gamma & Max Pain HelperGamma & Max Pain Helper
Plots Call Wall, Put Wall, and Max Pain levels directly on your chart so you can see where options positioning might influence price.
Features:
Manually enter Call Wall, Put Wall, and Max Pain strike prices.
Lines auto-update each bar — no redrawing needed.
Labels display name + strike price.
Option to only show lines near current price (within a % you choose).
Color-coded:
Red = Call Wall (potential resistance)
Green = Put Wall (potential support)
Blue = Max Pain (price magnet into expiry)
Adjustable line width & extension.
Use Case:
Perfect for traders combining options open interest/gamma analysis with price action, pivots, VWAP, and other intraday levels. Quickly spot overlaps between option walls and technical barriers for high-probability reaction zones.
連騰カウントCount arbitrary winning streaks and calculate their occurrence probability over a specified period.
For example, if a 5-day winning streak occurs only 0.3% of the time, it indicates that the price movement is not random, but rather a clear sign of capital inflows — making it a useful metric for analysis.
VP-Period with Previous Day Levels & Historical POC# Volume Profile with Previous Day Levels & Historical POCs
## Description
Comprehensive indicator combining Volume Profile analysis, previous day levels, and historical POC (Point of Control) levels for advanced technical analysis.
## Key Features
### Volume Profile
- **Customizable period**: 3 to 500 days
- **Calculation resolution**: 400 to 700 points
- **Current VPOC**: Point of Control line for current period
- **Volume bars**: graphical display of volume profile distribution
### Historical POCs
- **POC history**: up to 20 previous days
- **Time labels**: shows how many days ago for each POC
- **Dashed lines**: easy identification of historical levels
### Previous Day Levels (last 5 days)
- **High/Low**: daily highs and lows
- **Midpoint**: 50% level (High+Low)/2
- **Open/Close**: opening and closing prices
- **Progressive thickness**: day 1 thicker, decreasing for previous days
## Customization
- Fully configurable colors for each element
- Toggle on/off switches for every component
- Different line styles (solid, dashed, dotted)
## Usage
Perfect for traders using volume analysis and support/resistance based on previous daily levels. Ideal for identifying key zones and significant breakout points.
4 Moving Averages 4 Moving Averages
An indicator with four moving averages with ready-to-use settings. Use them as support and resistance.
Calculateur Position Size Multi-ActifsThe Multi-Asset Position Size Calculator v6 is a fully customizable Pine Script indicator designed to help you determine the optimal position size based on your risk tolerance across any market: Forex, stocks, crypto, futures indices, or commodities. Features include:
Asset Type Selector: Choose between Forex, Stocks, Crypto, Futures Indices, or Commodities
Account Capital & Risk: Set your total account size and risk percentage per trade
Entry Price & Stop-Loss: Configure your entry and stop-loss levels directly
Automatic or Custom Pip/Point Value: Automatically calculates pip/point value by asset class or enter your own
Contract Size Adjustment: Define contract sizes (e.g., 100,000 units for Forex, 1 for stocks/crypto)
Margin & Leverage Display: View your used leverage and position value in real time
Risk Alerts: Warnings for invalid inputs, high leverage (>10×), and asset-specific risk settings (e.g., crypto leverage)
Integrated Table Interface: On-chart table with adjustable position and text size
Optional Price Level Drawing: Display entry and stop-loss lines on the chart
Trade any market confidently with precise, asset-tailored position sizing and risk management.
RSI DJ GUTO 2025RSI do Samuca, tem de trocar as cores, esse e o usado nas lives, tem de trocar as cores pra ficar igual ao do Samuca pois aqui nao consegui trocar as cores.
Samuca's RSI, you have to change the colors, this is the one used in the lives, you have to change the colors to be the same as Samuca's because I couldn't change the colors here.
ADVANCE HULL EMA + VWAP//@version=6
indicator("ADVANCE HULL EMA + VWAP", shorttitle="Adv Hull EMA VWAP", overlay=true, max_lines_count=500, max_labels_count=500)
// ========================================
// MOVING AVERAGE SETTINGS
// ========================================
MA_GROUP = "Moving Average Settings"
modeSwitch = input.string("Ehma", title="MA Mode", options= , group=MA_GROUP)
ma_length = input.int(16, title="MA Length", minval=1, group=MA_GROUP)
useHtf = input.bool(false, title="Use Higher Time Frame", group=MA_GROUP)
htf = input.timeframe("240", title="HTF", group=MA_GROUP)
switchColor = input.bool(true, title="Switch Color", group=MA_GROUP)
visualSwitch = input.bool(true, title="Visual Switch", group=MA_GROUP)
thicknessSwitch = input.int(1, title="Line Thickness", minval=1, group=MA_GROUP)
showEMA100 = input.bool(true, title="Show EMA 100", group=MA_GROUP)
// ========================================
// VWAP SETTINGS
// ========================================
VWAP_GROUP = "VWAP Settings"
hideonDWM = input(false, title="Hide VWAP on 1D or Above", group=VWAP_GROUP, display = display.data_window)
var anchor = input.string(defval = "Session", title="Anchor Period",
options= , group=VWAP_GROUP)
src = input(title = "Source", defval = hlc3, group=VWAP_GROUP, display = display.data_window)
offset = input.int(0, title="Offset", group=VWAP_GROUP, minval=0, display = display.data_window)
BANDS_GROUP = "VWAP Bands Settings"
CALC_MODE_TOOLTIP = "Determines the units used to calculate the distance of the bands. When 'Percentage' is selected, a multiplier of 1 means 1%."
calcModeInput = input.string("Standard Deviation", "Bands Calculation Mode", options = , group = BANDS_GROUP, tooltip = CALC_MODE_TOOLTIP, display = display.data_window)
showBand_1 = input(true, title = "", group = BANDS_GROUP, inline = "band_1", display = display.data_window)
bandMult_1 = input.float(1.0, title = "Bands Multiplier #1", group = BANDS_GROUP, inline = "band_1", step = 0.5, minval=0, display = display.data_window)
showBand_2 = input(false, title = "", group = BANDS_GROUP, inline = "band_2", display = display.data_window)
bandMult_2 = input.float(2.0, title = "Bands Multiplier #2", group = BANDS_GROUP, inline = "band_2", step = 0.5, minval=0, display = display.data_window)
showBand_3 = input(false, title = "", group = BANDS_GROUP, inline = "band_3", display = display.data_window)
bandMult_3 = input.float(3.0, title = "Bands Multiplier #3", group = BANDS_GROUP, inline = "band_3", step = 0.5, minval=0, display = display.data_window)
// ========================================
// TRENDLINES SETTINGS
// ========================================
TRENDLINES_GROUP = "Trendlines Settings"
tl_length = input.int(14, 'Swing Detection Lookback', group=TRENDLINES_GROUP)
mult = input.float(1., 'Slope', minval = 0, step = .1, group=TRENDLINES_GROUP)
calcMethod = input.string('Atr', 'Slope Calculation Method', options = , group=TRENDLINES_GROUP)
backpaint = input(true, tooltip = 'Backpainting offset displayed elements in the past. Disable backpainting to see real time information returned by the indicator.', group=TRENDLINES_GROUP)
//Style
upCss = input.color(color.teal, 'Up Trendline Color', group = TRENDLINES_GROUP)
dnCss = input.color(color.red, 'Down Trendline Color', group = TRENDLINES_GROUP)
showExt = input(true, 'Show Extended Lines', group = TRENDLINES_GROUP)
// ========================================
// MOVING AVERAGE FUNCTIONS
// ========================================
HMA(src_ma, length_ma) => ta.wma(2 * ta.wma(src_ma, length_ma / 2) - ta.wma(src_ma, length_ma), math.round(math.sqrt(length_ma)))
EHMA(src_ma, length_ma) => ta.ema(2 * ta.ema(src_ma, length_ma) - ta.ema(src_ma, length_ma), math.round(math.sqrt(length_ma)))
THMA(src_ma, length_ma) => ta.wma(ta.wma(src_ma, length_ma / 3) * 3 - ta.wma(src_ma, length_ma / 2) - ta.wma(src_ma, length_ma), length_ma)
// ========================================
// MOVING AVERAGE CALCULATIONS
// ========================================
ema100 = ta.ema(close, 100)
selectedMA = modeSwitch == "Hma" ? HMA(close, ma_length) :
modeSwitch == "Ehma" ? EHMA(close, ma_length) :
modeSwitch == "Thma" ? THMA(close, ma_length / 2) : na
_hull = useHtf ? request.security(syminfo.tickerid, htf, selectedMA) : selectedMA
MHULL = _hull
SHULL = ta.valuewhen(not na(MHULL), MHULL , 0)
// ========================================
// VWAP CALCULATIONS
// ========================================
cumVolume = ta.cum(volume)
if barstate.islast and cumVolume == 0
runtime.error("No volume is provided by the data vendor.")
new_earnings = request.earnings(syminfo.tickerid, earnings.actual, barmerge.gaps_on, barmerge.lookahead_on, ignore_invalid_symbol=true)
new_dividends = request.dividends(syminfo.tickerid, dividends.gross, barmerge.gaps_on, barmerge.lookahead_on, ignore_invalid_symbol=true)
new_split = request.splits(syminfo.tickerid, splits.denominator, barmerge.gaps_on, barmerge.lookahead_on, ignore_invalid_symbol=true)
isNewPeriod = switch anchor
"Earnings" => not na(new_earnings)
"Dividends" => not na(new_dividends)
"Splits" => not na(new_split)
"Session" => timeframe.change("D")
"Week" => timeframe.change("W")
"Month" => timeframe.change("M")
"Quarter" => timeframe.change("3M")
"Year" => timeframe.change("12M")
"Decade" => timeframe.change("12M") and year % 10 == 0
"Century" => timeframe.change("12M") and year % 100 == 0
=> false
isEsdAnchor = anchor == "Earnings" or anchor == "Dividends" or anchor == "Splits"
if na(src ) and not isEsdAnchor
isNewPeriod := true
float vwapValue = na
float upperBandValue1 = na
float lowerBandValue1 = na
float upperBandValue2 = na
float lowerBandValue2 = na
float upperBandValue3 = na
float lowerBandValue3 = na
if not (hideonDWM and timeframe.isdwm)
= ta.vwap(src, isNewPeriod, 1)
vwapValue := _vwap
stdevAbs = _stdevUpper - _vwap
bandBasis = calcModeInput == "Standard Deviation" ? stdevAbs : _vwap * 0.01
upperBandValue1 := _vwap + bandBasis * bandMult_1
lowerBandValue1 := _vwap - bandBasis * bandMult_1
upperBandValue2 := _vwap + bandBasis * bandMult_2
lowerBandValue2 := _vwap - bandBasis * bandMult_2
upperBandValue3 := _vwap + bandBasis * bandMult_3
lowerBandValue3 := _vwap - bandBasis * bandMult_3
// ========================================
// TRENDLINES CALCULATIONS
// ========================================
var upper_tl = 0.
var lower_tl = 0.
var slope_ph = 0.
var slope_pl = 0.
var tl_offset = backpaint ? tl_length : 0
n = bar_index
ph = ta.pivothigh(tl_length, tl_length)
pl = ta.pivotlow(tl_length, tl_length)
// Fix for the conditional operator issue
is_ph = not na(ph)
is_pl = not na(pl)
//Slope Calculation Method
slope = switch calcMethod
'Atr' => ta.atr(tl_length) / tl_length * mult
'Stdev' => ta.stdev(close, tl_length) / tl_length * mult
'Linreg' => math.abs(ta.sma(close * n, tl_length) - ta.sma(close, tl_length) * ta.sma(n, tl_length)) / ta.variance(n, tl_length) / 2 * mult
//Get slopes and calculate trendlines
slope_ph := is_ph ? slope : slope_ph
slope_pl := is_pl ? slope : slope_pl
upper_tl := is_ph ? ph : upper_tl - slope_ph
lower_tl := is_pl ? pl : lower_tl + slope_pl
var upos = 0
var dnos = 0
upos := is_ph ? 0 : close > upper_tl - slope_ph * tl_length ? 1 : upos
dnos := is_pl ? 0 : close < lower_tl + slope_pl * tl_length ? 1 : dnos
// ========================================
// EXTENDED TRENDLINES
// ========================================
var uptl = line.new(na,na,na,na, color = upCss, style = line.style_dashed, extend = extend.right)
var dntl = line.new(na,na,na,na, color = dnCss, style = line.style_dashed, extend = extend.right)
if is_ph and showExt
uptl.set_xy1(n-tl_offset, backpaint ? ph : upper_tl - slope_ph * tl_length)
uptl.set_xy2(n-tl_offset+1, backpaint ? ph - slope : upper_tl - slope_ph * (tl_length+1))
if is_pl and showExt
dntl.set_xy1(n-tl_offset, backpaint ? pl : lower_tl + slope_pl * tl_length)
dntl.set_xy2(n-tl_offset+1, backpaint ? pl + slope : lower_tl + slope_pl * (tl_length+1))
// ========================================
// PLOTTING - MOVING AVERAGES
// ========================================
hullColor = switchColor ? (MHULL > MHULL ? color.new(color.blue, 0) : color.new(color.red, 0)) : color.new(color.red, 0)
MHULL_plot = plot(MHULL, title="Main MA Band", color=hullColor, linewidth=thicknessSwitch)
SHULL_plot = plot(visualSwitch ? SHULL : na, title="Secondary MA Band", color=hullColor, linewidth=thicknessSwitch)
fill(MHULL_plot, SHULL_plot, color=color.new(hullColor, 80))
plot(showEMA100 ? ema100 : na, title="EMA 100", color=color.purple, linewidth=4)
// ========================================
// PLOTTING - VWAP & BANDS
// ========================================
plot(vwapValue, title = "VWAP", color = #2962FF, offset = offset, linewidth=2)
upperBand_1 = plot(upperBandValue1, title="VWAP Upper Band #1", color = color.green, offset = offset, display = showBand_1 ? display.all : display.none, editable = showBand_1)
lowerBand_1 = plot(lowerBandValue1, title="VWAP Lower Band #1", color = color.green, offset = offset, display = showBand_1 ? display.all : display.none, editable = showBand_1)
fill(upperBand_1, lowerBand_1, title="VWAP Bands Fill #1", color = color.new(color.green, 95), display = showBand_1 ? display.all : display.none, editable = showBand_1)
upperBand_2 = plot(upperBandValue2, title="VWAP Upper Band #2", color = color.olive, offset = offset, display = showBand_2 ? display.all : display.none, editable = showBand_2)
lowerBand_2 = plot(lowerBandValue2, title="VWAP Lower Band #2", color = color.olive, offset = offset, display = showBand_2 ? display.all : display.none, editable = showBand_2)
fill(upperBand_2, lowerBand_2, title="VWAP Bands Fill #2", color = color.new(color.olive, 95), display = showBand_2 ? display.all : display.none, editable = showBand_2)
upperBand_3 = plot(upperBandValue3, title="VWAP Upper Band #3", color = color.teal, offset = offset, display = showBand_3 ? display.all : display.none, editable = showBand_3)
lowerBand_3 = plot(lowerBandValue3, title="VWAP Lower Band #3", color = color.teal, offset = offset, display = showBand_3 ? display.all : display.none, editable = showBand_3)
fill(upperBand_3, lowerBand_3, title="VWAP Bands Fill #3", color = color.new(color.teal, 95), display = showBand_3 ? display.all : display.none, editable = showBand_3)
// ========================================
// PLOTTING - TRENDLINES
// ========================================
plot(backpaint ? upper_tl : upper_tl - slope_ph * tl_length, 'Upper Trendline', color = is_ph ? na : upCss, offset = -tl_offset, linewidth=2)
plot(backpaint ? lower_tl : lower_tl + slope_pl * tl_length, 'Lower Trendline', color = is_pl ? na : dnCss, offset = -tl_offset, linewidth=2)
//Breakout Signals
plotshape(upos > upos ? low : na, "Upper Break"
, shape.labelup
, location.absolute
, upCss
, text = "B"
, textcolor = color.white
, size = size.tiny)
plotshape(dnos > dnos ? high : na, "Lower Break"
, shape.labeldown
, location.absolute
, dnCss
, text = "B"
, textcolor = color.white
, size = size.tiny)
// ========================================
// ALERTS
// ========================================
alertcondition(upos > upos , 'Upward Breakout', 'Price broke the down-trendline upward')
alertcondition(dnos > dnos , 'Downward Breakout', 'Price broke the up-trendline downward')
// Additional alerts for MA crossovers
alertcondition(ta.crossover(close, MHULL), 'Price Above MA', 'Price crossed above the main moving average')
alertcondition(ta.crossunder(close, MHULL), 'Price Below MA', 'Price crossed below the main moving average')
// VWAP alerts
alertcondition(ta.crossover(close, vwapValue), 'Price Above VWAP', 'Price crossed above VWAP')
alertcondition(ta.crossunder(close, vwapValue), 'Price Below VWAP', 'Price crossed below VWAP')
VN30 Effort-vs-Result Multi-Scanner — LinhVN30 Effort-vs-Result Multi-Scanner (Pine v5)
Cross-section scanner for Vietnam’s VN30 stocks that surfaces Effort vs Result footprints and related accumulation/distribution and volatility tells. It renders a ranked table (Top-N) with per-ticker signals and key metrics.
What it does
Scans up to 30 tickers (editable input.symbol slots) using one security() call per symbol → stays under Pine’s 40-call limit and runs reliably on any chart.
Scores each ticker by counting active signals, then ranks and lists the top names.
Optional metrics columns: zVol(60), zTR(60), ATR(20), HL/ATR(20).
Signals (toggleable)
Price/Volume – Effort vs Result
EVR Squeeze (stealth): z(Vol,60) > 4 & z(TR,60) < −0.5
5σ Vol, ≤1σ Ret: z(Vol,60) > 5 & |z(Return,60)| < 1
Wide Effort, Opposite Result: z(Vol,60) > 3 & close < open & z(CLV×Vol,60) > 1
Spread Compression, Heavy Tape: (H−L)/ATR(20) < 0.6 & z(Vol,60) > 3
No-Supply / No-Demand: close < close & range < 0.6×ATR(20) & vol < 0.5×SMA(20)
Momentum & Volatility
Vol-of-Vol Kink: z(ATR20,200) rising & z(ATR5,60) falling
BB Squeeze → Expansion: BBWidth(20) in low regime (z<−1.3) then close > upper band & z(Vol,60) > 2
RSI Non-Confirmation: Price LL/HH with RSI HL/LH & z(Vol,60) > 1
Accumulation/Distribution
OBV Divergence w/ Flat Price: OBV slope > 0 & |z(ret20,260)| < 0.3
Accumulation Days Cluster: ≥3/5 bars: up close, higher vol, close near high
Effort-Result Inversion (Down): big vol on down day then next day close > prior high
How to use
Set the timeframe (works best on 1D for EOD scans).
Edit the 30 symbol slots to your VN30 constituents.
Choose Top N, toggle Show metrics/Only matches and enable/disable scenarios.
Read the table: Rank, Ticker, (metrics), Score, and comma-separated Signals fired.
Method notes
Z-scores use a population-std estimate; CLV×Vol is used for effort/location.
Rolling counts avoid ta.sum; OBV is computed manually; all logic is Pine v5-safe.
Intraday-only ideas (true VWAP magnets, auction volume, flows, futures/options) are not included—Pine can’t cross-scan those datasets.
Disclaimer: Educational tool, not financial advice. Always confirm signals on the chart and with your process.
First Candle ChannelTo create a price channel on the 15-minute timeframe based on the first candle's highest and lowest points, follow these steps:
Identify the first 15-minute candle of the trading session or your observation period.
Note the high and low prices of this first candle.
Draw two horizontal lines on the chart:
The upper line at the highest price of the first candle.
The lower line at the lowest price of the first candle.
These two lines form the channel boundaries for subsequent price action.
You can use this channel to observe price movement, noting when price breaks above (bullish breakout) or below (bearish breakdown) the channel formed by the first candle.
This method creates a simple visual range reference based on the initial price movement of the session or period, often used to gauge early strength or rarity of breakout events.
Multi Timeframe 7 Bollinger Bands by CSPMulti Timeframe 7 Bollinger Bands by CSP IT SHOW 1MT,5MT,10MT,1HR,D, W,M BOLLINGER BAND IN ASINGLE CHART.
Cumulative Volume DeltaCumulative Volume Delta (CVD) is a technical analysis indicator used in trading to measure the net buying or selling pressure in a market by tracking the difference between buying and selling volume over time. It’s particularly popular in futures, forex, and cryptocurrency trading, where volume data is critical for understanding market dynamics.
### How It Works:
- **Volume Delta**: For each price bar or time period, the volume delta is calculated as the difference between buying volume (trades executed at the ask price, indicating buyer aggression) and selling volume (trades executed at the bid price, indicating seller aggression).
- Formula: Volume Delta = Buying Volume - Selling Volume
- **Cumulative Volume Delta**: CVD sums up the volume delta over a specified period, creating a running total that reflects the overall trend of buying or selling pressure.
- If CVD is rising, it suggests stronger buying pressure (bullish sentiment).
- If CVD is falling, it indicates stronger selling pressure (bearish sentiment).
### Key Features:
1. **Divergence Analysis**: Traders use CVD to spot divergences between price movements and volume trends. For example, if the price is rising but CVD is declining, it may signal weakening bullish momentum (potential reversal).
2. **Support/Resistance Confirmation**: CVD can confirm breakouts or reversals at key price levels by showing whether volume supports the price movement.
3. **Trend Strength**: A steeply rising or falling CVD line indicates strong directional pressure, while a flat CVD suggests indecision or consolidation.
### Example:
- If a cryptocurrency like Bitcoin has 10,000 units bought at the ask and 7,000 units sold at the bid in a given period, the volume delta is +3,000. Over multiple periods, these deltas are added to form the CVD.
- A rising CVD alongside a price uptrend confirms bullish strength, while a falling CVD during a price uptrend may warn of a potential pullback.
### Limitations:
- **Data Dependency**: CVD relies on accurate bid/ask volume data, which may not be available or reliable on all platforms (e.g., some exchanges don’t provide detailed order book data).
- **Lagging Nature**: As a cumulative indicator, it may lag behind rapid price changes.
- **Context Matters**: CVD should be used with other indicators (e.g., price action, support/resistance) for better accuracy.
### Practical Use:
Traders often plot CVD as a line chart below the price chart on platforms like TradingView or Sierra Chart. It’s useful for:
- Identifying trend reversals or continuations.
- Confirming breakouts or breakdowns.
- Assessing market sentiment in low-liquidity or high-volatility markets.
Whaley Thrust — ADT / UDT / SPT (2010) + EDT (EMA) + Info BoxDescription
Implements Wayne Whaley’s 2010 Dow Award breadth-thrust framework on daily data, with a practical extension:
• ADT (Advances Thrust) — 5-day ratio of advances to (adv+dec). Triggers: > 73.66% (thrust), < 19.05% (capitulation).
• UDT (Up-Volume Thrust) — 5-day ratio of up-volume to (up+down). Triggers: > 77.88%, < 16.41%. Defaults to USI:UVOL / USI:DVOL (edit if your feed differs).
• SPT (Price Thrust) — 5-day % change of a benchmark (default SPY, toggle to use chart symbol). Triggers: > +10.05%, < −13.85%.
• EDT (EMA extension) — Declines-share thrust derived from WBT logic (not in Whaley’s paper): EMA/SMA of Declines / (Adv+Decl). Triggers: > 0.8095 (declines thrust), < 0.2634 (declines abating).
• All-Clear — Prints when ADT+ and UDT+ occur within N days (default 10); marks the second event and shades brighter green.
Visuals & Controls
• Shape markers for each event; toggle text labels on/off.
• Optional background shading (green for thrusts, red for capitulations; brighter green for All-Clear).
• Compact info box showing live ADT / UDT / SPT (white by default; turns green/red at thresholds).
• Min-spacing filter to prevent duplicate prints.
Tips
• Use on Daily charts (paper uses 5 trading days). Weekly views can miss mid-week crosses.
• If UDT shows 100%, verify your Down Volume symbol; the script requires both UVOL and DVOL to be > 0.
• Best use: treat capitulations (−) as setup context; act on thrusts (+)—especially when ADT+ & UDT+ cluster (All-Clear).
Credit
Core method from Wayne Whaley (2010), Planes, Trains and Automobiles (Dow Award). EDT is an added, complementary interpretation using WBT-style smoothing.
PanelWithGrid v1.4📈 Multi-Timeframe Candle Panel + Custom Grid v1.4
🔥 Professional Trading Tool for Multi-Timeframe Analysis
This advanced indicator displays a comprehensive panel of candle data across multiple timeframes (from 1 minute to daily) while plotting a fully customizable grid based on historical price levels. Perfect for traders who use dynamic support/resistance levels!
🌟 Key Features:
✅ Smart Custom Grid:
Choose your reference timeframe (1min to weekly)
Select which previous candle to use as reference (1st, 2nd, 3rd, etc. back)
Adjust grid spacing in points
✅ Multi-Timeframe Dashboard:
Displays Open, Close, High, Low and Price Difference for:
Current timeframe
30M, 1H, 2H, 3H, 4H, 6H, 12H, 1D
✅ Smart Confluence Alerts:
Visual signals when all timeframes align (bullish/bearish)
Special 1H candle analysis after 30 minutes
✅ Clean Visualization:
Thick red line marking reference level
Blue (above) and gold (below) grid lines at regular intervals
Informative label showing reference value and candle used
⚙ How To Use:
1️⃣ Set Grid Timeframe (e.g. "D" for daily, "60" for 1H)
2️⃣ Choose Reference Candle ("1" = most recent, "2" = previous, etc.)
3️⃣ Adjust Grid Spacing (e.g. 5 points between levels)
4️⃣ Watch for Confluence across timeframes
💡 Pro Tip: Use higher timeframes (Daily/Weekly) for significant levels and lower timeframes (1H/4H) for intraday trading.
🔔 Like & Favorite to support future updates!
Optimized Code | Pine Script v5 | TradingView
🎯 Perfect For: Swing Trading, Day Trading, Multi-Timeframe Analysis
PanelWithGrid v1.4📈 Multi-Timeframe Candle Panel + Custom Grid v1.4
🔥 Professional Trading Tool for Multi-Timeframe Analysis
This advanced indicator displays a comprehensive panel of candle data across multiple timeframes (from 1 minute to daily) while plotting a fully customizable grid based on historical price levels. Perfect for traders who use dynamic support/resistance levels!
🌟 Key Features:
✅ Smart Custom Grid:
Choose your reference timeframe (1min to weekly)
Select which previous candle to use as reference (1st, 2nd, 3rd, etc. back)
Adjust grid spacing in points
✅ Multi-Timeframe Dashboard:
Displays Open, Close, High, Low and Price Difference for:
Current timeframe
30M, 1H, 2H, 3H, 4H, 6H, 12H, 1D
✅ Smart Confluence Alerts:
Visual signals when all timeframes align (bullish/bearish)
Special 1H candle analysis after 30 minutes
✅ Clean Visualization:
Thick red line marking reference level
Blue (above) and gold (below) grid lines at regular intervals
Informative label showing reference value and candle used
⚙ How To Use:
1️⃣ Set Grid Timeframe (e.g. "D" for daily, "60" for 1H)
2️⃣ Choose Reference Candle ("1" = most recent, "2" = previous, etc.)
3️⃣ Adjust Grid Spacing (e.g. 5 points between levels)
4️⃣ Watch for Confluence across timeframes
💡 Pro Tip: Use higher timeframes (Daily/Weekly) for significant levels and lower timeframes (1H/4H) for intraday trading.
🔔 Like & Favorite to support future updates!
Optimized Code | Pine Script v5 | TradingView
🎯 Perfect For: Swing Trading, Day Trading, Multi-Timeframe Analysis
BTCUSDT Correlation TableThis indicator calculates and displays the correlation between the current chart’s asset and Bitcoin (BTCUSDT) over a selected period. The correlation is shown as a percentage in a compact table on the chart.
Key features:
Customizable BTC symbol – default is BINANCE:BTCUSDT.
Adjustable correlation period – set the number of bars used for correlation calculation.
Color-coded output:
Green for strong positive correlation (above +80%)
Red for strong negative correlation (below –80%)
Blue for neutral correlation
Use this tool to quickly assess whether your asset is moving in sync with Bitcoin, inversely, or independently.
Daily 16:00 Vertical Lines//@version=5
indicator("Daily 16:00 Vertical Lines", overlay=true, max_lines_count=500)
// Input for session time
hourMark = input.int(16, "Hour to Mark (24hr)", minval=0, maxval=23)
minuteMark = input.int(0, "Minute to Mark", minval=0, maxval=59)
// Check if the current bar is at the chosen time
isMarkTime = (hour == hourMark) and (minute == minuteMark)
// Draw the vertical line when condition matches
if (isMarkTime)
line.new(x1=bar_index, y1=low, x2=bar_index, y2=high,
color=color.red, style=line.style_dotted, width=1)
kale1668公用版a8verified_bearish_original = enable_oversold_overbought ? original and overbought_condition) : trendDown_ori
偏向线 → 偏向
RSI线 → RS
多头区域 → 多头
空头区域 → 空头
偏向填充 → 偏向
多头填充 → 多头
空头填充 → 空头
K线颜色 → K线