RTH Session Range Position (0-100) with EMAA Pine Script indicator designed to help traders understand where the current price is located within the Regular Trading Hours (RTH) session range, from 0 (session low) to 100 (session high). It also plots a smoothed EMA of this position to provide insight into momentum or trend during the RTH session.
What the Indicator Does
Defines RTH (Regular Trading Hours):
Start: 9:30 AM
End: 4:00 PM
These are typical US equity market hours.
Tracks the session's high and low during RTH:
sessionHigh and sessionLow update only during RTH.
Calculates position of the current price within the RTH range:
Formula: ((close - sessionLow) / (sessionHigh - sessionLow)) * 100
Result is a percentage:
0 = at session low
100 = at session high
50 = middle of session range
Calculates an EMA of that position (posEMA):
Smooths out the raw position to help visualize momentum within the range.
Plots and table:
Plots pos and posEMA on a separate chart pane.
Adds horizontal lines at key levels (0, 30, 50, 70, 100).
Table shows current values for Position, EMA, and Range.
Visual cues:
bgcolor highlights when pos crosses over or under the EMA — potential momentum shifts.
Alerts:
Cross above/below 50 (session midpoint).
Cross above/below EMA.
How to Use It Effectively
1. Session Strength & Momentum
Position above 70: Price is near session highs — strong upward momentum.
Position below 30: Price is near session lows — strong downward momentum.
Use the EMA of position to filter out noise and identify trends.
2. Breakout or Reversal Detection
Cross above EMA: Momentum may be turning bullish.
Cross below EMA: Momentum may be turning bearish.
These crosses (especially near mid-levels like 50) can hint at session trend shifts.
3. Range Context for Entries
If you're a mean-reversion trader, look for:
Price > 70 + turning down below EMA → possible short.
Price < 30 + turning up above EMA → possible long.
For breakout traders, you might wait for:
Crosses above 70 with EMA support.
Crosses below 30 with EMA resistance.
4. Confirmation Tool
Use this indicator alongside others to confirm:
Whether price action has strength within the day.
Whether breakouts have real momentum or are extended already.
指標和策略
Open-Based Percentage Levelsv2
This is an updated version of my original script.
Changes:
I took off the displacement levels since there served no purpose on this script.
I also fixed it to where the percentage level lines are visible continually throughout the entire trading day. Old version had these lines disappearing.
I also updated the name to better reflect its purpose.
Now only works on 30 min and below as the higher time frames are meaningless. The older version allow higher time frames and the code is open source to adjust as desired
Bullish Bearish Signal with EMA Color + Labels Bullish & Bearish Signal with Dynamic EMA + MACD/RSI Confluence
This indicator provides clear BUY and SELL signals based on the confluence of trend, momentum, and strength — perfect for traders who want high-probability entries with minimal noise.
🔍 Key Features:
Dynamic EMA 200 Color
The EMA line changes color based on market bias:
🔵 Blue = Bullish Trend
🔴 Red = Bearish Trend
⚪ Gray = Neutral
BUY Signal Conditions:
Price is above EMA 200 (uptrend confirmation)
MACD line crosses above the Signal line (momentum shift)
RSI is above 50 (bullish strength)
SELL Signal Conditions:
Price is below EMA 200 (downtrend confirmation)
MACD line crosses below the Signal line
RSI is below 50 (bearish strength)
Stylish BUY/SELL Labels
Clean, readable markers appear directly on the chart at key turning points.
🎯 Ideal For:
Trend-following strategies
Scalpers and swing traders looking for cleaner entries
Confirming signals from your existing setup
Let the market tell you when it's ready — this tool helps you enter only when trend, momentum, and strength agree.
Happy trading! 🚀
Aufwärtstrend (EMA Crossover + Close > EMA20)Aufwärtstrend (EMA Crossover + Close > EMA20)
📈 EMA Crossover Uptrend Indicator with Alert Function
This script identifies potential uptrends based on an EMA crossover strategy, and provides a simple way to set alerts for trend shifts.
🔍 Indicator Logic:
Two Exponential Moving Averages (EMAs) are calculated:
EMA 8 (fast)
EMA 20 (slow)
An uptrend is detected when:
EMA 8 crosses above EMA 20 (bullish crossover), and
the closing price is above EMA 20.
📌 Features:
Plots both EMAs on the chart (optional).
A green "↑" label is displayed below the bar when an uptrend is detected.
Alert conditions:
"Uptrend": When both crossover and close-above-EMA20 conditions are met.
"Downtrend": When those conditions are not met.
🔔 How to Use Alerts:
After adding the script to your chart, go to “Create Alert” and choose between the two alert conditions. The alert messages are:
"Uptrend detected: EMA8 crossed above EMA20 and Close is above EMA20"
"Downtrend detected: Uptrend conditions not met"
💡 Use Cases:
Early identification of bullish market conditions.
Useful for timing long entries.
Can be combined with other tools for trend confirmation.
Terils scriptcombined Indicator EMA, Yesterday High low. super trend, BB.
combined Indicator EMA, Yesterday High low. super trend, BB.
combined Indicator EMA, Yesterday High low. super trend, BB.
combined Indicator EMA, Yesterday High low. super trend, BB.
combined Indicator EMA, Yesterday High low. super trend, BB.
combined Indicator EMA, Yesterday High low. super trend, BB.
combined Indicator EMA, Yesterday High low. super trend, BB.
combined Indicator EMA, Yesterday High low. super trend, BB.
combined Indicator EMA, Yesterday High low. super trend, BB.
Filtered DTR Table📊 Filtered Daily True Range (DTR) Indicator
This indicator calculates and displays a filtered version of the Daily True Range (DTR) over the last 14 trading days, using high and low prices of each day.
It filters out extreme values by excluding any daily range that is:
Less than 0.5× the average range
Greater than 2× the average range
The indicator shows a table in the bottom-right corner of the main chart, containing:
Filtered ATR – The average of valid (filtered) daily ranges over the past 14 days, based on the high-low difference.
Current Day's Range – The high-low range of the current trading day.
% of ATR – How much of the filtered ATR has been covered by today's range, expressed as a whole number percentage.
wma+ tendance🟢 Wma+ tendance– Trend Ribbon with Weighted Moving Averages and Alerts
Description:
Wma+ tendance is a visual trend indicator that uses two Weighted Moving Averages (WMA) – a fast and a slow one – to clearly highlight market direction. It fills the space between the two WMAs with dynamic colors and includes alerts for trend changes.
🟩 Green: Uptrend – the fast WMA is above the slow WMA, and both are rising.
🟥 Red: Downtrend – the fast WMA is below the slow WMA, and both are falling.
⬜ Gray: No clear trend – indicating potential sideways or consolidating price action.
Features:
Trend ribbon visualized between fast and slow WMAs
Alerts for bullish and bearish trend detection
Customizable inputs for MA lengths and price source
Use cases:
Spot early trend formations
Combine with other indicators for confirmation
Adaptable for intraday and swing trading strategies
This script helps traders stay on the right side of the trend with minimal noise and real-time alerts.
MAHESH BORADE EMA 9/21 Crossover with VWAPMAHESH BORADE EMA 9/21 Crossover with VWAP
When EMA 9 cross upward to EMA 21 then Buy
When EMA 9 cross downward to EMA 21 then Sell
MACD sinerjiportfoyMACD Sinerjiportfoy Versiyon.
It is aimed to reach more sensitive results by changing the settings in MACD. You can test it by trying
Swing Exit System with Legend Dashboard — Smart + Stylish“They say it’s more important when you buy than when you sell — but this script begs to differ.”
In the real world of trading, the exit is often more important than the entry. A bad exit can turn a winning trade into a loss. A late exit can leave you bag-holding. A premature exit can cause regret as the trade runs without you. That’s where this script steps in — built to guide you through intelligent, data-driven exits with visual clarity and confidence.
🧠 What This Script Does
This is a swing trade exit assistant, not just a signal plotter. It uses seven distinct exit conditions — all grounded in technical structure and momentum — to alert you when it's time to consider reducing or closing a position. Each condition is visualized using a unique, color-coded triangle on the chart for quick interpretation. All signals are also listed in a dynamic legend panel.
🎯 The Exit Signals Include:
10 SMA Break (🟠) – Signals short-term momentum loss
20 SMA Break (🔵) – Stronger loss of trend support
SMA Cross (🔴) – Fast SMA crossing below slow SMA = trend weakening
ATR Stop Hit (🟥) – Price breaks below a trailing ATR stop
RSI Momentum Fade (🟣) – RSI drops below 50 after being overbought
RSI Bearish Divergence (🟪) – Momentum diverges from price
Lower High / Lower Low (⚫️) – Classic bearish market structure
Each triangle matches the color of its entry in the exit legend dashboard, which appears as a floating table on the lower right of the screen for maximum clarity without clutter.
📊 Also Displayed:
Live ATR value – Helps evaluate volatility and stop distance
Fast SMA (10) & Slow SMA (20) – See trend context and potential crossovers
Upper/lower ATR bands for visual trailing stops
🧰 Why This Matters
This script isn’t about blindly following signals — it’s about supporting decision-making. It helps you exit trades with intention, not emotion. It’s built for:
Swing traders who hold for 2–10 bars
Traders using multi-condition filters
Visual thinkers who want signal and structure in sync
Exit too early and you leave money on the table. Exit too late and you give it all back. This tool gives you the structure to exit when the chart says so, not when your nerves do.
REVERSAL: Pin Bar, Doji, EngulfingStrategy Logic Recap:
Detects one of these patterns:
✅ Pin Bar (with long lower wick)
✅ Doji
✅ Long-Leg Doji
✅ Bullish Engulfing
Additional conditions:
The pattern appears below MA20
MA200 > MA20
RSI < 50
For Pin Bar / Doji / Long-Leg Doji: the next candle closes above the high of the pattern
For Bullish Engulfing: immediate confirmation on the same bar
Prints a green "REVERSAL" label below the pattern candle
Bullish Reversal (Any MA200 Position)Here’s a simple and complete Pine Script v5 for TradingView 15-minute chart that detects bullish reversal candlestick patterns (Hammer and Bullish Engulfing), and prints the word "REVERSAL" below the candle, regardless of whether it's above or below MA200.
SH Vertical LinesSH Vertical Lines for specific of the day which is 2am, 6am, 10am, 2pm, 6pm, and 10pm
EMA(120,200)Indicator: EMA(120,200) for Bitcoin Pullback Strategy
Description:
This indicator plots two Exponential Moving Averages (EMAs) on the Bitcoin price chart:
EMA 120 (short-term trend)
EMA 200 (long-term trend)
The purpose is to identify potential buying opportunities ("go long") when Bitcoin's price pulls back to the "channel" between EMA 120 and EMA 200.
Key Features:
EMA Calculation:
ema120 = ta.ema(close, 120) → 120-period EMA (faster, reacts to recent price).
ema200 = ta.ema(close, 200) → 200-period EMA (slower, broader trend).
Visualization:
Both EMAs are plotted as white lines (color=#ffffff) with a thickness of 2.
Trading Logic (Implied):
When Bitcoin's price retraces (pulls back) to the zone between EMA 120 and EMA 200, traders may consider entering long positions, assuming the overall uptrend remains intact.
This strategy leverages the idea that EMAs act as dynamic support levels during uptrends.
How to Use It:
Uptrend Confirmation:
Ensure EMA 120 is above EMA 200 (bullish alignment).
Pullback Entry:
Wait for the price to dip near the EMA 120-200 channel.
Volume IndicatorShows the % of buyers and sellers visually on volume candles. Additionally will have a label showing actual values of current candle, previous candle, sellers/buyers, and overall color which one is higher. Colors can be adjusted in settings.
Wick BreakoutLong wick reversal strategy. The script indicates the top long wick candle on a swing high or bottom long wick candle on a swing low. Enter on the opening of the second candle. Use 2min timeframe.
ICT Algorithmic Macro Tracker° (Open-Source) by toodegreesthis indicator helps with people their chart that incdicates macro hours on killzone which is called macro hours
Stoch. Weekly sinerjiportfoyStochastic Weekly Sinerjiportfoy Versiyon.
It is aimed to reach more sensitive results by changing the settings in STOCHASTIC WEEKLY. You can test it by trying
On the graphic You need choose Weekly Period
Session High/LowThis TradingView indicator draws horizontal lines representing the Highs and Lows of the three major trading sessions:
Asia (00:00–09:00)
London (09:00–14:30)
New York (15:30–23:00)
These lines serve as key support and resistance zones often respected by institutional and algorithmic traders.
AMMA JAMMA'S SNEAKY LITTLE ALPHAAmma Jamma has a nifty SWING guidance video with a sneaky tip...
This script will plot a signal when the RSI crosses above the midline. You can adjust the midline to where you want the signals. Can be used for numerous strategies, I thought about adding various other features like crossing under the upper band, etc.
In A/J style, keeping this one simple.
Set alerts if that's your thing.
This is experimental and still in testing.
Version 1
Opening Range Break (ORB)📈 Opening Range Break (ORB) with Session Levels & Alerts
This indicator highlights key trading sessions (London, London–NY Overlap, NY PM) with automatic high/low range tracking, optional labels, and breakout alerts.
Features:
✅ Session range plotting (custom time & color)
🟦 Weekly high/low levels (optional)
🔔 Breakout + retest alert system (customizable per session)
📊 200 EMA trend overlay
🔥 Real candle high/low support even when using Heikin Ashi (toggle on/off)
Perfect for intraday traders looking to catch session breakouts or price action around key levels.
MACD COM PONTOS//@version=5
indicator(title="MACD COM PONTOS", shorttitle="MACD COM PONTOS")
//Plot Inputs
res = input.timeframe("", "Indicator TimeFrame")
fast_length = input.int(title="Fast Length", defval=12)
slow_length = input.int(title="Slow Length", defval=26)
src = input.source(title="Source", defval=close)
signal_length = input.int(title="Signal Smoothing", minval = 1, maxval = 999, defval = 9)
sma_source = input.string(title="Oscillator MA Type", defval="EMA", options= )
sma_signal = input.string(title="Signal Line MA Type", defval="EMA", options= )
// Show Plots T/F
show_macd = input.bool(true, title="Show MACD Lines", group="Show Plots?", inline="SP10")
show_macd_LW = input.int(3, minval=0, maxval=5, title = "MACD Width", group="Show Plots?", inline="SP11")
show_signal_LW= input.int(2, minval=0, maxval=5, title = "Signal Width", group="Show Plots?", inline="SP11")
show_Hist = input.bool(true, title="Show Histogram", group="Show Plots?", inline="SP20")
show_hist_LW = input.int(5, minval=0, maxval=5, title = "-- Width", group="Show Plots?", inline="SP20")
show_trend = input.bool(true, title = "Show MACD Lines w/ Trend Color", group="Show Plots?", inline="SP30")
show_HB = input.bool(false, title="Show Highlight Price Bars", group="Show Plots?", inline="SP40")
show_cross = input.bool(false, title = "Show BackGround on Cross", group="Show Plots?", inline="SP50")
show_dots = input.bool(true, title = "Show Circle on Cross", group="Show Plots?", inline="SP60")
show_dots_LW = input.int(5, minval=0, maxval=5, title = "-- Width", group="Show Plots?", inline="SP60")
//show_trend = input(true, title = "Colors MACD Lines w/ Trend Color", group="Show Plots?", inline="SP5")
// MACD Lines colors
col_macd = input.color(#FF6D00, "MACD Line ", group="Color Settings", inline="CS1")
col_signal = input.color(#2962FF, "Signal Line ", group="Color Settings", inline="CS1")
col_trnd_Up = input.color(#4BAF4F, "Trend Up ", group="Color Settings", inline="CS2")
col_trnd_Dn = input.color(#B71D1C, "Trend Down ", group="Color Settings", inline="CS2")
// Histogram Colors
col_grow_above = input.color(#26A69A, "Above Grow", group="Histogram Colors", inline="Hist10")
col_fall_above = input.color(#B2DFDB, "Fall", group="Histogram Colors", inline="Hist10")
col_grow_below = input.color(#FF5252, "Below Grow", group="Histogram Colors",inline="Hist20")
col_fall_below = input.color(#FFCDD2, "Fall", group="Histogram Colors", inline="Hist20")
// Alerts T/F Inputs
alert_Long = input.bool(true, title = "MACD Cross Up", group = "Alerts", inline="Alert10")
alert_Short = input.bool(true, title = "MACD Cross Dn", group = "Alerts", inline="Alert10")
alert_Long_A = input.bool(false, title = "MACD Cross Up & > 0", group = "Alerts", inline="Alert20")
alert_Short_B = input.bool(false, title = "MACD Cross Dn & < 0", group = "Alerts", inline="Alert20")
// Calculating
fast_ma = request.security(syminfo.tickerid, res, sma_source == "SMA" ? ta.sma(src, fast_length) : ta.ema(src, fast_length))
slow_ma = request.security(syminfo.tickerid, res, sma_source == "SMA" ? ta.sma(src, slow_length) : ta.ema(src, slow_length))
macd = fast_ma - slow_ma
signal = request.security(syminfo.tickerid, res, sma_signal == "SMA" ? ta.sma(macd, signal_length) : ta.ema(macd, signal_length))
hist = macd - signal
// MACD Trend and Cross Up/Down conditions
trend_up = macd > signal
trend_dn = macd < signal
cross_UP = signal >= macd and signal < macd
cross_DN = signal <= macd and signal > macd
cross_UP_A = (signal >= macd and signal < macd) and macd > 0
cross_DN_B = (signal <= macd and signal > macd) and macd < 0
// Condition that changes Color of MACD Line if Show Trend is turned on..
trend_col = show_trend and trend_up ? col_trnd_Up : trend_up ? col_macd : show_trend and trend_dn ? col_trnd_Dn: trend_dn ? col_macd : na
//Var Statements for Histogram Color Change
var bool histA_IsUp = false
var bool histA_IsDown = false
var bool histB_IsDown = false
var bool histB_IsUp = false
histA_IsUp := hist == hist ? histA_IsUp : hist > hist and hist > 0
histA_IsDown := hist == hist ? histA_IsDown : hist < hist and hist > 0
histB_IsDown := hist == hist ? histB_IsDown : hist < hist and hist <= 0
histB_IsUp := hist == hist ? histB_IsUp : hist > hist and hist <= 0
hist_col = histA_IsUp ? col_grow_above : histA_IsDown ? col_fall_above : histB_IsDown ? col_grow_below : histB_IsUp ? col_fall_below :color.silver
// Plot Statements
//Background Color
bgcolor(show_cross and cross_UP ? col_trnd_Up : na, editable=false)
bgcolor(show_cross and cross_DN ? col_trnd_Dn : na, editable=false)
//Highlight Price Bars
barcolor(show_HB and trend_up ? col_trnd_Up : na, title="Trend Up", offset = 0, editable=false)
barcolor(show_HB and trend_dn ? col_trnd_Dn : na, title="Trend Dn", offset = 0, editable=false)
//Regular Plots
plot(show_Hist and hist ? hist : na, title="Histogram", style=plot.style_columns, color=color.new(hist_col ,0),linewidth=show_hist_LW)
plot(show_macd and signal ? signal : na, title="Signal", color=color.new(col_signal, 0), style=plot.style_line ,linewidth=show_signal_LW)
plot(show_macd and macd ? macd : na, title="MACD", color=color.new(trend_col, 0), style=plot.style_line ,linewidth=show_macd_LW)
hline(0, title="0 Line", color=color.new(color.gray, 0), linestyle=hline.style_dashed, linewidth=1, editable=false)
plot(show_dots and cross_UP ? macd : na, title="Dots", color=color.new(trend_col ,0), style=plot.style_circles, linewidth=show_dots_LW, editable=false)
plot(show_dots and cross_DN ? macd : na, title="Dots", color=color.new(trend_col ,0), style=plot.style_circles, linewidth=show_dots_LW, editable=false)
//Alerts
if alert_Long and cross_UP
alert("Symbol = (" + syminfo.tickerid + ") TimeFrame = (" + timeframe.period + ") Current Price (" + str.tostring(close) + ") MACD Crosses Up.", alert.freq_once_per_bar_close)
if alert_Short and cross_DN
alert("Symbol = (" + syminfo.tickerid + ") TimeFrame = (" + timeframe.period + ") Current Price (" + str.tostring(close) + ") MACD Crosses Down.", alert.freq_once_per_bar_close)
//Alerts - Stricter Condition - Only Alerts When MACD Crosses UP & MACD > 0 -- Crosses Down & MACD < 0
if alert_Long_A and cross_UP_A
alert("Symbol = (" + syminfo.tickerid + ") TimeFrame = (" + timeframe.period + ") Current Price (" + str.tostring(close) + ") MACD > 0 And Crosses Up.", alert.freq_once_per_bar_close)
if alert_Short_B and cross_DN_B
alert("Symbol = (" + syminfo.tickerid + ") TimeFrame = (" + timeframe.period + ") Current Price (" + str.tostring(close) + ") MACD < 0 And Crosses Down.", alert.freq_once_per_bar_close)
//End Code