Futures Momentum Scanner – jyoti//@version=5
indicator("Futures Momentum Scanner – Avvu Edition", overlay=false, max_lines_count=500)
//------------------------------
// USER INPUTS
//------------------------------
rsiLen = input.int(14, "RSI Length")
macdFast = input.int(12, "MACD Fast")
macdSlow = input.int(26, "MACD Slow")
macdSignal = input.int(9, "MACD Signal")
stLength = input.int(10, "Supertrend Length")
stMult = input.float(3.0, "Supertrend Multiplier")
//------------------------------
// SUPER TREND
//------------------------------
= ta.supertrend(stMult, stLength)
trendUp = stDirection == 1
//------------------------------
// RSI
//------------------------------
rsi = ta.rsi(close, rsiLen)
rsiBull = rsi > 50 and rsi < 65
//------------------------------
// MACD
//------------------------------
= ta.macd(close, macdFast, macdSlow, macdSignal)
macdBull = macd > signal and macd > 0
//------------------------------
// MOVING AVERAGE TREND
//------------------------------
ema20 = ta.ema(close, 20)
ema50 = ta.ema(close, 50)
ema200 = ta.ema(close, 200)
trendStack = ema20 > ema50 and ema50 > ema200
//------------------------------
// BREAKOUT LOGIC
//------------------------------
prevHigh = ta.highest(high, 20)
breakout = close > prevHigh
//------------------------------
// FINAL SCANNER LOGIC
//------------------------------
bullishCandidate = trendUp and rsiBull and macdBull and trendStack and breakout
//------------------------------
// TABLE OUTPUT FOR SCANNER FEEL
//------------------------------
var table t = table.new(position.top_right, 1, 1)
if barstate.islast
msg = bullishCandidate ? "✔ BUY Candidate" : "– Not a Setup"
table.cell(t, 0, 0, msg, bgcolor=bullishCandidate ? color.new(color.green, 0) : color.new(color.red, 70))
//------------------------------
// ALERT
//------------------------------
alertcondition(bullishCandidate, title="Scanner Trigger", message="This stock meets Avvu's futures scanner criteria!")
차트 패턴
Session High/LowSession High Low
Trading Sessions
Forex Sessions (oder Futures Sessions, je nachdem, was du handelst)
Pine Script Indicator
Intraday Levels
Market Sessions
High Low Lines
Day Trading Tools
A+ Model - Cave EducationHere is a comprehensive and detailed explanation of the "A+ Model - Cave Education" Pine Script code.
This script is a sophisticated technical analysis tool designed for TradingView. It assists traders in identifying specific institutional time windows, price ranges (sessions), and "Macro" volatility periods based on the ICT (Inner Circle Trader) or similar time-based trading concepts.
Below is the breakdown of how the code functions, organized by its logic sections.
1. General Overview
The script is an overlay indicator (it sits directly on the price chart). Its primary purpose is to:
Highlight a specific trading session (The "A+ Box") and mark its High/Low.
Mark key institutional times (07:00 NY and 09:30 NY Open).
Identify "Macro" windows (specific 20-minute periods where algorithms are active) and draw dynamic ranges around them based on volatility (ATR).
Project future times onto the chart to help the trader prepare for the next day.
2. Settings & Inputs (User Configuration)
The code begins by defining a vast array of user inputs, grouped for better usability:
General Time & Box: Allows the user to define the "A+ Session" time (default 20:00-00:00) and the Time Zone (UTC-5/New York). It also handles the visual style (colors) of the session box.
Visibility: A crucial performance and visual clutter setting. boxDays limits how far back the A+ boxes and time lines are drawn (default 14 days). Macros are strictly limited to the current week to prevent chart lagging.
Line & Text Controls: Every visual element (A+ lines, NY markers, Macros) has toggles (input.bool) to show/hide the lines or the text labels separately.
Macro Settings: Defines the time windows for three separate macros and an ATR Multiplier. The ATR multiplier determines how wide the channel lines are drawn around the macro price action.
3. Logic Breakdown by Section
Section 1: The "A+ Draw" Box (Session Range)
This is the core of the A+ Model.
Logic: The script checks if the current bar is within the user-defined sessionTime.
Box Creation:
When the session starts, it initializes a new Box (box.new).
Throughout the session, it continuously updates the Box's Top (Highest High) and Bottom (Lowest Low) to encompass the full range of that time period.
Extension Lines (Support/Resistance):
Once the session ends, the script draws two horizontal lines: one from the Session High and one from the Session Low.
Smart Break Logic: These lines are active (highActive, lowActive). They extend to the right until the price breaks them (High line is broken by a higher price, Low line by a lower price). This helps traders see if the session range is being respected or broken later in the day.
Section 2: Time Lines (NY Midnight & Open)
This section marks vertical reference points.
It checks for specific times: 07:00 and 09:30 (in the user's timezone).
If the current bar matches these times, it draws a vertical line (line.new) covering the High/Low of that bar and places a label (e.g., "NY." or "09:30") above it.
This helps the trader orient themselves regarding the New York session Open and the "Killzone" start.
Section 3: Macros (Volatility Windows)
This is the most complex calculation in the script.
Definition: Macros are specific time windows (e.g., 09:50–10:10) where price delivery is often accelerated.
Visibility Rule: To keep the script fast, this only runs if isCurrentWeek is true.
ATR Offset: The script calculates the Average True Range (ATR). It uses this to create a "channel" around the price.
Drawing Logic:
When a Macro time starts, the script tracks the Highest High and Lowest Low inside that specific 20-minute window.
It draws parallel horizontal lines above and below these prices.
The Twist: The lines are not drawn at the High/Low. They are offset by ATR * Multiplier. This creates a wider "zone" around the macro price action, visually indicating a volatility range.
Section 4: Future Projection (Tomorrow)
This feature is for planning ahead.
It runs only on the last bar of the chart (barstate.islast).
It calculates the timestamps for the next occurrence of the key times (07:00, 09:30, and all three Macros).
It draws vertical lines into the future (empty space on the right of the chart).
Benefit: The trader can see exactly where 09:30 or the next Macro will occur on the timeline before the candles even print.
4. Helper Functions
The code uses custom functions to keep the logic clean:
f_drawFuture(...): A standardized function to draw the future vertical lines and labels so the code doesn't have to repeat itself for every single time marker.
isStartTime(...) & isInTime(...): Shorthand functions to check if the current candle belongs to a specific session string (like "0950-1010").
Summary of Improvements in this Version
Compared to a standard indicator, this script is highly optimized:
Text Control: You can turn off text labels while keeping the lines (or vice versa).
Performance: It limits historical drawing (only 14 days back for boxes, only this week for macros) to prevent "Maximum Line Count" errors in Pine Script.
Visual Clarity: It uses different colors for different Macros (Blue, Red, Orange) to make them instantly distinguishable.
1小时区域背景颜色// This work is licensed under a Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0) creativecommons.org
// © LuxAlgo
//@version=5
indicator("Sessions ", "LuxAlgo - Sessions", overlay = true, max_bars_back = 500, max_lines_count = 500, max_boxes_count = 500, max_labels_count = 500)
//------------------------------------------------------------------------------
//Settings
//-----------------------------------------------------------------------------{
//Session A
show_sesa = input(true, '', inline = 'sesa', group = 'Session A')
sesa_txt = input('New York', '', inline = 'sesa', group = 'Session A')
sesa_ses = input.session('1300-2200', '', inline = 'sesa', group = 'Session A')
sesa_css = input.color(#ff5d00, '', inline = 'sesa', group = 'Session A')
sesa_range = input(true, 'Range', inline = 'sesa_overlays', group = 'Session A')
sesa_tl = input(false, 'Trendline', inline = 'sesa_overlays', group = 'Session A')
sesa_avg = input(false, 'Mean', inline = 'sesa_overlays', group = 'Session A')
sesa_vwap = input(false, 'VWAP', inline = 'sesa_overlays', group = 'Session A')
sesa_maxmin = input(false, 'Max/Min', inline = 'sesa_overlays', group = 'Session A')
//Session B
show_sesb = input(true, '', inline = 'sesb', group = 'Session B')
sesb_txt = input('London', '', inline = 'sesb', group = 'Session B')
sesb_ses = input.session('0700-1600', '', inline = 'sesb', group = 'Session B')
sesb_css = input.color(#2157f3, '', inline = 'sesb', group = 'Session B')
sesb_range = input(true, 'Range', inline = 'sesb_overlays', group = 'Session B')
sesb_tl = input(false, 'Trendline', inline = 'sesb_overlays', group = 'Session B')
sesb_avg = input(false, 'Mean', inline = 'sesb_overlays', group = 'Session B')
sesb_vwap = input(false, 'VWAP', inline = 'sesb_overlays', group = 'Session B')
sesb_maxmin = input(false, 'Max/Min', inline = 'sesb_overlays', group = 'Session B')
//Session C
show_sesc = input(true, '', inline = 'sesc', group = 'Session C')
sesc_txt = input('Tokyo', '', inline = 'sesc', group = 'Session C')
sesc_ses = input.session('0000-0900', '', inline = 'sesc', group = 'Session C')
sesc_css = input.color(#e91e63, '', inline = 'sesc', group = 'Session C')
sesc_range = input(true, 'Range', inline = 'sesc_overlays', group = 'Session C')
sesc_tl = input(false, 'Trendline', inline = 'sesc_overlays', group = 'Session C')
sesc_avg = input(false, 'Mean', inline = 'sesc_overlays', group = 'Session C')
sesc_vwap = input(false, 'VWAP', inline = 'sesc_overlays', group = 'Session C')
sesc_maxmin = input(false, 'Max/Min', inline = 'sesc_overlays', group = 'Session C')
//Session D
show_sesd = input(true, '', inline = 'sesd', group = 'Session D')
sesd_txt = input('Sydney', '', inline = 'sesd', group = 'Session D')
sesd_ses = input.session('2100-0600', '', inline = 'sesd', group = 'Session D')
sesd_css = input.color(#ffeb3b, '', inline = 'sesd', group = 'Session D')
sesd_range = input(true, 'Range', inline = 'sesd_overlays', group = 'Session D')
sesd_tl = input(false, 'Trendline', inline = 'sesd_overlays', group = 'Session D')
sesd_avg = input(false, 'Mean', inline = 'sesd_overlays', group = 'Session D')
sesd_vwap = input(false, 'VWAP', inline = 'sesd_overlays', group = 'Session D')
sesd_maxmin = input(false, 'Max/Min', inline = 'sesd_overlays', group = 'Session D')
//Timezones
tz_incr = input.int(0, 'UTC (+/-)', group = 'Timezone')
use_exchange = input(false, 'Use Exchange Timezone', group = 'Timezone')
//Ranges Options
bg_transp = input.float(90, 'Range Area Transparency', group = 'Ranges Settings')
show_outline = input(true, 'Range Outline', group = 'Ranges Settings')
show_txt = input(true, 'Range Label', group = 'Ranges Settings')
God Fad Strategy"This strategy is developed for educational and testing purposes, originally conceptualized by Akash Khadse Sir from TMT Academy. Access is restricted to TMT Academy students only. The indicator monitors Market Structure Shifts following Higher Timeframe
Support Resistance📌 1. Indicator Name
Premium Auto Support & Resistance
📌 2. One-Line Description
An automated S/R system that generates support and resistance zones based on swing highs and lows, displaying them in a premium visual style directly on the chart.
📌 3. Overall Summary (7+ lines)
This indicator automatically detects price levels where the market has repeatedly reacted and generates support and resistance zones.
Instead of simple horizontal lines, it visualizes reaction ranges as zones, helping traders clearly understand the actual price areas where activity occurs.
It uses swing points (high/low pivots) as the fundamental basis and continuously updates only the most meaningful recent S/R levels.
A smoothing process is applied, reducing noise and creating more natural, reliable S/R zones.
Support and resistance are displayed as filled transparency-based zones, enabling intuitive identification of zone strength and market position.
When price touches one of these zones, a small signal appears to highlight potential reversal points.
All elements are plotted directly over the candles with overlay=true, making it an instantly usable and visually premium tool.
📌 4. Advantages (6 items)
① Automatic Swing-Based S/R Detection
Automatically analyzes key pivot points and extracts only the most meaningful support and resistance levels.
② Support/Resistance Zone Structure
Provides intuitive reaction ranges instead of single lines, making it far more practical for real trading.
③ Smooth Premium-Style Lines
S/R lines are smoothed to remove noise, maintaining a natural and refined premium visual appearance.
④ Automatic Candle-Touch Alerts
Displays signals whenever price touches support or resistance, helping you quickly identify potential reversal areas.
⑤ Overlay-Based Immediate Clarity
Drawn directly onto the chart without occupying indicator windows, keeping visual focus on price action.
⑥ Simple Yet Powerful Framework
A pivot + smoothing + zone combination that strengthens automatic S/R detection while remaining easy for beginners to use.
Straddle and Strangle Premium (AlgoStraddle)# Straddle and Strangle Indicator
## Overview
The **Straddle and Strangle** indicator is a powerful tool designed for options traders to analyze the combined premium behavior of Straddle and Strangle strategies on Indian indices (NIFTY, BANKNIFTY, FINNIFTY, etc.). Unlike simple premium adders, this indicator visualizes the **combined price action as a true candlestick chart**, allowing for precise technical analysis on the strategy itself.
It integrates essential technical indicators—SuperTrend, VWAP, Moving Averages, and Dynamic Support/Resistance—directly onto the combined premium chart, helping traders make informed decisions based on the net value of their positions.
## Key Features
### 1. Accurate Combined Premium Chart
- **True Candlesticks**: Displays the combined Open, High, Low, and Close of the CE and PE options.
- **Spread Ticker Logic**: Uses TradingView's spread syntax (e.g., `NIFTY25DEC26000C + NIFTY25DEC26000P`) to ensure mathematically accurate High/Low calculations, avoiding the "fake wicks" common in simple addition scripts.
- **Toggle View**: Switch between a clean Candlestick chart and a simple Line chart.
### 2. Comprehensive Premium Table (5-Strike Ladder)
- Displays a real-time table on the chart overlay.
- Shows the **Selected Strike** (Center) plus **2 Strikes Above** and **2 Strikes Below**.
- For each strike, view the individual **CE Price**, **PE Price**, and **Combined Premium**.
- Helps in quickly spotting better premiums or potential adjustments without changing inputs.
### 3. Built-in Technical Analysis
Analyze the combined premium just like a regular stock:
- **SuperTrend**: Identifies the trend direction (Bullish/Bearish) of the combined premium.
- **VWAP (Volume Weighted Average Price)**: A key benchmark for intraday direction.
- **Moving Averages**: Configurable SMA, EMA, WMA, or RMA to track momentum.
- **ATR Stop Loss**: Dynamic trailing stop-loss levels based on volatility.
- **Dynamic Support & Resistance**: Automatically plots Swing Highs and Swing Lows to identify breakout or breakdown levels.
### 4. Flexible Strategy Selection
- **Fixed Straddle**: Select a single strike for both CE and PE.
- **Fixed Strangle**: Select different strikes for CE and PE.
- **Multi-Index Support**: Ready-to-use presets for NIFTY, BANKNIFTY, FINNIFTY, MIDCPNIFTY, SENSEX, and BANKEX.
- **Custom Symbol**: Option to manually input any other symbol.
## How to Use
1. **Select Chart Type**: Choose between "Fixed Straddle" or "Fixed Strangle".
2. **Set Symbol & Expiry**: Choose your index (e.g., NIFTY) and enter the Expiry Date (YYYY-MM-DD).
3. **Enter Strikes**:
* For **Straddle**: Enter the ATM strike.
* For **Strangle**: Enter the specific CE and PE strikes.
4. **Analyze**:
* Use the **Candlestick Chart** to read price action.
* Watch for **SuperTrend** flips for trend changes.
* Use **VWAP** as a dynamic support/resistance reference.
* Monitor the **Table** to compare premiums across nearby strikes.
## Alerts
The indicator includes built-in alert conditions for automation:
- **SuperTrend Change**: Bullish/Bearish flips.
- **VWAP Cross**: Price crossing above or below VWAP.
- **Support/Resistance Break**: Price breaking key swing levels.
---
*Designed for precision options analysis.*
Filter Trend1. Indicator Name
Premium EMA Ribbon Filter (Pro Version)
(Advanced Trend & Momentum Filtering System Based on EMA Ribbons)
2. One-Line Introduction
A professional trend-analysis indicator that blends an advanced noise-filtering algorithm with an EMA ribbon system to extract only the pure bullish/bearish trend while smoothing out market noise.
3. Overall Description (7+ lines)
The Premium EMA Ribbon Filter is more than just a set of EMAs.
It analyzes the structure of a fast, medium, and slow EMA ribbon—along with the spacing and alignment between them—to determine whether the market is in a bullish trend, bearish trend, or a neutral/noise-heavy zone.
The core of this indicator is its noise-reduction algorithm and trend-strength calculation system.
Instead of relying on simple EMA cross signals, it evaluates how consistently the ribbon maintains bullish/bearish alignment over a specified period and highlights only strong trends with color coding, while weak or noisy areas are displayed in gray.
This helps traders avoid confusing or false signals and clearly focus only on the “meaningful zones.”
A Triple-Smoothing System is applied to create smoother, more refined ribbon movements, forming a stable “premium trend curve” that is less affected by short-term volatility.
As a result, this indicator works effectively for scalping, swing trading, and long-term trend following—staying true to the principle of removing noise and highlighting only the core market flow.
4. Short Advantages (6 items)
① Complete Noise Filtering
Using EMA ribbon comparison + tolerance logic, false reversals are largely eliminated, leaving only stable trend phases.
② Highly Readable Color System
Bullish trends are mint, bearish trends are red, and neutral/noise zones are gray—instantly visualizing market conditions.
③ Trend Strength Visualization
Not only trend direction but also trend strength is displayed via dynamic color transparency.
④ Smooth, Premium-Style Ribbon Design
Triple-smoothing creates a refined, luxury-level smoothness in movement.
⑤ Works Across All Timeframes
From 1-minute scalping to daily/weekly macro trend analysis.
⑥ Excellent Real-Trading Compatibility
Works extremely well when combined with ATR, SuperTrend, and volume-based indicators.
Indicator Manual (Required Section)
📌 Understanding the Core Concept
The indicator uses three EMAs (e.g., 20/50/100) arranged as a ribbon to analyze the structural alignment of the trend.
When the EMAs are cleanly aligned Top → Middle → Bottom, the market is in a bullish trend.
When aligned Bottom → Middle → Top, the market is in a bearish trend.
The indicator further evaluates the ribbon spread (gap) and the consistency of alignment to compute trend strength.
Noisy market conditions are shaded gray to clearly indicate “uncertain/indecisive” zones.
⚙️ Settings Description
Option Description
Fast EMA Most sensitive EMA; detects early trend signals
Mid EMA Stabilizes the primary trend direction
Slow EMA Defines the broader, long-term trend flow
Trend Lookback The period used to analyze trend strength
Noise Tolerance (%) Higher values = stronger noise removal
Smoothing Steps Controls how smooth the ribbon becomes
📈 Example Recognition
A bullish continuation/entry scenario forms when:
EMAs align in the order Fast → Mid → Slow (top side)
Ribbon color shifts into mint (strong bullish trend)
The ribbon begins to expand while price stays above the ribbon
📉 Example Recognition
A bearish continuation/entry occurs when:
EMAs align Fast → Mid → Slow (bottom side)
Ribbon color remains red
After contracting, the ribbon expands again during renewed downside strength
🧪 Recommended Usage
Combine with volume-based indicators (OBV, Volume Profile) → enhanced strong-trend detection
Use with SuperTrend or ATR Stop → clearer stop-loss placement
Combine with RSI/Stoch → avoid counter-trend entries in overheated conditions
Higher leverage traders should use higher tolerance settings
🔒 Cautions
EMA ribbons are trend-following tools; signals may weaken in ranging/sideways markets.
Never rely solely on this indicator—always confirm with volume, price patterns, or structure.
Very low Lookback values may cause excessive re-entry signals.
In high-volatility environments, ribbon spacing can contract/expand rapidly—use with caution.
ICT Key Levels: PDH / PDL / Daily Open//@version=5
indicator("ICT Key Levels: PDH / PDL / Daily Open", shorttitle="ICT Levels", overlay=true)
// --- Inputs
showPD = input.bool(true, "Mostrar PDH/PDL")
showOpen = input.bool(true, "Mostrar Daily Open")
pdhColor = input.color(color.new(color.green, 0), "Color PDH")
pdlColor = input.color(color.new(color.red, 0), "Color PDL")
openColor = input.color(color.new(color.orange, 0), "Color Daily Open")
lineWidth = input.int(1, "Ancho líneas", minval=1, maxval=4)
// --- Previous day high / low (using daily security)
pdh = request.security(syminfo.tickerid, "D", high )
pdl = request.security(syminfo.tickerid, "D", low )
// --- Daily open (current day's open on Daily timeframe)
dailyOpen = request.security(syminfo.tickerid, "D", open)
// --- Plots
plot(showPD and not na(pdh) ? pdh : na, title="PDH", color=pdhColor, linewidth=lineWidth, style=plot.style_line)
plot(showPD and not na(pdl) ? pdl : na, title="PDL", color=pdlColor, linewidth=lineWidth, style=plot.style_line)
plot(showOpen and not na(dailyOpen) ? dailyOpen : na, title="Daily Open", color=openColor, linewidth=lineWidth, style=plot.style_line)
// --- Optional: etiquetas en inicio de día (solo en la primera barra diaria)
isNewDay = ta.change(time("D"))
labelNewDayOpen = input.bool(true, "Mostrar etiqueta en apertura diaria")
if labelNewDayOpen and isNewDay
label.new(bar_index, dailyOpen, text="Open", style=label.style_label_down, color=color.new(openColor,50), textcolor=color.black, yloc=yloc.price)
My script//@version=5
indicator("LTF Multi-Condition BUY Signal (v5 clean)", overlay=true, max_labels_count=100, max_lines_count=100)
// ───────────────── INPUTS ─────────────────
pivot_len = input.int(4, "Pivot sensitivity (structure)", minval=2, maxval=12)
range_len = input.int(20, "Range lookback for breakout", minval=5)
htf_tf = input.timeframe("480", "HTF timeframe (8H+)")
reclaim_window = input.int(5, "Reclaim window (bars)", minval=1)
ema_fast_len = input.int(9, "EMA fast length")
ema_slow_len = input.int(21, "EMA slow length")
rsi_len = input.int(14, "RSI length")
rsi_pivot_len = input.int(4, "RSI pivot sensitivity")
rsi_div_lookback = input.int(30, "RSI divergence max lookback (bars)")
daily_vol_mult = input.float(1.0, "Daily volume vs SMA multiplier", step=0.1)
htf_vol_sma_len = input.int(20, "HTF volume SMA length")
require_reclaim = input.bool(true, "Require HTF reclaim")
use_aggressive_HL = input.bool(false, "Aggressive HL detection")
// ───────────────── BASE INDICATORS ─────────────────
emaFast = ta.ema(close, ema_fast_len)
emaSlow = ta.ema(close, ema_slow_len)
rsiVal = ta.rsi(close, rsi_len)
// ───────────────── DAILY CHECKS (VOLUME & OBV) ─────────────────
// Daily OBV and previous value
daily_obv = request.security(syminfo.tickerid, "D",
ta.cum(ta.change(close) > 0 ? volume : ta.change(close) < 0 ? -volume : 0))
daily_obv_prev = request.security(syminfo.tickerid, "D",
ta.cum(ta.change(close) > 0 ? volume : ta.change(close) < 0 ? -volume : 0) )
// Daily volume & SMA
daily_vol = request.security(syminfo.tickerid, "D", volume)
daily_vol_sma = request.security(syminfo.tickerid, "D", ta.sma(volume, 20))
daily_vol_ok = not na(daily_vol) and not na(daily_vol_sma) and daily_vol > daily_vol_sma * daily_vol_mult
daily_obv_ok = not na(daily_obv) and not na(daily_obv_prev) and daily_obv > daily_obv_prev
// ───────────────── HTF SUPPORT / RECLAIM ─────────────────
htf_high = request.security(syminfo.tickerid, htf_tf, high)
htf_low = request.security(syminfo.tickerid, htf_tf, low)
htf_close = request.security(syminfo.tickerid, htf_tf, close)
htf_volume = request.security(syminfo.tickerid, htf_tf, volume)
htf_vol_sma = request.security(syminfo.tickerid, htf_tf, ta.sma(volume, htf_vol_sma_len))
htf_bull_reject = not na(htf_high) and not na(htf_low) and not na(htf_close) and (htf_close - htf_low) > (htf_high - htf_close)
htf_vol_confirm = not na(htf_volume) and not na(htf_vol_sma) and htf_volume > htf_vol_sma
htf_support_level = (htf_bull_reject and htf_vol_confirm) ? htf_low : na
// Reclaim: LTF close back above HTF support within N bars
reclaimed_now = not na(htf_support_level) and close > htf_support_level and ta.barssince(close <= htf_support_level) <= reclaim_window
htf_reclaim_ok = require_reclaim ? reclaimed_now : true
// ───────────────── STRUCTURE: BOS & HL (CoC) ─────────────────
swingHighVal = ta.pivothigh(high, pivot_len, pivot_len)
swingLowVal = ta.pivotlow(low, pivot_len, pivot_len)
swingHighCond = not na(swingHighVal)
swingLowCond = not na(swingLowVal)
lastSwingHigh = ta.valuewhen(swingHighCond, swingHighVal, 0)
prevSwingHigh = ta.valuewhen(swingHighCond, swingHighVal, 1)
lastSwingLow = ta.valuewhen(swingLowCond, swingLowVal, 0)
prevSwingLow = ta.valuewhen(swingLowCond, swingLowVal, 1)
bos_bull = not na(prevSwingHigh) and close > prevSwingHigh
hl_confirm = not na(lastSwingLow) and not na(prevSwingLow) and lastSwingLow > prevSwingLow and ta.barssince(swingLowCond) <= 30
if use_aggressive_HL
hl_confirm := hl_confirm or (low > low and ta.barssince(swingLowCond) <= 12)
// ───────────────── RSI BULLISH DIVERGENCE ─────────────────
rsiLowVal = ta.pivotlow(rsiVal, rsi_pivot_len, rsi_pivot_len)
rsiLowCond = not na(rsiLowVal)
priceAtRsiLowA = ta.valuewhen(rsiLowCond, low , 0)
priceAtRsiLowB = ta.valuewhen(rsiLowCond, low , 1)
rsiLowA = ta.valuewhen(rsiLowCond, rsiVal , 0)
rsiLowB = ta.valuewhen(rsiLowCond, rsiVal , 1)
rsi_div_ok = not na(priceAtRsiLowA) and not na(priceAtRsiLowB) and not na(rsiLowA) and not na(rsiLowB) and
(priceAtRsiLowA < priceAtRsiLowB) and (rsiLowA > rsiLowB) and ta.barssince(rsiLowCond) <= rsi_div_lookback
// ───────────────── RANGE BREAKOUT ─────────────────
range_high = ta.highest(high, range_len)
range_breakout = ta.crossover(close, range_high)
// ───────────────── EMA CROSS / TREND ─────────────────
ema_cross_happened = ta.crossover(emaFast, emaSlow)
ema_trend_ok = emaFast > emaSlow
// ───────────────── FINAL BUY CONDITION ─────────────────
all_price_checks = bos_bull and hl_confirm and rsi_div_ok and range_breakout
all_filter_checks = ema_trend_ok and ema_cross_happened and daily_vol_ok and daily_obv_ok and htf_reclaim_ok
buy_condition = all_price_checks and all_filter_checks
// ───────────────── PLOTS & ALERT ─────────────────
plotshape(
buy_condition,
title = "BUY Signal",
location = location.belowbar,
style = shape.labelup,
text = "BUY",
textcolor = color.white,
color = color.green,
size = size.small)
plot(htf_support_level, title="HTF Support", color=color.new(color.green, 0), linewidth=2, style=plot.style_linebr)
alertcondition(buy_condition, title="LTF BUY Signal", message="LTF BUY Signal on {{ticker}} ({{interval}}) — all conditions met")
ICT Open Range Gap & 1st FVG + MNO/PDHL Title:
ICT Open Range Gap & 1st FVG + MNO/PDHL (Source Rays)
Description:
This is an enhanced version of the "ICT Open Range Gap & 1st FVG" indicator (originally by fadizeidan), modified to include essential daily institutional reference levels with precise "Source Ray" visualization.
This tool is designed to declutter your chart by keeping only the active day's levels visible while providing historical precision for Previous Day High/Low and Midnight Open.
Key Features:
1. MNO (New York Midnight Open)
Automatically captures the exact opening price at 00:00 New York Time.
Draws a level extending to the current price action to act as a bias filter (Bullish above/Bearish below).
Note: This strictly uses 00:00 ET, distinct from the Settlement/Electronic open.
2. PDH & PDL with Source Rays
Previous Day High (PDH) and Previous Day Low (PDL) are not just arbitrary horizontal lines.
Source Ray Logic: The lines originate from the exact timestamp/candle where the High or Low occurred yesterday. This helps you visualize the "origin" of the liquidity pool.
The lines automatically extend to the right of the current price.
3. ICT Open Range Gap & 1st FVG (Original Logic)
Retains the core functionality of measuring the gap between the 09:30 NY Open and the prior Close.
Identifies the first 1-minute Fair Value Gap (FVG) after the opening bell.
Includes quadrant projections (25%, 50% CE, 75%) for the opening range.
Settings:
Daily Levels (Source Rays): A new settings group allows you to toggle MNO, PDH, and PDL on/off individually.
Customization: Fully customizable colors, line styles, and labels for all levels.
Active Only: To maintain a clean chart, daily levels (MNO/PDH/PDL) are persistent for the current session only and do not clutter historical data.
Credits:
Original script logic by fadizeidan.
Modifications for MNO & PDHL Source Rays by Assistant.
ORB indicatorthis indicator marks out the first 15 min high and low on the candle that opens in each session, very easy to read and minimalist
Regime [CHE] Regime — Minimal HTF MACD histogram regime marker with a simple rising versus falling state.
Summary
Regime is a lightweight overlay that turns a higher-timeframe-style MACD histogram condition into a simple regime marker on your chart. It queries an imported core module to determine whether the histogram is rising and then paints a consistent marker color based on that boolean state. The output is intentionally minimal: no lines, no panels, no extra smoothing visuals, just a repeated marker that reflects the current regime. This makes it useful as a quick context filter for other signals rather than a standalone system.
Motivation: Why this design?
A common problem in discretionary and systematic workflows is clutter and over-interpretation. Many regime tools draw multiple plots, which can distract from price structure. This script reduces the regime idea to one stable question: is the MACD histogram rising under a given preset and smoothing length. The core logic is delegated to a shared module to keep the indicator thin and consistent across scripts that rely on the same definition.
What’s different vs. standard approaches?
Reference baseline: A standard MACD histogram plotted in a separate pane with manual interpretation.
Architecture differences:
Uses a shared library call for the regime decision, rather than re-implementing MACD logic locally.
Uses a single boolean output to drive marker color, rather than plotting histogram bars.
Uses fixed marker placement at the bottom of the chart for consistent visibility.
Practical effect:
You get a persistent “context layer” on price without dedicating a separate pane or reading histogram amplitude. The chart shows state, not magnitude.
How it works (technical)
1. The script imports `chervolino/CoreMACDHTF/2` and calls `core.is_hist_rising()` on each bar.
2. Inputs provide the source series, a preset string for MACD-style parameters, and a smoothing length used by the library function.
3. The library returns a boolean `rising` that represents whether the histogram is rising according to the library’s internal definition.
4. The script maps that boolean to a color: yellow when rising, blue otherwise.
5. A circle marker is plotted on every bar at the bottom of the chart, colored by the current regime state. Only the most recent five hundred bars are displayed to limit visual load.
Notes:
The exact internal calculation details of `core.is_hist_rising()` are not shown in this code. Any higher timeframe mechanics, security usage, or confirmation behavior are determined by the imported library. (Unknown)
Parameter Guide
Source — Selects the price series used by the library call — Default: close — Tips: Use close for consistency; alternate sources may shift regime changes.
Preset — Chooses parameter preset for the library’s MACD-style configuration — Default: 3,10,16 — Trade-offs: Faster presets tend to flip more often; slower presets tend to react later.
Smoothing Length — Controls smoothing used inside the library regime decision — Default: 21 — Bounds: minimum one — Trade-offs: Higher values typically reduce noise but can delay transitions. (Library behavior: Unknown)
Reading & Interpretation
Yellow markers indicate the library considers the histogram to be rising at that bar.
Blue markers indicate the library considers it not rising, which may include falling or flat conditions depending on the library definition. (Unknown)
Because markers repeat on every bar, focus on transitions from one color to the other as regime changes.
This tool is best read as context: it does not express strength, only direction of change as defined by the library.
Practical Workflows & Combinations
Trend following:
Use yellow as a condition to allow long-side entries and blue as a condition to allow short-side entries, then trigger entries with your primary setup such as structure breaks or pullback patterns. (Optional)
Exits and stops:
Consider tightening management after a color transition against your position direction, but do not treat a single flip as an exit signal without price-based confirmation. (Optional)
Multi-asset and multi-timeframe:
Keep `Source` consistent across assets.
Use the slower preset when instruments are noisy, and the faster preset when you need earlier context shifts. The best transferability depends on the imported library’s behavior. (Unknown)
Behavior, Constraints & Performance
Repaint and confirmation:
This script itself uses no forward-looking indexing and no explicit closed-bar gating. It evaluates on every bar update.
Any repaint or confirmation behavior may come from the imported library. If the library uses higher timeframe data, intrabar updates can change the state until the higher timeframe bar closes. (Unknown)
security and HTF:
Not visible here. The library name suggests HTF behavior, but the implementation is not shown. Treat this as potentially higher-timeframe-driven unless you confirm the library source. (Unknown)
Resources:
No loops, no arrays, no heavy objects. The plotting is one marker series with a five hundred bar display window.
Known limits:
This indicator does not convey histogram magnitude, divergence, or volatility context.
A binary regime can flip in choppy phases depending on preset and smoothing.
Sensible Defaults & Quick Tuning
Starting point:
Source: close
Preset: 3,10,16
Smoothing Length: 21
Tuning recipes:
Too many flips: choose the slower preset and increase smoothing length.
Too sluggish: choose the faster preset and reduce smoothing length.
Regime changes feel misaligned with your entries: keep the preset, switch the source back to close, and tune smoothing length in small steps.
What this indicator is—and isn’t
This is a minimal regime visualization and a context filter. It is not a complete trading system, not a risk model, and not a prediction engine. Use it together with price structure, execution rules, and position management. The regime definition depends on the imported library, so validate it against your market and timeframe before relying on it.
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.
Do not use this indicator on Heikin-Ashi, Renko, Kagi, Point-and-Figure, or Range charts, as these chart types can produce unrealistic results for signal markers and alerts.
Best regards and happy trading
Chervolino
MACD HTF Hardcoded
FVG [Stansbooth]Fair Value Gap (FVG) Indicator
Spot Institutional Imbalances. Trade the Rebalance.
Fair Value Gaps reveal where price moved so aggressively that it left behind untraded zones—areas where smart money is likely to return.
What It Detects
Bullish FVG : Gap between Candle 1's high and Candle 3's low — expect price to retrace here for longs
Bearish FVG : Gap between Candle 1's low and Candle 3's high — watch for shorts on the pullback
Why Traders Love It
Markets hate inefficiency. When price rockets through a zone without proper auction, it creates a magnet for future price action. This indicator automatically identifies these imbalances so you can anticipate high-probability reversal and continuation zones.
Features
Auto-detection of bullish and bearish FVGs
Customizable gap visualization
Works on all timeframes and instruments
Clean, non-repainting logic
Best Used With
Order blocks, liquidity sweeps, and market structure breaks for confluence-based entries aligned with ICT and smart money concepts.
Trade where institutions trade. Let price come to you.
CHPY vs Semiconductor Sector Comparison//@version=5
indicator("CHPY vs Semiconductor Sector Comparison", overlay=false, timeframe="W")
// CHPY
chpy = request.security("CHPY", "W", close)
plot((chpy/chpy -1)*100, color=color.new(color.blue,0), title="CHPY")
// SOXX (Semiconductor Index ETF)
soxx = request.security("SOXX", "W", close)
plot((soxx/soxx -1)*100, color=color.new(color.red,0), title="SOXX")
// SMH (Semiconductor ETF)
smh = request.security("SMH", "W", close)
plot((smh/smh -1)*100, color=color.new(color.green,0), title="SMH")
// NVDA
nvda = request.security("NVDA", "W", close)
plot((nvda/nvda -1)*100, color=color.new(color.orange,0), title="NVDA")
// AVGO
avgo = request.security("AVGO", "W", close)
plot((avgo/avgo -1)*100, color=color.new(color.purple,0), title="AVGO")
1 PM IST MarkerThis lightweight Pine Script indicator automatically marks 1:00 PM IST on intraday charts, regardless of the chart’s timezone. It extracts the date from each bar and generates a precise timestamp for 13:00 in the Asia/Kolkata timezone. When a bar matches this time, the script draws a vertical red line across the chart and adds a small label for easy visual reference.
The tool is useful for traders who track mid-session behavior, monitor liquidity shifts, or analyze post-lunch volatility patterns in Indian markets. It works on all intraday timeframes and require
NIFTY, SENSEX AND BANKNIFTY Options Expiry MarkerNSE Options Expiry Background Marker
Category: Date/Time Indicators
Timeframe: Daily
Markets: NSE (India) / Any Exchange
Description
Automatically highlights weekly and monthly options expiry days for NIFTY, BANKNIFTY, and SENSEX using color-coded background shading. Works across entire chart history with customizable transparency levels.
Key Features
✅ Background Highlighting - Non-intrusive color shading on expiry days
✅ Multi-Index Support - NIFTY, BANKNIFTY, and SENSEX simultaneously
✅ Weekly & Monthly Expiry - Different transparency levels for easy distinction
✅ Customizable Expiry Days - Set any weekday (Mon-Fri) as expiry day
✅ Adjustable Transparency - Separate controls for weekly and monthly expiries
✅ Full Historical Data - Works on all visible bars across years
✅ Smart Monthly Detection - Automatically identifies last occurrence in month
✅ Color Coded - Blue (NIFTY), Red (BANKNIFTY), Green (SENSEX)
Use Cases
Options trading strategy planning
Identify expiry day volatility patterns
Visual reference for monthly vs weekly cycles
Backtest strategies around expiry days
Track multiple index expiries on single chart
Technical Details
Uses India timezone (GMT+5:30) for accurate date calculations
Handles leap years automatically
Smart algorithm identifies last weekday occurrence per month
Works seamlessly on any chart timeframe (optimized for Daily)
No performance impact - simple background coloring
Binary Options v4.0This script fixes the situation of consecutive losses from single-direction trades through window logic
RG_CHARTS_TURNOVER_DAILYIn the context of the stock market, "turnover" typically refers to the stock market turnover ratio, a key indicator of market liquidity and trading activity. It measures how frequently the total value of shares traded on a market is relative to its overall size. This metric helps investors, analysts, and regulators gauge the efficiency and vibrancy of a stock exchange—higher turnover often signals a more liquid and active market where shares can be bought or sold easily without significantly impacting prices
Why It MattersLiquidity Insight: High turnover reduces the risk of price slippage during trades.
Investor Signals: Actively traded markets attract more participants; low turnover might indicate investor caution or market inefficiencies.
Economic Indicator: Rising turnover can correlate with economic growth or speculation, while declines may signal recessions.
Cross-Market Comparison: Emerging markets often have higher ratios due to fewer listed companies but intense trading, while developed markets prioritize stability.
Kai GoNoGo 2mKai GoNoGo 2m is a multi-factor trend confirmation system designed for fast intraday trading on the 2-minute chart.
It combines EMAs, MACD, RSI and ADX through a weighted scoring model to generate clear Go / NoGo conditions for both CALL (long) and PUT (short) setups.
The indicator paints the candles with pure colors to show the current strength of the trend:
Strong Go (Bright Blue): Full bullish alignment across EMAs, momentum and trend strength.
Weak Go (Light Blue): Bullish structure but with softer momentum.
Weak NoGo (Light Pink): Bearish structure starting to develop.
Strong NoGo (Bright Pink): Full bearish alignment across all components.
Neutral (Gray): No trend, compression or transition phase.
Components included:
EMA Trend Structure (9/21/50/100/200)
MACD Momentum (12-26-9)
RSI Confirmation (14)
ADX Trend Strength Filter via DMI (14,14)
Scoring system inspired by the original GoNoGo concept, improved for speed-based trading.
Designed for:
Scalping, 0DTE options, FAST trend continuation entries, and momentum confirmation on QQQ, SPY, NQ, ES and high-beta names.
This version uses pure colors (no gradients) for maximum clarity when trading fast charts.
[iQ]PRO True Opens+🔱 PRO True Opens+: Dynamic Session Anchors for Elite Market Analysis
The PRO True Opens+ indicator, meticulously crafted by MarketMakerlQ, is an essential tool designed for serious traders seeking to leverage the significance of key session openings as structural market anchors. This premium, closed-source solution provides unparalleled clarity on critical price levels across multiple trading periods.
Unlocking High-Value Price Clarity
This advanced overlay indicator dynamically plots and manages lines corresponding to the Open price at four pivotal times in the New York (NY) trading day:
00:00 NY Open (Midnight): The official start of the global trading day for many major instruments.
08:30 NY Open: A crucial time often associated with significant financial news releases and volume spikes.
09:30 NY Open: The official opening bell for the major US stock exchanges, marking a period of high volatility and liquidity.
13:30 NY Open: A mid-afternoon period often coinciding with the close of European markets and subsequent shifts in momentum.
By clearly visualizing these True Open prices on your chart, the indicator empowers users to identify potential support and resistance zones and observe how price action reacts to these time-based anchors.
Adaptive and Persistent History
A core differentiating feature is its sophisticated history management system. Unlike simpler indicators, PRO True Opens+ is engineered with a robust 18:00 ET rollover mechanism that intelligently "freezes" the prior session's open levels.
Historical Lookback: Users gain control over the market's memory, setting a custom History Lookback (Days) to display historical open lines. This provides context on multi-day price development relative to prior session starting points.
Persistent Anchors: The indicator maintains the integrity and persistence of these key levels across bars and sessions, ensuring they remain relevant structural references for your analysis.
Enhanced Flexibility and Customization
The tool is built with an extensive suite of user-defined inputs, ensuring maximum adaptability to any trading style or instrument:
Independent Control: Each of the four major opens (00:00, 08:30, 09:30, 13:30) can be individually enabled/disabled and customized with unique Color, Line Style, and Line Width.
Current Timeframe Open (C.O.): It also tracks and displays the Current Timeframe Open (C.O.), providing an instant reference point for the current bar's session start, with an option to manage its historical persistence at the 18:00 rollover.
Display Precision: Inputs for Right Pad (bars) and Label Pad (bars) allow for precise control over the visual extension and positioning of the price labels and lines on the right edge of the chart, optimizing for a clean and efficient display.
PRO True Opens+ offers a powerful, professionally engineered lens through which to view market structure. It's a non-repainting, foundational tool for traders who demand precision in their analysis of time-and-price relationships.
Use together with Market Sessions+ and other tools coming for best personal strategy empowerments!
M30-H1It is a long established fact that a reader will be distracted by the readable content of a page when looking at its layout. The point of using Lorem Ipsum is that it has a more-or-less normal distribution of letters, as opposed to using 'Content here, content here', making it look like readable English. Many desktop publishing packages and web page editors now use Lorem Ipsum as their default model text, and a search for 'lorem ipsum' will uncover many web sites still in their infancy. Various versions have evolved over the years, sometimes by accident, sometimes on purpose (injected humour and the like).
[iQ]PRO Market Sessions+🌐 PRO Market Sessions+: The Architecture of Market Time
Elevate your market analysis with the PRO v1 Time Cycles indicator—a sophisticated, proprietary framework engineered to meticulously map and visualize critical, high-probability time segments across global trading sessions. This tool transcends conventional session highlighting by providing a multi-layered, time-boxed view of market behavior, offering unparalleled clarity on structural shifts and key price levels.
This tool is optimized for professional traders, providing an edge by focusing on the fractal nature of market timing.
⏳ Precision Time Segmentation
The core functionality revolves around the hyper-precise segmentation of the trading day, anchored to the New York (EST) timezone to capture institutional flow.
Global Overlap Coverage: Integrates key Asia and London sessions with the comprehensive New York trading day, allowing for the analysis of transitional volatility and overlap strategies.
Structured Cycles: Deploys a unique system of 270-minute cycles, nested with 90-minute and 30-minute subdivisions. This hierarchical structure reveals how market structure evolves from macro-sessions down to critical, granular pivots.
New York Focus: Features distinct AM and PM 270-minute cycles, further broken down into 90-minute tranches (AM1, AM2, AM3 / PM1, PM2, PM3) and fine-tuned with 30-minute and even 10-minute boxes for exceptional high-resolution analysis.
London Depth: The London session is captured as a 270-minute block, with its own nested 90/30-minute structures, providing a complete view of the European market's structural integrity before the US open.
✨ Dynamic Structural Analysis
Beyond mere visualization, the indicator computes and projects critical structural levels within each time box, acting as dynamic reference points for price action.
Dynamic Price Anchors: Each time-cycle box is calculated to reveal key price metrics, including the Open Price and the Equilibrium (EQ) Level (Mid-Range). These lines serve as potent technical levels, often representing institutional reference points for deviation and reversion.
High/Low Capture: The extreme High and Low of each significant time segment are captured and marked, forming the boundaries of the structural range and identifying potential areas of liquidity draw.
Persistent Levels: Projects Previous Day, Week, and Month High/Low levels. These crucial historical benchmarks act as magnets or barriers to current price movement, providing essential macro-context to intra-day analysis.
🎨 Customizable & Non-Intrusive
The PRO v1 Time Cycles is designed for seamless integration into any chart setup, offering extensive customization without cluttering the price action.
Control over Granularity: Users maintain complete control over which time cycles (270, 90, 30, 10-minute) are displayed, ensuring the chart reflects the specific trading strategy and timeframe required.
Aesthetic Flexibility: Features highly detailed options for color, border styles, text alignment, and line thickness for every major session and nested cycle, allowing for a fully personalized and professional workspace.
This tool is a fundamental component of the iQ PRO suite, providing the essential temporal context required to execute sophisticated, time-based trading strategies. Its robust architecture is built to empower the discerning trader with a clearer, more structured view of the market's inner workings.






















