50 EMA HLC Tejas50 EMA with All important sources. Made it with 50 EMA and Based on my understanding and observations.
Chỉ báo và chiến lược
First Green/Red Week Day + Return SignalsWill give you the high of the first red day of the week and the low of the first green day of the week and gives you a signal when price returns and fails to breakout great signals
Ichimoku MTF HeatmapGreat for flying down you watchlist, getting an idea what time frame to go to. Enjoy!
Ichimoku Traffic Lights Go--no go flags for Ichimoku Cloud. For quick scanning thru your watchlist, and good for scanning through timeframes.
CANDLE_TIME_RDThis tool displays the time of each candle directly on the chart by placing a label below
the bar with an upward-pointing arrow for clear visual alignment. It helps traders quickly
identify the exact timestamp of any candle during fast intraday analysis or historical review.
OVERVIEW
The script extracts the hour and minute of each bar, formats the timestamp according to the
user’s preference, and prints it beneath the candle. This removes the need to rely on the
data window or crosshair for time inspection. It is ideal for ITI evaluation, timestamp
journaling, and precise replay study.
FEATURES
- Prints the time under each candle or every N-th candle using a simple step input.
- Supports both AM/PM and military time through a toggle input.
- Builds all hour and minute text manually to ensure consistent formatting.
- Uses label.style_label_up to draw an arrow pointing toward the candle.
- Positions labels with yloc.belowbar so they do not overlap price bars.
USE CASES
- Reviewing setups with ChatGPT where exact candle timing matters.
- Studying EMA touches, VWAP interactions, or momentum shifts that occur at specific times.
- Journaling entries and exits with precise timestamps.
- Quickly identifying candle times without zooming or opening data windows.
This script is designed for clarity and convenience, improving workflow for structured
intraday traders and replay analysts.
Range Lattice## RangeLattice
RangeLattice constructs a higher-timeframe scaffolding on any intraday chart, locking in structural highs/lows, mid/quarter grids, VWAP confluence, and live acceptance/break analytics. It provides a non-repainting overlay that turns range management into a disciplined process.
HOW IT WORKS
Structure Harvesting – Using request.security() , the script samples highs/lows from a user-selected timeframe (default 240 minutes) over a configurable lookback to establish the dominant range.
Grid Construction – Midpoint and quarter levels are derived mathematically, mirroring how institutional traders map distribution/accumulation zones.
Acceptance Detection – Consecutive closes inside the range flip an acceptance flag and darken the cloud, signaling balanced auction conditions.
Break Confirmation – Multi-bar closes outside the structure raise break labels and alerts, filtering the countless fake-outs that plague breakout traders.
VWAP Fan Overlay – Session VWAP plus ATR-based bands provide a live measure of flow centering relative to the lattice.
HOW TO USE IT
Range Plays : Fade taps of the outer rails only when acceptance is active and VWAP sits inside the grid—this is where mean-reversion works best.
Breakout Plays : Wait for confirmed break labels before entering expansion trades; the dashboard's Width/ATR metric tells you if the expansion has enough fuel.
Market Prep : Carry the same lattice from pre-market into regular trading hours by keeping the structure timeframe fixed; alerts keep you notified even when managing multiple tickers.
VISUAL FEATURES
Range Tap and Mid Pivot markers provide a tape-reading breadcrumb trail for journaling.
Cloud fill opacity tightens when acceptance persists, visually signaling balance compressions ready to break.
Dashboard displays absolute width, ATR-normalized width, and current state (Balanced vs Transitional) so you can glance across charts quickly.
Acceptance Flag toggle: Keep the repeated acceptance squares hidden until you need to audit balance.
PARAMETERS
Structure Timeframe (default: 240): Choose the timeframe whose ranges matter most (4H for indices, Daily for stocks).
Structure Lookback (default: 60): Bars sampled on the structure timeframe.
Acceptance Bars (default: 8): How many consecutive bars inside the range confirm balance.
Break Confirmation Bars (default: 3): Bars required outside the range to validate a breakout.
ATR Reference (default: 14): ATR period for width normalization.
Show Midpoint Grid (default: enabled): Display the midpoint and quarter levels.
Show Adaptive VWAP Fan (default: enabled): Toggle the VWAP channel for assets where volume distribution matters most.
Show Acceptance Flags (default: disabled): Turn the acceptance markers on/off for maximum visual control.
Show Range Dashboard (default: enabled): Disable if screen space is limited, re-enable during prep sessions.
ALERTS
The indicator includes five alert conditions:
Range High Tap: Price interacted with the RangeLattice high
Range Low Tap: Price interacted with the RangeLattice low
Range Mid Tap: Price interacted with the RangeLattice mid
Range Break Up: Confirmed upside breakout
Range Break Down: Confirmed downside breakout
Where it works best
This indicator works best on liquid instruments with clear structural levels. On very low timeframes (1-minute and below), the structure may update too frequently to be useful. The acceptance/break confirmation system requires patience—faster traders may find the multi-bar confirmation too slow for scalping. The VWAP fan is session-based and resets daily, which may not suit all trading styles.
First Green/Red Day of Week (Break Prior Day) + Linesfirst red day high first green day low looking for false breakouts on lower time frames
Daily Pivots (17:00 OHLC)These pivots are based on OHLC of previous 17:00 CT day (Futures reopen). If it doesn't look right try to click three dots on indicator and select "pin to right scale".
Daily Settlement High LowThis script extends a line from the high and low of the 14:59:30 CT Candle which is the CME daily settlement window for the SP500 and Emini500. Only works on the 30 second chart.
XAUUSD Liquidity Sweep + Engulfing (4H/2H/15m)Key Features in This Script:
4H Bias (Trend): We use RSI on 4H to determine if the market is in a bullish or bearish trend.
2H Setup: When price sweeps below previous lows or above previous highs (liquidity sweep), we confirm it with RSI and an engulfing candle.
15m Entry: After the liquidity sweep is confirmed on the 15m chart, we check for a bullish engulfing (for buys) or bearish engulfing (for sells) with RSI confirmation.
How to Use It:
Add the Script: Copy-paste the code above into TradingView’s Pine Editor.
Apply it to the 15-minute chart for XAUUSD (Gold).
Alerts: Set up alerts when a Buy or Sell signal appears based on the conditions.
Alerts Example:
When a liquidity sweep and RSI flip happens with an engulfing candle, TradingView will notify you, helping you enter at the right time.
🚀 Next Steps:
Try it out and let me know how the alerts and signals are working for you.
If you'd like to add custom stop-loss or take-profit calculations, or include Fibonacci levels, let me know!
VPOCS ZScoreAn indicator Showing Candle POC's.
Added a Zscore Filter to filter out the High volume candle's.
I like to use at Key Support and resistance Area's to see Absorbtion and Offside positions only on High volume Candles ( The high volume candle part is Key! ). Thoose candles Generally indicate forced participants opening or closing positions, or "Breakout traders entering" positions. When i see a Hi-Volume at S/R levels and price is rejecting ( trading away from the POC ) ill take that as a trigger for a trade.
- Dynamic Support and resistance.
- Show Offside and and Trapped traders
You can tweak the Zscore nominator for Less of more Frequent hits.
SPX Breadth – Stocks Above 200-day SMA//@version=6
indicator("SPX Breadth – Stocks Above 200-day SMA",
overlay = false,
max_lines_count = 500,
max_labels_count = 500)
//–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––
// Inputs
group_source = "Source"
breadthSymbol = input.symbol("SPXA200R", "Breadth symbol", group = group_source)
breadthTf = input.timeframe("", "Timeframe (blank = chart)", group = group_source)
group_params = "Parameters"
totalStocks = input.int(500, "Total stocks in index", minval = 1, group = group_params)
smoothingLen = input.int(10, "SMA length", minval = 1, group = group_params)
//–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––
// Breadth series (symbol assumed to be percent 0–100)
string tf = breadthTf == "" ? timeframe.period : breadthTf
float rawPct = request.security(breadthSymbol, tf, close) // 0–100 %
float breadthN = rawPct / 100.0 * totalStocks // convert to count
float breadthSma = ta.sma(breadthN, smoothingLen)
//–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––
// Regime levels (0–20 %, 20–40 %, 40–60 %, 60–80 %, 80–100 %)
float lvl0 = 0.0
float lvl20 = totalStocks * 0.20
float lvl40 = totalStocks * 0.40
float lvl60 = totalStocks * 0.60
float lvl80 = totalStocks * 0.80
float lvl100 = totalStocks * 1.0
p0 = plot(lvl0, "0%", color = color.new(color.black, 100))
p20 = plot(lvl20, "20%", color = color.new(color.red, 0))
p40 = plot(lvl40, "40%", color = color.new(color.orange, 0))
p60 = plot(lvl60, "60%", color = color.new(color.yellow, 0))
p80 = plot(lvl80, "80%", color = color.new(color.green, 0))
p100 = plot(lvl100, "100%", color = color.new(color.green, 100))
// Colored zones
fill(p0, p20, color = color.new(color.maroon, 80)) // very oversold
fill(p20, p40, color = color.new(color.red, 80)) // oversold
fill(p40, p60, color = color.new(color.gold, 80)) // neutral
fill(p60, p80, color = color.new(color.green, 80)) // bullish
fill(p80, p100, color = color.new(color.teal, 80)) // very strong
//–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––
// Plots
plot(breadthN, "Stocks above 200-day", color = color.orange, linewidth = 2)
plot(breadthSma, "Breadth SMA", color = color.white, linewidth = 2)
// Optional label showing live value
var label infoLabel = na
if barstate.islast
label.delete(infoLabel)
string txt = "Breadth: " +
str.tostring(breadthN, format.mintick) + " / " +
str.tostring(totalStocks) + " (" +
str.tostring(rawPct, format.mintick) + "%)"
infoLabel := label.new(bar_index, breadthN, txt,
style = label.style_label_left,
color = color.new(color.white, 20),
textcolor = color.black)
New York Midnight Day Separator by JPThis is an updated script with setting added for transparency, line type etc., thanks to the original publisher of this code.
XRP Non-Stop Strategy (TP 25% / SL 15%)This strategy performs continuous automated trading exclusively on XRP. It opens long positions during favorable trend conditions, using a fixed Take Profit target of 25% above the entry price and a fixed Stop Loss of 15% below the entry. Once a trade is closed (either TP or SL), the strategy automatically re-enters on the next valid signal, enabling uninterrupted trading.
The script includes:
Dynamic Take Profit & Stop Loss lines
Optional EMA trend filter
Visual BUY and EXIT markers
TradingView alerts for automation or notifications
This strategy is built for traders who want a simple, price-action-driven system without fixed price levels, relying only on percentage-based movement from each entry.
KENW Liq Sweep 17This indicator is designed to alert on potential liquidity sweep events:
- In uptrends, it tracks Sell-Side Liquidity (SSL) by marking swing lows that occur during negative MACD histogram periods. It generates a long entry alert when price makes a lower low in SSL (i.e., the most recent SSL level is below the prior one), suggesting a sweep of sell-side liquidity before a potential bullish continuation.
- In downtrends, it tracks Buy-Side Liquidity (BSL) by marking swing highs that occur during positive MACD histogram periods. It generates a short entry alert when price makes a higher high in BSL (i.e., the most recent BSL level is above the prior one), indicating a sweep of buy-side liquidity before a potential bearish continuation.
BTC Mon 8am Buy / Wed 2pm Sell (NY Time, Daily + Intraday)This strategy implements a fixed weekly time-based trading schedule for Bitcoin, using New York market hours as the reference clock. It is designed to test whether a consistent pattern exists between early-week accumulation and mid-week distribution in BTC price behavior.
Entry Rule — Monday 8:00 AM (NY Time)
The strategy enters a long position every Monday at exactly 08:00 AM Eastern Time, one hour after the U.S. equities market pre-open activity begins influencing global liquidity.
This timing attempts to capture early-week directional moves in Bitcoin, which sometimes occur as traditional markets come online.
Exit Rule — Wednesday 2:00 PM (NY Time)
The strategy closes the position every Wednesday at 2:00 PM Eastern Time, a point in the week where:
U.S. equity markets are still open
BTC often experiences mid-week volatility rotations
Liquidity is generally high
This exit removes exposure before later-week uncertainty and gives a consistent, measurable time window for each trade.
Timeframe Compatibility
Works on intraday charts (recommended 1h or lower) using precise time-based triggers.
Also runs on daily charts, where entries and exits occur on the Monday and Wednesday bars respectively (daily charts cannot show intraday timestamps).
All timestamps are synced to America/New_York regardless of the exchange’s native timezone.
Trading Frequency
Exactly one trade per week, preventing overtrading and allowing comparison of weekly performance across years of historical BTC price data.
Purpose of the Strategy
This is not a value-based or trend-following system, but a behavioral/time-cycle analysis tool.
It helps evaluate whether a repeating short-term edge exists based solely on:
Weekday timing
Liquidity cycles
Institutional market influence
BTC’s habitual early-week momentum patterns
It is ideal for:
Backtesting weekly BTC behavior
Studying time-based edges
Comparing alternative weekday/time combinations
Visualizing weekly P&L structure
Risk Notes
This strategy does not attempt to predict price direction and should not be assumed profitable without robust backtesting.
Time-based edges can appear, disappear, or invert depending on macro conditions.
There is no stop loss or risk management included by default, so the strategy reflects raw timing-based performance.
ICT Core LibraryBibliothèque de fonctions ICT 2022
Library "ICTCore"
detectFVG()
detectOrderBlock()
getOBScore(ob)
Parameters:
ob (OrderBlock)
getLatestOB(obs, direction, currentPrice)
Parameters:
obs (array)
direction (string)
currentPrice (float)
detectLiquiditySweep(swingLength)
Parameters:
swingLength (simple int)
detectMSS()
calculateOTEFromOB(ob)
Parameters:
ob (OrderBlock)
isInOTE(price, ob)
Parameters:
price (float)
ob (OrderBlock)
detectConfirmationCandle(direction)
Parameters:
direction (string)
getTrendHTF(timeframe)
Parameters:
timeframe (simple string)
isInSession(sessionName)
Parameters:
sessionName (string)
FVG
Fields:
top (series float)
bottom (series float)
bar_index (series int)
mitigated (series bool)
direction (series string)
OrderBlock
Fields:
high (series float)
low (series float)
bar_index (series int)
broken (series bool)
direction (series string)
hasVolume (series bool)
hasFVG (series bool)
quality (series string)
SwingPoint
Fields:
price (series float)
bar_index (series int)
type (series string)
WRB - ATR Candle Wide Range Bar indicator is design to mark impulse candle for your LTF confirmation






















