NSDT Custom High and Low LinesFirst, the credit for the original script to plot a High and Low between a certain time goes to developer paaax.
I took that idea, converted it to Pinescript V5, cleaned up the code, and added a few more lines so you can plot different levels based on time of day.
Published open source like the original.
The example shown has:
Blue - plotting from the start of the Futures Asian session to the start of the Futures USA Session. (6:00PM - 9:30AM Eastern)
Yellow - plotting from the start of the Futures Europe session to the start of the Futures USA Session. (3:00AM - 9:30AM Eastern)
Green - plotting from the start of the Futures US Premarket session to the start of the Futures USA Session. (8:00AM - 9:30AM Eastern)
These are great levels to use for breakouts and/or support and resistance.
Combine these levels with the 5 min Open Range levels, as you have some good trades.
Each of the three sessions have individual start and end times that can be modified by the trader, so you can easily mark off important areas for your style of trading.
Pesquisar nos scripts por "session"
Hash Momentum Strategy# Hash Momentum Strategy
## 📊 Overview
The **Hash Momentum Strategy** is a professional-grade momentum trading system designed to capture strong directional price movements with precision timing and intelligent risk management. Unlike traditional EMA crossover strategies, this system uses momentum acceleration as its primary signal, resulting in earlier entries and better risk-to-reward ratios.
---
## ⚡ What Makes This Strategy Unique
### 1. Momentum-Based Entry System
Most strategies rely on lagging indicators like moving average crossovers. This strategy captures momentum *acceleration* - entering when price movement is gaining strength, not after the move has already happened.
### 2. Programmable Risk-to-Reward
Set your exact R:R ratio (1:2, 1:2.5, 1:3, etc.) and the strategy automatically calculates stop loss and take profit levels. No more guessing or manual calculations.
### 3. Smart Partial Profit Taking
Lock in profits at multiple stages:
- **First TP**: Take 50% off at 2R
- **Second TP**: Take 40% off at 2.5R
- **Final TP**: Let 10% ride to maximum target
This approach locks in gains while letting winners run.
### 4. Dynamic Momentum Threshold
Uses ATR (Average True Range) multiplied by your threshold setting to adapt to market volatility. Volatile markets = higher threshold. Quiet markets = lower threshold.
### 5. Trade Cooldown System
Prevents overtrading and revenge trading by enforcing a cooldown period between trades. Configurable from 1-24 bars.
### 6. Optional Session & Weekend Filters
Filter trades by Tokyo, London, and New York sessions. Optional weekend-off toggle to avoid low-liquidity periods.
---
## 🎯 How It Works
### Signal Generation
**STEP 1: Calculate Momentum**
- Momentum = Current Price - Price
- Check if Momentum > ATR × Threshold Multiplier
- Momentum must be accelerating (positive change in momentum)
**STEP 2: Confirm with EMA Trend Filter**
- Long: Price must be above EMA
- Short: Price must be below EMA
**STEP 3: Check Filters**
- Not in cooldown period
- Valid session (if enabled)
- Not weekend (if enabled)
**STEP 4: ENTRY SIGNAL TRIGGERED**
### Risk Management Example
**Example Long Trade:**
- Entry: $100
- Stop Loss: $97.80 (2.2% risk)
- Risk Amount: $2.20
**Take Profit Levels:**
- TP1: $104.40 (2R = $4.40) → Close 50%
- TP2: $105.50 (2.5R = $5.50) → Close 40%
- Final: $105.50 (2.5R) → Close remaining 10%
---
## ⚙️ Settings Guide
### Core Strategy
**Momentum Length** (Default: 13)
Number of bars for momentum calculation. Higher = stronger but fewer signals.
**Momentum Threshold** (Default: 2.25)
ATR multiplier. Higher = only trade biggest moves.
**Use EMA Trend Filter** (Default: ON)
Only long above EMA, short below EMA.
**EMA Length** (Default: 28)
Period for trend-confirming EMA.
### Filters
**Use Trading Session Filter** (Default: OFF)
Restrict trading to specific sessions.
**Tokyo Session** (Default: OFF)
Trade during Asian hours (00:00-09:00 JST).
**London Session** (Default: OFF)
Trade during European hours (08:00-17:00 GMT).
**New York Session** (Default: OFF)
Trade during US hours (08:00-17:00 EST).
**Weekend Off** (Default: OFF)
Disable trading on Saturdays and Sundays.
### Risk Management
**Stop Loss %** (Default: 2.2)
Fixed percentage stop loss from entry.
**Risk:Reward Ratio** (Default: 2.5)
Your target reward as multiple of risk.
**Use Partial Profit Taking** (Default: ON)
Take profits in stages.
**First TP R:R** (Default: 2.0)
First target as multiple of risk.
**First TP Size %** (Default: 50)
Percentage of position to close at TP1.
**Second TP R:R** (Default: 2.5)
Second target as multiple of risk.
**Second TP Size %** (Default: 40)
Percentage of position to close at TP2.
### Trade Management
**Use Trade Cooldown** (Default: ON)
Prevent overtrading.
**Cooldown Bars** (Default: 6)
Bars to wait after closing a trade.
---
## 🎨 Visual Elements
### Chart Indicators
🟢 **Green Dot** (below bar) = Long entry signal
🔴 **Red Dot** (above bar) = Short entry signal
🔵 **Blue X** (above bar) = Long position closed
🟠 **Orange X** (below bar) = Short position closed
**EMA Line** = Trend direction (green when bullish, red when bearish)
**White Line** = Entry price
**Red Line** = Stop loss level
**Green Lines** = Take profit levels (TP1, TP2, Final)
### Dashboard
When not in real-time mode, a dashboard displays:
- Current position (LONG/SHORT/FLAT)
- Entry price
- Stop loss price
- Take profit price
- R:R ratio
- Current momentum strength
- Total trades
- Win rate
- Net profit %
---
## 📈 Recommended Settings by Timeframe
### 1-Hour Timeframe (Default)
- Momentum Length: 13
- Momentum Threshold: 2.25
- EMA Length: 28
- Stop Loss: 2.2%
- R:R Ratio: 2.5
- Cooldown: 6 bars
### 4-Hour Timeframe
- Momentum Length: 24-36
- Momentum Threshold: 2.5
- EMA Length: 50
- Stop Loss: 3-4%
- R:R Ratio: 2.0-2.5
- Cooldown: 6-8 bars
### 15-Minute Timeframe
- Momentum Length: 8-10
- Momentum Threshold: 2.0
- EMA Length: 20
- Stop Loss: 1.5-2%
- R:R Ratio: 2.0
- Cooldown: 4-6 bars
---
## 🔧 Optimization Tips
### Want More Trades?
- Decrease Momentum Threshold (2.0 instead of 2.25)
- Decrease Momentum Length (10 instead of 13)
- Decrease Cooldown Bars (4 instead of 6)
### Want Higher Quality Trades?
- Increase Momentum Threshold (2.5-3.0)
- Increase Momentum Length (18-24)
- Increase Cooldown Bars (8-10)
### Want Lower Drawdown?
- Increase Cooldown Bars
- Use tighter stop loss
- Enable session filters (trade only high-liquidity sessions)
- Enable Weekend Off
### Want Higher Win Rate?
- Increase R:R Ratio (may reduce total profit)
- Increase Momentum Threshold (fewer but stronger signals)
- Use longer EMA for trend confirmation
---
## 📊 Performance Expectations
Based on typical backtesting results:
- **Win Rate**: 35-45%
- **Profit Factor**: 1.5-2.0
- **Risk:Reward**: 1:2.5 (configurable)
- **Max Drawdown**: 10-20%
- **Trades/Month**: 8-15 (1H timeframe)
**Note:** Win rate may appear low, but with 2.5:1 R:R, you only need ~29% win rate to break even. The strategy aims for quality over quantity.
---
## 🎓 Strategy Logic Explained
### Why Momentum > EMA Crossover?
**EMA Crossover Problems:**
- Signals lag behind price
- Late entries = poor R:R
- Many false signals in ranging markets
**Momentum Advantages:**
- Catches moves as they start accelerating
- Earlier entries = better R:R
- Adapts to volatility via ATR
### Why Partial Profit Taking?
**Without Partial TPs:**
- All-or-nothing approach
- Winners often turn to losers
- High stress watching open positions
**With Partial TPs:**
- Lock in 50% at first target
- Reduce risk to breakeven
- Let remainder ride for bigger gains
- Lower psychological pressure
### Why Trade Cooldown?
**Without Cooldown:**
- Revenge trading after losses
- Overtrading in choppy markets
- Emotional decision-making
**With Cooldown:**
- Forces discipline
- Waits for new setup to develop
- Reduces transaction costs
- Better signal quality
---
## ⚠️ Important Notes
1. **This is a momentum strategy, not an EMA strategy**
The EMA only confirms trend direction. Momentum generates the actual signals.
2. **Backtest thoroughly before live trading**
Past performance ≠ future results. Test on your specific asset and timeframe.
3. **Use proper position sizing**
Risk 1-2% of account per trade maximum. The strategy uses 100% equity by default (adjust in Properties).
4. **Dashboard auto-hides in real-time**
Clean chart for live trading. Visible during backtesting.
5. **Customize for your trading style**
All settings are fully adjustable. No single "best" configuration.
---
## 🚀 Quick Start Guide
1. **Add to Chart**: Apply to your preferred asset and timeframe
2. **Keep Defaults**: Start with default settings
3. **Backtest**: Review historical performance
4. **Paper Trade**: Test with simulated money first
5. **Go Live**: Start small and scale up
---
## 💡 Pro Tips
**Tip 1: Combine Timeframes**
Use higher timeframe (4H) for trend direction, lower timeframe (1H) for entries.
**Tip 2: Avoid News Events**
Major news can cause whipsaws. Consider manual intervention during high-impact events.
**Tip 3: Monitor Momentum Strength**
Dashboard shows momentum in sigma (σ). Values >1.0σ indicate very strong momentum.
**Tip 4: Adjust for Volatility**
In high-volatility markets, increase threshold and stop loss. In quiet markets, decrease them.
**Tip 5: Review Losing Trades**
Check if losses are hitting stop loss or reversing. Adjust stop accordingly.
---
## 📝 Changelog
**v1.0** - Initial Release
- Momentum-based signal generation
- EMA trend filter
- Programmable R:R ratio
- Partial profit taking (3 stages)
- Trade cooldown system
- Session filters (Tokyo/London/New York)
- Weekend off toggle
- Smart dashboard (auto-hides in real-time)
- Clean visual design
---
## 🙏 Credits
Developed by **Hash Capital Research**
If you find this strategy useful, please give it a like and share with others!
---
## ⚖️ Disclaimer
This strategy is for educational purposes only. Trading involves substantial risk of loss and is not suitable for all investors. Past performance is not indicative of future results. Always do your own research and consult with a qualified financial advisor before trading.
---
## 📬 Feedback
Have suggestions or found a bug? Leave a comment below! I'm continuously improving this strategy based on community feedback.
---
**Happy Trading! 🚀📈**
H1 Z-score + DevVWAP (swing filters)H1 Z-Score + DevVWAP (Swing Filters) — TradingView Indicator
Purpose
A lightweight filter to confirm or fade swing setups (1–5 days) using intermarket context. It measures how unusual the last 1-hour move is (Z-score) and how far price is from session VWAP (DevVWAP). Designed for risk-off proxies (DXY, ZN, VIX/VX) but works on any symbol.
What it shows
H1 Z-Score line
𝑍
=
1h return
𝜎
1h, rolling
Z=
σ
1h, rolling
1h return
using H1 data pulled via request.security.
Guide levels: ±1 (strong), ±1.5 (very strong), ±2 (extreme).
DevVWAP line (optional)
DevVWAP
=
Close
−
VWAP
VWAP
DevVWAP=
VWAP
Close−VWAP
from the current session.
Text panel / status (optional)
Human-readable hint: “PRO long equity”, “CONTRO long equity”, or “Mixed”, depending on Z and the asset’s role.
Inputs
Sessions lookback (default 20): how many sessions to estimate the 1h volatility baseline.
Hours per session (default 23): adjust for Globex vs cash hours.
Show DevVWAP (on/off).
Asset role = Risk-OFF? (true for DXY/ZN/VIX; false for equity indices/ETFs or risk-on FX/crypto).
How to read it (equity swing context)
For Risk-OFF assets (DXY, ZN, VIX/VX):
Z ≤ −1 (down move stronger than usual) and/or DevVWAP < 0 → PRO long equity (risk-on confirmation).
Z ≥ +1 and/or DevVWAP > 0 → CONTRO long equity (risk-off pressure).
For Risk-ON assets (set “Risk-OFF?” = false), invert the logic.
Typical use with a swing setup (Break & Retest):
If your setup is valid, add +10–15% confidence when ≥2 filters align (e.g., DXY Z ≤ −1 and below VWAP).
If signals are mixed, halve size (Reduce).
If ≥2 filters oppose, skip new entries (OFF).
Why it helps
Standardizes “strong vs normal”: Z-score compares the current 1h impulse to its own 20-session history.
Anchors to fair value: DevVWAP tells you if the filter asset is trading above/below its session value.
Portable: same logic across ES/FDAX/NQ/FESX (just apply the indicator to the filter symbols).
Practical tips
Symbols: prefer futures or liquid proxies (DX or 6E for DXY, ZN for UST 10y, VX for VIX future) so VWAP is meaningful.
Timeframe setting: the script fetches H1 internally; you can run it on any chart TF.
Labels vs timeframe: If you enable on-chart labels, do not pass a timeframe argument in indicator() (Pine forbids side effects with fixed TF).
Smoothing: keep 20 sessions; shorten only if regime shifts make the baseline stale.
Don’t trade it alone: it’s a filter for your swing setup (bias from D1/H4, trigger on H1/M15).
Typical workflow (1 minute)
Open a chart of the filter asset (e.g., DXY future).
Check Z relative to ±1/±1.5 and DevVWAP sign.
Repeat for ZN and VIX/VX.
If ≥2 agree with your trade direction → ON / size full; if mixed → Reduce; if opposed → OFF.
Limitations
Z-score assumes the recent 1h return distribution is a useful baseline; during extreme news this can break.
DevVWAP is session-dependent; ensure your session settings match the instrument’s trading hours.
No entry/exit rules by itself; it’s a context tool to modulate probability and size.
KeyLevel - AOCKeyLevel - AOC
✨ Features📈 Session Levels: Tracks high, low, and open prices for Asian, London, and New York sessions.📅 Multi-Timeframe Levels: Plots previous day, week, month, quarter, and yearly open/high/low levels.⚙️ Preset Modes: Choose Scalp, Intraday, or Swing presets for tailored level displays.🎨 Customizable Visuals: Adjust colors, line styles, and label abbreviations for clarity.🖼️ Legend Table: Displays a color-coded legend for quick reference to session and period levels.🔧 Flexible Settings: Enable/disable specific sessions or levels and customize UTC offsets.
🛠️ How to Use
Add to Chart: Apply the "KeyLevel - AOC" indicator on TradingView.
Configure Inputs:
Preset: Select Scalp, Intraday, or Swing, or use custom settings.
Session Levels: Toggle Asian, London, NY sessions and their open/high/low lines.
Period Levels: Enable/disable previous day, week, month, quarter, or yearly levels.
Visuals: Adjust colors, line widths, and label abbreviations.
Legend: Show/hide the legend table for level identification.
Analyze: Monitor key levels for support/resistance and session-based price action.
Track Trends: Use levels to identify breakouts, reversals, or consolidation zones.
🎯 Why Use It?
Dynamic Levels: Tracks critical price levels across multiple timeframes for comprehensive analysis.
Session Focus: Highlights key session price points for intraday trading strategies.
Customizable: Tailor displayed levels and visuals to match your trading style.
User-Friendly: Clear lines, labels, and legend table simplify price level tracking.
📝 Notes
Ensure timeframe compatibility (e.g., avoid daily charts for session levels).
Use M5 or higher timeframes for accurate session tracking; some levels disabled on M5.
Combine with indicators like RSI or MACD for enhanced trading signals.
Adjust UTC offset if session times misalign with your broker’s timezone.
Trading Macro Windows by BW v2
Trading Macros by BW: Integrating ICT Concepts for Session Analysis
This indicator combines two key Inner Circle Trader (ICT) concepts—Change in State of Delivery (CISD) or Inverted Fair Value Gap (IFVG) signals with Macro Time Windows—to provide a unified tool for analyzing intraday price action, particularly during Pacific Time (PT) sessions. Rather than simply merging existing scripts, this integration creates a cohesive visual framework that highlights how macro consolidation periods interact with potential reversal or continuation signals like CISD or IFVG. By overlaying macro candle styling and borders on the chart alongside selectable signal lines, traders can better contextualize setups within ICT's macro narrative, where price often manipulates liquidity during these windows before displacing toward higher-timeframe objectives.
Core Components and How They Work Together:
Macro Time Windows (Inspired by ICT's Macro Periods):
ICT emphasizes "macro" as 30-minute windows (e.g., 06:45–07:15 PT, 07:45–08:15 PT, up to 11:45–12:15 PT) where price tends to consolidate, sweep liquidity, or form key structures like Fair Value Gaps (FVGs). These periods set the stage for the session's directional bias.
The indicator styles candles within these windows using a user-defined color for wicks, borders, and bodies (translucent for visibility). This visual emphasis helps traders focus on activity inside macros, where reversals or continuations often originate.
Borders are drawn as vertical lines at the start and end of each window (with a +5 minute buffer to capture related activity), using a dotted style by default. This creates a "study zone" that encapsulates macro events, allowing traders to assess if price is respecting or violating these zones in alignment with broader ICT models like the Power of 3 (AMD cycle).
Toggle: "Macro Candles Enabled" (default: true) – Turn off to disable styling and borders if focusing solely on signals.
CISD or IFVG Signals (Selectable Mode):
Mode Selection: Choose between "Change in the State of Delivery" (CISD) or "IFVG" (default: IFVG). Both detect shifts in market delivery during specific 30-minute slices (15–45 or 17–45 minutes past the hour in PT sessions).
CISD Mode: Based on ICT's definition of a sudden directional shift, this identifies aggressive displacements after sweeping recent highs/lows. It uses a rolling reference high/low over 6 bars, checks for sweeps (penetrating by at least 2 ticks in the last 2-3 bars), reclamation (closing beyond the reference with at least 50% body), and displacement (50% of prior range or an immediate FVG of 6+ ticks). Signals plot a horizontal line from the close, extending 24 bars right, labeled "CISD."
IFVG Mode: Focuses on Inverted Fair Value Gaps, where a bullish FVG (low > high by 13+ ticks) forms but is inverted (closed below) in the same slice, signaling bearish intent (or vice versa). This targets violations against opposing liquidity, often leading to raids on external ranges. Signals plot similarly, labeled "IFVG."
Shared Logic: Both modes enforce a 55-bar cooldown to prevent clustering, operate only during PT sessions (06:30–13:00), and use tick-based thresholds for precision across instruments. The integration with macros allows traders to see if signals occur within or at the edges of macro windows, enhancing confirmation—for example, a CISD inside a macro might indicate a manipulated reversal toward the session's true objective.
Toggle: "Signals Enabled" (default: true) – Turn off to hide all signal lines and labels, isolating the macro visualization.
How Components Interact:
Macro windows provide the "narrative context" (consolidation/manipulation), while CISD/IFVG signals detect the "delivery shift" (displacement). Together, they form a mashup that justifies publication: isolated signals can be noisy, but when filtered by macro periods, they align with ICT's session model. For instance, an IFVG inversion during a macro might confirm a liquidity sweep before targeting PD arrays or order blocks.
No external dependencies; all calculations are self-contained using Pine's built-in functions like ta.highest/lowest for references and time-based sessions for windows.
Usage Guidelines:
Apply to intraday charts (e.g., 1-5 min) or stocks during PT hours.
Look for confluence: A bull IFVG signal post-macro low sweep might target the next macro high or daily bias.
Customize colors/styles for signals (solid/dashed/dotted lines) and macros to suit your chart.
Backtest in replay mode to observe how macros frame signals—e.g., price often respects macro borders as S/R.
Limitations: Timezone-fixed to PT (America/Los_Angeles); signals are directional hints, not trade entries. Combine with ICT tools like order blocks or liquidity pools for full setups.
This script draws from community ICT implementations but refines them into a single, purpose-built tool for macro-driven trading, reducing chart clutter while emphasizing interconnected concepts. Feedback welcome!
Gold Killzone Bias Suite🟡 Gold Killzone Bias Suite
The Gold Killzone Bias Suite is an advanced institutional-grade tool designed to generate high-confidence directional bias for XAU/USD (Gold) during the London and New York killzones.
Built for traders using a structured, confluence-driven approach, this tool blends price action, smart money principles, momentum, and volume into a real-time bias engine with a clean, easy-to-read dashboard.
🔧 Key Features
🕰️ Session-Based Bias (London / New York)
Independent bias calculation per session
Killzone times customizable with timezone support
Background highlighting (blue/red) for each session
📊 VWAP Engine
Reclaim & rejection detection
VWAP deviation alerts
Daily HTF VWAP integration
Score impact based on VWAP behaviour
📉 Market Structure (CHoCH / BOS)
Detects swing highs/lows
Labels bullish/bearish CHoCHs
Structure score contributes to session bias
💧 Liquidity Grabs
Detects stop hunts above highs / below lows
Confirms with candle rejection (body % filter)
Plots labels and adds to bias scoring
⚡ Momentum Filters
RSI: Bullish >55, Bearish <45
MACD: Histogram + Signal Line crossovers
Combined momentum score used in bias
🧠 Smart Money Proximity
Optional FVG/OB score toggle (placeholder for custom logic)
Adds static confluence for proximity-based setups
⏫ Higher Time Frame Context
Daily VWAP comparison
4H high/low structure breaks
Adds trend score to current session bias
🧠 How Bias Works
The suite uses a scoring model. Each confluence adds or subtracts points:
VWAP reclaim/reject: ±30
CHoCH/BOS: ±30
Liquidity grab: ±20
RSI/MACD: ±10
FVG/OB Proximity: +10
Daily VWAP trend: ±10
H4 Trend Break: ±10
Final Bias:
Bullish if score ≥ +20
Bearish if score ≤ -20
Neutral if between -19 and +19
A confidence % (capped at 100) is also shown, along with the contributing confluences (VWAP, Structure, Liquidity, etc.).
📋 Dashboard
A real-time dashboard shows for each session:
Session name and time
Bias (Bullish / Bearish / Neutral)
Confidence (%)
Confluences used
Position can be moved (Top Left, Top Right, etc.). Designed to be unobtrusive yet informative.
🧪 Best Practices
Use on 15m / 5m charts for intraday setups
Confirm with D1 or H4 structure for directional context
Combine with OB/FVG zones or SMT for entries
Use Trading View alerts for bias flips or liquidity grabs (custom logic can be added)
Bar Replay compatible for back testing and journaling bias shifts
🔐 Notes
Does not generate trade signals or alerts by default
Focused on bias generation and confluence stacking
Compatible with funded account trading models
📈 Built for traders who want a systematic, score-based approach to identifying directional edge in high-volume gold sessions.
Midnight 30min High/LowMidnight 30min High/Low — Overnight Liquidity Range Tracker
Capture the Overnight Session: A Strategic Level Identification Tool from Professional Trading Methodology
This indicator captures the high and low prices during the critical 30-minute midnight session (12:00-12:30 AM EST) and projects these levels forward as key support and resistance zones. These overnight ranges often contain significant liquidity and serve as crucial reference points for intraday price action, representing areas where institutional activity may have established important levels.
🔍 What This Script Does:
Identifies Critical Overnight Session Levels
- Automatically detects the 12:00-12:30 AM EST session window
- Captures the highest and lowest prices during this 30-minute period
- Projects these levels forward for multiple trading days
Creates Dynamic Support/Resistance Zones
- Extends midnight high/low levels as horizontal lines with customizable projection periods
- Fills the area between high and low to create a visual trading range
- Updates automatically each trading day with new overnight levels
Provides Clear Visual Reference Points
- Optional session start markers (●) highlight when the midnight session begins
- Color-coded lines distinguish between high and low levels
- Transparent fill area creates an easy-to-identify trading zone
Real-Time Level Tracking
- Updates levels in real-time during the active midnight session
- Maintains historical levels for reference and backtesting
- Compatible with data window for precise level values
⚙️ Customization Options:
Extend Days (1-30):** Control how many days forward the levels are projected (default: 5 days)
High Line Color:** Customize the midnight high line color (default: blue)
Low Line Color:** Customize the midnight low line color (default: orange)
Fill Color:** Adjust the transparency and color of the range area (default: light aqua, 80% transparency)
Show Session Markers:** Toggle yellow session start indicators on/off (default: enabled)
💡 How to Use:
Deploy on lower timeframes (1m-15m) for precise level identification and reaction monitoring**
Watch for key price interactions:
- Rejection at midnight high levels (potential resistance)
- Bounce from midnight low levels (potential support)
- Range-bound trading between the high and low levels
Combine with liquidity concepts:
- Monitor for stop hunts above/below these levels
- Look for false breakouts that snap back into the range
- Use as confluence with other ICT concepts like FVGs and Order Blocks
Strategic Applications:
- Range trading between midnight levels
- Breakout confirmation when price closes decisively outside the range
- Support/resistance validation for entry and exit planning
🔗 Combine With These Tools for Complete Market Structure Analysis:
✅ First FVG — Opening Range Fair Value Gap Detector.
✅ ICT Turtle Soup (Liquidity Reversal)— Spot stop hunts and false breakout scenarios
✅ ICT Macro Zones (Grey Box Version)- It tracks real-time highs and lows for each Silver Bullet session
✅ ICT SMC Liquidity Grabs and OBs- Liquidity Grabs, Order Block Zones, and Fibonacci OTE Levels, allowing traders to identify institutional entry models with clean, rule-based visual signals.
Together, these tools create a comprehensive Smart Money Concepts (SMC) framework — helping traders identify, anticipate, and capitalize on institutional-level price movements with precision and confidence during critical overnight sessions.
TrendMaster Pro 2.3 with Alerts
Hello friends,
A member of the community approached me and asked me how to write an indicator that would achieve a particular set of goals involving comprehensive trend analysis, risk management, and session-based trading controls. Here is one example method of how to create such a system:
Core Strategy Components
Multi-Moving Average System - Uses configurable MA types (EMA, SMA, SMMA) with short-term (9) and long-term (21) periods for primary signal generation through crossovers
Higher Timeframe Trend Filter - Optional trend confirmation using a separate MA (default 50-period) to ensure trades align with broader market direction
Band Power Indicator - Dynamic high/low bands calculated using different MA types to identify price channels and volatility zones
Advanced Signal Filtering
Bollinger Bands Volatility Filter - Prevents trading during low-volatility ranging markets by requiring sufficient band width
RSI Momentum Filter - Uses customizable thresholds (55 for longs, 45 for shorts) to confirm momentum direction
MACD Trend Confirmation - Ensures MACD line position relative to signal line aligns with trade direction
Stochastic Oscillator - Adds momentum confirmation with overbought/oversold levels
ADX Strength Filter - Only allows trades when trend strength exceeds 25 threshold
Session-Based Trading Management
Four Trading Sessions - Asia (18:00-00:00), London (00:00-08:00), NY AM (08:00-13:00), NY PM (13:00-18:00)
Individual Session Limits - Separate maximum trade counts for each session (default 5 per session)
Automatic Session Closure - All positions close at specified market close time
Risk Management Features
Multiple Stop Loss Options - Percentage-based, MA cross, or band-based SL methods
Risk/Reward Ratio - Configurable TP levels based on SL distance (default 1:2)
Auto-Risk Calculation - Dynamic position sizing based on dollar risk limits ($150-$250 range)
Daily Limits - Stop trading after reaching specified TP or SL counts per day
Support & Resistance System
Multiple Pivot Types - Traditional, Fibonacci, Woodie, Classic, DM, and Camarilla calculations
Flexible Timeframes - Auto-adjusting or manual timeframe selection for S/R levels
Historical Levels - Configurable number of past S/R levels to display
Visual Customization - Individual color and display settings for each S/R level
Additional Features
Alert System - Customizable buy/sell alert messages with once-per-bar frequency
Visual Trade Management - Color-coded entry, SL, and TP levels with fill areas
Session Highlighting - Optional background colors for different trading sessions
Comprehensive Filtering - All signals must pass through multiple confirmation layers before execution
This approach demonstrates how to build a professional-grade trading system that combines multiple technical analysis methods with robust risk management and session-based controls, suitable for algorithmic trading across different market sessions.
Good luck and stay safe!
ORB-HL1. Opening Range Detection
Automatically calculates the high and low of the first 15 minutes after the selected session opens.
Supported sessions:
New York (Futures): 08:30–08:45 EST
New York (Equities): 09:30–09:45 EST
London: 03:00–03:15 GMT
Asia: 19:00–19:15 JST
Plots ORB high/low lines for the rest of the day.
2. Breakout Signals
Highlights the first valid breakout above or below the ORB range on the:
5-minute timeframe
15-minute timeframe
Green arrows = breakout up (long)
Red arrows = breakout down (short)
3. 1-Minute Projection
When a breakout is confirmed on a higher timeframe (5m or 15m), a projection label (e.g., "5m", "15m") appears on the 1-minute chart.
Purple label = 5m breakout
Teal label = 15m breakout
Helps you confirm momentum in real time while on the 1-minute chart.
4. Trailing Stop System
Uses ATR to create an adaptive trailing stop after breakout.
Turns green when price is above stop (bullish), red when below (bearish).
Optional Buy / Sell signal labels appear on crossover events.
5. Session High/Low Visualization
Tracks and displays the previous session’s High and Low for:
Tokyo
London
New York
Lines extend into the current session to act as S/R reference.
Labels like "NY High", "Asia Low" are placed at the end of each line.
6. Alerts
Built-in alerts for:
First 5m or 15m breakout (long/short)
Trailing stop Buy/Sell crossover
7. Customization Options
Turn session H/L lines on/off per session
Customize projection visibility
Adjust ATR period and sensitivity
Set how far each session line extends using bar offsets
Price Alert Indicator with TableIndicator Description: Price Alert Indicator with Table
The Custom Price Alert Indicator with Table is a TradingView script designed to help traders monitor and react to significant price levels during the Asian and London trading sessions. This indicator provides visual alerts and displays relevant session data in a user-friendly table format.
Key Features:
User-Defined Session Times:
Users can specify the start and end hours for both the Asian (default: 8 AM to 2 PM) and London (default: 2 PM to 8 PM) trading sessions in their local time zone.
This flexibility allows traders from different regions to customize the indicator according to their trading hours.
Real-Time Highs and Lows:
The indicator calculates and tracks the high and low prices for the Asian and London sessions in real-time.
It continuously updates these values as new price data comes in.
Touch Notification Logic:
Alerts are triggered when the price touches the session high or low points.
Notifications are designed to avoid repetition; if the London session touches the Asian high or low, subsequent touches are not alerted until the next trading day.
Interactive Table Display:
A table is presented in the bottom right corner of the chart, showing:
The Asian low and high prices
The London low and high prices
Whether each price level has been touched.
Touched levels are visually highlighted in green, making it easy for traders to identify relevant price actions.
Daily Reset of Notifications:
The notification statuses are reset at the end of the London session each day, preparing for the next day’s trading activity.
Use Cases:
Traders can utilize this indicator to stay informed about pivotal price levels during important trading sessions, aiding in decision-making and strategy development.
The clear visual representation of price levels and touch statuses helps traders quickly assess market conditions.
This indicator is particularly beneficial for day traders and those who focus on price movements around key high and low points during the trading day.
Dynamic Time Zone EMA with Candle Trend AnalysisCandleTrend TZ is a powerful analytical tool that integrates time zones, exponential moving averages (EMA), and custom candle coloring based on trend direction. This indicator is ideal for traders looking to analyze market trends within specific time sessions effectively.
Key Features:
Time Zones:
Divides the chart into four distinct time intervals, each highlighted with a unique background color.
Fully customizable start and end times for each interval, allowing for adaptation to various trading schedules.
Exponential Moving Averages (EMA):
Displays three EMAs with user-defined lengths:
EMA 200 (blue) for long-term trends.
EMA 50 (green) for medium-term trends.
EMA 20 (red) for short-term trends.
Helps identify trend direction and strength.
Custom Candle Coloring:
Utilizes smoothed Heiken Ashi and Triple EMA (TEMA) calculations for enhanced candle coloring:
Green candles indicate an upward trend.
Red candles signal a downward trend.
Filters out market noise, providing a clear visual representation of market dynamics.
Customization Options:
Time Zones:
Adjustable start and end times for each of the four sessions:
Input hour and minute for start and end times (e.g., Interval 1 Start/End Hour/Minute).
Background colors are pre-defined but can be modified in the code.
EMAs:
User-defined lengths for each EMA:
EMA 200 Length (default: 200)
EMA 50 Length (default: 50)
EMA 20 Length (default: 20)
TEMA Settings:
Parameters for trend smoothing:
TEMA Length (default: 55)
EMA Length (default: 60)
Use Cases:
Intraday Session Analysis:
Use time zones to differentiate between morning, afternoon, and evening market activity.
The background colors make it easy to track session-specific trends.
Trend Trading:
Analyze EMA crossings and their slopes to confirm market direction.
Green candles indicate buying opportunities, while red candles highlight selling signals.
Noise Reduction:
TEMA smoothing removes market noise, allowing you to focus on the primary market trend.
Adaptation to Custom Strategies:
By adjusting time intervals, you can tailor the indicator to specific trading styles or market conditions.
Benefits:
Versatility for both trending and sideways markets.
Intuitive and user-friendly setup.
Suitable for traders of all skill levels, from beginners to professionals.
CandleTrend TZ is an indispensable tool for understanding market dynamics, enhancing your trading precision, and making well-informed decisions. 🚀
Daily Asian RangeDaily Asian Range Indicator
This indicator is an enhanced version inspired by @toodegrees' "ICT Friday's Asian Range" indicator. While maintaining the core concepts, this version expands functionality for daily analysis and adds comprehensive customization options.
### Overview
The Asian Range indicator identifies and visualizes potential liquidity areas based on price action during the Asian session (8:00 PM - 12:00 AM ET). It plots both body and wick ranges along with multiple standard deviation levels that can serve as potential price targets or areas of interest.
### Features
- Flexible Display Options
- Choose between Body, Wick, or Both for range boxes and deviation lines
- Customizable colors, styles, and borders for all visual elements
- Historical sessions display (0-20 previous sessions)
- Advanced Standard Deviation Levels
- Multiple deviation multipliers (1.0, 1.5, 2.0, 2.3, 3.5)
- Separate visualization for body and wick-based deviations
- Clear labeling system for easy identification
- Precise Time Management
- Asian session: 8:00 PM - 12:00 AM ET
- Deviation lines extend through the following trading day
- Proper timezone handling for accuracy
### Usage
- Works on timeframes from 1 to 15 minutes
- Use the range boxes to identify key price levels from the Asian session
- Standard deviation levels can serve as potential targets or areas of interest
- Combine with other indicators for enhanced analysis
### Credits
Original concept and base implementation by @toodegrees
Enhanced and expanded by @Omarqqq
### Disclaimer
This indicator is for educational and informational purposes only. Always conduct your own analysis and use proper risk management.
ADX Breakout Strategy█ OVERVIEW
The ADX Breakout strategy leverages the Average Directional Index (ADX) to identify and execute breakout trades within specified trading sessions. Designed for the NQ and ES 30-minute charts, this strategy aims to capture significant price movements while managing risk through predefined stop losses and trade limits.
This strategy was taken from a strategy that was posted on YouTube. I would link the video, but I believe is is "against house rules".
█ CONCEPTS
The strategy is built upon the following key concepts:
ADX Indicator: Utilizes the ADX to gauge the strength of a trend. Trades are initiated when the ADX value is below a certain threshold, indicating potential for trend development.
Trade Session Management: Limits trading to specific hours to align with optimal market activity periods.
Risk Management: Implements a fixed dollar stop loss and restricts the number of trades per session to control exposure.
█ FEATURES
Customizable Stop Loss: Set your preferred stop loss amount to manage risk effectively.
Trade Session Configuration: Define the trading hours to focus on the most active market periods.
Entry Conditions: Enter long positions when the price breaks above the highest close in the lookback window and the ADX indicates potential trend strength.
Trade Limits: Restrict the number of trades per session to maintain disciplined trading.
Automated Exit: Automatically closes all positions at the end of the trading session to avoid overnight risk.
█ HOW TO USE
Configure Inputs :
Stop Loss ($): Set the maximum loss per trade.
Trade Session: Define the active trading hours.
Highest Lookback Window: Specify the number of bars to consider for the highest close.
Apply the Strategy :
Add the ADX Breakout strategy to your chart on TradingView.
Ensure you are using a 30-minute timeframe for optimal performance.
█ LIMITATIONS
Market Conditions: The strategy is optimized for trending markets and may underperform in sideways or highly volatile conditions.
Timeframe Specific: Designed specifically for 30-minute charts; performance may vary on different timeframes.
Single Asset Focus: Primarily tested on NQ and ES instruments; effectiveness on other symbols is not guaranteed.
█ DISCLAIMER
This ADX Breakout strategy is provided for educational and informational purposes only. It is not financial advice and should not be construed as such. Trading involves significant risk, and you may incur substantial losses. Always perform your own analysis and consider your financial situation before using this or any other trading strategy. The source material for this strategy is publicly available in the comments at the beginning of the code script. This strategy has been published openly for anyone to review and verify its methodology and performance.
VIX Cheat SheetHello!
This indicator - "VIX Cheat Sheet" - performs several calculations for $VIX against the asset on your chart. However, using $VIX as a risk proxy or volatility metric often fails beyond large-cap U.S equities. To remedy this, the VixFix indicator is included in the script; you can select whether the script performs calculations for an asset against $VIX or against VixFix (i.e. Forex, Crypto)
Measured are: $VIX correlation to an asset's price fluctuations, the average close-to-close gain/loss subsequent a $VIX/VixFix close above the upper Bollinger Band, the average 5-session gain/loss following the same occurrence in addition to the average 10-session gain/loss, all close-to-close, 5 session, and 10-session gains/losses are stored as tooltips for labels on the chart. The current close-to-close percentage gain/loss for $VIX and VixFix are displayed on the chart.
Displayed in the example image is a box incorporating $VIX price data alongside an upper Bollinger Band and lower Bollinger Band. The data isn't cast to its own price scale but is helpful for quick interpretation of $VIX fluctuations. You can select to plot VixFix data in the box in the user inputs table.
Displayed in the second example image is a semi-transparent blue box encompassing all price moves that occurred when $VIX measured above $40 for at least ten consecutive sessions. The largest percentage close-to-close loss is displayed below the box.
Also illustrated is a red label that appears when $VIX or VixFix closes above the upper Bollinger Band. The indicator will calculate and display the performance of the asset for the subsequent 10 sessions, to which the red label will disappear and all data stored as a tooltip in the blue labels stating "VIX Closed Above Upper Band" or "VixFix Closed Above Upper Band".
To reduce chart clutter, a label and line combination marking all $VIX closes above the upper Bollinger Band was not included. Instead, bar color changes were added. When "$VIX" is selected in the user inputs table the indicator will mark all sessions in which $VIX closed above the upper band as blue, in addition to plotting $VIX price data in the dynamic black box. When "VixFix" is selected, the indicator will mark all sessions where VixFix closed above the upper band as purple; the VixFix indicator will be plotted in the black box.
Be sure to hover over labels to access tooltip information; try the indicator with bar replay!
ILM & IFVG StrategyPlease feel free to adjust in any way possible. Let me know if you can create something better from this initial coding.
//═══════════════════════════════════════════════════════════════════════
// Inverted Liquidity Model (ILM) – Strategy
//═══════════════════════════════════════════════════════════════════════
//
// The **Inverted Liquidity Model (ILM)** is a liquidity-based algorithm
// built to capture high-probability reversals after:
//
// • A liquidity sweep (SSL/BSL taken)
// • Rejection back inside the range
// • A Fair Value Gap (FVG) forms
// • That FVG becomes invalidated → becomes an IFVG entry zone
//
// ILM combines:
// • LTF BOS / CHOCH structure confirmation
// • HTF structure (expansion) filtering
// • Premium / Discount filter (17:00 CST session midline)
// • Optional ATR volatility filter
// • Optional trading session restrictions
// • Optional partial profit-taking + runners
//
// When all conditions align, the strategy enters:
// ✔ Long after sweep of SSL + valid long IFVG + trend confirmation
// ✔ Short after sweep of BSL + valid short IFVG + trend confirmation
//
// Stops are placed at the sweep wick.
// Full target is set at the next structural high/low.
// Optional partial TP sends a runner to full target.
//
// Visual tools (labels, sweep lines, IFVG boxes, midline) assist
// with review and forward testing.
//
//───────────────────────────────────────────────────────────────────────
// USER CONFIGURABLE FEATURES
//───────────────────────────────────────────────────────────────────────
//
// • **Liquidity & Structure**
// - pivotLen → swing length for pivots / liquidity
// - htfOn → toggle higher-timeframe pivots
// - htfTF → timeframe for HTF structure/liquidity
// - useStructureFilter → enforce LTF BOS/CHOCH trend
// - useHtfExpansionFilter → enforce HTF trend
// - showStructureLabels → show BOS/CHOCH labels
// - showHtfStructureLabels → show HTF BOS/CHOCH labels
//
// • **Premium / Discount Midline**
// - usePremiumDiscountFilter → only long in discount / short in premium
// - pdSession → session used for midline (default 17:00 CST)
// - showPdMidLine → show 50% midline
//
// • **FVG / IFVG Detection**
// - useBodyGapFVG → FVG uses candle bodies instead of wicks
// - useDisplacementFVG → require displacement bar
// - dispAtrMult → minimum ATR threshold for displacement
// - showIFVG → draw IFVG boxes
//
// • **ATR / Volatility / Sessions**
// - useRangeFilter → require minimum ATR%
// - atrLen → ATR period
// - minAtrPerc → minimum ATR% of price
// - useSessionFilter → restrict trading hours
// - sessionTimes → allowed trading session
//
// • **Sweep Visualization**
// - showSweepLines → draw sweep lines at SSL/BSL sweeps
// - sweepLineWidth → thickness of sweep lines
//
// • **Exits: Partial Targets & Runners**
// - usePartialTargets → enable partial TP logic
// - tp1QtyPercent → percent closed at TP1
// - tp1FractionOfPath → TP1 relative to path to full target
//
// • **Formatting / Visibility**
// - labelFontSizeInput → tiny / small / normal / large / huge
// - showEntries → entry markers
// - showTargets → target lines
//
//═══════════════════════════════════════════════════════════════════════
// END OF STRATEGY DESCRIPTION
//═══════════════════════════════════════════════════════════════════════
LibTmFrLibrary "LibTmFr"
This is a utility library for handling timeframes and
multi-timeframe (MTF) analysis in Pine Script. It provides a
collection of functions designed to handle common tasks related
to period detection, session alignment, timeframe construction,
and time calculations, forming a foundation for
MTF indicators.
Key Capabilities:
1. **MTF Period Engine:** The library includes functions for
managing higher-timeframe (HTF) periods.
- **Period Detection (`isNewPeriod`):** Detects the first bar
of a given timeframe. It includes custom logic to handle
multi-month and multi-year intervals where
`timeframe.change()` may not be sufficient.
- **Bar Counting (`sinceNewPeriod`):** Counts the number of
bars that have passed in the current HTF period or
returns the final count for a completed historical period.
2. **Automatic Timeframe Selection:** Offers functions for building
a top-down analysis framework:
- **Automatic HTF (`autoHTF`):** Suggests a higher timeframe
(HTF) for broader context based on the current timeframe.
- **Automatic LTF (`autoLTF`):** Suggests an appropriate lower
timeframe (LTF) for granular intra-bar analysis.
3. **Timeframe Manipulation and Comparison:** Includes tools for
working with timeframe strings:
- **Build & Split (`buildTF`, `splitTF`):** Functions to
programmatically construct valid Pine Script timeframe
strings (e.g., "4H") and parse them back into their
numeric and unit components.
- **Comparison (`isHigherTF`, `isActiveTF`, `isLowerTF`):**
A set of functions to check if a given timeframe is
higher, lower, or the same as the script's active timeframe.
- **Multiple Validation (`isMultipleTF`):** Checks if a
higher timeframe is a practical multiple of the current
timeframe. This is based on the assumption that checking
if recent, completed HTF periods contained more than one
bar is a valid proxy for preventing data gaps.
4. **Timestamp Interpolation:** Contains an `interpTimestamp()`
function that calculates an absolute timestamp by
interpolating at a given percentage across a specified
range of bars (e.g., 50% of the way through the last
20 bars), enabling time calculations at a resolution
finer than the chart's native bars.
---
**DISCLAIMER**
This library is provided "AS IS" and for informational and
educational purposes only. It does not constitute financial,
investment, or trading advice.
The author assumes no liability for any errors, inaccuracies,
or omissions in the code. Using this library to build
trading indicators or strategies is entirely at your own risk.
As a developer using this library, you are solely responsible
for the rigorous testing, validation, and performance of any
scripts you create based on these functions. The author shall
not be held liable for any financial losses incurred directly
or indirectly from the use of this library or any scripts
derived from it.
buildTF(quantity, unit)
Builds a Pine Script timeframe string from a numeric quantity and a unit enum.
The resulting string can be used with `request.security()` or `input.timeframe`.
Parameters:
quantity (int) : series int Number to specifie how many `unit` the timeframe spans.
unit (series TFUnit) : series TFUnit The size category for the bars.
Returns: series string A Pine-style timeframe identifier, e.g.
"5S" → 5-seconds bars
"30" → 30-minute bars
"120" → 2-hour bars
"1D" → daily bars
"3M" → 3-month bars
"24M" → 2-year bars
splitTF(tf)
Splits a Pine‑timeframe identifier into numeric quantity and unit (TFUnit).
Parameters:
tf (string) : series string Timeframe string, e.g.
"5S", "30", "120", "1D", "3M", "24M".
Returns:
quantity series int The numeric value of the timeframe (e.g., 15 for "15", 3 for "3M").
unit series TFUnit The unit of the timeframe (e.g., TFUnit.minutes, TFUnit.months).
Notes on strings without a suffix:
• Pure digits are minutes; if divisible by 60, they are treated as hours.
• An "M" suffix is months; if divisible by 12, it is converted to years.
autoHTF(tf)
Picks an appropriate **higher timeframe (HTF)** relative to the selected timeframe.
It steps up along a coarse ladder to produce sensible jumps for top‑down analysis.
Mapping → chosen HTF:
≤ 1 min → 60 (1h) ≈ ×60
≤ 3 min → 180 (3h) ≈ ×60
≤ 5 min → 240 (4h) ≈ ×48
≤ 15 min → D (1 day) ≈ ×26–×32 (regular session 6.5–8 h)
> 15 min → W (1 week) ≈ ×64–×80 for 30m; varies with input
≤ 1 h → W (1 week) ≈ ×32–×40
≤ 4 h → M (1 month) ≈ ×36–×44 (~22 trading days / month)
> 4 h → 3M (3 months) ≈ ×36–×66 (e.g., 12h→×36–×44; 8h→×53–×66)
≤ 1 day → 3M (3 months) ≈ ×60–×66 (~20–22 trading days / month)
> 1 day → 12M (1 year) ≈ ×(252–264)/quantity
≤ 1 week → 12M (1 year) ≈ ×52
> 1 week → 48M (4 years) ≈ ×(208)/quantity
= 1 M → 48M (4 years) ≈ ×48
> 1 M → error ("HTF too big")
any → error ("HTF too big")
Notes:
• Inputs in months or years are restricted: only 1M is allowed; larger months/any years throw.
• Returns a Pine timeframe string usable in `request.security()` and `input.timeframe`.
Parameters:
tf (string) : series string Selected timeframe (e.g., "D", "240", or `timeframe.period`).
Returns: series string Suggested higher timeframe.
autoLTF(tf)
Selects an appropriate **lower timeframe LTF)** for intra‑bar evaluation
based on the selected timeframe. The goal is to keep intra‑bar
loops performant while providing enough granularity.
Mapping → chosen LTF:
≤ 1 min → 1S ≈ ×60
≤ 5 min → 5S ≈ ×60
≤ 15 min → 15S ≈ ×60
≤ 30 min → 30S ≈ ×60
> 30 min → 60S (1m) ≈ ×31–×59 (for 31–59 minute charts)
≤ 1 h → 1 (1m) ≈ ×60
≤ 2 h → 2 (2m) ≈ ×60
≤ 4 h → 5 (5m) ≈ ×48
> 4 h → 15 (15m) ≈ ×24–×48 (e.g., 6h→×24, 8h→×32, 12h→×48)
≤ 1 day → 15 (15m) ≈ ×26–×32 (regular sessions ~6.5–8h)
> 1 day → 60 (60m) ≈ ×(26–32) per day × quantity
≤ 1 week → 60 (60m) ≈ ×32–×40 (≈5 sessions of ~6.5–8h)
> 1 week → 240 (4h) ≈ ×(8–10) per week × quantity
≤ 1 M → 240 (4h) ≈ ×33–×44 (~20–22 sessions × 6.5–8h / 4h)
≤ 3 M → D (1d) ≈ ×(20–22) per month × quantity
> 3 M → W (1w) ≈ ×(4–5) per month × quantity
≤ 1 Y → W (1w) ≈ ×52
> 1 Y → M (1M) ≈ ×12 per year × quantity
Notes:
• Ratios for D/W/M are given as ranges because they depend on
**regular session length** (typically ~6.5–8h, not 24h).
• Returned strings can be used with `request.security()` and `input.timeframe`.
Parameters:
tf (string) : series string Selected timeframe (e.g., "D", "240", or timeframe.period).
Returns: series string Suggested lower TF to use for intra‑bar work.
isNewPeriod(tf, offset)
Returns `true` when a new session-aligned period begins, or on the Nth bar of that period.
Parameters:
tf (string) : series string Target higher timeframe (e.g., "D", "W", "M").
offset (simple int) : simple int 0 → checks for the first bar of the new period.
1+ → checks for the N-th bar of the period.
Returns: series bool `true` if the condition is met.
sinceNewPeriod(tf, offset)
Counts how many bars have passed within a higher timeframe (HTF) period.
For daily, weekly, and monthly resolutions, the period is aligned with the trading session.
Parameters:
tf (string) : series string Target parent timeframe (e.g., "60", "D").
offset (simple int) : simple int 0 → Running count for the current period.
1+ → Finalized count for the Nth most recent *completed* period.
Returns: series int Number of bars.
isHigherTF(tf, main)
Returns `true` when the selected timeframe represents a
higher resolution than the active timeframe.
Parameters:
tf (string) : series string Selected timeframe.
main (bool) : series bool When `true`, the comparison is made against the chart's main timeframe
instead of the script's active timeframe. Optional. Defaults to `false`.
Returns: series bool `true` if `tf` > active TF; otherwise `false`.
isActiveTF(tf, main)
Returns `true` when the selected timeframe represents the
exact resolution of the active timeframe.
Parameters:
tf (string) : series string Selected timeframe.
main (bool) : series bool When `true`, the comparison is made against the chart's main timeframe
instead of the script's active timeframe. Optional. Defaults to `false`.
Returns: series bool `true` if `tf` == active TF; otherwise `false`.
isLowerTF(tf, main)
Returns `true` when the selected timeframe represents a
lower resolution than the active timeframe.
Parameters:
tf (string) : series string Selected timeframe.
main (bool) : series bool When `true`, the comparison is made against the chart's main timeframe
instead of the script's active timeframe. Optional. Defaults to `false`.
Returns: series bool `true` if `tf` < active TF; otherwise `false`.
isMultipleTF(tf)
Returns `true` if the selected timeframe (`tf`) is a practical multiple
of the active skript's timeframe. It verifies this by checking if `tf` is a higher timeframe
that has consistently contained more than one bar of the skript's timeframe in recent periods.
The period detection is session-aware.
Parameters:
tf (string) : series string The higher timeframe to check.
Returns: series bool `true` if `tf` is a practical multiple; otherwise `false`.
interpTimestamp(offStart, offEnd, pct)
Calculates a precise absolute timestamp by interpolating within a bar range based on a percentage.
This version works with RELATIVE bar offsets from the current bar.
Parameters:
offStart (int) : series int The relative offset of the starting bar (e.g., 10 for 10 bars ago).
offEnd (int) : series int The relative offset of the ending bar (e.g., 1 for 1 bar ago). Must be <= offStart.
pct (float) : series float The percentage of the bar range to measure (e.g., 50.5 for 50.5%).
Values are clamped to the range.
Returns: series int The calculated, interpolated absolute Unix timestamp in milliseconds.
ICT Macro Time WindowsICT Macro Time Windows - Master institutional market timing with automated 'Macro' trading session tracking.
What are 'Macros'?
In ICT terminology, 'Macros' refer to the key institutional trading windows throughout the day where major banks and liquidity providers are most active. These specific time frames see heightened volatility, liquidity, and strategic positioning.
Perfect Timing Automation:
• 8 Critical Macro Sessions:
London 1: 02:33-03:00 EST
London 2: 04:03-04:30 EST
NY AM1: 08:50-09:10 EST
NY AM2: 09:50-10:10 EST
NY AM3: 10:50-11:10 EST
Lunch: 11:50-12:10 EST
PM: 13:10-13:40 EST
Close: 15:15-15:45 EST
• Fully customizable time zones and session times
• Real-time session detection with visual zones & labels
• Automatic High/Low range tracking within each window
• Boxes, lines, and labels for clear visual reference
• Never miss optimal entry/exit timing again
Trade when institutions trade - stop guessing and start timing your setups with precision during these key liquidity windows! All session times are easily adjustable in settings to match your preferred trading hours.
Perfect for Forex, Futures, and Index traders following ICT concepts and institutional flow analysis.
Prev RTH FibsThis study captures the previous day’s Regular Trading Hours (RTH) range (default 09:30–16:00 America/New_York), then projects it onto the current session. It draws HIGH, LOW, and an optional 50% midpoint, plus a configurable set of inside fib-style percentages measured from the HIGH downward. Every level extends a short distance to the right of the current price and shows a clean numeric label (no box) on the right edge.
Key features
Prev-day RTH range tracked automatically; plotted each new session.
Inside levels (from HIGH ↓): 11%, 25%, 29.5%, 38.2%, 45%, 55%, 62% (OTE), 70.5%, 75%, 78.6%, 85% (toggle any on/off).
Clean right-side labels: numbers only, resizable (Tiny → Huge) with transparent background.
Line styling: HIGH/LOW and 50% are solid; inside levels can be Solid/Dashed/Dotted with independent color/width.
Smart right padding: lines/labels extend a few bars past the latest candle, so annotations stay beside price without violating TradingView’s “>500 bars in future” rule.
Works on any symbol/timeframe; RTH window and timezone are adjustable.
Inputs you control
Session: RTH session string and timezone.
Right-side padding (bars) and number size.
Visibility & style for HIGH, LOW, and 50%.
Which inside levels to show, plus their style/color/width.
Previous Day High/Low Levels [OWI]📘 How to Use the “Previous Day High/Low Levels ” Indicator
This TradingView indicator automatically tracks and displays the previous day's high and low during the Regular Trading Hours (RTH) session. It’s perfect for traders who want to visualize key support/resistance levels from the prior day in futures like CME_MINI:NQ1! and COMEX:GC1! .
🛠 Setup Instructions
1. Customize RTH Session Times
- In the Settings panel, adjust the following under the Levels group:
- RTH Start Hour and RTH Start Minute: Default is 9:30 AM (New York time).
- RTH End Hour and RTH End Minute: Default is 4:15 PM.
- These define the active trading session used to calculate the day’s high and low.
2. Toggle Labels
- Use the Show PDH/PDL Labels checkbox to display or hide the “PDH” and “PDL” labels on the chart.
- Labels appear after the session ends and follow price dynamically.
📊 What the Indicator Does
- During the RTH session:
- Tracks the highest and lowest price of the day.
- After the session ends:
- Draws horizontal lines at the previous day’s high (green) and low (red).
- Optionally displays labels ("PDH" and "PDL") at those levels.
- Lines extend into the current day to help identify potential support/resistance zones.
✅ Best Practices
- Use this indicator on intraday timeframes (e.g., 5m, 15m, 1h) for best results.
- Combine with volume or price action analysis to confirm reactions at PDH/PDL levels.
- Adjust session times if trading non-US markets or custom hours.
Open Range Breakout (ORB) with Alerts
🚀 ChartsAlgo – Open Range Breakout (ORB) with Alerts
The Open Range Breakout (ORB) Indicator by ChartsAlg is designed for intraday traders looking to capitalize on price movements after the market’s opening range. This tool is especially effective for futures (MNQ, MES) and high-volatility stocks or crypto where initial volatility sets the tone for the session.
This indicator identifies a user-defined opening range window, plots the high/low lines of that range, and visually alerts users when price breaks out above or below the range — with options to customize breakout repetitions, background fill, and alerts.
💡 What is an Open Range Breakout (ORB)?
The opening range represents the high and low established during the first few minutes of the trading session — usually 15 or 30 minutes. Many intraday strategies are based on the idea that breaking out of this initial range often signals strong momentum and trend continuation.
Traders often enter:
Long when price breaks above the range high.
Short when price breaks below the range low.
⚙️ How It Works
You define a session window (e.g., 09:30–09:45 EST).
The indicator tracks the high and low during this time.
Once the session ends, the high and low become your range breakout levels.
The indicator then:
Plots lines for visual clarity
Optionally fills background between the range
Triggers breakout signals if price crosses the levels
Provides alerts when breakouts occur
🛠️ Settings Breakdown
🔹 Session Settings
Range Session: Set your preferred window (e.g., 0930–0945). Can be premarket, first 30 mins, or any custom time.
Time zone: Use "America/New York" for EST (default) or change to "GMT+0" for international traders.
🔹 Breakout Settings
Bullish Breakout Signals: Number of allowed breakout alerts above the range.
Bearish Breakout Signals: Number of allowed breakout alerts below the range.
This prevents repeated alerts once breakout has been confirmed.
🔹 Display Settings
Show Background Fill: Fills area between high/low of the range for easier visual analysis.
Show Breakout Signals: Triangle markers plotted on the chart when breakouts happen.
Only Show Today’s Range: Keeps the chart clean by showing only the most current day’s range.
🔹 Color Settings
Range High/Low Line Colors: Choose any color for clarity.
Range Fill Color: Customize the highlight area for your chart style.
📊 Chart Features
Range High/Low Lines: Automatically plotted after range session ends.
Visual Fill Box: Optional background shading between the opening range.
Triangle Breakout Markers: Appear at the breakout candle.
Alerts: Can be used with TradingView’s alert system to notify you of breakouts in real-time.
🔔 Alerts
Two alert conditions are built in:
Bullish Breakout: Triggers when price breaks above the high of the range.
Bearish Breakout: Triggers when price breaks below the low of the range.
Example Alert Message:
📈 “Bullish Breakout above Open Range on AAPL!”
To activate:
Click “🔔 Alerts” on TradingView.
Set condition to this script.
Choose “ORB Breakout Up” or “ORB Breakout Down”.
Choose alert frequency and notification method.
⚠️ DISCLAIMER
ChartsAlgo tools are for informational and educational purposes only.
They are not financial advice or signals. Past performance does not guarantee future results. Use at your own risk and always implement solid risk management.
By using this indicator, you agree that you are solely responsible for any trades or decisions made based on the information provided.
SessionRangeLevels_v0.1SessionRangeLevels_v0.1
Overview:
SessionRangeLevels_v0.1 is a customizable Pine Script (v6) indicator designed to plot key price levels based on a user-defined trading session. It identifies the high and low of the session and calculates intermediate levels (75%, 50% "EQ", and 25%) within that range. These levels are projected forward as horizontal lines with accompanying labels, providing traders with dynamic support and resistance zones. The indicator supports extensive customization for session timing, time zones, line styles, colors, and more.
Key Features:
Session-Based Range Detection: Tracks the high and low prices during a specified session (e.g., 0600-0900) and updates them dynamically as the session progresses.
Customizable Levels: Displays High, 75%, EQ (50%), 25%, and Low levels, each with independent toggle options, styles (Solid, Dashed, Dotted), colors, and widths.
Session Anchor: Optional vertical line marking the session start, with customizable style, color, and width.
Projection Offset: Extends level lines forward by a user-defined number of bars (default: 24) for future price reference.
Labels: Toggleable labels for each level (e.g., "High," "75%," "EQ") with adjustable size (Tiny, Small, Normal, Large).
Time Zone Support: Aligns session timing to a selected time zone (e.g., America/New_York, UTC, Asia/Tokyo, etc.).
Alert Conditions: Triggers alerts when the price crosses any of the plotted levels (High, 75%, EQ, 25%, Low).
Inputs:
Session Time (HHMM-HHMM): Define the session range (e.g., "0600-0900" for 6:00 AM to 9:00 AM).
Time Zone: Choose from options like UTC, America/New_York, Europe/London, etc.
Anchor Settings: Toggle the session start line, adjust its style (default: Dotted), color (default: Black), and width (default: 1).
Level Settings:
High (Solid, Black, Width 2)
75% (Dotted, Blue, Width 1)
EQ/50% (Dotted, Orange, Width 1)
25% (Dotted, Blue, Width 1)
Low (Solid, Black, Width 2)
Each level includes options to show/hide, set style, color, width, and label visibility.
Projection Offset: Number of bars to extend lines (default: 24).
Label Size: Set label size (default: Small).
How It Works:
The indicator detects the start and end of the user-defined session based on the specified time and time zone.
During the session, it tracks the highest high and lowest low, updating the levels in real-time.
At the session start, it plots the High, Low, and intermediate levels (75%, 50%, 25%), projecting them forward.
Lines and labels dynamically adjust as new highs or lows occur within the session.
Alerts notify users when the price crosses any active level.
Usage:
Ideal for traders who focus on session-based strategies (e.g., London or New York open). Use it to identify key price zones, monitor breakouts, or set targets. Customize the appearance to suit your chart preferences and enable alerts for real-time trading signals.
Notes:
Ensure your chart’s timeframe aligns with your session duration for optimal results (e.g., 1-minute or 5-minute charts for short sessions).
The indicator overlays directly on the price chart for easy integration with other tools.
Killzone Highlights with Volume [odnac]
Description:
This indicator seamlessly integrates volume analysis with kill zone highlights across different market sessions.
The indicator dynamically displays trading volume and visually emphasizes key trading sessions in various time zones, including Asia, Europe, and New York (both AM and PM sessions).
Users have the flexibility to customize the colors of bullish and bearish volume bars, as well as the transparency and color of the kill zone highlights, allowing for tailored visual analysis of trading periods.
Features:
Bullish and Bearish Volume Colors:
Displays the volume of trades with user-defined colors for bullish (up) and bearish (down) candles.
Killzone Highlights:
Highlights the kill zones for Asia, Europe, New York AM, and New York PM sessions with user-defined colors and transparency.
Customization Options:
Allows users to adjust the colors, transparency, and time settings for each kill zone.
Weekend Handling:
Option to hide kill zone highlights during weekends.
Timeframe Limitation:
Users can set the maximum timeframe for which the kill zone highlights will be displayed.
Usage:
This indicator is designed for traders who want to gain insights into market activity during key trading sessions.
By combining volume data with visually distinct kill zone highlights, it helps traders make informed decisions based on the most active trading periods.
Ideal for intraday traders looking to leverage session-based strategies for more effective trading decisions.
Killzones & Previous High-Low Liquidity [odnac]This indicator is designed for use in intraday trading to visualize key "Killzones" (specific time windows during different global market sessions) and highlight liquidity levels based on previous highs and lows from the previous day and week.
It helps traders identify potential market entry and exit points based on time-based trading zones and price action levels.
Key Features:
Killzone (Market Session Timeframes):
Asia (2000-0000 UTC): Displays a shaded box over the Asia trading session.
Europe (0200-0500 UTC): Highlights the European trading session.
New York AM (0830-1100 UTC): Represents the morning session of the NY market.
New York PM (1330-1600 UTC): Represents the afternoon session of the NY market.
Each of these timeframes can be customized in terms of session start and end times, and the shaded areas will help identify high liquidity periods when the market tends to be more active.
Previous High-Low Liquidity Zones:
Previous Week's High/Low: Displays lines at the high and low of the previous week.
These are important liquidity levels that can influence price action.
Previous Day's High/Low: Shows the high and low from the previous trading day.
These are also significant levels to watch for potential support and resistance.
Filters and Customization:
Position Filtering: The indicator allows users to filter out previous highs or lows if the current price doesn't align with those levels.
For example, it can filter out previous week highs if the current price is lower than that level.
Vertical Lines: Optional vertical lines to highlight key time points such as the start and end of the previous week and day.
How It Works:
The indicator visually draws "killzones" as shaded regions on the chart, indicating periods of increased market activity.
This can help traders align their strategies with the most liquid periods of the day.
The previous high and low lines (both for the previous week and the previous day) are drawn as solid lines and can be toggled on/off in the settings.
Labels are added to indicate the specific levels and periods.
The indicator provides clear visual cues, helping traders assess if the price is near important liquidity levels and whether the current market conditions align with those levels.
Customizable Settings:
You can control whether each Killzone and liquidity level is shown on the chart.
Color customization for the various zones and lines is also available.
The indicator also lets you decide whether to hide weekend data, set time-frame limits, and choose whether or not to show vertical lines at the beginning and end of each trading session.
This indicator is aimed at traders who want to trade based on high-liquidity periods and understand where key support and resistance levels are likely to emerge based on previous price action.






















