Chỉ báo và chiến lược
History Trading SessionsThis indicator helps visually structure the trading day by highlighting custom time zones on the chart.
It is designed for historical analysis, trading discipline, and clear separation between analysis time, active trading, and no-trade periods.
Recommended to use on 4h and below time frames.
EURUSD Pre-London Open Range MarkerEURUSD Pre-London Open Range Marker
This script marks the high and low formed in the pre-London open period on EURUSD, and extends those levels forward once London opens.
It is intended as a neutral reference tool for traders who pay attention to time-based structure around the London session.
What it does
Automatically tracks London time, including daylight-saving changes
Identifies the pre-London open range
Plots the high and low of that range
Extends those levels forward from the London open
Displays the range size (pips)
What it does not do
No trade signals
No alerts
No entries, stops, or targets
No performance claims
This script provides structure only. Interpretation and execution are left to the user.
Intended use
This tool is for traders who:
Trade EURUSD
Care about London session behaviour
Prefer simple, time-based reference levels over indicators
Scope and design
Hard-coded for EURUSD
Pre-London open window is fixed and not user-configurable
Built to prioritise consistency and repeatability over flexibility
Additional context
I use this pre-London range as part of a fully documented, rules-based EURUSD trading system focused on risk management and repeatable execution which I have traded for two years.
The strategy itself is not included here.
Disclaimer
This script is provided for educational and reference purposes only.
All trading involves risk. You are responsible for your own decisions.
One-line link
For those interested in how this range is used within a complete, rules-based EURUSD trading system, further documentation is available here:
PDH/PDL (Personal)This TradingView indicator is a technical analysis tool designed to plot the Previous Day High (PDH) and Previous Day Low (PDL) levels with high accuracy. It is specifically engineered for traders who require market boundaries calculated based on the Indian Standard Time (IST) session, ensuring that day breaks are identified precisely at 12:00 AM IST regardless of the exchange's native timezone.
Opposite Candle Zone Identifier (v6) - Extended🔍 Opposite Candle Zone Identifier (Extended)
Opposite Candle Zone Identifier is a price-action based indicator designed to identify potential reversal or absorption zones by detecting candles that move against the surrounding trend.
The indicator highlights a central opposite candle (or group of candles) that is surrounded by candles moving in the opposite direction, both before and after the central candle.
This structure often represents areas where institutional activity, absorption, or supply/demand imbalance may occur.
📌 How the Indicator Works
The indicator analyzes price action using three configurable blocks:
1️⃣ Candles Before (Backward)
A user-defined number of candles before the central candle(s) must follow a consistent trend:
Bullish candles for a bearish zone
Bearish candles for a bullish zone
2️⃣ Central Candle(s)
The core of the pattern:
Default: 1 opposite candle
Can be increased (up to 5) to adapt the indicator to lower timeframes or noisier markets
This central block must move against the previous trend, signaling a potential shift or absorption area.
3️⃣ Candles After (Forward)
A user-defined number of candles after the central candle(s) must resume the original trend, confirming the pattern.
⚠️ The signal is confirmed only after the “after” candles are completed.
This avoids repainting and ensures structural confirmation.
📐 Zone Concept
The highlighted central candle (or candles) can be used to define a price zone:
The high and low of the central candle(s) represent a potential supply or demand zone
These zones can be used for:
Reversal areas
Reaction zones
Entry refinement
Stop placement
⚙️ Inputs & Customization
Number of candles before
Controls how many candles must follow the initial trend.
Number of candles after
Defines how many candles are required for confirmation.
Central candles count
Default is 1, but can be increased (e.g. 2) for:
Lower timeframes
More reliable structure
Reduced noise
ATR-based offset
Labels are positioned using a dynamic ATR offset to improve chart readability across different markets and timeframes.
📈 Bullish & Bearish Zones
🟢 Bullish Zone
Bearish candles before
Bullish central candle(s)
Bearish candles after
Indicates potential demand or accumulation zone
🔴 Bearish Zone
Bullish candles before
Bearish central candle(s)
Bullish candles after
Indicates potential supply or distribution zone
🧠 Best Use Cases
Works best on 15m and higher timeframes
Effective on:
Indices
Forex majors
Liquid cryptocurrencies
Can be combined with:
Trend filters (EMA, VWAP)
Support & resistance
Market structure analysis
⚠️ Notes
This indicator is confirmation-based, not predictive
Signals appear only after pattern completion
It does not repaint
Best used as a confluence tool, not as a standalone trading system
🎯 Summary
Opposite Candle Zone Identifier helps traders:
Detect opposite-direction candles within strong trends
Identify potential supply and demand zones
Adapt the pattern to different timeframes
Improve price-action based decision making
EMA(Any) Cross Entries This indicator is a clean, directional EMA(6) crossover entry tool designed to identify high-quality trend entries while eliminating crossover noise. It plots a single EMA with a default length of 6 (optionally overridden by a user-defined length) and generates an ENTER LONG signal when price crosses above the EMA and an ENTER SHORT signal when price crosses below it. To prevent signal spam in trending or choppy conditions, the logic uses a directional arming system, allowing only one entry per direction until price crosses back to the opposite side of the EMA. An optional cooldown period further limits how frequently signals can occur. The result is a disciplined, visually clean entry tool that highlights meaningful momentum shifts rather than repeated micro-crosses around the moving average.
VWAP based long only- AdamMancini//@version=6
indicator("US500 Levels Signal Bot (All TF) v6", overlay=true, max_labels_count=500, max_lines_count=500)
//====================
// Inputs
//====================
levelsCSV = input.string("4725,4750,4792.5,4820", "Key Levels (CSV)")
biasMode = input.string("Auto", "Bias Timeframe", options= )
emaLen = input.int(21, "Bias EMA Length", minval=1)
rsiLen = input.int(14, "RSI Length", minval=1)
atrLen = input.int(14, "ATR Length", minval=1)
proxATR = input.float(0.35, "Level Proximity (x ATR)", minval=0.05, step=0.05)
slATR = input.float(1.30, "SL (x ATR)", minval=0.1, step=0.05)
tp1ATR = input.float(1.60, "TP1 (x ATR)", minval=0.1, step=0.05)
tp2ATR = input.float(2.80, "TP2 (x ATR)", minval=0.1, step=0.05)
useTrend = input.bool(true, "Enable Trend Trigger (Break & Close)")
useMeanRev = input.bool(true, "Enable Mean-Reversion Trigger (Sweep & Reclaim)")
showLevels = input.bool(true, "Plot Levels")
//====================
// Bias TF auto-mapping
//====================
f_autoBiasTf() =>
sec = timeframe.in_seconds(timeframe.period)
string out = "240" // default H4
if sec > 3600 and sec <= 14400
out := "D" // 2H/4H -> Daily bias
else if sec > 14400 and sec <= 86400
out := "W" // D -> Weekly bias
else if sec > 86400
out := "W"
out
biasTF = biasMode == "Auto" ? f_autoBiasTf() :
biasMode == "H4" ? "240" :
biasMode == "D" ? "D" :
biasMode == "W" ? "W" : "Off"
//====================
// Parse levels CSV + plot lines (rebuild on change)
//====================
var float levels = array.new_float()
var line lvlLines = array.new_line()
f_clearLines() =>
int n = array.size(lvlLines)
if n > 0
// delete from end to start
for i = n - 1 to 0
line.delete(array.get(lvlLines, i))
array.clear(lvlLines)
f_parseLevels(_csv) =>
array.clear(levels)
parts = str.split(_csv, ",")
for i = 0 to array.size(parts) - 1
s = str.trim(array.get(parts, i))
v = str.tonumber(s)
if not na(v)
array.push(levels, v)
f_drawLevels() =>
f_clearLines()
if showLevels
int n = array.size(levels)
if n > 0
for i = 0 to n - 1
lv = array.get(levels, i)
array.push(lvlLines, line.new(bar_index, lv, bar_index + 1, lv, extend=extend.right))
if barstate.isfirst or levelsCSV != levelsCSV
f_parseLevels(levelsCSV)
f_drawLevels()
// Nearest level
f_nearestLevel(_price) =>
float best = na
float bestD = na
int n = array.size(levels)
if n > 0
for i = 0 to n - 1
lv = array.get(levels, i)
d = math.abs(_price - lv)
if na(bestD) or d < bestD
bestD := d
best := lv
best
//====================
// Bias filter (higher TF) - Off supported
//====================
bool biasBull = true
bool biasBear = true
if biasTF != "Off"
b_close = request.security(syminfo.tickerid, biasTF, close, barmerge.gaps_off, barmerge.lookahead_off)
b_ema = request.security(syminfo.tickerid, biasTF, ta.ema(close, emaLen), barmerge.gaps_off, barmerge.lookahead_off)
b_rsi = request.security(syminfo.tickerid, biasTF, ta.rsi(close, rsiLen), barmerge.gaps_off, barmerge.lookahead_off)
biasBull := (b_close > b_ema) and (b_rsi > 50)
biasBear := (b_close < b_ema) and (b_rsi < 50)
//====================
// Execution logic = chart timeframe (closed candle only)
//====================
atr1 = ta.atr(atrLen)
rsi1 = ta.rsi(close, rsiLen)
c1 = close
c2 = close
h1 = high
l1 = low
// Manual execution reference: current bar open (next-bar-open proxy)
entryRef = open
lvl = f_nearestLevel(c1)
prox = proxATR * atr1
nearLevel = not na(lvl) and (math.abs(c1 - lvl) <= prox or (l1 <= lvl and h1 >= lvl))
crossUp = (c2 < lvl) and (c1 > lvl)
crossDown = (c2 > lvl) and (c1 < lvl)
sweepDownReclaim = (l1 < lvl) and (c1 > lvl)
sweepUpReject = (h1 > lvl) and (c1 < lvl)
momBull = rsi1 > 50
momBear = rsi1 < 50
buySignal = nearLevel and biasBull and momBull and ((useTrend and crossUp) or (useMeanRev and sweepDownReclaim))
sellSignal = nearLevel and biasBear and momBear and ((useTrend and crossDown) or (useMeanRev and sweepUpReject))
//====================
// SL/TP (ATR-based)
//====================
slBuy = entryRef - slATR * atr1
tp1Buy = entryRef + tp1ATR * atr1
tp2Buy = entryRef + tp2ATR * atr1
slSell = entryRef + slATR * atr1
tp1Sell = entryRef - tp1ATR * atr1
tp2Sell = entryRef - tp2ATR * atr1
//====================
// Plot signals
//====================
plotshape(buySignal, title="BUY", style=shape.labelup, text="BUY", location=location.belowbar, size=size.tiny)
plotshape(sellSignal, title="SELL", style=shape.labeldown, text="SELL", location=location.abovebar, size=size.tiny)
//====================
// Alerts (Dynamic) - set alert to "Any alert() function call"
//====================
if buySignal
msg = "US500 BUY | TF=" + timeframe.period + " | Bias=" + biasTF +
" | Lvl=" + str.tostring(lvl) +
" | EntryRef=" + str.tostring(entryRef) +
" | SL=" + str.tostring(slBuy) +
" | TP1=" + str.tostring(tp1Buy) +
" | TP2=" + str.tostring(tp2Buy)
alert(msg, alert.freq_once_per_bar_close)
if sellSignal
msg = "US500 SELL | TF=" + timeframe.period + " | Bias=" + biasTF +
" | Lvl=" + str.tostring(lvl) +
" | EntryRef=" + str.tostring(entryRef) +
" | SL=" + str.tostring(slSell) +
" | TP1=" + str.tostring(tp1Sell) +
" | TP2=" + str.tostring(tp2Sell)
alert(msg, alert.freq_once_per_bar_close)
Trappp's Advanced Multi-Timeframe Trading ToolkitThis comprehensive trading script by Trappp provides a complete market analysis framework with multiple timeframe support and resistance levels. The indicator features:
Key Levels:
· Monthly (light blue dashed) and Weekly (gold dashed) levels for long-term context
· Previous day high/low (yellow) with range display
· Pivot-based support/resistance (pink dashed)
· Premarket levels (blue) for pre-market activity
Intraday Levels:
· 1-minute opening candle (red)
· 5-minute (white), 15-minute (green), and 30-minute (purple) session levels
· All intraday levels extend right throughout the trading day
Technical Features:
· EMA 50/200 cross detection with alert labels
· Candlestick pattern recognition near key levels
· Smart proximity detection using ATR
· Automatic daily/weekly/monthly updates
Trappp's script is designed for traders who need immediate visual reference of critical price levels across multiple timeframes, helping identify potential breakouts, reversals, and pattern-based setups with clear, color-coded visuals for quick decision-making.
Market Potential EstimatorWhat this indicator shows
This indicator measures how much potential movement the market still has, not direction.
It answers the question:
“Does the market still have room to move, or is it already exhausted?”
Red zone (Low potential)
Exhaustion / slowdown zone.
The market has used most of its available range.
Expect:
consolidation
pullbacks
reduced follow-through
⚠️ Red does NOT mean reversal
How to use it correctly
Use it as a filter, not a trigger
Avoid opening new trades in red zones
Reduce targets when potential is low
Combine with:
direction/bias
momentum
structure
Tamil, Buy/Sell Signal for Day Trade and Swing TradeTamil – Buy/Sell Signal for Day Trade and Swing Trade is a price-action style indicator that prints Long and Short signals and automatically projects a full trade plan on the chart: Entry (EP), Stop-Loss (SL), and up to 5 Take-Profit levels (TP1–TP5).
It combines multiple momentum/overextension filters (Keltner Channel bands, CCI, ROC, RSI, Parabolic SAR, and Balance of Power) to detect oversold dips for longs and overbought spikes for shorts. When a signal triggers, the script:
• Draws a signal label showing EP/SL/TP1–TP5 values.
• Plots step lines for EP, SL, and TP levels so you can manage the trade visually.
• Marks TP hits and Stop hits with shapes + background highlights.
• Includes a 200-length DEMA plot for higher-timeframe trend context (optional visual filter).
How signals work (high level):
• Long Signal: price pushes below a deeper Keltner lower band (mean-reversion setup) + bearish momentum extremes (CCI/BOP/ROC) with SAR/median conditions confirming a dip setup.
• Short Signal: price pushes into upper Keltner expansion + bullish momentum extremes (CCI/RSI/ROC) with SAR/median conditions confirming a spike setup.
Best use: intraday scalps or swing entries where you want clear, pre-defined levels for scaling out (TP1→TP5) and strict risk control (SL).
Note: This is an indicator (not a strategy backtest). Always validate on your instrument/timeframe and use risk management
Volume Suite: RVOL + Delta CandlesRelative Volume + High Volume Delta Candles.
Great to spot high Effort from Buyers and Sellers.
Nifty Hierarchical Macro GuardOverview
The Nifty Hierarchical Macro Guard is a "Market Compass" indicator specifically designed for Indian equity traders. It locks its logic to the Nifty 50 Index (NSE:NIFTY) and applies a strict hierarchy of trend analysis. The goal is simple: prioritize the long-term trend (Monthly/Weekly) to decide if you should even be in the market, then use the short-term trend (Daily) for precise exit timing.
This script ensures you never ignore a macro "crash" signal while trying to trade minor daily fluctuations.
The Color Hierarchy (Priority Logic)
The indicator uses a "Top-Down" filter. Higher timeframe signals override lower timeframe signals:
Level 1: Monthly (Ultra-Macro) — Deep Maroon
Condition: Nifty 10 EMA is below the 20 EMA on the Monthly chart.
Action: This is the highest priority. The background will turn Deep Maroon, overriding all other colors. This is your "Forget Trading" signal. The long-term structural trend is broken.
Level 2: Weekly (Macro Warning) — Dark Red
Condition: Monthly is Bullish, but Nifty 10 EMA is below the 20 EMA on the Weekly chart.
Action: The background turns Dark Red. This indicates a significant macro correction. You should stay out of fresh positions and protect capital.
Level 3: Daily (Tactical) — Light Red / Light Green
Condition: Both Monthly and Weekly are Bullish (Green).
Action: The background will now react to the Daily 10/20 EMA cross.
Light Green: Nifty is healthy; safe for fresh positions.
Light Red: Tactical exit signal. Nifty is seeing short-term weakness; exit positions quickly.
Key Features
Symbol Locked: No matter what stock you are viewing (Reliance, HDFC, Midcaps), the background only reacts to NSE:NIFTY.
Clean Interface: No messy lines or labels on the price chart. The information is conveyed purely through background color shifts.
Customizable: Change the MA types (EMA/SMA) and lengths (e.g., 10/20 or 20/50) in the settings.
Macro Dashboard: A small, transparent table in the top-right corner displays exactly which timeframe is currently controlling the background color.
How to Use for Nifty Strategy
Stay Out: If the chart is Deep Maroon or Dark Red, do not look for "buying the dip." Wait for the macro health to return.
Take Exits: If the background is Light Green and suddenly turns Light Red, it means the Daily Daily 10/20 cross has happened. Exit your Nifty-sensitive positions immediately.
EMA RANGEEMA RANGE
EMA RANGE is a simple, price-focused indicator that plots an Exponential Moving Average (EMA) with a dynamic ATR-based range above and below it. The ATR bands adapt to market volatility, helping traders visualize normal price movement and identify potential expansion or compression zones.
🔹 Features
Customizable EMA length
ATR range bands plotted above and below the EMA
Adjustable ATR length and multiplier
Toggle to enable or disable ATR ranges
Fully customizable colors and line thickness from the Style tab
🔹 How It Works
The EMA serves as the central trend reference.
The Average True Range (ATR) measures volatility.
Upper and lower bands are calculated as:
EMA ± (ATR × Multiplier)
When price remains inside the range, conditions are considered normal. Moves outside the range may signal increased volatility, momentum expansion, or potential breakout conditions.
🔹 Best Use Cases
Trend continuation and pullback analysis
Volatility-based risk framing
Dynamic support and resistance visualization
Works on any market and timeframe
EMA RANGE is designed to stay clean, responsive, and easy to interpret—making it suitable for both discretionary and systematic traders.
First Presented FVGSummary: First Presented FVG Indicator
This is a Pine Script v6 TradingView indicator that identifies and visualizes the first Fair Value Gap (FVG) that forms within configurable time windows during a trading session.
What it Does
1. Detects FVGs : Uses the classic 3-candle FVG definition:
- Bullish FVG: When low > high (gap up)
- Bearish FVG: When high < low (gap down)
2. "First Presented" Logic : For each configured time slot, it captures only the first qualifying FVG that forms—subsequent FVGs in that window are ignored.
3. Visual Display :
- Draws a colored box spanning from detection time to session end
- Optional text label showing detection time (e.g., "9:38 Tue FP FVG")
- Optional grade lines at 25%, 50%, and 75% levels within the FVG
Key Configuration
Setting Description
Timeframe Only works on 5-minute charts or lower
Timezone IANA timezone for session times (default: America/New_York)
Session Futures trading hours (default: 1800-1715)
Min FVG Size Minimum gap size in ticks to qualify
4 Time Slots Each with enable toggle, time window, and color
Default Time Slots
Slot 1 (enabled): 09:30-10:30 — lime green
Slot 2 (enabled): 13:30-14:30 — blue
Slot 3 (disabled): 13:00-13:30 — teal
Slot 4 (disabled): 14:15-14:45 — fuchsia
Technical Features
Handles cross-midnight sessions correctly
Resets all drawings at each new session
Skips the first bar of each window to ensure valid 3-candle lookback
Clamps slot windows to session boundaries
Multi-Contraction VCP DetectorThis indicator highlights low volume and contracted price movement prior to possible breakouts.
Market Internal Overlay - Skew and Put/Call RatioTracks both the CBOE:SKEW and INDEX:CPC and will highlight when certain thresholds are met.
Blue candle = skew is below 125 (low relative levels of hedging occurring)
Gray candle = skew is above 150 (higher relative levels of hedging occurring)
Red candle = 10 DMA of the put/call ratio is above 1.0 (signaling potential overbought territory)
Green candle = 10 DMA of the put/call ratio is below 0.80 (signaling potential oversold territory)
Purple candle = Both signals are occurring (in either direction)
To view the candle overlay, either switch the price data off, or change the colors to be darker and more transparent.
Bar CountCount K bars based on sessions
Support at most 3 sessions
Customize the session's timezone and period
Set steps between each number
Use with the built-in Trading Session indicator is a great convenience






















