ICT Directional FVG Indicator (Buffered SL)This is the first indicator I have ever made, and I am very new to Pine Script. I’ve tried my best to create this as a strategy, but I’m still learning, so please be kind and constructive with your feedback!
ICT Directional FVG Indicator (Buffered SL)
This indicator is designed for traders who follow ICT (Inner Circle Trader) concepts, focusing on Fair Value Gaps (FVGs), liquidity sweeps, and session-based trading. It automatically detects bullish and bearish FVGs, highlights them on the chart, and identifies liquidity sweep events. The indicator features three customizable Kill Zones (London, New York, and Asia sessions), each with independent toggles and color-coded backgrounds for clear visual separation.
Key features:
Fair Value Gap Detection: Highlights bullish and bearish FVGs in real time.
Liquidity Sweep Alerts: Marks potential liquidity sweep events for both highs and lows.
Session Kill Zones: Toggle each Kill Zone (London, New York, Asia) independently; background color changes only in enabled zones.
Trade Signal Visualization: Plots entry, stop loss, and take profit levels based on FVG and sweep logic, with a user-defined stop loss buffer.
Customizable Display: Easily enable or disable FVGs, sweeps, trade levels, and each Kill Zone to suit your strategy.
This tool is ideal for ICT-based traders who want a clear, automated view of FVGs, sweeps, and session activity, with full control over which sessions and signals are displayed.
Komut dosyalarını "session" için ara
Mariam Market DashboardMariam Market Dashboard – A Quick Guide
Purpose:
Shows if the market is trending, volatile, or stuck so you can decide when to trade or wait.
How to Use
Add the indicator to your chart. Adjust basic settings like EMA, RSI, ATR lengths, and timezone if needed. Use it before entering any trade to confirm market conditions.
What Each Metric Means (with general ranges)
Session: Identifies which market session is active (New York, London, Tokyo).
Trend: Shows current market direction. “Up” means price above EMA and VWAP, “Down” means price below. Use this to confirm bullish or bearish bias.
HTF Trend: Confirms trend on a higher timeframe for stronger signals.
ATR (Average True Range): Measures market volatility or price movement speed.
Low ATR (e.g., below 0.5% of price) means quiet or slow market; high ATR (above 1% of price) means volatile or fast-moving market, good for active trades.
Strong Bar: A candlestick closing near its high (above 75% of range) indicates strong buying momentum; closing near its low indicates strong selling momentum.
Higher Volume: Volume higher than average (typically 10-20% above normal) means more market activity and stronger moves.
Volume / Avg Volume: Ratio above 1.2 (120%) shows volume is significantly higher than usual, signaling strong interest.
RVol % (Relative Volume %): Above 100% means volume is hotter than normal, increasing chances of strong moves; below 50% means low activity and possible indecision.
Delta: Difference between buying and selling volume (if available). A positive delta means buyers dominate; negative means sellers dominate.
ADX (Average Directional Index): Measures trend strength:
Below 20 means weak or no trend;
Above 25 means strong trend;
Between 20-25 is moderate trend.
RSI (Relative Strength Index): Momentum oscillator:
Below 30 = oversold (potential buy);
Above 70 = overbought (potential sell);
Between 40-60 means neutral momentum.
MACD: Confirms momentum direction:
Positive MACD histogram bars indicate bullish momentum;
Negative bars indicate bearish momentum.
Choppiness Index: Measures how much the market is ranging versus trending:
Above 60 = very choppy/sideways market;
Below 40 = trending market.
Consolidation: When true, price is stuck in a narrow range, signaling indecision. Avoid breakout trades during this.
Quick Trading Reminder
Trade only when the trend is clear and volume is above average. Avoid trading in low volume or choppy markets.
Functionally Weighted Moving AverageOVERVIEW
An anchor-able moving average that weights historical prices with mathematical curves (shaping functions) such as Smoothstep , Ease In / Out , or even a Cubic Bézier . This level of configurability lends itself to more versatile price modeling, over conventional moving averages.
SESSION ANCHORS
Aside from VWAP, conventional moving averages do not allow you to use the first bar of each session as an anchor. This can make averages less useful near the open when price is sufficiently different from yesterdays close. For example, in this screenshot the EMA (blue) lags behind the sessionally anchored FWMA (yellow) at the open, making it slower to indicate a pivot higher.
An incrementing length is what makes a moving average anchor-able. VWAP is designed to do this, indefinitely growing until a new anchor resets the average (which is why it doesn't have a length parameter). But conventional MA's are designed to have a set length (they do not increment). Combining these features, the FWMA treats the length like a maximum rather than a set length, incrementing up to it from the anchor (when enabled).
Quick aside: If you code and want to anchor a conventional MA, the length() function in my UtilityLibrary will help you do this.
Incrementing an averages length introduces near-anchor volatility. For this reason, the FWMA also includes an option to saturate the anchor with the source , making values near the anchor more resistant to change. The following screenshot illustrates how saturation affects the average near the anchor when disabled (aqua) and enabled (fuchsia).
AVERAGING MATH
While there's nothing special about the math, it's worth documenting exactly how the average is affected by the anchor.
Average = Dot Product / Sum of Weights
Dot Product
This is the sum of element-wise multiplication between the Price and Weight arrays.
Dot Product = Price1 × Weight1 + Price2 × Weight2 + Price3 × Weight3 ...
When the Price and Weight arrays are equally sized (aka. the length is no longer incrementing from the anchor), there's a 1-1 mapping between Price and Weight indices. Anchoring, however, purges historical data from the Price array, making it temporarily smaller. When this happens, a dot product is synthesized by linearly interpolating for proportional indices (rather than a 1-1 mapping) to maintain the intended shape of weights.
Synthetic Dot Product = FirstPrice × FirstWeight + ... MidPrice × MidWeight ... + LastPrice × LastWeight
Sum of Weights
Exactly what it sounds like, the sum of weights used by the dot product operation. The sum of used weights may be less than the sum of all weights when the dot product is synthesized.
Sum of Weights = Weight1 + Weight2 + Weight3 ...
CALCULATING WEIGHTS
Shaping functions are mathematical curves used for interpolation. They are what give the Functionally Weighted Moving Average its name, and define how each historical price in the look back period is weighted.
The included shaping functions are:
Linear (conventional WMA)
Smoothstep (S curve)
Ease In Out (adjustable S curve)
Ease In (first half of Ease In Out)
Ease Out (second half of Ease In Out)
Ease Out In (eases out and then back in)
Cubic Bézier (aka. any curve you want)
In the following screenshot, the only difference between the three FWMA's is the shaping function (Ease In, Ease In Out, and Ease Out) illustrating how different curves can influence the responsiveness of an average.
And here is the same example, but with anchor saturation disabled .
ADJUSTING WEIGHTS
Each function outputs a range of values between 0 and 1. While you can't expand or shrink the range, you can nudge it higher or lower using the Scalar . For example, setting the scalar to -0.2 remaps to , and +0.2 remaps to . The following screenshot illustrates how -0.2 (lightest blue) and +0.2 (darkest blue) affect the average.
Easing functions can be further adjusted with the Degree (how much the shaping function curves). There's an interactive example of this here and the following illustrates how a degrees 0, 1, and 20 (dark orange, orange, and light orange) affect the average.
This level of configurability completely changes how a moving average models price for a given length, making the FWMA extremely versatile.
INPUTS
You can configure:
Length (how many historical bars to average)
Source (the bar value to average)
Offset (horizontal offset of the plot)
Weight (the shaping function)
Scalar (how much to adjust each weight)
Degree (how much to ease in / out)
Bézier Points (controls shape of Bézier)
Divisor & Anchor parameters
Style of the plot
BUT ... WHY?
We use moving averages to anticipate trend initialization, continuation, and termination. For a given look back period (length) we want the average to represent the data as accurately and smoothly as possible. The better it does this, the better it is at modeling price.
In this screenshot, both the FWMA (yellow) and EMA (blue) have a length of 9. They are both smooth, but one of them more accurately models price.
You wouldn't necessarily want to trade with these FWMA parameters, but knowing it does a better job of modeling price allows you to confidently expand the model to larger timeframes for bigger moves. Here, both the FWMA (yellow) and EMA (blue) have a length of 195 (aka. 50% of NYSE market hours).
INSPIRATION
I predominantly trade ETF derivatives and hold the position that markets are chaotic, not random . The salient difference being that randomness is entirely unpredictable, and chaotic systems can be modeled. The kind of analysis I value requires a very good pricing model.
The term "model" sounds more intimidating than it is. Math terms do that sometimes. It's just a mathematical estimation . That's it. For example, a regression is an "average regressing" model (aka. mean reversion ), and LOWESS (Locally Weighted Scatterplot Smoothing) is a statistically rigorous local regression .
LOWESS is excellent for modeling data. Also, it's not practical for trading. It's computationally expensive and uses data to the right of the point it's averaging, which is impossible in realtime (everything to the right is in the future). But many techniques used within LOWESS are still valuable.
My goal was to create an efficient real time emulation of LOWESS. Specifically I wanted something that was weighted non-linearly, was efficient, left-side only, and data faithful. Incorporate trading paradigms (like anchoring) and you get a Functionally Weighted Moving Average.
The formulas for determining the weights in LOWESS are typically chosen just because they seem to work well. Meaning ... they can be anything, and there's no justification other than "looks about right". So having a variety of functions (aka. kernels) for the FWMA, and being able to slide the weight range higher or lower, allows you to also make it "look about right".
William Cleveland, prominent figure in statistics known for his contributions to LOWESS, preferred using a tri-cube weighting function. Using Weight = Ease Out In with the Degrees = 3 is comparable to this. Enjoy!
Opening Range and Market BoundariesOpening Range and Market Boundaries
This versatile and insightful indicator combines two powerful concepts frequently used by professional traders: Opening Range Analysis and Market Boundaries derived from previous high/low levels. It is specifically designed to support intraday trading strategies and helps you identify key price zones for entries, exits, and breakout confirmations.
🔍 Features & Utility
1. Opening Range Box
What it does:
Highlights the high and low of the first candle after market open (9:15 AM IST) with a shaded box. This box spans the full trading session, from 9:15 AM to 3:30 PM, representing the key price range where the initial balance is formed.
Timeframe Compatibility:
The Opening Range box is optimized for 1-minute to 1-hour charts. It is most effective on lower timeframes (1m, 5m, 15m, 30m) where intraday price movements and breakout patterns can be clearly observed.
Usage Tips:
Breakouts above or below the Opening Range box can signal potential directional bias for the rest of the trading day.
Price consolidating within the range may indicate a choppy or range-bound session.
Works well with volume and momentum indicators for confirmation.
2. Market Boundaries
What it does:
Plots horizontal lines at:
Previous Day High/Low
Previous Week High/Low
Previous Month High/Low
Why it matters:
These levels act as natural support and resistance zones, and are commonly watched by institutional traders, making them crucial for:
Spotting reversals or breakouts
Planning stop-loss and target zones
Avoiding trades around high-rejection areas
Customization Options:
Toggle ON/OFF for Daily, Weekly, and Monthly levels.
Independent colors and line thickness for each level, enabling you to distinguish between different timeframes easily.
🛠️ How to Use Effectively
Use during market open:
Switch to a 5-minute or 15-minute chart during the first few candles of the session. Observe the Opening Range box formation and plan trades based on breakout direction.
Confluence Trading:
Look for price action near previous session highs/lows in confluence with the Opening Range box edges. These intersections often become high-probability zones for breakouts or reversals.
Session Preparation:
Before the market opens, analyze where the price is relative to past high/low boundaries. If it's near a weekly/monthly level, be cautious — those areas can cause whipsaws or false breakouts.
Avoid low-volume breakouts:
Use this indicator in conjunction with volume tools or price action confirmation to validate the strength of a move outside the Opening Range or Market Boundaries.
📌 Summary
This indicator is designed for intraday traders, scalpers, and swing traders who want a reliable structure to guide their decisions. It visually marks the opening balance of the market and essential higher timeframe boundaries, helping you trade with discipline and precision.
AlphaTrend++AlphaTrend++
Overview
The AlphaTrend++ is an advanced Pine Script indicator designed to help traders identify buy and sell opportunities in trending and volatile markets. Building on trend-following principles, it uses a modified Average True Range (ATR) calculation combined with volume or momentum data to plot a dynamic trend line. The indicator overlays on the price chart, displaying a colored trend line, a filled trend zone, buy/sell signals, and optional stop-loss tick labels, making it ideal for day trading or swing trading, particularly in markets like futures (e.g., MES).
What It Does
This indicator generates buy and sell signals based on the direction and momentum of a custom trend line, filtered by optional time restrictions and signal frequency logic. The trend line adapts to price action and volatility, with a filled zone highlighting trend strength. Buy/sell signals are plotted as labels, and stop-loss distances are displayed in ticks (customizable for instruments like MES). The indicator supports standard chart types for realistic signal generation.
How It Works
The indicator employs the following components:
Trend Line Calculation: A dynamic trend line is calculated using ATR adjusted by a user-defined multiplier, combined with either Money Flow Index (MFI) or Relative Strength Index (RSI) depending on volume availability. The line tracks price movements, adjusting upward or downward based on trend direction and volatility.
Trend Zone: The area between the current trend line and its value two bars prior is filled, colored green for bullish trends (upward movement) or red for bearish trends (downward movement), providing a visual cue of trend strength.
Signal Generation: Buy signals occur when the trend line crosses above its value two bars ago, and sell signals occur when it crosses below, with optional filtering to reduce signal noise (based on bar timing logic). Signals can be restricted to a 9:00–15:00 UTC trading window.
Stop-Loss Ticks: For each signal, the indicator calculates the distance to the trend line (acting as a stop-loss level) in ticks, using a user-defined tick size (default 0.25 for MES). These are displayed as labels below/above the signal.
Time Filter: An optional filter limits signals to 9:00–15:00 UTC, aligning with active trading sessions like the US market open.
The indicator ensures compatibility with standard chart types (e.g., candlestick or bar charts) to avoid unrealistic results associated with non-standard types like Heikin Ashi or Renko.
How to Use It
Add to Chart: Apply the indicator to a candlestick or bar chart on TradingView.
Configure Settings:
Multiplier: Adjust the ATR multiplier (default 1.0) to control trend line sensitivity. Higher values widen the stop-loss distance.
Common Period: Set the ATR and MFI/RSI period (default 14) for trend calculations.
No Volume Data: Enable if volume data is unavailable (e.g., for certain forex pairs), switching from MFI to RSI.
Tick Size: Set the tick size for stop-loss calculations (default 0.25 for MES futures).
Show Buy/Sell Signals: Toggle signal labels (default enabled).
Show Stop Loss Ticks: Toggle stop-loss tick labels (default enabled).
Use Time Filter: Restrict signals to 9:00–15:00 UTC (default disabled).
Use Filtered Signals: Enable to reduce signal frequency using bar timing logic (default enabled).
Interpret Signals:
Buy Signal: A blue “BUY” label below the bar indicates a potential long entry (trend line crossover, passing filters).
Sell Signal: A red “SELL” label above the bar indicates a potential short entry (trend line crossunder, passing filters).
Trend Zone: Green fill suggests bullish momentum; red fill suggests bearish momentum.
Stop-Loss Ticks: Gray labels show the stop-loss distance in ticks, helping with risk management.
Monitor Context: Use the trend line and filled zone to confirm the market’s direction before acting on signals.
Unique Features
Adaptive Trend Line: Combines ATR with MFI or RSI to create a responsive trend line that adjusts to volatility and market conditions.
Tick-Based Stop-Loss: Displays stop-loss distances in ticks, customizable for specific instruments, aiding precise risk management.
Signal Filtering: Optional bar timing logic reduces false signals, improving reliability in choppy markets.
Trend Zone Visualization: The filled zone between trend line values enhances trend clarity, making it easier to assess momentum.
Time-Restricted Trading: Optional 9:00–15:00 UTC filter aligns signals with high-liquidity sessions.
Notes
Use on standard candlestick or bar charts to ensure accurate signals.
Test the indicator on a demo account to optimize settings for your market and timeframe.
Combine with other analysis (e.g., support/resistance, volume spikes) for better decision-making.
The indicator is not a standalone system; use it as part of a broader trading strategy.
Limitations
Signals may lag in highly volatile or low-liquidity markets due to ATR-based calculations.
The 9:00–15:00 UTC time filter may not suit all markets; disable it for 24-hour assets like forex or crypto.
Stop-loss tick calculations assume consistent tick sizes; verify compatibility with your instrument.
This indicator is designed for traders seeking a robust, trend-following tool with customizable risk management and signal filtering, optimized for active trading sessions.
Initial Imbalance [First FVG - ICT] v1Initial Imbalance v1
This indicator identifies the first Fair Value Gap (FVG) at the start of a user-defined session, inspired by The Inner Circle Trader. It helps traders spot initial imbalance in a sessions price action, offering filter options to refine FVG detection and optional session high/low lines for context.
Features:
Detects the first bullish or bearish FVG at the session start (default: 08:30). ISE: Sets a custom session start time (hour and minute).
Filters FVGs by size: None, ATR-based, or Points-based.
Displays session high/low lines (optional) to visualize the session range.
Customizable colors for bullish and bearish FVGs (background and border derived from a single color input).
Alerts for new FVGs and mitigated FVGs.
Settings:
Session Start Time: Define the hour and minute for the session start.
FVG Filter Type: Choose None, ATR, or Points to filter FVGs by size.
ATR Multiple / Minimum Points: Set the minimum FVG size for ATR or Points filters.
Show Session High/Low Lines: Toggle visibility of session range lines.
Bullish/Bearish FVG Colors: Customize colors for FVGs.
Technical Details:
Overlay indicator, displayed directly on the price chart.
This indicator is ideal for traders seeking to identify key price imbalances at the start of a session, with flexible filtering and visualization options.
Custom Time Range Boxes + Fibs + ExtensionThis script draws two customizable time-range boxes per day, helping traders visualize key market sessions or activity windows. Each box is defined by start and end times that can be adjusted in the settings. You can also choose a custom color and extend the visual width of the box independently from the actual session time. Within each box, the indicator plots three Fibonacci levels: 0.3, 0.5, and 0.7. These levels are useful for identifying potential support, resistance, or retracement zones inside the session range. The script supports two separate time blocks, allowing you to track sessions like the New York Open and Power Hour simultaneously. All lines and boxes are drawn using bar_index for precision and control. The levels and box colors match for visual consistency. Perfect for intraday traders who want to track price behavior around key times. Clean, minimal, and performance-friendly — this tool adds clarity to your session-based strategy.
Gold Opening 15-Min ORB INDICATOR by AdéThis indicator is designed for trading Gold (XAUUSD) during the first 15 minutes of major market openings: Asian, European, and US sessions. It highlights these key time windows, plots the high and low ranges of each session, and generates breakout-based buy/sell signals. Ideal for traders focusing on volatility at market opens.
Features:Session Windows:
Asian: 1:00–1:15 AM Barcelona time (23:00–23:15 UTC, CEST-adjusted).
European: 9:00–9:15 AM Barcelona time (07:00–07:15 UTC).
US: 3:30–3:45 PM Barcelona time (13:30–13:45 UTC).
Marked with yellow (Asian), green (Europe), and blue (US) triangles below bars.
High/Low Ranges:Plots horizontal lines showing the highest high and lowest low of each session’s first 15 minutes.Lines appear after each session ends and persist until the next day, color-coded to match the sessions.Breakout Signals:Buy (Long): Triggers when the closing price breaks above the highest high of the previous 5 bars during a session window (lime triangle above bar).Sell (Short): Triggers when the closing price breaks below the lowest low of the previous 5 bars during a session window (red triangle below bar).
Signals are restricted to the 15-minute session periods for focused trading.Usage:Timeframe: Optimized for 1-minute XAUUSD charts.Timezone: Set your chart to UTC for accurate session timing (script uses UTC internally, based on Barcelona CEST, UTC+2 in April).Strategy:
Use buy/sell signals for breakout trades during volatile market opens, with session ranges as support/resistance levels.Customization: Adjust the lookback variable (default: 5) to tweak signal sensitivity.Notes:Tested for April 2025 (CEST, UTC+2).
Adjust timestamp values if using outside daylight saving time (CET, UTC+1) or for different broker timezones.Best for scalping or short-term trades during high-volatility periods. Combine with other indicators for confirmation if desired.How to Use:Apply to a 1-minute XAUUSD chart.Watch for session markers (triangles) and breakout signals during the 15-minute windows.Use the high/low lines to gauge potential breakout targets or reversals.
TR Buy/Sell Signal PanelI scripted this with chatgpt have fun guys
📊 TR Buy/Sell Signal Panel – Smart Trade Signals with Visual Clarity
The TR Buy/Sell Signal Panel is a standalone indicator inspired by the powerful Traders Reality (TR) methodology.
It detects potential long and short trade setups using classic market behavior patterns such as volume spikes, EMA crossovers, and session-based timing – all visualized cleanly and statically on your chart.
✅ Key Features
Buy Signals (LONG):
Green PVSRA candle (strong bullish candle with momentum)
EMA13 crossing above EMA50
Volume spike (current volume exceeds 20-period average × multiplier)
Triggered only during London or New York trading sessions (UTC)
Sell Signals (SHORT):
Red PVSRA candle (strong bearish move)
EMA13 crossing below EMA50
Volume spike
Also restricted to active session times
📌 Visual Components
Green/Red arrows on the chart indicate Buy/Sell entries
A static info panel in the bottom-right corner displays all signal conditions:
PVSRA active ✅
Volume Spike ✅
EMA Crossover ✅
Session Time ✅
Last Signal: 🟢 BUY / 🔴 SELL
Current Direction: 🟢 LONG / 🔴 SHORT / ❌ NONE
⚙️ Fully Customizable
Adjustable volume spike multiplier
Optional toggle for showing/hiding short signals
Extremely user-friendly layout – ideal for both beginners & experienced traders
📦 Best For:
Scalpers & Intraday Traders
Traders who follow the Traders Reality / Market Maker Method
Anyone who values clean, rule-based trade entries
Note: Works across all timeframes with sufficient volume (e.g., 5min – 4hr). Sessions are based on UTC time – adjust if needed based on your timezone or trading hours.
IU Gap Fill StrategyThe IU Gap Fill Strategy is designed to capitalize on price gaps that occur between trading sessions. It identifies gaps based on a user-defined percentage threshold and executes trades when the price fills the gap within a day. This strategy is ideal for traders looking to take advantage of market inefficiencies that arise due to overnight or session-based price movements. An ATR-based trailing stop-loss is incorporated to dynamically manage risk and lock in profits.
USER INPUTS
Percentage Difference for Valid Gap - Defines the minimum gap size in percentage terms for a valid trade setup. ( Default is 0.2 )
ATR Length - Sets the lookback period for the Average True Range (ATR) calculation. (default is 14 )
ATR Factor - Determines the multiplier for the trailing stop-loss, helping in risk management. ( Default is 2.00 )
LONG CONDITION
A gap-up occurs, meaning the current session opens above the previous session’s close.
The price initially dips below the previous session's close but then recovers and closes above it.
The gap meets the valid percentage threshold set by the user.
The bar is not the first or last bar of the session to avoid false signals.
SHORT CONDITION
A gap-down occurs, meaning the current session opens below the previous session’s close.
The price initially moves above the previous session’s close but then closes below it.
The gap meets the valid percentage threshold set by the user.
The bar is not the first or last bar of the session to avoid false signals.
LONG EXIT
An ATR-based trailing stop-loss is set below the entry price and dynamically adjusts upwards as the price moves in favor of the trade.
The position is closed when the trailing stop-loss is hit.
SHORT EXIT
An ATR-based trailing stop-loss is set above the entry price and dynamically adjusts downwards as the price moves in favor of the trade.
The position is closed when the trailing stop-loss is hit.
WHY IT IS UNIQUE
Precision in Identifying Gaps - The strategy focuses on real price gaps rather than minor fluctuations.
Dynamic Risk Management - Uses ATR-based trailing stop-loss to secure profits while allowing the trade to run.
Versatility - Works on stocks, indices, forex, and any market that experiences session-based gaps.
Optimized Entry Conditions - Ensures entries are taken only when the price attempts to fill the gap, reducing false signals.
HOW USERS CAN BENEFIT FROM IT
Enhance Trade Timing - Captures high-probability trade setups based on market inefficiencies caused by gaps.
Minimize Risk - The ATR trailing stop-loss helps protect gains and limit losses.
Works in Different Market Conditions - Whether markets are trending or consolidating, the strategy adapts to potential gap fill opportunities.
Fully Customizable - Users can fine-tune gap percentage, ATR settings, and stop-loss parameters to match their trading style.
Mon to Fri + LSE and NYSE📌 Highlight Custom Days & Market Hours Indicator 📌
🔹 Overview:
This script allows traders to visually highlight specific weekdays and market sessions directly on their TradingView charts. With customizable checkboxes, you can choose which days of the week to highlight, along with session times for the New York Stock Exchange (NYSE) and London Stock Exchange (LSE).
🔹 Features:
✅ Select individual weekdays (Monday–Friday) to highlight in blue
✅ Highlight NYSE open hours (2:30 PM – 9:30 PM UK time) in green
✅ Highlight LSE open hours (8:00 AM – 4:30 PM UK time) in orange
✅ Ensures NYSE & LSE sessions are only highlighted on weekdays (no weekends)
✅ Clean and simple visualization for enhanced market awareness
🔹 How to Use:
1️⃣ Add the indicator to your TradingView chart
2️⃣ Use the settings panel to enable/disable specific weekdays
3️⃣ Toggle NYSE or LSE session highlights based on your trading preference
🚀 Perfect for traders who follow institutional sessions and want better time-based confluence in their strategies!
Schwarzman Custom ORB with Box DisplayIndicator Overview
The Schwarzman Custom ORB (Opening Range Breakout) Indicator is a fully self-developed script designed for traders who utilize opening range breakout strategies. This indicator allows users to customize their ORB settings, apply them to historical price data, and visually connect multiple ORBs to analyze past performance. The goal is to provide traders with a tool to backtest and refine their breakout strategies based on historical ORB data.
How the Indicator Works
1️⃣ User-Defined ORB Settings
• The user selects a custom start time (hour and minute) for the ORB.
• The user defines a duration (e.g., 15 minutes, 30 minutes, etc.) for the ORB period.
• A timezone offset is included to adjust for different market sessions.
2️⃣ ORB High and Low Calculation
• The script records the highest and lowest prices within the selected ORB time window.
• The recorded values remain static after the ORB period ends, ensuring accurate range plotting.
3️⃣ Historical ORB Visualization
• Instead of only showing a single ORB for the current session, this indicator connects multiple ORBs across past data.
• This allows traders to visually analyze previous breakout performance.
• The plotted ORBs remain fixed and do not repaint, ensuring an accurate backtesting experience.
4️⃣ Stepline Visualization & Range Filling
• The high and low ORB levels are displayed using stepline plots to maintain clear horizontal levels.
• A shaded box is applied between the ORB high and low for better visualization.
Use Cases & Strategy Application
📌 Backtesting Historical ORBs – See how past ORBs performed under different market conditions.
📌 Custom ORB Settings – Adjust the start time and duration for different trading sessions.
📌 Multi-ORB Analysis – Connect ORBs over multiple trading days to study trends and breakouts.
📌 Breakout Strategy Optimization – Use the historical ORB connections to refine entry and exit points.
This indicator is particularly useful for day traders, scalpers, and breakout traders looking for a data-driven approach to trading.
Indicator Development & Transparency Statement
As a trader, I have tested various ORB (Opening Range Breakout) indicators available in the TradingView community. Through these experiences, I aimed to develop a version that best fits my own trading needs and strategy.
This script is a self-developed ORB tool, created from scratch while drawing inspiration from the concept of opening range breakouts, which is widely used in trading. Since I initially coded in Pine Script v4, I used ChatGPT to help refine and migrate the script to Pine Script v6 to ensure compatibility with the latest TradingView features. However, the core logic, structure, and customization were entirely designed and implemented based on my own approach.
I am making this indicator public not to violate any TradingView guidelines but to share my work with the trading community and provide a tool that can help others analyze ORB-based strategies. If there are any compliance concerns, I am open to adjusting the script accordingly, but I want to clarify that this is not a copy of any existing ORB script—it is a custom-built indicator tailored to my own trading preferences.
I appreciate the opportunity to contribute to the community and would welcome any specific feedback from TradingView regarding rule compliance.
Best regards,
Janko S. (Schwarzman)
Appeal to TradingView
Dear TradingView Team,
This script is 100% self-developed and does not copy or replicate any third-party code. It is a customized ORB tool designed for traders who wish to backtest and analyze opening range breakout strategies over multiple sessions. We kindly request specific clarification regarding which exact line(s) of code violate TradingView’s guidelines. If there are any compliance concerns, we are happy to adjust the script accordingly.
Please let us know the precise rules or community guidelines that were violated so we can make the necessary modifications.
🚀 Summary
✔ Fully Custom & Self-Developed – No copied or third-party code.
✔ Innovative Feature – Connects past ORBs for strategy backtesting.
✔ Transparent & Compliant – Requesting exact details on any potential rule violations.
HTF Hi-Lo Zones [CHE]HTF Hi-Lo Zones Indicator
The HTF Hi-Lo Zones Indicator is a Pine Script tool designed to highlight important high and low values from a selected higher timeframe. It provides traders with clear visual zones where price activity has reached significant points, helping in decision-making by identifying potential support and resistance levels. This indicator is customizable, allowing users to select the resolution type, control the visualization of session ranges, and even display detailed information about the chosen timeframe.
Key Functionalities
1. Timeframe Resolution Selection:
- The indicator offers three modes to determine the resolution:
- Automatic: Dynamically calculates the higher timeframe based on the current chart's resolution.
- Multiplier: Allows users to apply a multiplier to the current chart's timeframe.
- Manual: Enables manual input for custom resolution settings.
- Each resolution type ensures flexibility to suit different trading styles and strategies.
2. Data Fetching for High and Low Values:
- The indicator retrieves the current high and low values for the selected higher timeframe using `request.security`.
- It also calculates the lowest and highest values over a configurable lookback period, providing insights into significant price movements within the chosen timeframe.
3. Session High and Low Detection:
- The indicator detects whether the current value represents a new session high or low by comparing the highest and lowest values with the current data.
- This is crucial for identifying breakouts or significant turning points during a session.
4. Visual Representation:
- When a new session high or low is detected:
- Range Zones: A colored box marks the session's high-to-low range.
- Labels: Optional labels indicate "New High" or "New Low" for clarity.
- Users can customize colors, transparency, and whether range outlines or labels should be displayed.
5. Information Box:
- An optional dashboard displays details about the chosen timeframe resolution and current session activity.
- The box's size, position, and colors are fully customizable.
6. Session Tracking:
- Tracks session boundaries, updating the visualization dynamically as the session progresses.
- Displays session-specific maximum and minimum values if enabled.
7. Additional Features:
- Configurable dividers for session or daily boundaries.
- Transparency and styling options for the displayed zones.
- A dashboard for advanced visualization and information overlay.
Key Code Sections Explained
1. Resolution Determination:
- Depending on the user's input (Auto, Multiplier, or Manual), the script determines the appropriate timeframe resolution for higher timeframe analysis.
- The resolution adapts dynamically based on intraday, daily, or higher-period charts.
2. Fetching Security Data:
- Using the `getSecurityDataFunction`, the script fetches high and low values for the chosen timeframe, including historical and real-time data management to avoid repainting issues.
3. Session High/Low Logic:
- By comparing the highest and lowest values over a lookback period, the script identifies whether the current value is a new session high or low, updating session boundaries and initiating visual indicators.
4. Visualization:
- The script creates visual representations using `box.new` for range zones and `label.new` for session labels.
- These elements update dynamically to reflect the most recent data.
5. Customization Options:
- Users can configure the appearance, behavior, and displayed data through multiple input options, ensuring adaptability to individual trading preferences.
This indicator is a robust tool for tracking higher timeframe activity, offering a blend of automation, customization, and visual clarity to enhance trading strategies.
Disclaimer
The content provided, including all code and materials, is strictly for educational and informational purposes only. It is not intended as, and should not be interpreted as, financial advice, a recommendation to buy or sell any financial instrument, or an offer of any financial product or service. All strategies, tools, and examples discussed are provided for illustrative purposes to demonstrate coding techniques and the functionality of Pine Script within a trading context.
Any results from strategies or tools provided are hypothetical, and past performance is not indicative of future results. Trading and investing involve high risk, including the potential loss of principal, and may not be suitable for all individuals. Before making any trading decisions, please consult with a qualified financial professional to understand the risks involved.
By using this script, you acknowledge and agree that any trading decisions are made solely at your discretion and risk.
Best regards and happy trading
Chervolino
Multi VWAPThe Multi-VWAP Indicator is a versatile tool designed to plot up to three Volume Weighted Average Price (VWAP) lines simultaneously, each anchored to a user-defined period. This indicator provides traders with a comprehensive view of price action across multiple timeframes, making it ideal for analyzing trends, support, and resistance levels.
Key Features:
Multiple Anchoring Options:
Each VWAP can be independently anchored to one of the following periods:
Session: Resets at the start of each trading day.
Week: Resets at the start of each week.
Month: Resets at the start of each month.
Quarter: Resets at the start of each quarter.
Year: Resets at the start of each year.
User Customization:
Choose the anchoring period for each VWAP line via dropdown menus.
Assign distinct colors to each VWAP for better visual differentiation.
Dynamic Price Source:
The VWAP calculation is based on the average price (hlc3) by default but can be modified by the user to use other price inputs.
Clear Visualization:
Displays three separate VWAP lines simultaneously, helping traders identify confluences or divergences in price action across timeframes.
Use Cases:
Intraday Trading: Use session-anchored VWAP to track intraday trends and mean reversion points.
Swing Trading: Combine weekly and monthly VWAPs to identify longer-term support and resistance levels.
Multi-Timeframe Analysis: Visualize how price interacts with VWAPs from different periods to spot key zones of interest.
This indicator is a powerful tool for traders who want to incorporate VWAP into their strategies while maintaining flexibility to adapt to various market conditions.
Time Vertical LinesVLines - Time-Based Vertical Lines with Zones
This PineScript indicator creates vertical time lines with customizable zones between them. Perfect for marking trading sessions, key market times, or any time-based analysis.
Key Features:
- 5 configurable time lines
- 3 customizable zones (between lines 1-2, 2-3, and 4-5)
- Each zone features:
- Background shading
- Horizontal lines at high/low points
- Independent color controls
- Adjustable line styles and widths
- Time zone offset adjustment
- Option to show/hide historical lines
Installation Instructions:
1. Open TradingView's Pine Script Editor
2. Create a new script
3. Copy and paste the entire code
4. Add to Chart
Setup Guide:
1. Time Zone Adjustment:
- Find the "Time Zone Offset (Hours)" setting
- Adjust if lines appear at wrong times
- Example: If lines appear 3 hours early, set offset to 3
2. Basic Time Lines (1-3):
- Each line has settings for:
- Hour (0-23)
- Minute (0-59)
- Color
- Show/Hide toggle
3. Session Lines (4-5):
- Special lines typically used for session marking
- Same settings as basic lines
- Default red color to distinguish from other lines
4. Zone Customization:
Three separate zones are available:
- Zone 1-2 (between first and second lines)
- Zone 2-3 (between second and third lines)
- Zone 4-5 (between fourth and fifth lines)
Each zone can be customized with:
- Background color and transparency
- Horizontal line color
- Line style (Solid/Dashed/Dotted)
- Line width
- Individual show/hide toggles for zone and lines
5. Additional Settings:
- "Show Historical Lines" - toggle to show/hide lines on previous days
- Global line style and width settings for vertical lines
Suggested Uses:
1. Mark pre-market, market, and post-market sessions
2. Highlight specific trading windows
3. Track time-based support/resistance levels
4. Monitor price ranges during specific time periods
Tips:
- Start by setting just one zone to get familiar with the controls
- Use different colors for different sessions/time periods
- Adjust transparency to maintain chart visibility
- Use the show/hide toggles to focus on specific times
- The horizontal lines automatically mark the high/low range between time points
Asian Range IndicatorIndicator Name:
Asian Range Indicator
Description:
This TradingView indicator is designed to accurately detect the price range during the Asian session, based on our trading strategy. This range is crucial for planning trades in the European and American sessions. Using advanced algorithms, the indicator automatically identifies and plots the highs and lows within the Asian session period, highlighting them on the chart with shaded areas for clear visualization. This helps traders anticipate breakouts and set more precise entry and exit levels.
How to Use the Indicator:
Add the indicator to your TradingView chart.
Observe the shaded areas representing the Asian range.
Use these levels to plan your trades during the European and American sessions.
Combine with other technical indicators to confirm your trading decisions.
Chart:
The chart published with this script is clean and easy to understand, clearly showing the Asian range highlighted with shaded areas. No other scripts are included, ensuring the indicator's output is easily identifiable. The shaded areas contribute to the visual understanding of the Asian range, helping traders effectively use the script.
ICT Silver Bullet | Flux Charts💎 GENERAL OVERVIEW
Introducing our new ICT Silver Bullet Indicator! This indicator is built around the ICT's "Silver Bullet" strategy. The strategy has 5 steps for execution and works best in 1-5 min timeframes. For more information about the process, check the "HOW DOES IT WORK" section.
Features of the new ICT Silver Bullet Indicator :
Implementation of ICT's Silver Bullet Strategy
Customizable Execution Settings
2 NY Sessions & London Session
Customizable Backtesting Dashboard
Alerts for Buy, Sell, TP & SL Signals
📌 HOW DOES IT WORK ?
ICT's Silver Bullet strategy has 5 steps :
1. Mark your market sessions open (This indicator has 3 -> NY 10-11, NY 14-15, LDN 03-04)
2. Mark the swing liquidity points
3. Wait for market to take down one liquidity side
4. Look for a market structure-shift for reversals
5. Wait for a FVG for execution
This indicator follows these steps and inform you step by step by plotting them in your chart. You can switch execution types between FVG and MSS.
🚩UNIQUENESS
This indicator is an all-in-one suit for the ICT's Silver Bullet concept. It's capable of plotting the strategy, giving signals, a backtesting dashboard and alerts feature. It's designed for simplyfing a rather complex strategy, helping you to execute it with clean signals. The backtesting dashboard allows you to see how your settings perform in the current ticker. You can also set up alerts to get informed when the strategy is executable for different tickers.
⚙️SETTINGS
1. General Configuration
Execution Type -> FVG execution type will require a FVG to take an entry, while the MSS setting will take an entry as soon as it detects a market structure-shift.
MSS Swing Length -> The swing length when finding liquidity zones for market structure-shift detection.
Breakout Method -> If "Wick" is selected, a bar wick will be enough to confirm a market structure-shift. If "Close" is selected, the bar must close above / below the liquidity zone to confirm a market structure-shift.
FVG Detection -> "Same Type" means that all 3 bars that formed the FVG should be the same type. (Bullish / Bearish). "All" means that bar types may vary between bullish / bearish.
FVG Detection Sensitivity -> You can turn this setting on and off. If it's off, any 3 consecutive bullish / bearish bars will be calculated as FVGs. If it's on, the size of FVGs will be filtered by the selected sensitivity. Lower settings mean less but larger FVGs.
2. TP / SL
TP / SL Method -> If "Fixed" is selected, you can adjust the TP / SL ratios from the settings below. If "Dynamic" is selected, the TP / SL zones will be auto-determined by the algorithm.
Risk -> The risk you're willing to take if "Dynamic" TP / SL Method is selected. Higher risk usually means a better winrate at the cost of losing more if the strategy fails.
Close Position @ Session End -> If this setting is enabled, the current position (if any) will be closed at the beginning of a new session, regardless if it hit the TP / SL zone. If it's off, the position will be open until it hits a TP / SL zone.
The only Indicator you need
Maybe even a bit more than you need.
Gives you the option to color the bars based on Trading Sessions (Asia, London and US).
Session timings are based on UTC-4, but can be changed individually as needed.
Helps keeping a clear view of what happened during the Sessions without having to stack multiple Session Indicators, or having the background of your chart looking like a rainbow.
Keeping it plain and simple.
Also has the Option for plotting previous Weeks High and Low on Chart.
Found this to be helpful in determining Price behaviour in these Areas.
Also has an option to color the chart background for different time periods.
Helps marking News Releases on the Chart and avoid entering a Trade before major releases.
Has 2 presets for 30min / 2h into US Session and 2 Custom Timeperiods. All can of course be changed as you see fit.
Colors and plotting can obviously be changed as usual.
I am thankful for further Input and Ideas!
Projected VolumeOverview
The indicator displays the expected volume up to the closing time of the session.
Calculations
The real volume is proportional to the projected volume, just as elapsed session time is proportional to entire trading session. Knowing the actual volume, the elapsed time of the session and the total time of the trading session, it is possible to find out the projected volume.
How It Works
On the last volume bar, the indicator shows the projected volume overlapped with the real volume.
How To Use
Assuming that any price movement is of little relevance if not confirmed with considerable volume, if a strong signal appears on the intraday chart but with low volume, we can overlook it as the projected volume on the daily chart is high and indicates that there is a high chance of directional movement for the day. In short, even if we have an entry signal with low volume on the intraday chart, it will still be viable to open a trade as long as on the daily chart the projected volume is high, i.e, above the moving average.
Inputs
Use 24 hours in Trading Hours input for nonstop markets, like crypto and forex, or set the specific trading hours for other market types like stocks. The projected volume will be displayed on all timeframes if the value is equal to 24. For other values it will be displayed on the 1-day chart only.
Ultimate Strategy Template (Advanced Edition)Hello traders
This script is an upgraded version of that one below
New features
- Upgraded to Pinescript version 5
- Added the exit SL/TP now in real-time
- Added text fields for the alerts - easier to send the commands to your trading bots
Step 1: Create your connector
Adapt your indicator with only 2 lines of code and then connect it to this strategy template.
For doing so:
1) Find in your indicator where are the conditions printing the long/buy and short/sell signals.
2) Create an additional plot as below
I'm giving an example with a Two moving averages cross.
Please replicate the same methodology for your indicator wether it's a MACD , ZigZag , Pivots , higher-highs, lower-lows or whatever indicator with clear buy and sell conditions.
//@version=5
indicator(title='Moving Average Cross', shorttitle='Moving Average Cross', overlay=true, precision=6, max_labels_count=500, max_lines_count=500)
type_ma1 = input.string(title='MA1 type', defval='SMA', options= )
length_ma1 = input(10, title=' MA1 length')
type_ma2 = input.string(title='MA2 type', defval='SMA', options= )
length_ma2 = input(100, title=' MA2 length')
// MA
f_ma(smoothing, src, length) =>
rma_1 = ta.rma(src, length)
sma_1 = ta.sma(src, length)
ema_1 = ta.ema(src, length)
iff_1 = smoothing == 'EMA' ? ema_1 : src
iff_2 = smoothing == 'SMA' ? sma_1 : iff_1
smoothing == 'RMA' ? rma_1 : iff_2
MA1 = f_ma(type_ma1, close, length_ma1)
MA2 = f_ma(type_ma2, close, length_ma2)
// buy and sell conditions
buy = ta.crossover(MA1, MA2)
sell = ta.crossunder(MA1, MA2)
plot(MA1, color=color.new(color.green, 0), title='Plot MA1', linewidth=3)
plot(MA2, color=color.new(color.red, 0), title='Plot MA2', linewidth=3)
plotshape(buy, title='LONG SIGNAL', style=shape.circle, location=location.belowbar, color=color.new(color.green, 0), size=size.normal)
plotshape(sell, title='SHORT SIGNAL', style=shape.circle, location=location.abovebar, color=color.new(color.red, 0), size=size.normal)
/////////////////////////// SIGNAL FOR STRATEGY /////////////////////////
Signal = buy ? 1 : sell ? -1 : 0
plot(Signal, title='🔌Connector🔌', display = display.data_window)
Basically, I identified my buy, sell conditions in the code and added this at the bottom of my indicator code
Signal = buy ? 1 : sell ? -1 : 0
plot(Signal, title="🔌Connector🔌", transp=100)
Important Notes
🔥 The Strategy Template expects the value to be exactly 1 for the bullish signal, and -1 for the bearish signal
Now you can connect your indicator to the Strategy Template using the method below or that one
Step 2: Connect the connector
1) Add your updated indicator to a TradingView chart
2) Add the Strategy Template as well to the SAME chart
3) Open the Strategy Template settings and in the Data Source field select your 🔌Connector🔌 (which comes from your indicator)
From then, you should start seeing the signals and plenty of other stuff on your chart
🔥 Note that whenever you'll update your indicator values, the strategy statistics and visual on your chart will update in real-time
Settings
- Color Candles: Color the candles based on the trade state ( bullish , bearish , neutral)
- Close positions at market at the end of each session: useful for everything but cryptocurrencies
- Session time ranges: Take the signals from a starting time to an ending time
- Close Direction: Choose to close only the longs, shorts, or both
- Date Filter: Take the signals from a starting date to an ending date
- Set the maximum losing streak length with an input
- Set the maximum winning streak length with an input
- Set the maximum consecutive days with a loss
- Set the maximum drawdown (in % of strategy equity)
- Set the maximum intraday loss in percentage
- Limit the number of trades per day
- Limit the number of trades per week
- Stop-loss: None or Percentage or Trailing Stop Percentage or ATR - I'll add shortly multiple options for the trailing stop loss
- Take-Profit: None or Percentage or ATR - I'll add also a trailing take profit
- Risk-Reward based on ATR multiple for the Stop-Loss and Take-Profit
Special Thanks
Special thanks to @JosKodify as I borrowed a few risk management snippets from his website: kodify.net
Best
Dave
Sessions_for_cryptoCoinCollege's article found that between September 1, 2019 and January 15, 2020, Bitcoin price movements tended to be the most driven by US time.
Japan time was the least active. This is similar to forex.
In the article, it was defined as follows:
NY time: 00:00 to 8:00 (NYK時間)
Tokyo time: 8: 00-16: 00 (TKY時間)
London time: 16:00 to 00:00 (LDN時間)
This indicator colors the time zone according to its definition.
Reference: Consideration on the time zone and day of the week when the Bitcoin market is easy to move (September 2019-January 2020)
Original title: ビットコイン相場が動き易い時間帯と曜日についての考察(2019年9月〜2020年1月)
========================================================================
コインカレッジさんの記事で「米国時間が一番Bitcoin動くよね」という調査結果が出ていました。
なのですが、時間帯を色分けしてくれる丁度よいインジがなかったので作りました。
Break Point Record Table — GSK-VIZAG-AP-INDIA "Break Point Record Table — GSK-VIZAG-AP-INDIA" indicator captures key break points during each trading session and presents a clear, color-coded table overlay on the chart for quick visual reference. Specifically, it logs sessions' open price and monitors subsequent price action for notable breaks in the session high or low prices. Each break event is recorded with the time, price, and percentage change from the previous break, helping traders identify significant price movements within the session at a glance.
Key Features:
Records the session start time and opening price for context.
Tracks every intraday break above the previous session high or below the previous session low.
Calculates and displays the percentage change at each break event.
Highlights breaks with descriptive text including break time and values to aid trade decision-making.
Displays a table with columns for Time, Open, High, Low, and a Description of the event.
Uses color-coded cells to differentiate between session start, highs, lows, and break descriptions for better readability.
Maintains performance and readability by limiting the table to the latest 30 break events.
Usage & Benefits:
This indicator is ideal for intraday traders who want reliable visual cues to monitor momentum shifts and breakout/breakdown points during the trading day. By capturing these break points as discrete events and organizing the data into an easily accessible, visually intuitive table, it improves situational awareness and supports timely trading decisions.
Breakout asia USD/CHF1 — Customizable Parameters
sess1 & sess2: The two time ranges that define the Asian session (e.g., 20:00–23:59 and 00:00–08:00).
Important: format is HHMM-HHMM.
rr: The risk/reward ratio (default = 3.0, meaning TP = 3× risk size).
onePerSess: Toggle to allow only one trade per Asian session or multiple.
bufTicks: Extra margin for the SL beyond the signal candle.
2 — Detecting the Asian Session
The script checks if the candle’s time is inside the first range (sess1) or inside the second range (sess2).
While inside the Asian session, it updates the current high and low.
When the session ends, it locks in these levels as rangeHigh and rangeLow.
3 — Step 1: Detecting the Initial Breakout
Bullish breakout → close above rangeHigh → flag breakoutUp is set to true.
Bearish breakout → close below rangeLow → flag breakoutDown is set to true.
No trade yet — this is just the breakout signal.
4 — Step 2: Waiting for the Retest
If a bullish breakout occurred, wait for the price to return to or slightly below rangeHigh and then close back above it.
If a bearish breakout occurred, wait for the price to return to or slightly above rangeLow and then close back below it.
5 — Entry & Exit
When the retest is confirmed:
strategy.entry() is triggered.
SL = behind the retest confirmation candle (with optional bufTicks margin).
TP = entry price ± RR × risk size.
If onePerSess is enabled, no further trades happen until the next Asian session.
6 — Chart Display
Green line = locked Asian session high.
Red line = locked Asian session low.
Light blue background = active Asian session hours.
Trade entries are shown on the chart when retests occur.