60-Minute Range Highlighter - Color Coded (All Dates)//@version=5
indicator("60-Minute Range Highlighter - Color Coded (All Dates)", overlay=true)
// === INPUTS ===
show_all_ranges = input.bool(true, "Highlight All 60-Minute Ranges")
show_specific_range = input.bool(true, "Show Specific 60-Minute Range")
target_hour = input.int(9, "Target Hour (24h format)", minval=0, maxval=23)
// === COLOR PICKERS ===
color1 = input.color(color.new(color.teal, 85), "Box Color 1")
color2 = input.color(color.new(color.orange, 85), "Box Color 2")
color3 = input.color(color.new(color.purple, 85), "Box Color 3")
color4 = input.color(color.new(color.green, 85), "Box Color 4")
label_color = input.color(color.yellow, "Label Color")
// === TIME CONDITIONS ===
range_period = 60
range_index = math.floor(time / (range_period * 60 * 1000)) // continuous 60-min index
is_new_range = ta.change(range_index)
range_color = switch range_index % 4
0 => color1
1 => color2
2 => color3
=> color4
// === VARS FOR STORING RANGE ===
var float h_start = na
var float l_start = na
var label range_label = na
var box b = na
if is_new_range
h_start := high
l_start := low
if show_all_ranges
b := box.new(left=bar_index, right=bar_index,
top=h_start, bottom=l_start,
border_color=color.new(range_color, 40),
bgcolor=range_color)
else
h_start := math.max(high, h_start)
l_start := math.min(low, l_start)
if show_all_ranges and not na(b)
box.set_right(b, bar_index)
box.set_top(b, h_start)
box.set_bottom(b, l_start)
// === SHOW SPECIFIC RANGE ===
hour_now = hour(time)
next_hour = (target_hour + 1) % 24
in_target_range = (hour_now == target_hour) or (hour_now == next_hour and minute(time) < 30)
if show_specific_range and is_new_range and in_target_range
range_val = h_start - l_start
label.delete(range_label)
mid_price = (h_start + l_start) / 2
range_label := label.new(bar_index, mid_price, text="Range: " + str.tostring(range_val, "#.##"), style=label.style_label_left, color=label_color, textcolor=color.black, size=size.small)
Индикаторы и стратегии
VIX Calm vs Choppy (Bar Version, VIX High Threshold)This indicator tracks market stability by measuring how long the VIX stays below or above a chosen intraday threshold. Instead of looking at VIX closes, it uses VIX high, so even a brief intraday spike will flip the regime into “choppy.”
The tool builds a running clock of consecutive bars spent in each regime:
Calm regime: VIX high stays below the threshold
Choppy regime: VIX high hits or exceeds the threshold
Calm streaks plot as positive bars (light blue background).
Choppy streaks plot as negative bars (dark pink background).
This gives a clean picture of how long the market has been stable vs volatile — useful for trend traders, breakout traders, and anyone who watches risk-on/risk-off conditions. A table shows the current regime and streak length for quick reference.
Checklist (D1 / H4 / M15/30 BoS / VP / Fibo / S/R) This is a simple, visual checklist indicator that allows you to quickly assess how many of your strategy conditions are met, without affecting the chart itself. It is ideal for multi-timeframe strategies and point-by-point setup monitoring.
Tendencia Anual (YTD + YTY) - robustaThis indicator displays annual performance metrics including YTD (Year-To-Date) and YTY (Year-To-Year) returns based on daily prices. It also plots long and short EMAs to highlight market trends, offering a clear view of yearly momentum and crossover signals for strategic trading decisions.
Relative Strength HSIWe add the relative strength indicator. We try to maximize the alpha,
when there is price divergence, we should notice.
RSI with Zone ColorsRSI with zone cooler highlight for everyone
🔹 Short description (for the “Description” box)
RSI with Zone Colors
This indicator plots a classic RSI and highlights the overbought / oversold zones with clear colors.
The RSI line changes color when it enters each zone, the zones are softly filled in the RSI pane, and the price candles on the main chart are recolored whenever RSI is overbought or oversold.
It’s designed to make momentum shifts easy to see at a glance on any symbol or timeframe.
⸻
🔹 What the script does (explanation)
1. Custom RSI calculation
• Uses the price source you choose (close by default) and the RSI length you set.
• Calculates average up-moves and down-moves, then builds a classic RSI value from 0–100.
2. Configurable levels
• Overbought Level (default 70)
• Oversold Level (default 30)
• Midline at 50 is drawn automatically.
3. RSI line color by zone
• Above OB level → RSI line becomes red (overbought zone).
• Below OS level → RSI line becomes green (oversold zone).
• Between the two levels → blue (normal zone).
4. Zone lines
• Horizontal lines at Overbought, Oversold, and 50 are plotted to clearly mark each region.
5. Zone fills
• The space around the overbought area is filled with a soft red background.
• The space around the oversold area is filled with a soft green background.
• Transparency is used so the RSI line stays visible.
6. Candle colors on the main chart
• When RSI is overbought, price candles are colored red.
• When RSI is oversold, price candles are colored green.
• In the normal zone, candles keep their default color.
→ This lets you see RSI conditions directly on the price chart without looking down at the indicator pane all the time.
⸻
🔹 How to use (for “How to use / Strategy idea” section)
You can copy-paste and tweak this:
How to use
• Apply this indicator to any symbol and timeframe.
• Adjust RSI Length, Overbought Level, and Oversold Level to match your trading style (for example 14 / 80 / 20 for stronger filters).
• Use the red overbought zone to look for potential exhaustion after strong up moves.
• Use the green oversold zone to look for potential exhaustion after strong down moves.
• Candle colors on the main chart help you see when RSI is extended without taking your eyes off price.
• This script is meant as a visual aid, not a complete trading system. Combine it with your own trend, structure, and risk-management rules.
⸻
🔹 Optional disclaimer (short)
This script is for educational and informational purposes only and is not financial advice. Always test any idea on a demo account before using it with real capital.
Average True Range Stop Loss Finder [MasterYodi]This indicator utilizes the Average True Range (ATR) to help traders identify optimal stop-loss levels that reduce the risk of premature exits caused by market volatility or tight stop placements. The default multiplier is set to 1.5, providing a balanced stop-loss buffer. For more conservative setups, a multiplier of 2 is recommended; for tighter risk management, use 1.
ATR values and corresponding stop-loss levels are displayed in a table at the bottom of the chart.
Use the high-based (red) level for short positions
Use the low-based (teal) level for long positions
matty lad ema buy sell stratergythe stratergy is very very simple it basically give you a buy or sell signal on crossing the ema
7 AM PST Vertical Line//@version=5
indicator("7 AM PST Vertical Line", overlay=true)
// Convert chart timestamp into PACIFIC time
pacificTime = time(timeframe.period, "America/Los_Angeles")
// Extract hour/minute in PACIFIC timezone
pacHour = hour(pacificTime)
pacMinute = minute(pacificTime)
// Check for 7:00 AM PACIFIC
isSevenPST = (pacHour == 7 and pacMinute == 0)
if isSevenPST
line.new(bar_index, 1e10, bar_index, -1e10, extend=extend.none, color=color.blue, width=3, style=line.style_dashed)
EMA 200 Crossover (Buy Only) v5 FinalEMA 200 Crossover (Buy Only) v5 Final for buying using only ema200
EMA $30 Deviation Buy/Sell SignalsThis indicator works absolutely perfect on Gold (XAUUSD) on 5 min timeframe. Wait until price deviates up or down at least $30 from 50EMA and keep adding until $40, it will eventually comes back to 50EMA as a magnit and most of the times moves back $20-30 towards profit.
Trading Range Aggression Histogram
This indicator is a histogram that accumulates the net volume of aggressive buying and selling per candle, representing the dominant market pressure within defined time-frame.
The indicator works by continuously summing volumes as long as the aggression remains in the same direction, resetting and reversing the accumulation when the pressure changes sides.
This creates visual waves that facilitate the perception of phases dominated by buyers and sellers over time. The tool is useful to identify moments of strength, weakness, and potential reversals in a dynamic market, especially in short-term trading.
New York Session Zones (Full Candle Coverage + Range Lines)It shows the New york time zones of (8:12 am to 9:12 am) & (1:12 pm to 2:12 pm)
BTC CME Gaps Detector [SwissAlgo]BTC CME Gaps Detector
Track Unfilled Gaps & Identify Price Magnets
------------------------------------------------------
Overview
The BTC CME Gap Detector identifies and tracks unfilled price gaps on any timeframe (1-minute recommended for scalping) to gauge potential trading bias.
Verify Gap Behavior Yourself : Use TradingView's Replay Mode on the 1-Minute chart to observe how the price interacts with gaps. Load the BTC1! ticker (Bitcoin CME Futures), enable Replay Mode, and play forward through time (for example: go back 15 days). You may observe patterns such as price frequently returning to fill gaps, nearest gaps acting as near-term targets, and gaps serving as potential support/resistance zones. Some gaps may fill quickly, while others may remain open for longer periods. This hands-on analysis lets you independently assess how gaps may influence price movement in real market conditions and whether you may use this indicator as a complement to your trading analysis.
------------------------------------------------------
Purpose
Price gaps occur when there is a discontinuity between consecutive candles - when the current candle's low is above the previous candle's high (gap up), or when the current candle's high is below the previous candle's low (gap down).
This indicator identifies and tracks these gaps on any timeframe to help traders:
Identify gap zones that may attract price (potential "price magnets")
Monitor gap fill progression
Assess potential directional bias based on nearest unfilled gaps (long, short)
Analyze market structure and liquidity imbalances
------------------------------------------------------
Why Use This Indicator?
Universal Gap Detection : Identifies all gaps on any timeframe (1-minute, hourly, daily, etc.)
Multi-Candle Mitigation Tracking : Detects gap fills that occur across multiple candles
Distance Analysis : Shows percentage distance to nearest bullish and bearish gaps
Visual Representation : Color-coded boxes indicate gap status (active vs. mitigated)
Age Filtering : Option to display only gaps within specified time periods (3/6/12/24 months), as older gaps may lose relevance
ATR-Based Sizing : Minimum gap size adjusts to instrument volatility to filter noise (i.e. small gaps)
------------------------------------------------------
Trading Concept
Gaps represent price zones where no trading occurred. Historical market behavior suggests that unfilled gaps may attract price action as markets tend to revisit areas of incomplete price discovery. This phenomenon creates potential trading opportunities:
Bullish gaps (above current price) may act as upside targets where the price could move to fill the gap
Bearish gaps (below current price) may act as downside targets where price could move to fill the gap
The nearest gap often provides directional bias, as closer gaps may have a higher probability of being filled in the near term
This indicator helps quantify gap proximity and provides a visual reference for these potential target zones.
EXAMPLE
Step 1: Bearish Gaps Appear Below Price
Step 2: Price Getting Close to Fill Gap
Step 3: Gap Mitigated Gap
------------------------------------------------------
Recommended Setup
Timeframe: 1-minute chart recommended for maximum gap detection frequency. Works on all timeframes (higher timeframes will show fewer, larger gaps).
Symbol: Any tradable instrument. Originally designed for BTC1! (CME Bitcoin Futures) but compatible with all symbols.
Settings:
ATR Length: 14 (default)
Min Gap Size: 0.5x ATR (adjust based on timeframe and noise level)
Gap Age Limit: 3 months (configurable)
Max Historical Gaps: 300 (adjustable 1-500)
------------------------------------------------------
How It Works
Gap Detection : Identifies price discontinuities on every candle where:
Gap up: current candle low > previous candle high
Gap down: current candle high < previous candle low
Minimum gap size filter (ATR-based) eliminates insignificant gaps
Mitigation Tracking : Monitors when price touches both gap boundaries. A gap is marked as filled when the price has touched both the top and bottom of the gap zone, even if this occurs across multiple candles.
Visual Elements :
Green boxes: Unfilled gaps above current price (potential bullish targets)
Red boxes: Unfilled gaps below current price (potential bearish targets)
Gray boxes: Filled gaps (historical reference)
Labels: Display gap type, price level, and distance percentage
Analysis Table: Shows :
Distance % to nearest bullish gap (above price)
Distance % to nearest bearish gap (below price)
Trade bias (LONG if nearest gap is above, SHORT if nearest gap is below)
------------------------------------------------------
Key Features
Detects gaps on any timeframe (1m, 5m, 1h, 1D, etc.)
Boxes extend 500 bars forward for active gaps, stop at the fill bar for mitigated gaps
Real-time distance calculations update on every candle
Configurable age filter removes outdated gaps
ATR multiplier ensures gap detection adapts to market volatility and timeframe
------------------------------------------------------
Disclaimer
This indicator is provided for informational and educational purposes only.
It does not constitute financial advice, investment recommendations, or trading signals. The concept that gaps attract price is based on historical observation and does not guarantee future results.
Gap fills are not certain - gaps may remain unfilled indefinitely, or the price may reverse before reaching a gap. This indicator should not be used as the sole basis for trading decisions.
All trading involves substantial risk, including the potential loss of principal. Users should conduct their own research, apply proper risk management, test strategies thoroughly, and consult with qualified financial professionals before making trading decisions.
The authors and publishers are not responsible for any losses incurred through the use of this indicator.
ADR% / AWR% / AMR% / ATR / LoD Dist. TableThis is an updated script from ArmerSchlucker that includes AWR (average weekly range) and AMR (average monthly range) in the table when toggled to those timeframes
Tendencia Anual todos los Y – robustaThis indicator displays annual performance metrics including YTD (Year-To-Date) and YTY (Year-To-Year) returns based on daily prices. It also plots long and short EMAs to highlight market trends, offering a clear view of yearly momentum and crossover signals for strategic trading decisions.
Jim Sloman's Adam Theory - Second Reflection Line//@version=5
indicator("Jim Sloman's Adam Theory - Second Reflection Line", overlay=true, shorttitle="Adam", max_lines_count=500)
//────────────────────────────
// 📥 Inputs
//────────────────────────────
src = input.source(close, "Source")
forecast = input.int(250, "Forecast", minval=1, maxval=500)
linewidth = input.int(2, "Line Width")
linecolor = input.color(color.purple, "Line Color")
ls_input = input.string("Solid", "Line Style", options = )
show_lines = input.bool(true, "Show Reflection Lines")
//────────────────────────────
// 🎨 Estilo de línea (versión corregida)
//────────────────────────────
ls_style = if ls_input == "Dashed"
line.style_dashed
else if ls_input == "Dotted"
line.style_dotted
else
line.style_solid
//────────────────────────────
// 🧱 Array persistente para líneas
//────────────────────────────
var line lines = array.new_line()
//────────────────────────────
// ✏️ Función para dibujar línea
//────────────────────────────
f_draw_line(_x1, _y1, _x2, _y2) =>
l = line.new(_x1, _y1, _x2, _y2, xloc = xloc.bar_index)
line.set_color(l, linecolor)
line.set_width(l, linewidth)
line.set_style(l, ls_style)
array.push(lines, l)
//────────────────────────────
// 🧠 Lógica principal
//────────────────────────────
if barstate.islast
// Limpiar líneas si el usuario las oculta
if not show_lines
for l in lines
line.delete(l)
array.clear(lines)
else
ref = src
// Evitar errores si forecast excede barras disponibles
valid_forecast = math.min(forecast, bar_index)
// Crear o actualizar las líneas
if array.size(lines) == 0
for i = 0 to valid_forecast - 2
d1 = src
d2 = src
inv_d1 = ref - (d1 - ref)
inv_d2 = ref - (d2 - ref)
f_draw_line(bar_index + i, inv_d1, bar_index + i + 1, inv_d2)
else
for i = 0 to valid_forecast - 2
d1 = src
d2 = src
inv_d1 = ref - (d1 - ref)
inv_d2 = ref - (d2 - ref)
l = array.get(lines, i)
line.set_xy1(l, bar_index + i, inv_d1)
line.set_xy2(l, bar_index + i + 1, inv_d2)
// Actualiza estilo visual por si el usuario cambia inputs
line.set_color(l, linecolor)
line.set_width(l, linewidth)
line.set_style(l, ls_style)
MACD/SMACD Screener — signal EMA supportFor MACD and SMACD in Pinescreener, finding for instance crosses up below 0-line.
Institutional Trend LITE – Signal Line Overlay A clean, reactive, and non-repainting indicator designed to highlight the true market trend direction through an intelligent line based on EMA 21.
The signal line automatically changes color according to a dynamic trend score calculated from the relationship between EMA 21 / EMA 100, RSI 6 / RSI 12, ADX, and candle structure (body & direction).
Federal Holidays - AutomatedU.S. Federal Holidays
New Year’s Day
Martin Luther King Jr. Day (incl. Inauguration)
Presidents’ Day
Memorial Day
Juneteenth
Independence Day
Labor Day
Columbus Day
Veterans Day
Thanksgiving
Christmas Day
BK=(PDH/PDL,ATH,PWH/PWL)this indicator is for marking previous day high & low, all time high, previous week high & low
Dynamic Intraday Volume Ratio – Dashboard (Stable)Shows comparative intraday volume comparing 15 mins volume to last 30 day's 15 mins volume






















