Pine Script® indicator
Candlestick analysis
Ultimate NY 9:30 Open MarkerYour ultimate New York Open Marker... So you can analyze your charts when everybody else sleeps or parties, you crazy chart people!
Works on every timeframe including custom ones.
Customizable in settings:
Marker Settings:
- Default: Sky blue flag with background highlight and time label for the NY open as default. You can change all that in the settings.
- Various marker shape options: Triangle, Diamond, Label Flag, Arrow Up/Down, Arrow this, Arrow that... So you can pick whatever annoys you the least lol
- Auto-positioning: above bear candles, below bull candles (default) - or always above/below
- 5 sizes from tiny to HUGE
- Vertical offset fine-tuning - you can move your marker closer to the bar if you like, or farther from it
Vertical Lines Options:
- Line ON the 9:30 bar
- Line BEFORE the 9:30 bar (so on 5min you'd see a line on 9:25, on 15min on 9:15, etc. - this way you can see the open candle well)
- Solid, dotted, dashed, pick your poison
Time Label Option: "9:30 EST" label (customizable text, color, size)
Date Label Option: Four format options:
- MM/DD/YY (American)
- DD/MM/YY (European)
- DD Mon. 'YY (Written, like "04 Feb. '26")
- Mon DD, YYYY (Full)
Plus optional day of week (short or full)
Bonus: Background highlight option for the open bar
The indicator handles DST automatically via the "America/New_York" timezone and works on any timeframe including custom ones.
This is a repost, apparently you can't use caps in the title. Sorry about that.
Let me know if you'd like any adjustments.
Thanks. : )
Pine Script® indicator
Renko TimekeeperRenko charts delete time. This tool puts it back.The Renko Timekeeper prints a number next to every brick telling you exactly how many minutes that specific brick took to form.This converts a "Static Chart" into a "Velocity Chart." It allows you to spot Momentum Decay before the price actually reverses.1. The Visual GuideThe indicator prints a single number (e.g., 4.2) above or below every brick.Text ColorValue RangeEngineering StateInterpretationGREEN< 5.0High VelocityThe "Turbo" is on. Buyers/Sellers are aggressive. HOLD or ADD to the trade.GRAY5.0 – 15.0Normal CruiseThe trend is stable. Standard market breathing. HOLD.RED> 15.0STALL (Warning)The engine has died. The market is struggling to push price. EXIT immediately.
Pine Script® indicator
AI Heavy Buyer Scanner V6 - 100min to Close100 minutes before the end of daily trading, scan US-traded stocks and ETFs with a market cap > $50B and ETFs (including 3x leveraged). Locate Japanese candlesticks on an intraday chart where the following conditions are met: 1. The price has increased by at least 1% from the daily opening price. 2. The candlestick has a lower shadow that is at least 1% longer than the price. 3. The daily trading volume up to this time is 10% higher than the daily average of the last 100 days. Send an instant alert
Pine Script® indicator
Pine Script® indicator
Nifty By PaisaPani It is a trading system.
• Separate indicator designed specifically for BankNifty
• Intended for the mentioned timeframe only
• Focused on execution clarity, not predictions
🔒 Full access is limited.
⚠ Disclaimer:
For educational and demonstration purposes only.
Trading involves risk.
No profit guarantees are implied.
Pine Script® indicator
Intrabar Delta Volume Bubbles [Absorption & Exhaustion]Visualizes aggressive buying/selling pressure using intrabar data to spot Absorption (Red Bubble on Green Candle) and Exhaustion (Green Bubble on Red Candle) on standard feeds.
Pine Script® indicator
Banknifty By PaisaPaniThis indicator displays a DEMO performance snapshot
to show how the PaisaPani approach behaves on BankNifty.
It is a trading system.
• Separate indicator designed specifically for BankNifty
• Intended for the mentioned timeframe only
• Focused on execution clarity, not predictions
🔒 Full access is limited.
⚠ Disclaimer:
For educational and demonstration purposes only.
Pine Script® indicator
Weekly Tightness Near EMA//@version=6
indicator("Weekly Tightness Near EMA", overlay=true)
// ===========================
// INPUT PARAMETERS
// ===========================
tightness_pct = input.float(3.0, "Tightness % Range", minval=0.1, maxval=10.0)
ema_proximity_pct = input.float(5.0, "EMA Proximity %", minval=0.5, maxval=15.0)
small_candle_pct = input.float(5.0, "Small Candle % (body)", minval=0.5, maxval=10.0)
show_ema10 = input.bool(true, "Show 10 Week EMA")
show_ema20 = input.bool(true, "Show 20 Week EMA")
show_signals = input.bool(true, "Show Tightness Signals")
// ===========================
// GET WEEKLY DATA
// ===========================
weekly_close = request.security(syminfo.tickerid, "W", close, barmerge.gaps_off, barmerge.lookahead_off)
weekly_open = request.security(syminfo.tickerid, "W", open, barmerge.gaps_off, barmerge.lookahead_off)
weekly_high = request.security(syminfo.tickerid, "W", high, barmerge.gaps_off, barmerge.lookahead_off)
weekly_low = request.security(syminfo.tickerid, "W", low, barmerge.gaps_off, barmerge.lookahead_off)
weekly_close_1 = request.security(syminfo.tickerid, "W", close , barmerge.gaps_off, barmerge.lookahead_off)
weekly_open_1 = request.security(syminfo.tickerid, "W", open , barmerge.gaps_off, barmerge.lookahead_off)
weekly_high_1 = request.security(syminfo.tickerid, "W", high , barmerge.gaps_off, barmerge.lookahead_off)
weekly_low_1 = request.security(syminfo.tickerid, "W", low , barmerge.gaps_off, barmerge.lookahead_off)
weekly_close_2 = request.security(syminfo.tickerid, "W", close , barmerge.gaps_off, barmerge.lookahead_off)
weekly_open_2 = request.security(syminfo.tickerid, "W", open , barmerge.gaps_off, barmerge.lookahead_off)
weekly_high_2 = request.security(syminfo.tickerid, "W", high , barmerge.gaps_off, barmerge.lookahead_off)
weekly_low_2 = request.security(syminfo.tickerid, "W", low , barmerge.gaps_off, barmerge.lookahead_off)
// Weekly EMAs
weekly_ema10 = request.security(syminfo.tickerid, "W", ta.ema(close, 10), barmerge.gaps_off, barmerge.lookahead_off)
weekly_ema20 = request.security(syminfo.tickerid, "W", ta.ema(close, 20), barmerge.gaps_off, barmerge.lookahead_off)
// ===========================
// CALCULATE CANDLE SIZE
// ===========================
// Calculate body size (close - open) as percentage of price
candle_body_0 = math.abs(weekly_close - weekly_open)
candle_body_1 = math.abs(weekly_close_1 - weekly_open_1)
candle_body_2 = math.abs(weekly_close_2 - weekly_open_2)
candle_body_pct_0 = (candle_body_0 / weekly_close) * 100
candle_body_pct_1 = (candle_body_1 / weekly_close_1) * 100
candle_body_pct_2 = (candle_body_2 / weekly_close_2) * 100
// Calculate full range (high - low) as percentage
candle_range_0 = weekly_high - weekly_low
candle_range_1 = weekly_high_1 - weekly_low_1
candle_range_2 = weekly_high_2 - weekly_low_2
candle_range_pct_0 = (candle_range_0 / weekly_close) * 100
candle_range_pct_1 = (candle_range_1 / weekly_close_1) * 100
candle_range_pct_2 = (candle_range_2 / weekly_close_2) * 100
// Check if all 3 candles are small
small_candle_0 = candle_body_pct_0 <= small_candle_pct
small_candle_1 = candle_body_pct_1 <= small_candle_pct
small_candle_2 = candle_body_pct_2 <= small_candle_pct
all_candles_small = small_candle_0 and small_candle_1 and small_candle_2
// Average candle body size
avg_candle_body = (candle_body_pct_0 + candle_body_pct_1 + candle_body_pct_2) / 3
avg_candle_range = (candle_range_pct_0 + candle_range_pct_1 + candle_range_pct_2) / 3
// ===========================
// CALCULATE TIGHTNESS
// ===========================
// Find highest and lowest of last 3 weekly closes
highest_close = math.max(weekly_close, weekly_close_1, weekly_close_2)
lowest_close = math.min(weekly_close, weekly_close_1, weekly_close_2)
// Calculate range percentage
close_range_pct = ((highest_close - lowest_close) / lowest_close) * 100
// Check if within tightness range
is_tight = close_range_pct <= tightness_pct
// ===========================
// CHECK PROXIMITY TO EMAs
// ===========================
// Distance from EMAs
dist_from_ema10_pct = math.abs((weekly_close - weekly_ema10) / weekly_ema10) * 100
dist_from_ema20_pct = math.abs((weekly_close - weekly_ema20) / weekly_ema20) * 100
// Near EMA conditions
near_ema10 = dist_from_ema10_pct <= ema_proximity_pct
near_ema20 = dist_from_ema20_pct <= ema_proximity_pct
near_any_ema = near_ema10 or near_ema20
// ===========================
// COMBINED SIGNAL (with small candles filter)
// ===========================
tightness_signal = is_tight and near_any_ema and all_candles_small
// ===========================
// PLOT EMAs
// ===========================
plot(show_ema10 ? weekly_ema10 : na, "10 Week EMA", color=color.new(color.blue, 0), linewidth=2)
plot(show_ema20 ? weekly_ema20 : na, "20 Week EMA", color=color.new(color.orange, 0), linewidth=2)
// ===========================
// PLOT SIGNALS
// ===========================
// Background color when tight and near EMA
bgcolor(show_signals and tightness_signal ? color.new(color.green, 90) : na, title="Tightness Signal")
// Plot signal markers
plotshape(show_signals and tightness_signal and not tightness_signal ,
title="Tightness Start",
location=location.belowbar,
color=color.new(color.green, 0),
style=shape.triangleup,
size=size.small,
text="TIGHT")
// ===========================
// DISPLAY TABLE
// ===========================
var table info_table = table.new(position.top_right, 2, 9,
border_width=1,
border_color=color.gray,
frame_width=1,
frame_color=color.gray)
if barstate.islast
// Header
table.cell(info_table, 0, 0, "Weekly Analysis", bgcolor=color.new(color.gray, 70), text_color=color.white, text_size=size.normal)
table.cell(info_table, 1, 0, "Status", bgcolor=color.new(color.gray, 70), text_color=color.white, text_size=size.normal)
// Average candle body size
candle_color = all_candles_small ? color.new(color.green, 85) : color.new(color.red, 85)
table.cell(info_table, 0, 1, "Avg Candle Body", bgcolor=candle_color, text_color=color.white, text_halign=text.align_left)
table.cell(info_table, 1, 1, str.tostring(avg_candle_body, "#.##") + "%", bgcolor=candle_color, text_color=color.white)
// Small candle threshold
table.cell(info_table, 0, 2, "Small Candle <", bgcolor=color.new(color.gray, 90), text_color=color.white, text_halign=text.align_left)
table.cell(info_table, 1, 2, str.tostring(small_candle_pct, "#.#") + "%", bgcolor=color.new(color.gray, 90), text_color=color.white)
// 3 Week Close Tightness
tight_color = is_tight ? color.new(color.green, 85) : color.new(color.red, 85)
table.cell(info_table, 0, 3, "3W Close Range", bgcolor=tight_color, text_color=color.white, text_halign=text.align_left)
table.cell(info_table, 1, 3, str.tostring(close_range_pct, "#.##") + "%", bgcolor=tight_color, text_color=color.white)
// Tightness threshold
table.cell(info_table, 0, 4, "Threshold", bgcolor=color.new(color.gray, 90), text_color=color.white, text_halign=text.align_left)
table.cell(info_table, 1, 4, "<" + str.tostring(tightness_pct, "#.#") + "%", bgcolor=color.new(color.gray, 90), text_color=color.white)
// Distance from 10W EMA
ema10_color = near_ema10 ? color.new(color.blue, 85) : color.new(color.gray, 85)
table.cell(info_table, 0, 5, "From 10W EMA", bgcolor=ema10_color, text_color=color.white, text_halign=text.align_left)
table.cell(info_table, 1, 5, str.tostring(dist_from_ema10_pct, "#.##") + "%", bgcolor=ema10_color, text_color=color.white)
// Distance from 20W EMA
ema20_color = near_ema20 ? color.new(color.orange, 85) : color.new(color.gray, 85)
table.cell(info_table, 0, 6, "From 20W EMA", bgcolor=ema20_color, text_color=color.white, text_halign=text.align_left)
table.cell(info_table, 1, 6, str.tostring(dist_from_ema20_pct, "#.##") + "%", bgcolor=ema20_color, text_color=color.white)
// Near EMA status
near_ema_color = near_any_ema ? color.new(color.green, 85) : color.new(color.red, 85)
near_ema_text = near_any_ema ? "✓ NEAR" : "✗ Far"
table.cell(info_table, 0, 7, "Near EMA", bgcolor=near_ema_color, text_color=color.white, text_halign=text.align_left)
table.cell(info_table, 1, 7, near_ema_text, bgcolor=near_ema_color, text_color=color.white)
// Combined signal
signal_color = tightness_signal ? color.new(color.lime, 70) : color.new(color.gray, 85)
signal_text = tightness_signal ? "🎯 SETUP!" : "No Setup"
table.cell(info_table, 0, 8, "SIGNAL", bgcolor=signal_color, text_color=color.white, text_halign=text.align_left, text_size=size.large)
table.cell(info_table, 1, 8, signal_text, bgcolor=signal_color, text_color=color.white, text_size=size.large)
// ===========================
// ALERTS
// ===========================
alertcondition(tightness_signal and not tightness_signal ,
title="Tightness Setup Alert",
message="Weekly setup detected: Small candles, tight closes, near EMA!")
Pine Script® indicator
Chart Info & Candle CountdownThis indicator displays essential chart information directly on the chart:
Displays the current date
Displays the current symbol
Displays the current timeframe with a countdown to candle close
The candle close countdown is visually highlighted to improve time awareness:
from 2 minutes before candle close on minute timeframes
from 15 minutes before candle close on higher timeframes
This indicator is designed for informational purposes only and does not generate trading signals.
Pine Script® indicator
Trading Sessions Highs & LowsFull Azia , London and New York Sessions Highs & Lows are shown until triggered.
Pine Script® indicator
ddddddrrrrrr//@version=5
indicator("🚀 EventSniper HF v3.0 - 高频方向信号", overlay=true)
// 参数
emaFast = input.int(5, "快速EMA")
emaSlow = input.int(20, "慢速EMA")
rsiLen = input.int(7, "RSI周期")
volRatio = input.float(1.8, "量能放大倍数")
// 指标计算
ema1 = ta.ema(close, emaFast)
ema2 = ta.ema(close, emaSlow)
rsi = ta.rsi(close, rsiLen)
volAvg = ta.sma(volume, 20)
volSpike = volume > volAvg * volRatio
// 高频方向信号(核心逻辑)
longCond = ema1 > ema2 and rsi > 50 and volSpike
shortCond = ema1 < ema2 and rsi < 50 and volSpike
// 信号绘图
plotshape(longCond, title="建议做多", location=location.belowbar, color=color.lime, style=shape.labelup, text="多")
plotshape(shortCond, title="建议做空", location=location.abovebar, color=color.red, style=shape.labeldown, text="空")
// 文本提示
label.new(longCond ? bar_index : na, low,
"📈 建议多头方向", style=label.style_label_up,
color=color.green, textcolor=color.white)
label.new(shortCond ? bar_index : na, high,
"📉 建议空头方向", style=label.style_label_down,
color=color.red, textcolor=color.white)
// 报警条件(用于接入Telegram)
alertcondition(longCond, title="📈 多方向警报", message="🚀 多方向信号触发:{{ticker}}")
alertcondition(shortCond, title="📉 空方向警报", message="🚨 空方向信号触发:{{ticker}}")
Pine Script® indicator
Precision Entry Systementry system for smc and ict with order blocks and fvgs to make sniper entries and precision and quick execution
Pine Script® indicator
Avengers Pro V24.3 (Minervini Complete)"This strategy represents the ultimate synthesis of investment principles derived from the world’s greatest market masters. By meticulously integrating their proven methodologies into a single, cohesive framework, we have developed a comprehensive version that offers unparalleled versatility across both the Korean and U.S. stock markets."
Pine Script® indicator
GeorgeFX - CRT 4H Hunter ProThe GeorgeFX - CRT 4H Hunter Pro is a professional liquidity-tracking indicator designed for the 15-minute timeframe. It identifies high-probability reversals by monitoring 4-Hour (HTF) liquidity sweeps and confirming entries via local market structure shifts.
Core Logic:
1.HTF Liquidity Detection: The script tracks the Previous 4H High and Low.
2.The Sweep (Liquidity Grab): It identifies when the 15m price pierces these 4H levels and closes back inside, signaling a potential "trap."
3.Volume Filter: Only sweeps with volume higher than the 20-period average ($1.1x$ multiplier) are considered valid.
4.Multi-Sweep Memory: The script tracks consecutive sweeps (C1, C2, C3) within the same 4H candle, resetting only when the price re-enters the 4H range.
5.Precision Entry (The Dot): A signal (●) is generated only when the 15m price closes beyond the trigger candle's body, confirming momentum.
Visual Elements:
1.Stepline Levels: Red (4H High) and Green (4H Low) lines showing the HTF boundaries.
2.Sweep Boxes: Shaded regions showing the depth of the liquidity grab.
3.Confirmation Dot (●): High-visibility Lime (Buy) or Red (Sell) dots marking the exact entry candle.
4.Trigger Lines: Horizontal lines connecting the sweep to the entry point.
5.Visibility Limit: Display is optimized to show only the last 200 bars to keep the chart clean.
Professional Alert System:
1.The script uses a standardized "Pro-Signal" format designed for instant readability on mobile devices or smartwatches.
2.Alert Trigger: Fires exactly at the close of the 15m confirmation candle.
How to Set Up Alerts:
1.Apply the script to your 15-minute chart.
2.Click the Alerts icon (Clock) in the right sidebar.
3.Set Condition to GeorgeFX - CRT 4H Hunter Pro.
4.Select Any alert() function call.
5.Set Expiration to "Open-ended" and click Create.
Pine Script® indicator
Fixed Range Line + EMA Cross Signals with Targetsfixed range lines generate buy sell signal and also we can set targets
Pine Script® indicator
Strong Daily S/R Levels (Refreshes Daily)Multi-Timeframe Strong S/R + Swings (Daily/Weekly/Monthly)
Automatic, non-repainting support & resistance levels from multiple timeframes + recent swing points — perfect for day trading, swing trading, and futures (ES, NQ, MES, MNQ, GC, MGC, etc.).
Features:
• Previous Day High/Low (PDH/PDL) + classic daily pivots (PP, R1–R3, S1–S3)
• Previous Week High/Low (PWH/PWL) + weekly pivots
• Previous Month High/Low (PMH/PML) + monthly pivots
• Recent confirmed swing highs/lows (adjustable lookback) with numbered labels
• Clean right-side labels for quick reference
• Toggle any group on/off to reduce clutter
• Works on any ticker and any timeframe (intraday to daily+)
Levels update automatically at the start of each new day/week/month — no repainting, stable once the higher timeframe bar closes.
Great for:
• Identifying strong institutional magnets (PDH/PDL, monthly extremes)
• Spotting breakout/mean-reversion zones (pivots)
• Trading structure breaks/retests (swings)
Use it on futures, stocks, forex, crypto — wherever clean, reliable S/R matters.
Pine Script® indicator
Pine Script® indicator
HA EMA10.30 Pullback, Trend Bias, No ConsolidationThis script is a trend-bias + entry signal indicator built around the Heikin-Ashi pullback strategy you shared.
It does three main jobs:
Decides the market bias (LONG only, SHORT only, or NO TRADE)
Filters out consolidation / chop
Signals entries only when momentum aligns
Pine Script® indicator
Strat + 50% Rule TheSTRAT, a niche yet popular trading strategy, was developed by Rob Smith over his 30-year career in the financial markets. The method is praised for its objectivity and systematic approach, while its complexity and unique perspective make it less widely understood. TheSTRAT is a multi-timeframe strategy that focuses on three primary components: Inside Bars, Directional Bars, and Outside Bars. The approach also emphasizes several key principles, including Full Time Frame Continuity, Broadening Formations, and the significance of Inside Bars. With the indicator you will see the numbers on the Bars, you will see the Previous day, week, month Highs and Lows. You will see the table displaying the lastest Strat Bars as well as the 50% rule retracement... If above the previous week 50% the dot will turn green and viceversa if the opposite is true.
Pine Script® indicator
Pine Script® indicator
200 SMA from 1H timeframe &LabelPlots the 200-period Simple Moving Average (SMA) calculated strictly on the 1-hour timeframe, visible and accurate on any chart timeframe (1m, 5m, 15m, 4H, daily, etc.).
• The line appears “stepped” on lower timeframes (normal/expected for higher-TF data).
• Includes a clean, updating label on the right edge showing the current 1H 200 SMA value.
• Optional faint background tint highlights new 1H bars for easy visual reference.
Ideal for: Multi-timeframe analysis, trend filtering, support/resistance on intraday charts, or confirming the broader hourly trend while trading lower timeframes.
Pine Script® indicator
Pine Script® indicator






















