RSI + VWAP Strategy by vipindaskr🔍 This script combines RSI and VWAP for intraday trend-based entries.
✅ *Buy Signal:*
- Price above VWAP
- RSI > 60
- Green background + up triangle shown
❌ *Sell Signal:*
- Price below VWAP
- RSI < 40
- Red background + down triangle shown
📈 Ideal for Nifty 50 intraday traders using 5-minute chart.
Developed by vipindaskr 💻
Indicatori di ampiezza
Breath Trade OB AlertThis is a indicator that is written specifically for BTCUSD 5 minutes trade
when this indicator occur .Just enter the position with the write director.
and exit when 50 EMA reached.
Reversal Signal avec TICK + RSIThis indicator is a potential reversal indicator for SCALPING, don't use it for swing. It's base on TICK and on an overbrought/oversold condition of the RSI. You can play with the setting, typicaly I like my TICK to be over reacting an 800/-800 and my rsi over 20 and 80, but it give not enough signal. So I set the TICK signal at 651/-651 and the RSI at 25/75. This indicator is made for SP500 and Nasdaq, so SPY/QQQ/SPX/ES/NQ should work well. It's the first version of it, so maybe I'll add so more data to it to increase signal and lower false one. For now I've test it on live market yet(26/7/25).
The RSI is Fast(5 period), I like to use it on the 1 or 5 min chart.
Please not that it only work during 9h30am to 4pm EST.(Because of the TICK)
Feel free to try and even comment. Don't be harsh on me, it's my first try!
(Sorry for my 'english' it's not my first language)
FAUCON
Improved Weinstein Stage AnalysisThe code provides an actionable, disciplined, and visually informative implementation of the “Stage Analysis” approach pioneered by Stan Weinstein, with enhancements to modernize, automate, and clarify the methodology for today’s traders using TradingView. It faithfully follows the workflow recommended: identify long-term cycles, confirm with volume and relative strength, and only engage aggressively with the market during the advancing (bullish) stage with all “clues” aligned.
5-Min EMA Crossover (5/10)The 5-Minute EMA Crossover (5/10) strategy is a technical trading approach that uses two Exponential Moving Averages (EMAs) on a 5-minute chart to identify potential buy and sell signals based on trend shifts. Here's a description:
EMAs Used:
Fast EMA: 5-period EMA calculated on 5-minute candles. This EMA reacts quickly to recent price changes since it gives more weight to the latest data.
Slow EMA: 10-period EMA calculated on 5-minute candles. It responds more slowly, smoothing out short-term fluctuations.
How the Crossover Works:
A buy signal (long entry) occurs when the 5-period EMA crosses above the 10-period EMA. This suggests that recent price momentum is gaining strength upward, potentially indicating a bullish trend beginning or resuming.
A sell signal (short entry) happens when the 5-period EMA crosses below the 10-period EMA, signaling weakening recent price momentum and a possible bearish trend.
Purpose:
This crossover method helps traders catch short-term trends on a 5-minute timeframe by signaling moments when momentum shifts.
Because EMAs weight recent prices more heavily, the signals tend to be more responsive to fast market moves compared to simple moving averages.
Typical Usage:
Traders apply this to intraday charts (5-minute candles) looking for quick entries and exits.
It is common to use this crossover in combination with other indicators or price action context to reduce false signals.
Example of Signal Application:
When the 5 EMA crosses above the 10 EMA, consider entering a long position.
When the 5 EMA crosses below the 10 EMA, consider exiting longs or entering shorts.
This method leverages short-term momentum shifts visible on the 5-minute timeframe to help take advantage of intraday trends or reversals.
Combined and Count of Bull Bear Alerts for OBV, TDI, CCI, MACDCombined and Count of Bull Bear Alerts for OBV, TDI, CCI, MACD
Description
This powerful indicator combines four popular technical analysis tools (On-Balance Volume, Traders Dynamic Index, Commodity Channel Index, and MACD) into a single comprehensive divergence detection system. It monitors all four indicators simultaneously and provides real-time alerts when bullish or bearish divergences occur across multiple indicators, helping traders identify high-probability reversal opportunities.
Key Features
Multi-Indicator Divergence Detection: Simultaneously tracks divergences in OBV, TDI, CCI, and MACD
Comprehensive Signal Counting: Displays real-time count of bullish (1-4) and bearish (1-4) divergences
Four Customizable Alert Conditions:
Alert 1: 1-4 indicators showing bullish divergence
Alert 2: 3-4 indicators showing strong bullish divergence
Alert 3: 1-2 indicators showing bearish divergence
Alert 4: 3-4 indicators showing strong bearish divergence
Visual Signal Display: Clear numerical indicators showing how many tools are signaling divergence
Customizable Parameters: Adjustable settings for each indicator's sensitivity and display preferences
Overlay Display: All signals shown directly on the price chart for easy analysis
How It Works
The indicator continuously monitors each technical tool for both regular and hidden divergences using pivot point analysis. When a divergence pattern is detected, it increments the appropriate counter (bullish or bearish). The system then displays the total count as colored numbers on the chart and can trigger alerts based on your preferred signal strength thresholds.
Trading Applications
Strong Reversal Signals: Look for 3-4 indicator confirmations for high-probability trades
Early Trend Detection: Use 1-2 indicator signals for early entry opportunities
Confirmation Tool: Validate your trading signals with multi-indicator divergence confirmation
Risk Management: Avoid trading against multiple indicator divergences
Customization Options
Adjustable lookback periods for each indicator
Toggle visibility of bullish/bearish counters
Customizable colors, positions, and display styles
Option to show individual indicator signals
Configurable divergence detection parameters
This indicator is particularly valuable for traders who want to combine multiple technical analysis approaches into a single, easy-to-monitor system that highlights confluence opportunities across different market perspectives (volume, momentum, cycle, and trend).
Volume in ₹ (Total Traded Value in Crores)vikram dayal volume chart with total traded value in crores
تلوين الشموع حسب الحجم (يومي أو متوسط)📊 Indicator Name:
Candle Coloring Based on Volume Change (Flexible Comparison)
🎯 Purpose of the Indicator:
This indicator colors candlesticks based solely on changes in volume, regardless of price direction. It helps traders visualize unusual volume activity and potential accumulation or distribution zones.
It also displays the percentage change in volume above each candle — based on a comparison method chosen by the user.
⚙️ User Inputs:
Comparison Method (Mode):
"Compare with Previous Day":
The volume of the current candle is compared with the volume of the previous candle.
"Compare with Average of N Days":
The volume is compared with a moving average of volume over a number of past days (e.g., 10 days).
Average Length (for mode 2):
Used only when "Compare with Average" is selected.
Defines the number of days over which to calculate the volume average.
Minimum % Change to Show Label:
A threshold that controls when the percentage label appears.
Prevents label clutter for insignificant volume changes.
🎨 Candle Coloring Logic:
Condition Meaning Candle Color
Current volume > reference volume High activity 🟢 Green
Current volume < reference volume Low activity 🔴 Red
Nearly equal volumes Normal ⚪ Gray
🏷️ Volume Change Label:
The indicator displays a percentage change label above the candle.
For example:
If volume increased by 45% → label shows +45.00%.
If the change exceeds ±50%, the label turns yellow to indicate a significant spike.
✅ Key Benefits:
Quickly detects unusual volume activity (e.g., spikes, drops).
Enhances classic price-action analysis with volume context.
Flexible comparison:
Day-to-day for short-term traders.
Moving average for swing and position traders.
Clean, minimalist design with conditional labels.
🔍 Use Case Examples:
🔴 Red candle on price rise → weak rally (low participation).
🟢 Green candle on price drop → potential distribution.
⚪ Gray candles → sideways or stable behavior.
👤 Who Should Use It?
Day traders and scalpers monitoring volume strength.
Technical analysts who focus on volume-price behavior.
Traders who track accumulation/distribution patterns.
SQZPROaltStanding on the shoulders of John Carter (Trade The Markets and Simpler Trading) along with Drecken, LazyBear, Makit0 and Beardy_Fred. This version of the Squeeze Pro compares Bollinger Band Width to Keltner Channel Width in determining one of four conditions: no squeeze (BBW > KCW 2x), moderate/wide squeeze (BBW < KCW 2x but > KCW 1.5x), original squeeze (BBW < KCW 1.5x but > KCW1x) and tight squeeze (BBW < KCW 1x). Other approaches compared upper and lower channel values and I found that confusing in some circumstances. Directly comparing the band widths made more sense to me. This version provides the same signals most of the time, but this approach cleared up my confusion. {Happy emoji}
Up/Down Volume with Table (High Contrast)Up/Down Volume with Table (High Contrast) — Script Summary & User Guide
Purpose of the Script
This TradingView indicator, Up/Down Volume with Table (High Contrast), visually separates and quantifies up-volume and down-volume for each bar, providing both a color-coded histogram and a dynamic table summarizing the last five bars. The indicator helps traders quickly assess buying and selling pressure, recent volume shifts, and their relationship to price changes, all in a highly readable format.
Key Features
Up/Down Volume Columns:
Green columns represent volume on bars where price closed higher than the previous bar (up volume).
Red columns represent volume on bars where price closed lower than the previous bar (down volume).
Delta Line:
Plots the net difference between up and down volume for each bar.
Green when up-volume exceeds down-volume; red when down-volume dominates.
Interactive Table:
Displays the last five bars, showing up-volume, down-volume, delta, and close price.
Color-coding for quick interpretation.
Table position, decimal places, and timeframe are all user-configurable.
Custom Timeframe Support:
Calculate all values on the chart’s timeframe or a custom timeframe of your choice (e.g., daily, hourly).
High-Contrast Design:
Table and plot colors are chosen for maximum clarity and accessibility.
User Inputs & Configuration
Use custom timeframe:
Toggle between the chart’s timeframe and a user-specified timeframe.
Custom timeframe:
Set the timeframe for calculations if custom mode is enabled (e.g., "D" for daily, "60" for 60 minutes).
Decimal Places:
Choose how many decimal places to display in the table.
Table Location:
Select where the table appears on your chart (e.g., Bottom Right, Top Left, etc.).
How to Use
Add the Script to Your Chart:
Copy and paste the code into a new Pine Script indicator on TradingView.
Add the indicator to your chart.
Configure Inputs:
Open the indicator settings.
Adjust the timeframe, decimal places, and table location as desired.
Read the Table:
The table appears on your chart (location is user-selectable) and displays the following for the last five bars:
Bar: "Now" for the current bar, then "Bar -1", "Bar -2", etc. for previous bars.
Up Vol: Volume on bars where price closed higher than previous bar, shown in black text.
Down Vol: Volume on bars where price closed lower than previous bar, shown in black text.
Delta: Up Vol minus Down Vol, colored green for positive, red for negative, black for zero.
Close: Closing price for each bar, colored green if price increased from previous bar, red if decreased, black if unchanged.
Interpret the Histogram and Lines:
Green Columns:
Represent up-volume. Tall columns indicate strong buying volume.
Red Columns:
Represent down-volume. Tall columns indicate strong selling volume.
Delta Line:
Plotted as a line (not a column), colored green for positive values (more up-volume), red for negative (more down-volume).
Large positive or negative spikes may indicate strong buying or selling pressure, respectively.
How to Interpret the Table
Column Meaning Color Coding
Bar "Now" (current bar), "Bar -1" (previous bar), etc. Black text
Up Vol Volume for bars with higher closes than previous bar Black text
Down Vol Volume for bars with lower closes than previous bar Black text
Delta Up Vol - Down Vol. Green if positive, red if negative, black if zero Green/Red/Black
Close Closing price for the bar. Green if price increased, red if decreased, black if unchanged Green/Red/Black
Green Delta: Indicates net buying pressure for that bar.
Red Delta: Indicates net selling pressure for that bar.
Close Price Color:
Green: Price increased from previous bar.
Red: Price decreased.
Black: No change.
Practical Trading Insights
Consistently Green Delta (Histogram & Table):
Sustained buying pressure; may indicate bullish sentiment or accumulation.
Consistently Red Delta:
Sustained selling pressure; may indicate bearish sentiment or distribution.
Large Up/Down Volume Spikes:
Big green or red columns can signal strong market activity or potential reversals if they occur at trend extremes.
Delta Flipping Colors:
Rapid alternation between green and red deltas may indicate a choppy or indecisive market.
Close Price Color in Table:
Use as a quick confirmation of whether volume surges are pushing price in the expected direction.
Troubleshooting & Notes
No Volume Data Error:
If your symbol doesn’t provide volume data (e.g., some indices or synthetic assets), the script will display an error.
Custom Timeframe:
If using a custom timeframe, ensure your chart supports it and that there is enough data for meaningful calculations.
High-Contrast Table:
Designed for clarity and accessibility, but you can adjust colors in the code if needed for your personal preferences.
Summary Table Legend
Bar Up Vol Down Vol Delta Close
Now ... ... ... ...
Bar-1 ... ... ... ...
... ... ... ... ...
Colors reflect the meaning as described above.
In Summary
This indicator visually and numerically breaks down buying and selling volume, helping you spot shifts in market sentiment, volume surges, and price/volume divergences at a glance.
Use the table for precise recent data, the histogram for overall flow, and the color cues for instant market context.
0DTE Expected Move Lines0DTE Expected Move Levels – Manual VIX Input
This indicator calculates and displays intraday expected move zones for SPX or other indices based on a manually entered VIX value. It helps intraday or 0DTE option traders visualize potential price ranges where price is statistically likely to stay.
What it does:
Uses VIX to estimate the daily expected move:
EM = Spot × (VIX / 100) × √(1 / 365)
Draws horizontal lines at:
±1× EM → suggested short strike range
±1.5× EM → more conservative range
Ideal for Iron Condors, Straddles, Butterflies, or short premium strategies
Features:
Clean visual markers using line.new() (no plot(), so works on all TradingView plans)
Manual VIX input for full flexibility
Lightweight and fast – updates with every bar
✅ Works best on SPX, SPY, ES, or MES charts.
0DTE Expected Move Lines0DTE Expected Move Levels – Manual VIX Input
This indicator calculates and displays intraday expected move zones for SPX or other indices based on a manually entered VIX value. It helps intraday or 0DTE option traders visualize potential price ranges where price is statistically likely to stay.
What it does:
Uses VIX to estimate the daily expected move:
EM = Spot × (VIX / 100) × √(1 / 365)
Draws horizontal lines at:
±1× EM → suggested short strike range
±1.5× EM → more conservative range
Ideal for Iron Condors, Straddles, Butterflies, or short premium strategies
Features:
Clean visual markers using line.new() (no plot(), so works on all TradingView plans)
Manual VIX input for full flexibility
Lightweight and fast – updates with every bar
✅ Works best on SPX, SPY, ES, or MES charts.
KusKus Starlight Strategy📌 Gabriel's KusKus Starlight Strategy – Adaptive Volume-Based Momentum System
Description:
Gabriel’s KusKus Starlight Strategy is a high-precision, volume-driven trading system designed for short- to medium-term intraday setups. By combining Cumulative Volume Delta (CVD) with Fisher Transform logic, Z-Score anomaly detection, and adaptive moving averages (like Jurik MA and Super Smoother), the strategy seeks to capture early trend shifts, continuation breakouts, and statistically favorable reversals.
🧠 How It Works
CVD-Based Fisher Oscillator
Transforms volume delta imbalances into clean trend signals using a Fisher Transform with dual-stage smoothing.
Jurik Signal Line & Super Smoother
Provides confirmation filters that reduce whipsaw trades by identifying prevailing trend direction.
Z-Score & Velocity Boosters
Highlight when momentum is accelerating with statistical outliers, improving early entry timing.
ATR-Driven Trade Management
All entries use dynamically calculated Stop Loss and Take Profit levels based on ATR, with optional hour-specific overrides.
🎯 Strategy Entry Conditions
🔼 Long Entry:
A long trade is entered when all the following are true:
Fisher (smoothedFish) crosses above 0
Z-Score (ZKusKus) is rising or Z-Score velocity is rising
Fisher is above the Jurik MA (signal)
Price (src) is above the Super Smoother MA (ma)
Time filter is allowed (optional setting)
🔽 Short Entry:
A short trade is entered when all the following are true:
Fisher (smoothedFish) crosses below 0
Z-Score (ZKusKus) is falling or Z-Score velocity is rising
Fisher is still above the Jurik MA (signal) (anticipating exhaustion)
Price (src) is below the Super Smoother MA (ma)
Time filter is allowed (optional setting)
📤 Strategy Exit Conditions
Take Profit (TP) and Stop Loss (SL) levels are based on the ATR multiplied by dynamic multipliers.
Both TP and SL can be adjusted per hour using tp_hour_* and risk_hour_* settings to reflect optimal market behavior during different sessions.
⏰ Smart Hour-Based Filters
Use include Hours to restrict trading to 3 specific hours (e.g., 7, 8, 9). Each hour has its own:
Risk % Allocation
TP Multiplier
This adds fine-tuned control over position sizing and target reachability.
📈 Recommended Timeframes:
Optimized for 30-minute ~ 1 Hour charts, but adaptable to 1m–15m with parameter tuning.
Use hourly filters to target only statistically profitable hours, London ~ New York Afterhours.
📌 Ideal Use Case:
For traders looking to fade weak volume reversals or ride volume-supported breakouts with smart, auto-adjusting position sizing—this strategy offers a refined and flexible framework grounded in real-time order flow behavior.
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.
🔔 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)
🧪 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.
Gold Grid Lines (Fixed)Indicator function details: Gold Grid Lines (Fixed)
🧭 Purpose:
The indexer is designed to help structure the price of a horizontal line (Grid) on a graph of gold or any asset.
To use as a psychological reference, round-trip trading, or watch price fluctuations at equal levels.
⸻
🧩 Key Script Functions
1. 🔲 Draw horizontal lines in a grid (Grid Lines) style
• Use the Base Price that you specify, e.g. 2000.0.
• Draw a line up and down from the middle price with the same distance (Stepper Line).
• The number of lines on each side is set (Lines Up/Down).
• The line draws only one time when the graph is opened, so that the graph does not slow down.
✏️ Example:
• Base Price = 2000.0
• Stepper Line = 1.0 → means 100 gold dots.
• Lines = 5 → Draw 5 upper and 5 lower lines
→ get a price tag of 1995, 1996, … , 2005
⸻
2. 📉 Draw the day's open price line (Daily Open Line)
• When entering a new day, the system records the open price of the first bar of the day.
• Draw a horizontal line as "Daily Open Line" to help traders see how prices opened that day.
• Ideal for analysis of "over-open/under-open" behavior (e.g. trend, selling/buying force)
SENTIMENTSENTIMENT Indicator – User Guide
Summary
The SENTIMENT indicator provides a quick visual reference for current and recent market sentiment. It compares the closing price to a custom sentiment value, which is the average of the 100-period (default) simple moving averages (SMA) of the high and low prices. The indicator displays this information in a color-coded table and plots the difference between price and sentiment as a line on your chart.
How to Use
1. Table Overview
The table appears on your chart in your chosen position.
It displays four rows: the current bar (“Now”) and the previous three bars (“Bar -1”, “Bar -2”, “Bar -3”).
Each row shows:
The bar label (The current bar is live and active, constantly changing)
The closing price for that bar
The difference between the closing price and the sentiment value for that bar
The sentiment difference is color-coded:
Green: Price is above sentiment (bullish)
Red: Price is below sentiment (bearish)
2. Chart Plot
The indicator plots a line showing the difference between the current price and the sentiment value.
When the line is above zero: price is above sentiment (bullish).
When the line is below zero: price is below sentiment (bearish).
3. Settings
Number of Lookback Bars: Adjusts the SMA period for sentiment calculation (default is 100).
Table Position: Choose where to display the table on your chart (e.g., Top Left, Bottom Right).
How to Interpret
Green values in the table or a plot above zero suggest bullish sentiment.
Red values in the table or a plot below zero suggest bearish sentiment.
Use this indicator to quickly assess if the market is trading above or below its recent average sentiment level.
Tips
You can combine the SENTIMENT indicator with other tools or signals for more robust trading decisions.
Adjust the lookback period to suit your trading timeframe and style.
SMC BOS Strategy for XAUUSDThis is a custom-built TradingView strategy that uses Smart Money Concept (SMC) logic to identify high-probability trend continuation and reversal entries based on Break of Structure (BOS) on XAUUSD. It is designed for traders looking to test institutional-style structure breaks with dynamic entry and risk-managed exits.
The strategy detects BOS using swing highs and lows, then enters trades based on price momentum (bullish or bearish candle confirmation). Each trade is automatically managed using a fixed stop loss in pips and a customizable risk-to-reward (RR) ratio. The goal is to backtest how BOS alone can drive clean directional entries, simulating Smart Money precision without repainting or false signals.
🔑 Key Features:
BOS-Based Entry Logic: Enters trades only after a valid break of structure (new higher high or lower low), signaling continuation from a Smart Money shift.
Momentum Filtered Entry: Requires candle confirmation to validate direction (e.g., bullish close after bullish BOS).
Full Backtest Engine: Built using strategy() functions, allowing you to test SL/TP performance and adjust position sizing.
Custom Risk Control: Adjust Stop Loss (in pips) and Target Profit using a flexible RR ratio (e.g. 1:2 or 1:3 setups).
Works Across Timeframes: Optimized for 15m, 1H, and 4H on XAUUSD, but works on any asset that respects structure.
⚙️ Settings:
Swing Sensitivity – Controls how strict pivot highs/lows are
Minimum Bar Spacing – Prevents overtrading after recent BOS
Stop Loss (in pips) – Fixed distance from entry
Risk/Reward Ratio – Multiplies SL for dynamic take-profit
Trade Direction – Supports both long and short with momentum
📊 How It Works:
Detects new structure break (BOS)
Confirms momentum with candle direction (close > open for long, close < open for short)
Triggers entry and sets TP/SL automatically
Logs results in the Strategy Tester for full backtest evaluation
📌 Optimized For:
XAUUSD (Gold)
Smart Money / SMC / ICT traders
Trend continuation + reversal structures
Backtest-focused strategy building
Institutional-level analysis
📎 Release Notes:
v1.0 – Initial release of BOS-only SMC strategy with full entry/exit simulation and strategy tester support.
⚠️ Disclaimer:
This strategy is built for educational and research purposes only. It is not a signal provider or financial advice. Always combine with your personal confirmation, confluence tools, and risk management.
SMC Structure Levels – BOS & CHoCH for XAUUSDThis is a custom-made TradingView indicator designed to visualize high-confidence market structure shifts based on Smart Money Concepts (SMC), focusing on Break of Structure (BOS) and Change of Character (CHoCH) points. The tool is optimized for XAUUSD but works across all major forex, crypto, and index markets.
It identifies key pivot points and filters them using both price distance and bar spacing, helping traders focus only on meaningful structural changes — not noisy signals. This makes it ideal for traders looking to track institutional-style price behavior with clarity.
🔑 Key Features:
Clean BOS & CHoCH Labels: The indicator plots “BOS” above candles when a structural break occurs in the trend direction, and “CHoCH” below candles when early signs of a reversal appear.
Spaced Signals: Only plots structure shifts that meet both time and price distance filters, preventing clutter and overplotting on the chart.
Swing-Based Logic: Built on pivot high/low analysis with adjustable sensitivity, ensuring flexible structure detection on any timeframe.
Fully Customizable: Modify:
Swing Sensitivity (number of bars before/after pivot)
Minimum bar spacing between BOS/CHoCH signals
Minimum price movement (in pips) between labels
Toggle BOS or CHoCH visibility individually
No Repainting: Once confirmed, signals remain fixed on the chart for historical review.
Zero Clutter: Unlike typical SMC tools that flood the chart, this indicator prioritizes clarity and signal quality.
🧠 What is BOS & CHoCH?
Break of Structure (BOS): Indicates continuation of the current market trend.
Change of Character (CHoCH): Suggests a potential early trend reversal or shift in momentum.
These tools are often used by Smart Money traders to mark significant turning points and trend confirmations.
⚙️ Use Cases:
Structural tracking in Smart Money Concepts (SMC)
Identifying trend continuation or early reversal
XAUUSD (Gold) swing and intraday analysis
Support for Order Blocks, Liquidity Grabs, and FVG confluence
Backtesting market structure break behavior
📌 Best Pairs:
XAUUSD (Gold)
Any asset where structure-based analysis is relevant
📎 Release Notes:
v1.0 – Initial release of BOS/CHoCH structure tool with spacing and pip-distance filtering for XAUUSD analysis.
⚠️ Disclaimer:
This indicator is built for educational and analytical purposes only. It does not constitute trading advice or guarantee profitable signals. Always use with a proper risk management strategy and confirm signals with additional confluence.
✅ This matches the exact quality and structure of the description you showed earlier.
Just copy this into your TradingView script page when publishing. If you'd like the next version with Order Blocks or FVG, say the word.
High-Mid-Low 200 Day and Buy Levels and labels
Volume-Scaled PVR with Dynamic Buy Levels (ETF investing Visual Aid)
Description
This indicator is designed primarily for exchange-traded fund (ETF) traders and investors who seek a broad, visual tool to assist in identifying favorable buy and sell regions based on key price levels in relation to High and Lows of the ETF.
Key Features
Lookback Reference Levels:
Automatically identifies and plots key price levels within a user-defined lookback period:
Period High: Highest price in the lookback window.
Period Low: Lowest price in the lookback window.
Mid-Line: Midpoint between the period high and low.
Detailed Percentage Labels:
Displays percentage distances from the current price to the period high, period low, and their respective most recent occurrences, along with bar-counts for context, allowing quick assessment of price positioning relative to significant recent highs and lows.
Dynamic Buy-Level Lines for Multiple ETFs:
Supports a configurable list of ETF tickers with predefined buy price levels. When charting one of these ETFs, a horizontal line and label mark the specified buy price level, serving as a visual reminder or guide for entries.
Lightweight and Visual:
Designed to overlay directly on price charts with minimal clutter, providing clean and insightful visual references to inform buy-low and sell-high decisions.
How It Helps You
Offers broad, contextual cues to guide "buy low, sell high" strategies on ETFs by visualizing:
Where price currently stands within recent high/low ranges.
Specific buy price levels personalized for tracked ETFs as a check before committing.
Flexible lookback parameters allow tuning sensitivity to your preferred timeframes and trading style.
Usage Notes
Customize the list of ETFs and associated buy prices within the script via arrays to suit your watchlist. (Make a working copy to update Arrays, ensure pair matching).
Best applied on daily or higher timeframes for clearer trend dynamics.
This is a visual aid and should be combined with your own analysis and risk management techniques and other standard/established indicators.
Confirmed Entry Grid Pro//@version=5
indicator("Confirmed Entry Grid Pro", overlay=true)
// === المتوسطات ===
ma9 = ta.sma(close, 9)
ma21 = ta.sma(close, 21)
ma200 = ta.sma(close, 200)
// === الاتجاه ===
trendBull = close > ma200
trendBear = close < ma200
// === الزخم ===
rsi = ta.rsi(close, 14)
rsiBull = rsi > 50
rsiBear = rsi < 50
// === الحجم ===
volMA = ta.sma(volume, 20)
volHigh = volume > volMA
// === شموع ابتلاعية ===
bullEngulf = close > open and open < close and close > open
bearEngulf = close < open and open > close and close < open
// === بولنجر باند ===
basis = ta.sma(close, 20)
dev = ta.stdev(close, 20)
upper = basis + 2 * dev
lower = basis - 2 * dev
bbBreakUp = close > upper
bbBreakDown = close < lower
// === دعم / مقاومة ديناميكية ===
support = ta.lowest(low, 20)
resistance = ta.highest(high, 20)
nearSupport = math.abs(close - support) / close < 0.015
nearResistance = math.abs(close - resistance) / close < 0.015
// === تقاطع المتوسطات ===
crossUp = ta.crossover(ma9, ma21)
crossDown = ta.crossunder(ma9, ma21)
// === ATR ===
atr = ta.atr(14)
atrActive = atr > ta.sma(atr, 14)
// === SMC: BOS + CHOCH ===
bosUp = high > high and low > low
bosDown = low < low and high < high
chochUp = close > high and close < high
chochDown = close < low and close > low
smcBuy = bosUp and chochUp
smcSell = bosDown and chochDown
// === مناطق السيولة ===
liqHigh = ta.highest(high, 30)
liqLow = ta.lowest(low, 30)
liquidityBuyZone = close < liqLow
liquiditySellZone = close > liqHigh
// === حساب النقاط لكل صفقة ===
buyScore = (trendBull ? 1 : 0) + (rsiBull ? 1 : 0) + (volHigh ? 1 : 0) + (bullEngulf ? 1 : 0) + (smcBuy ? 1 : 0) + (bbBreakUp ? 1 : 0) + (nearSupport ? 1 : 0) + (crossUp ? 1 : 0) + (atrActive ? 1 : 0) + (liquidityBuyZone ? 1 : 0)
sellScore = (trendBear ? 1 : 0) + (rsiBear ? 1 : 0) + (volHigh ? 1 : 0) + (bearEngulf ? 1 : 0) + (smcSell ? 1 : 0) + (bbBreakDown ? 1 : 0) + (nearResistance ? 1 : 0) + (crossDown ? 1 : 0) + (atrActive ? 1 : 0) + (liquiditySellZone ? 1 : 0)
// === شروط الإشارات مع منع التكرار خلال آخر 5 شموع ===
var int lastBuyBar = na
var int lastSellBar = na
canBuy = buyScore >= 5 and (na(lastBuyBar) or bar_index - lastBuyBar > 5)
canSell = sellScore >= 5 and (na(lastSellBar) or bar_index - lastSellBar > 5)
if canBuy
lastBuyBar := bar_index
if canSell
lastSellBar := bar_index
showBuy = canBuy
showSell = canSell
// === طول الخطوط ===
var int lineLen = 5
// === رسم الإشارات ===
plotshape(showBuy, title="BUY", location=location.belowbar, style=shape.triangleup, size=size.small, color=color.green)
plotshape(showSell, title="SELL", location=location.abovebar, style=shape.triangledown, size=size.small, color=color.red)
// === خطوط الصفقة ===
var line buyLines = array.new_line(0)
var line sellLines = array.new_line(0)
if (showBuy)
entry = low
label.new(bar_index, entry, "Entry " + str.tostring(entry, format.mintick), style=label.style_label_left, textcolor=color.white, size=size.normal)
tpLevels = array.new_float(5)
array.set(tpLevels, 0, 0.618)
array.set(tpLevels, 1, 1.0)
array.set(tpLevels, 2, 1.272)
array.set(tpLevels, 3, 1.618)
array.set(tpLevels, 4, 2.0)
slLevel = -0.618
for i = 0 to 4
fibLabel = "TP" + str.tostring(i + 1) + " - Fib " + str.tostring(array.get(tpLevels, i))
tp = entry + array.get(tpLevels, i) * atr
line = line.new(bar_index, tp, bar_index + lineLen, tp, color=color.green)
label.new(bar_index + lineLen, tp, fibLabel + " (TP" + str.tostring(i + 1) + ") " + str.tostring(tp, format.mintick), style=label.style_label_right, textcolor=color.lime, size=size.normal)
array.push(buyLines, line)
sl = entry + slLevel * atr
slLine = line.new(bar_index, sl, bar_index + lineLen, sl, color=color.red)
label.new(bar_index + lineLen, sl, "SL " + str.tostring(sl, format.mintick), style=label.style_label_right, textcolor=color.red, size=size.normal)
array.push(buyLines, slLine)
if (showSell)
entry = high
label.new(bar_index, entry, "Entry " + str.tostring(entry, format.mintick), style=label.style_label_left, textcolor=color.white, size=size.normal)
tpLevels = array.new_float(5)
array.set(tpLevels, 0, -0.618)
array.set(tpLevels, 1, -1.0)
array.set(tpLevels, 2, -1.272)
array.set(tpLevels, 3, -1.618)
array.set(tpLevels, 4, -2.0)
slLevel = 0.618
for i = 0 to 4
fibLabel = "TP" + str.tostring(i + 1) + " - Fib " + str.tostring(math.abs(array.get(tpLevels, i)))
tp = entry + array.get(tpLevels, i) * atr
line = line.new(bar_index, tp, bar_index + lineLen, tp, color=color.green)
label.new(bar_index + lineLen, tp, fibLabel + " (TP" + str.tostring(i + 1) + ") " + str.tostring(tp, format.mintick), style=label.style_label_right, textcolor=color.green, size=size.normal)
array.push(sellLines, line)
sl = entry + slLevel * atr
slLine = line.new(bar_index, sl, bar_index + lineLen, sl, color=color.red)
label.new(bar_index + lineLen, sl, "SL " + str.tostring(sl, format.mintick), style=label.style_label_right, textcolor=color.red, size=size.normal)
array.push(sellLines, slLine)
// === متابعة نتائج الصفقة ===
// تحقق نجاح الصفقة (وصل أول TP)
buyHitTP = showBuy and high >= low + 0.618 * atr
sellHitTP = showSell and low <= high - 0.618 * atr
// تحقق فشل الصفقة (ضرب SL)
buyHitSL = showBuy and low <= low - 0.618 * atr
sellHitSL = showSell and high >= high + 0.618 * atr
// رسم الإشارة
plotshape(buyHitTP, title="Buy Success", style=shape.labelup, location=location.abovebar, color=color.green, size=size.small)
plotshape(sellHitTP, title="Sell Success", style=shape.labelup, location=location.abovebar, color=color.green, size=size.small)
plotshape(buyHitSL, title="Buy Failed", style=shape.labeldown, location=location.abovebar, color=color.red, size=size.small)
plotshape(sellHitSL, title="Sell Failed", style=shape.labeldown, location=location.abovebar, color=color.red, size=size.small)
Anomalías en Rendimientos LogarítmicosLogarithmic Returns Anomalies
This indicator detects unusual or extreme movements in the logarithmic returns of price data, helping to identify atypical market events.
It calculates the moving average and standard deviation of logarithmic returns over a configurable period, and visually highlights when the return deviates significantly from the average using thresholds based on multiples of the standard deviation.
Features:
Identifies high and low anomalies in logarithmic returns.
Clear visualization with lines for the mean and upper/lower thresholds.
Circle markers highlight anomalies in a separate pane.
Customizable parameters to adjust indicator sensitivity.
Ideal for quantitative traders and technical analysts looking to spot sharp changes or unusual behavior in financial assets.
Confirmed Entry Grid Pro//@version=5
indicator("Confirmed Entry Grid Pro", overlay=true)
// === المتوسطات ===
ma9 = ta.sma(close, 9)
ma21 = ta.sma(close, 21)
ma200 = ta.sma(close, 200)
// === الاتجاه ===
trendBull = close > ma200
trendBear = close < ma200
// === الزخم ===
rsi = ta.rsi(close, 14)
rsiBull = rsi > 50
rsiBear = rsi < 50
// === الحجم ===
volMA = ta.sma(volume, 20)
volHigh = volume > volMA
// === شموع ابتلاعية ===
bullEngulf = close > open and open < close and close > open
bearEngulf = close < open and open > close and close < open
// === بولنجر باند ===
basis = ta.sma(close, 20)
dev = ta.stdev(close, 20)
upper = basis + 2 * dev
lower = basis - 2 * dev
bbBreakUp = close > upper
bbBreakDown = close < lower
// === دعم / مقاومة ديناميكية ===
support = ta.lowest(low, 20)
resistance = ta.highest(high, 20)
nearSupport = math.abs(close - support) / close < 0.015
nearResistance = math.abs(close - resistance) / close < 0.015
// === تقاطع المتوسطات ===
crossUp = ta.crossover(ma9, ma21)
crossDown = ta.crossunder(ma9, ma21)
// === ATR ===
atr = ta.atr(14)
atrActive = atr > ta.sma(atr, 14)
// === SMC: BOS + CHOCH ===
bosUp = high > high and low > low
bosDown = low < low and high < high
chochUp = close > high and close < high
chochDown = close < low and close > low
smcBuy = bosUp and chochUp
smcSell = bosDown and chochDown
// === مناطق السيولة ===
liqHigh = ta.highest(high, 30)
liqLow = ta.lowest(low, 30)
liquidityBuyZone = close < liqLow
liquiditySellZone = close > liqHigh
// === حساب النقاط لكل صفقة ===
buyScore = (trendBull ? 1 : 0) + (rsiBull ? 1 : 0) + (volHigh ? 1 : 0) + (bullEngulf ? 1 : 0) + (smcBuy ? 1 : 0) + (bbBreakUp ? 1 : 0) + (nearSupport ? 1 : 0) + (crossUp ? 1 : 0) + (atrActive ? 1 : 0) + (liquidityBuyZone ? 1 : 0)
sellScore = (trendBear ? 1 : 0) + (rsiBear ? 1 : 0) + (volHigh ? 1 : 0) + (bearEngulf ? 1 : 0) + (smcSell ? 1 : 0) + (bbBreakDown ? 1 : 0) + (nearResistance ? 1 : 0) + (crossDown ? 1 : 0) + (atrActive ? 1 : 0) + (liquiditySellZone ? 1 : 0)
// === شروط الإشارات مع منع التكرار خلال آخر 5 شموع ===
var int lastBuyBar = na
var int lastSellBar = na
canBuy = buyScore >= 5 and (na(lastBuyBar) or bar_index - lastBuyBar > 5)
canSell = sellScore >= 5 and (na(lastSellBar) or bar_index - lastSellBar > 5)
if canBuy
lastBuyBar := bar_index
if canSell
lastSellBar := bar_index
showBuy = canBuy
showSell = canSell
// === طول الخطوط ===
var int lineLen = 5
// === رسم الإشارات ===
plotshape(showBuy, title="BUY", location=location.belowbar, style=shape.triangleup, size=size.small, color=color.green)
plotshape(showSell, title="SELL", location=location.abovebar, style=shape.triangledown, size=size.small, color=color.red)
// === خطوط الصفقة ===
var line buyLines = array.new_line(0)
var line sellLines = array.new_line(0)
if (showBuy)
entry = low
tpLevels = array.new_float(5)
array.set(tpLevels, 0, 0.618)
array.set(tpLevels, 1, 1.0)
array.set(tpLevels, 2, 1.272)
array.set(tpLevels, 3, 1.618)
array.set(tpLevels, 4, 2.0)
slLevel = -0.618
for i = 0 to 4
tp = entry + array.get(tpLevels, i) * atr
line = line.new(bar_index, tp, bar_index + lineLen, tp, color=color.green)
array.push(buyLines, line)
sl = entry + slLevel * atr
slLine = line.new(bar_index, sl, bar_index + lineLen, sl, color=color.red)
array.push(buyLines, slLine)
if (showSell)
entry = high
tpLevels = array.new_float(5)
array.set(tpLevels, 0, -0.618)
array.set(tpLevels, 1, -1.0)
array.set(tpLevels, 2, -1.272)
array.set(tpLevels, 3, -1.618)
array.set(tpLevels, 4, -2.0)
slLevel = 0.618
for i = 0 to 4
tp = entry + array.get(tpLevels, i) * atr
line = line.new(bar_index, tp, bar_index + lineLen, tp, color=color.green)
array.push(sellLines, line)
sl = entry + slLevel * atr
slLine = line.new(bar_index, sl, bar_index + lineLen, sl, color=color.red)
array.push(sellLines, slLine)
// === نسبة المخاطرة ===
label.new(bar_index, showBuy ? low : na, "Risk: 38.2%", style=label.style_label_left, textcolor=color.white, size=size.tiny, color=color.gray)
label.new(bar_index, showSell ? high : na, "Risk: 38.2%", style=label.style_label_left, textcolor=color.white, size=size.tiny, color=color.gray)