Breakout Strategy with EMA & VolumeA breakout strategy combined with EMA and Volume data to give you the best results.
Indicator includes:
EMA 20 and EMA 50
Volume indicator
RSI (14)
指標和策略
Fractals 1hFractals 1h, visible on 5m TF.
This indicator allows me to backtest my strategy "from zone to zone"...
Double EMA + Ma Pullback by vimel🧠 Combined Double EMA + MA Pullback Strategy
This indicator merges two popular trend-following and pullback trading concepts into a single, powerful tool:
🔹 1. Double EMA Pullback Logic
Uses two EMAs (default 20 & 50) to define trend direction.
Buy Signal: Triggered when price crosses above the shorter EMA and is above the longer EMA.
Sell Signal: Triggered when price crosses below the shorter EMA and is below the longer EMA.
Ideal for momentum-based trend continuation setups.
🔸 2. MA Cloud Pullback Strategy
Uses three EMAs to form a dynamic cloud zone.
Cloud Buy: Price dips into the cloud (pullback) and breaks out upward with bullish momentum.
Cloud Sell: Price rallies into the cloud and breaks down with bearish momentum.
Additional filters:
Candle body % strength (momentum validation).
Historical interaction with cloud (bar_limit lookback).
Designed to catch pullbacks within strong trends.
📈 Visuals
EMA lines and dynamic cloud with color fill.
Clear Buy and Sell markers for both systems:
D Buy / D Sell: Double EMA Pullback.
Buy / Sell: MA Cloud Pullback.
⚙️ Inputs
Fully customizable EMA lengths and sources.
Toggle each EMA independently.
Adjust candle strength % and backstep limit for fine-tuning entries.
📣 Ideal For
Trend traders who want both momentum and pullback confirmation.
Works well in strong directional markets (crypto, forex, indices).
Can be combined with volume or higher timeframe filters for added precision.
Color Change EMA 200 (4H)200 Color Change EMA (4H Locked)
Overview
This indicator displays a 200-period Exponential Moving Average (EMA) that is locked to the 4-hour timeframe, regardless of what chart timeframe you're currently viewing. The EMA line changes color dynamically based on price action to provide clear visual trend signals.
Key Features
• Multi-Timeframe Capability : Always shows the 4H 200 EMA on any chart timeframe
• Dynamic Color Coding :
- Green: Price is above the 200 EMA (bullish condition)
- Red: Price is below the 200 EMA (bearish condition)
• Clean Visual Design : Bold 2-pixel line width for clear visibility
• Real-time Updates : Colors change instantly as price crosses above or below the EMA
How to Use
1. Add the indicator to any timeframe chart
2. The 4H 200 EMA will appear as a smooth line
3. Watch for color changes:
- When the line turns green, it indicates price strength above the key moving average
- When the line turns red, it suggests price weakness below the moving average
4. Use for trend identification, support/resistance levels, and entry/exit timing
Best Practices
• Combine with other technical analysis tools for confirmation
• Use the color changes as alerts for potential trend shifts
• Consider the 200 EMA as a major support/resistance level
• Works well for swing trading and position sizing decisions
Settings
• Length : Default 200 periods (customizable)
• Source : Default closing price (customizable)
Perfect for traders who want to keep the important 4H 200 EMA visible across all timeframes with instant visual trend feedback.
Multi MA 10 Lines PRO (Custom Label + Crossover Icon)Multi MA 10 Lines PRO – 10 Custom MAs, Dynamic Labels & Persistent Crossover Symbols
The ultimate professional Moving Average indicator — plot up to 10 fully customizable MAs (type, timeframe, color, width, style), display live price labels (value, % distance, or custom text), plus advanced ATR cross markers on every crossover (MA1/MA2).
NEW: All MA crossovers are marked with persistent symbols (choose icon, color, size) — instantly spot every golden/death cross in your backtest! Complete flexibility for scalpers, swing traders, and serious strategists.
OBV + Momentum + DI+ Dashboard 📊 Script Description: OBV + Momentum + DI+ Dashboard
This custom TradingView indicator combines three powerful technical analysis tools—On-Balance Volume (OBV), Momentum (ROC), and Directional Movement Index (+DI)—into a single, easy-to-read dashboard.
🔍 Key Features:
✅ Buy & Sell Signals
Plots signals on the chart when multiple conditions align:
Buy Signal: Bullish candle + Rising OBV + Positive Momentum + Strong +DI
Sell Signal: Bearish candle + Falling OBV + Negative Momentum + Weak +DI
✅ Dashboard Panel (Top Center)
A real-time dashboard displays key market conditions:
Price Action (Bullish, Bearish, or Neutral)
OBV Trend (Rising, Falling, or Flat)
Momentum (Rising, Falling, or Flat)
+DI Strength (Strong, Weak, or Neutral)
✅ Visual Enhancements
Color-coded trends for quick interpretation.
Compact table view in the center top of the chart.
📈 Technical Indicators Used:
OBV (On-Balance Volume): Measures buying/selling pressure via volume.
Momentum (Rate of Change): Detects acceleration/deceleration in price movement.
+DI from DMI/ADX: Indicates the strength of the uptrend.
This tool is ideal for momentum traders, volume analysts, and those who prefer a confluence-based trading approach. Use it on any time frame or asset to help confirm entries and exits with greater confidence.
Nifty Futures vs ATM Option Candle Mismatch//@version=5
indicator("Nifty Futures vs ATM Option Candle Mismatch", overlay=true)
// === Input symbols (modify these as needed) ===
niftySymbol = input.symbol("NSE:NIFTY1!", "Nifty Futures Symbol")
atmOptionSymbol = input.symbol("NSE:NIFTY24JUN22400CE", "ATM Option Symbol") // Replace with real ATM symbol dynamically
// === Get 5-min candles from both instruments ===
niftyClose = request.security(niftySymbol, "5", close)
niftyOpen = request.security(niftySymbol, "5", open)
optionClose = request.security(atmOptionSymbol, "5", close)
optionOpen = request.security(atmOptionSymbol, "5", open)
// === Determine candle color (green or red) ===
niftyGreen = niftyClose > niftyOpen
optionGreen = optionClose > optionOpen
// === Condition: Mismatch in candle direction ===
mismatch = (niftyGreen != optionGreen)
// === Plot an icon or background when mismatch occurs ===
plotshape(mismatch, title="Mismatch Signal", location=location.abovebar, color=color.red, style=shape.triangledown, size=size.small)
bgcolor(mismatch ? color.new(color.red, 85) : na, title="Mismatch Background")
Volume Momentum [BackQuant]Volume Momentum
The Volume Momentum indicator is designed to help traders identify shifts in market momentum based on volume data. By analyzing the relative volume momentum, this indicator provides insights into whether the market is gaining strength (uptrend) or losing momentum (downtrend). The strategy uses a combination of percentile-based volume normalization, weighted moving averages (WMA), and exponential moving averages (EMA) to assess volume trends.
The system focuses on the relationship between price and volume, utilizing normalized volume data to highlight key market changes. This approach allows traders to focus on volume-driven price movements, helping them to capture momentum shifts early.
Key Features
1. Volume Normalization and Percentile Calculation:
The signed volume (positive when the close is higher than the open, negative when the close is lower) is normalized against the rolling average volume. This normalized volume is then subjected to a percentile interpolation, allowing for a robust statistical measure of how the current volume compares to historical data. The percentile level is customizable, with 50 representing the median.
2. Weighted and Smoothed Moving Averages for Trend Detection:
The normalized volume is smoothed using weighted moving averages (WMA) and exponential moving averages (EMA). These smoothing techniques help eliminate noise, providing a clearer view of the underlying momentum. The WMA filters out short-term fluctuations, while the EMA ensures that the most recent data points have a higher weight, making the system more responsive to current market conditions.
3. Trend Reversal Detection:
The indicator detects momentum shifts by evaluating whether the volume momentum crosses above or below zero. A positive volume momentum indicates a potential uptrend, while a negative momentum suggests a possible downtrend. These trend reversals are identified through crossover and crossunder conditions, triggering alerts when significant changes occur.
4. Dynamic Trend Background and Bar Coloring:
The script offers customizable background coloring based on the trend direction. When volume momentum is positive, the background is colored green, indicating a bullish trend. When volume momentum is negative, the background is colored red, signaling a bearish trend. Additionally, the bars themselves can be colored based on the trend, further helping traders quickly visualize market momentum.
5. Alerts for Momentum Shifts:
The system provides real-time alerts for traders to monitor when volume momentum crosses a critical threshold (zero), signaling a trend reversal. The alerts notify traders when the market momentum turns bullish or bearish, assisting them in making timely decisions.
6. Customizable Parameters for Flexible Usage:
Users can fine-tune the behavior of the indicator by adjusting various parameters:
Volume Rolling Mean: The period used to calculate the average volume for normalization.
Percentile Interpolation Length: Defines the range over which the percentile is calculated.
Percentile Level: Determines the percentile threshold (e.g., 50 for the median).
WMA and Smoothing Periods: Control the smoothing and response time of the indicator.
7. Trend Background Visualization and Trend-Based Bar Coloring:
The background fill is shaded according to whether the volume momentum is positive or negative, providing a visual cue to indicate market strength. Additionally, bars can be color-coded to highlight the trend, making it easier to see the trend’s direction without needing to analyze numerical data manually.
8. Note on Mean-Reversion Strategy:
If you take the inverse of the signals, this indicator can be adapted for a mean-reversion strategy. Instead of following the trend, the strategy would involve buying assets that are underperforming and selling assets that are overperforming, based on volume momentum. However, it’s important to note that this approach may not work effectively on highly correlated assets, as their price movements may be too similar, reducing the effectiveness of the mean-reversion strategy.
Final Thoughts
The Volume Momentum indicator offers a comprehensive approach to analyzing volume-based momentum shifts in the market. By using volume normalization, percentile interpolation, and smoothed moving averages, this system helps identify the strength and direction of market trends. Whether used for trend-following or adapted for mean-reversion, this tool provides traders with actionable insights into the market’s volume-driven movements, improving decision-making and portfolio management.
JonnyBtc Daily Pullback Strategy (Volume + ADX)📈 JonnyBtc Daily Optimized Pullback Strategy (With Volume + ADX)
This strategy is designed for Bitcoin swing trading on the daily timeframe and uses a combination of price action, moving averages, volume, RSI, and ADX strength filtering to time high-probability entries during strong trending conditions.
🔍 Strategy Logic:
Trend Filter: Requires price to be aligned with both 50 EMA and 200 EMA.
Pullback Entry: Looks for a pullback to a fast EMA (default 21) and a crossover signal back above it.
RSI Confirmation: RSI must be above a minimum threshold for long entries (default 55), or below for short entries.
Volume Filter: Entry is confirmed only when volume is above a 20-day average.
ADX Filter: Only enters trades when ADX is above a strength threshold (default 20), filtering out sideways markets.
Trailing Stop (optional): Uses ATR-based trailing stop-loss and take-profit system, fully configurable.
⚙️ Default Settings:
Timeframe: Daily
Trade Direction: Long-only by default (can be toggled)
Trailing Stop: Enabled (can disable)
Session Filter: Off by default for daily timeframe
📊 Best Use:
Optimized for Bitcoin (BTCUSD) on the 1D chart
Can be adapted to other trending assets with proper tuning
Works best in strong trending markets — not ideal for choppy/ranging conditions
🛠️ Customizable Parameters:
EMA lengths (Fast, Mid, Long)
RSI and ADX thresholds
ATR-based TP/SL multipliers
Trailing stop toggle
Volume confirmation toggle
Time/session filter
⚠️ Disclaimer:
This script is for educational and research purposes only. Past performance does not guarantee future results. Always backtest and verify before trading with real funds.
Nifty Futures vs ATM Options Signal//@version=5
indicator("Nifty Futures vs ATM Options Signal", overlay=true)
// === Input Symbols ===
// Use appropriate symbols available in your TradingView account
niftyFutSymbol = input.symbol("NSE:NIFTY1!", "Nifty Futures")
atmCallSymbol = input.symbol("NSE:NIFTY24JUN22400CE", "ATM Call Option")
atmPutSymbol = input.symbol("NSE:NIFTY24JUN22400PE", "ATM Put Option")
// === Fetch OHLC from 5-min candles for all symbols ===
niftyOpen = request.security(niftyFutSymbol, "5", open)
niftyClose = request.security(niftyFutSymbol, "5", close)
callOpen = request.security(atmCallSymbol, "5", open)
callClose = request.security(atmCallSymbol, "5", close)
putOpen = request.security(atmPutSymbol, "5", open)
putClose = request.security(atmPutSymbol, "5", close)
// === Condition 1: Buy Signal ===
// Nifty Futures RED candle and ATM Call Option GREEN candle
buySignal = (niftyClose < niftyOpen) and (callClose > callOpen)
// === Condition 2: Sell Signal ===
// Nifty Futures GREEN candle and ATM Put Option GREEN candle
sellSignal = (niftyClose > niftyOpen) and (putClose > putOpen)
// === Plot Buy/Sell Signals ===
plotshape(buySignal, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.triangleup, size=size.small)
plotshape(sellSignal, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.triangledown, size=size.small)
bgcolor(buySignal ? color.new(color.green, 85) : na, title="Buy Background")
bgcolor(sellSignal ? color.new(color.red, 85) : na, title="Sell Background")
David_FairPriceCandlestick_calculatedDescription:
This indicator displays the "Typical Price" for each candle as a visual marker (cross) directly on the chart. The Typical Price is calculated as the average of the High, Low, and Close values of each bar:
(High + Low + Close) / 3
The marker provides a quick visual reference to the fair or average price level within every single candle.
Unlike a Point of Control (POC) or volume-based indicators, this script works purely with price data and is independent of volume or order flow.
Use cases:
Identify where most trading activity may have been concentrated within the candle (for price-based strategies)
Support as a reference line for mean-reversion or fair value concepts
Works on all timeframes and instruments
Customization:
You can easily change the marker style (cross, dot, triangle, etc.) and color within the script.
ATR Bands PRO + Sweep Label + Divergence [MASTER]🔰 ATR Bands PRO + Liquidity Sweep & Divergence (RSI/MACD)
## 🔰 ATR Bands PRO + Liquidity Sweep & Divergence
A powerful institutional-grade toolkit that combines advanced ATR band visualization, customizable stop bands, dynamic grid lines, real-time liquidity sweep detection, and built-in swing-point divergence signals (RSI/MACD) – all fully adjustable.
**Key Features:**
- **Multi-Timeframe ATR Bands:**
Visualize ATR-based bands from any higher timeframe, fully customizable in color, width, style, and extension.
- **Smart Stops & Grid:**
Add stop bands and dynamic ATR grid lines with user control over appearance and step.
- **Liquidity Sweep Detection:**
Instantly see “Bull Sweep” or “Bear Sweep” labels every time price touches high/low liquidity sweeps from your chosen timeframe.
- **Divergence Alerts (RSI/MACD):**
Detect bullish or bearish divergence at swing highs/lows (on the main timeframe) – complete with highly visible, color-customizable labels.
- **Professional, Non-Cluttered Visuals:**
All labels and lines are managed with smart array handling – zero repaint, zero overlay clutter.
**How to Use:**
1. Choose your ATR “base” timeframe and customize band/stop/grid appearance.
2. Pick the Liquidity Sweep timeframe (e.g., H1, H4, D1) for institutional swing levels.
3. Enable divergence detection (RSI or MACD) to reveal hidden reversal signals at market pivots.
4. Adjust label offsets and colors for maximum clarity on your chart.
**Perfect for:**
- Liquidity-driven scalping, swing, and positional strategies.
- Spotting liquidity grabs, institutional sweeps, and “trap” price action.
- Fast visual confirmation of potential reversal zones using built-in divergence signals.
- Traders who demand high-performance, flexible visuals without chart clutter.
---
**Credit:**
Original logic inspired by RunStrat, AlgoAlpha, and custom adaptations by MILO888.
---
*For educational and professional use. Test on your own symbol/timeframe before live trading. Enjoy an edge!*
Mariam Ichimoku DashboardPurpose
The Mariam Ichimoku Dashboard is designed to simplify the Ichimoku trading system for both beginners and experienced traders. It provides a complete view of trend direction, strength, momentum, and key signals all in one compact dashboard on your chart. This tool helps traders make faster and more confident decisions without having to interpret every Ichimoku element manually.
How It Works
1. Trend Strength Score
Calculates a score from -5 to +5 based on Ichimoku components.
A high positive score means strong bullish momentum.
A low negative score shows strong bearish conditions.
A near-zero score indicates a sideways or unclear market.
2. Future Cloud Bias
Looks 26 candles ahead to determine if the future cloud is bullish or bearish.
This helps identify the longer-term directional bias of the market.
3. Flat Kijun / Flat Senkou B
Detects flat zones in the Kijun or Senkou B lines.
These flat areas act as strong support or resistance and can attract price.
4. TK Cross
Identifies Tenkan-Kijun crosses:
Bullish Cross means Tenkan crosses above Kijun
Bearish Cross means Tenkan crosses below Kijun
5. Last TK Cross Info
Shows whether the last TK cross was bullish or bearish and how many candles ago it happened.
Helps track trend development and timing.
6. Chikou Span Position
Checks if the Chikou Span is above, below, or inside past price.
Above means bullish momentum
Below means bearish momentum
Inside means mixed or indecisive
7. Near-Term Forecast (Breakout)
Warns when price is near the edge of the cloud, preparing for a potential breakout.
Useful for anticipating price moves.
8. Price Breakout
Shows if price has recently broken above or below the cloud.
This can confirm the start of a new trend.
9. Future Kumo Twist
Detects upcoming twists in the cloud, which often signal potential trend reversals.
10. Ichimoku Confluence
Measures how many key Ichimoku signals are in agreement.
The more signals align, the stronger the trend confirmation.
11. Price in or Near the Cloud
Displays if the price is inside the cloud, which often indicates low clarity or a choppy market.
12. Cloud Thickness
Shows whether the cloud is thin or thick.
Thick clouds provide stronger support or resistance.
Thin clouds may allow easier breakouts.
13. Recommendation
Gives a simple trading suggestion based on all major signals.
Strong Buy, Strong Sell, or Hold.
Helps simplify decision-making at a glance.
Features
All major Ichimoku signals summarized in one panel
Real-time trend strength scoring
Detects flat zones, crosses, cloud twists, and breakouts
Visual alerts for trend alignment and signal confluence
Compact, clean design
Built with simplicity in mind for beginner traders
Tips
Best used on 15-minute to 1-hour charts for short-term trading
Avoid entering trades when price is inside the cloud because the market is often indecisive
Wait for alignment between trend score, TK cross, cloud bias, and confluence
Use the dashboard to support your trading strategy, not replace it
Enable alerts for major confluence or upcoming Kumo twists
9EMA Pullback9EMA pullback
✅ Rising 9 EMA
✅ 9 EMA above longer 21 EMA
✅ Closed above EMA for 10 prior bars
✅ Touch and close on EMA in the last bar
✅ Bar size smaller than 14-day ATR%
✅ Lower wick ≥ 25% of daily range
✅ Score-based screener signal
NP Screener with Alerts For Nifty 50 [NITIN PADALE]//@version=6
indicator('NP Screener with Alerts For Nifty 50 ', overlay = true)
////////////
// INPUTS //
filter_enabled = input.bool(false, '', group = 'Filter', inline = 'Filter')
filter_column = input.string('Price', title = 'Column', options = , group = 'Filter', inline = 'Filter')
filter_from = input.float(-9999999, 'From', group = 'Filter', inline = 'Filter')
filter_to = input.float(9999999, 'To', group = 'Filter', inline = 'Filter')
// SMA
rsi_len = input.int(14, title = 'RSI Length', group = 'Indicators')
rsi_os = input.float(30, title = 'RSI Overbought', group = 'Indicators')
rsi_ob = input.float(70, title = 'RSI Oversold', group = 'Indicators')
// TSI
tsi_long_len = input.int(25, title = 'TSI Long Length', group = 'Indicators')
tsi_shrt_len = input.int(13, title = 'TSI Short Length', group = 'Indicators')
tsi_ob = input.float(30, title = 'TSI Overbought', group = 'Indicators')
tsi_os = input.float(-30, title = 'TSI Oversold', group = 'Indicators')
// ADX Params
adx_smooth = input.int(14, title = 'ADX Smoothing', group = 'Indicators')
adx_dilen = input.int(14, title = 'ADX DI Length', group = 'Indicators')
adx_level = input.float(40, title = 'ADX Level', group = 'Indicators')
// SuperTrend
sup_atr_len = input.int(10, 'Supertrend ATR Length', group = 'Indicators')
sup_factor = input.float(3.0, 'Supertrend Factor', group = 'Indicators')
/////////////
// SYMBOLS //
u01 = input.bool(true, title = '', group = 'Symbols', inline = 's01')
u02 = input.bool(true, title = '', group = 'Symbols', inline = 's02')
u03 = input.bool(true, title = '', group = 'Symbols', inline = 's03')
u04 = input.bool(true, title = '', group = 'Symbols', inline = 's04')
u05 = input.bool(true, title = '', group = 'Symbols', inline = 's05')
u06 = input.bool(true, title = '', group = 'Symbols', inline = 's06')
u07 = input.bool(true, title = '', group = 'Symbols', inline = 's07')
u08 = input.bool(true, title = '', group = 'Symbols', inline = 's08')
u09 = input.bool(true, title = '', group = 'Symbols', inline = 's09')
u10 = input.bool(true, title = '', group = 'Symbols', inline = 's10')
s01 = input.symbol('HDFCBANK', group = 'Symbols', inline = 's01')
s02 = input.symbol('ICICIBANK', group = 'Symbols', inline = 's02')
s03 = input.symbol('RELIANCE', group = 'Symbols', inline = 's03')
s04 = input.symbol('INFY', group = 'Symbols', inline = 's04')
s05 = input.symbol('BHARTIARTL', group = 'Symbols', inline = 's05')
s06 = input.symbol('LT', group = 'Symbols', inline = 's06')
s07 = input.symbol('ITC', group = 'Symbols', inline = 's07')
s08 = input.symbol('TCS', group = 'Symbols', inline = 's08')
s09 = input.symbol('AXISBANK', group = 'Symbols', inline = 's09')
s10 = input.symbol('SBIN', group = 'Symbols', inline = 's10')
//////////////////
// CALCULATIONS //
filt_col_id = switch filter_column
'Price' => 1
'RSI' => 2
'TSI' => 3
'ADX' => 4
'SuperTrend' => 5
=> 0
// Get only symbol
only_symbol(s) =>
array.get(str.split(s, ':'), 1)
id_symbol(s) =>
switch s
1 => only_symbol(s01)
2 => only_symbol(s02)
3 => only_symbol(s03)
4 => only_symbol(s04)
5 => only_symbol(s05)
6 => only_symbol(s06)
7 => only_symbol(s07)
8 => only_symbol(s08)
9 => only_symbol(s09)
10 => only_symbol(s10)
=> na
// for TSI
double_smooth(src, long, short) =>
fist_smooth = ta.ema(src, long)
ta.ema(fist_smooth, short)
// ADX
dirmov(len) =>
up = ta.change(high)
down = -ta.change(low)
plusDM = na(up) ? na : up > down and up > 0 ? up : 0
minusDM = na(down) ? na : down > up and down > 0 ? down : 0
truerange = ta.rma(ta.tr, len)
plus = fixnan(100 * ta.rma(plusDM, len) / truerange)
minus = fixnan(100 * ta.rma(minusDM, len) / truerange)
adx_func(dilen, adxlen) =>
= dirmov(dilen)
sum = plus + minus
adx = 100 * ta.rma(math.abs(plus - minus) / (sum == 0 ? 1 : sum), adxlen)
adx
screener_func() =>
// RSI
rsi = ta.rsi(close, rsi_len)
// TSI
pc = ta.change(close)
double_smoothed_pc = double_smooth(pc, tsi_long_len, tsi_shrt_len)
double_smoothed_abs_pc = double_smooth(math.abs(pc), tsi_long_len, tsi_shrt_len)
tsi = 100 * (double_smoothed_pc / double_smoothed_abs_pc)
// ADX
adx = adx_func(adx_dilen, adx_smooth)
// Supertrend
= ta.supertrend(sup_factor, sup_atr_len)
// Set Up Matrix
screenerMtx = matrix.new(0, 6, na)
screenerFun(numSym, sym, flg) =>
= request.security(sym, timeframe.period, screener_func())
arr = array.from(numSym, cl, rsi, tsi, adx, sup)
if flg
matrix.add_row(screenerMtx, matrix.rows(screenerMtx), arr)
// Security call
screenerFun(01, s01, u01)
screenerFun(02, s02, u02)
screenerFun(03, s03, u03)
screenerFun(04, s04, u04)
screenerFun(05, s05, u05)
screenerFun(06, s06, u06)
screenerFun(07, s07, u07)
screenerFun(08, s08, u08)
screenerFun(09, s09, u09)
screenerFun(10, s10, u10)
///////////
// PLOTS //
var tbl = table.new(position.top_right, 6, 41, frame_color = #151715, frame_width = 1, border_width = 2, border_color = color.new(color.white, 100))
log.info(str.tostring(filt_col_id))
alert_msg = ''
if barstate.islast
table.clear(tbl, 0, 0, 5, 40)
table.cell(tbl, 0, 0, 'Symbol', text_halign = text.align_center, bgcolor = color.gray, text_color = color.white, text_size = size.small)
table.cell(tbl, 1, 0, 'Price', text_halign = text.align_center, bgcolor = color.gray, text_color = color.white, text_size = size.small)
table.cell(tbl, 2, 0, 'RSI', text_halign = text.align_center, bgcolor = color.gray, text_color = color.white, text_size = size.small)
table.cell(tbl, 3, 0, 'TSI', text_halign = text.align_center, bgcolor = color.gray, text_color = color.white, text_size = size.small)
table.cell(tbl, 4, 0, 'ADX', text_halign = text.align_center, bgcolor = color.gray, text_color = color.white, text_size = size.small)
table.cell(tbl, 5, 0, 'Supertrend', text_halign = text.align_center, bgcolor = color.gray, text_color = color.white, text_size = size.small)
if matrix.rows(screenerMtx) > 0
for i = 0 to matrix.rows(screenerMtx) - 1 by 1
is_filt = not filter_enabled or matrix.get(screenerMtx, i, filt_col_id) >= filter_from and matrix.get(screenerMtx, i, filt_col_id) <= filter_to
if is_filt
if str.length(alert_msg) > 0
alert_msg := alert_msg + ','
alert_msg
alert_msg := alert_msg + id_symbol(matrix.get(screenerMtx, i, 0))
rsi_col = matrix.get(screenerMtx, i, 2) > rsi_ob ? color.red : matrix.get(screenerMtx, i, 2) < rsi_os ? color.green : #aaaaaa
tsi_col = matrix.get(screenerMtx, i, 3) > tsi_ob ? color.red : matrix.get(screenerMtx, i, 3) < tsi_os ? color.green : #aaaaaa
adx_col = matrix.get(screenerMtx, i, 4) > adx_level ? color.green : #aaaaaa
sup_text = matrix.get(screenerMtx, i, 5) > 0 ? 'Down' : 'Up'
sup_col = matrix.get(screenerMtx, i, 5) < 0 ? color.green : color.red
table.cell(tbl, 0, i + 1, id_symbol(matrix.get(screenerMtx, i, 0)), text_halign = text.align_left, bgcolor = color.gray, text_color = color.white, text_size = size.small)
table.cell(tbl, 1, i + 1, str.tostring(matrix.get(screenerMtx, i, 1)), text_halign = text.align_center, bgcolor = #aaaaaa, text_color = color.white, text_size = size.small)
table.cell(tbl, 2, i + 1, str.tostring(matrix.get(screenerMtx, i, 2), '#.##'), text_halign = text.align_center, bgcolor = rsi_col, text_color = color.white, text_size = size.small)
table.cell(tbl, 3, i + 1, str.tostring(matrix.get(screenerMtx, i, 3), '#.##'), text_halign = text.align_center, bgcolor = tsi_col, text_color = color.white, text_size = size.small)
table.cell(tbl, 4, i + 1, str.tostring(matrix.get(screenerMtx, i, 4), '#.##'), text_halign = text.align_center, bgcolor = adx_col, text_color = color.white, text_size = size.small)
table.cell(tbl, 5, i + 1, sup_text, text_halign = text.align_center, bgcolor = sup_col, text_color = color.white, text_size = size.small)
if str.length(alert_msg) > 0
alert(alert_msg, freq = alert.freq_once_per_bar_close)
EMA Crossover + SuperTrend Retest//@version=5
indicator("EMA Crossover + SuperTrend Retest", overlay=true)
// Inputs for SuperTrend
atrLength = input.int(10, "ATR Length", minval=1)
Factor = input.float(3.0, "SuperTrend Multiplier", step=0.1)
// Calculate EMAs
ema13 = ta.ema(close, 13)
ema50 = ta.ema(close, 50)
ema200 = ta.ema(close, 200)
// Calculate SuperTrend
= ta.supertrend(Factor, atrLength)
// Plot EMAs
plot(ema13, "EMA 13", color=color.new(#FF6D00, 0))
plot(ema50, "EMA 50", color=color.new(#2962FF, 0))
plot(ema200, "EMA 200", color=color.new(#00BFA5, 0))
// Plot SuperTrend
plot(supertrend, "SuperTrend",
color=direction == 1 ? color.rgb(230, 13, 13) : color.rgb(17, 255, 0),
linewidth=2)
// Trend Conditions
uptrendFilter = ema50 > ema200 and close > supertrend
downtrendFilter = ema50 < ema200 and close < supertrend
// Crossover Conditions with Trend Filter
bullishCross = ta.crossover(ema13, ema50) and uptrendFilter
bearishCross = ta.crossunder(ema13, ema50) and downtrendFilter
// Retest Conditions (Both EMAs and SuperTrend)
bullishRetest = bullishCross and
(low <= ema50) and
(low <= ema200) and
(low <= supertrend)
bearishRetest = bearishCross and
(high >= ema50) and
(high >= ema200) and
(high >= supertrend)
// Plot Signals
plotshape(bullishRetest, "Bullish Signal", shape.triangleup,
location.belowbar, color=color.green, size=size.small)
plotshape(bearishRetest, "Bearish Signal", shape.triangledown,
location.abovebar, color=color.red, size=size.small)
// Alert Conditions
alertcondition(bullishRetest, "Bullish Alert",
"EMA13↑50 + Retest 50/200/SuperTrend")
alertcondition(bearishRetest, "Bearish Alert",
"EMA13↓50 + Retest 50/200/SuperTrend")
ICT Directional FVG Indicator (Buffered SL)This is the first indicator I have ever made, and I am very new to Pine Script. I’ve tried my best to create this as a strategy, but I’m still learning, so please be kind and constructive with your feedback!
ICT Directional FVG Indicator (Buffered SL)
This indicator is designed for traders who follow ICT (Inner Circle Trader) concepts, focusing on Fair Value Gaps (FVGs), liquidity sweeps, and session-based trading. It automatically detects bullish and bearish FVGs, highlights them on the chart, and identifies liquidity sweep events. The indicator features three customizable Kill Zones (London, New York, and Asia sessions), each with independent toggles and color-coded backgrounds for clear visual separation.
Key features:
Fair Value Gap Detection: Highlights bullish and bearish FVGs in real time.
Liquidity Sweep Alerts: Marks potential liquidity sweep events for both highs and lows.
Session Kill Zones: Toggle each Kill Zone (London, New York, Asia) independently; background color changes only in enabled zones.
Trade Signal Visualization: Plots entry, stop loss, and take profit levels based on FVG and sweep logic, with a user-defined stop loss buffer.
Customizable Display: Easily enable or disable FVGs, sweeps, trade levels, and each Kill Zone to suit your strategy.
This tool is ideal for ICT-based traders who want a clear, automated view of FVGs, sweeps, and session activity, with full control over which sessions and signals are displayed.
P&L Entry Zone Marker (clean)This indicator is a simple visual calculator for futures traders.
It helps you track your long and short entry zones based on position size and average price.
🔹 Green line – recalculated long entry after averaging down.
🔹 Red line – short entry point.
You can manually input your initial entry, volume, averaging volume, and averaging price.
The script calculates your new average entry for long positions and plots both lines as full horizontal levels across the chart.
✳️ Useful for:
Visualizing break-even zones
Planning P&L zones for hedged positions
Quickly aligning your trades with market structure
✅ Clean version — no labels, just lines.
📉 Works on all symbols and timeframes.
Moving Average ExponentialUsing VWAP and two different EMAs. Also includes BollingerBands, showing if the Close is above or below VWAP.
Relative Imbalance Flow Tracker🚀 RIFT: Relative Imbalance Flow Tracker
A totally unique RSI envelope system that uses dual moving averages and color-coded dominance to show potential reversal zones before they happen. No standard Bollinger Bands. No gray confusion. Just clean, smart, visual logic.
🧠 How It Works
RSI is calculated and optionally smoothed (RMA/EMA/SMA/WMA).
Two RSI-based MAs are plotted:
- Fast MA (e.g. 16) = reactive
- Slow MA (e.g. 32) = steady
Each MA gets its own envelope based on a % distance.
If fast envelope dominates (outside the slow one), it lights up. Otherwise, they fade and cancel each other visually.
🎨 Color Logic
🔴 Upper Band (Red) = Overbought danger zone
When fast upper > slow upper, it's a warning flare.
🟢 Lower Band (Green) = Oversold bounce zone
When fast lower < slow lower, bulls may step in.
🟠 RSI Line Orange = Mixed signals
RSI is between the two MAs—no one's in control.
🟢 - RSI Line Green = RSI > both MAs = strong momentum
🔴 - RSI Line Red = RSI < both MAs = bearish pressure
🔍 How to Read It
- Red Band + Green RSI = uptrend stalling
- Green Band + Red RSI = selloff slowing
- No Fill = Envelopes overlapping, no edge
- RSI flips from green/red to orange = tug-of-war
⚙️ Why It’s Useful
- Gives early reversal clues before RSI tags extreme levels.
- Filters out fakeouts by showing when RSI can’t reach the “target zone.”
- Dynamic: adapts with trend strength and volatility via envelope width.
- Fully customizable: lengths, smoothing, envelope %, colors, fills.
💡 Quick Visual Tips
🔴 - Red Band visible but RSI stalls? = Likely reversal.
🟢 - Green Band shows up and RSI flips green? = Go time.
🟠 - RSI turns orange + no fills? = Sit out or scalp light.
Momentum Contour Pulse [ApexLegion]🌊 Momentum Contour Pulse
*Advanced Multi-Layer Momentum Visualization with High-Precision Trend Reversal Detection*
📖 **OVERVIEW**
The **Momentum Contour Pulse** is a sophisticated momentum analysis tool that combines topographic-style visualization with precision trend reversal signals. This indicator creates dynamic "contour maps" of market momentum, similar to elevation maps, where color intensity and gradient effects reveal the strength and direction of underlying market forces.
**Key Innovation:** Unlike traditional momentum indicators that show simple lines or histograms, this system renders momentum as flowing, gradient-based bands that expand and contract with market volatility, providing an intuitive visual representation of market energy.
✨ **KEY FEATURES**
🎨 **Dynamic Contour Visualization**
- **20-Level Gradient System**: Creates smooth topographic-style momentum bands
- **Adaptive Color Intensity**: Glow effects strengthen with momentum conviction
- **Dual-Color Zones**: Cyan for bullish momentum, Purple for bearish momentum
- **Fade Effects**: Smooth visual transitions during momentum changes
⚡ **Precision Pulse Signals**
- **🟢 Bull Pulse**: Triggered at trend reversal to upward momentum + maximum intensity
- **🔴 Bear Pulse**: Triggered at trend reversal to downward momentum + maximum intensity
- **Professional Glow Effects**: Multi-layer plotshape rendering for premium visual quality
- **ATR-Based Positioning**: Signals placed at precise reversal points with volatility-adjusted spacing
🔧 **Advanced Technical Engine**
- **ATG Filter System**: Proprietary dual-timeframe EMA flow analysis with angular separation
- **Adaptive Volatility Bands**: Dynamic expansion/contraction based on market conditions
- **Multi-Condition Confirmation**: Combines trend detection, breakout analysis, and momentum strength
- **Intensity Filtering**: Only top 25% intensity signals qualify for pulse alerts
🚀 **HOW TO USE**
### **For Visual Analysis:**
1. **Contour Reading**: Brighter bands = stronger momentum, darker bands = weaker momentum
2. **Direction Assessment**: Cyan glow = bullish bias, Purple glow = bearish bias
3. **Momentum Tracking**: Watch band intensity changes to gauge momentum shifts
**For Flow Analysis:**
1. **🟢 Bull Pulse**: Monitor for upside pressure when pulse appears at support levels
2. **🔴 Bear Pulse**: Observe downside flow when pulse appears at resistance levels
3. **Confirmation**: Validate momentum expansion with other technical analysis for optimal engagement zones
**For Educational Purpose:**
1. Enable **"Show Debug Table"** to see all internal calculations
2. Enable **"Show Debug Lines"** to visualize trend zones and breakout levels
3. Study how momentum intensity correlates with price movements
⚙️ **CONFIGURATION GUIDE**
**ATG Filter Settings** 🎯
- **Short-Term Flow Length (21)**: Controls fast EMA sensitivity
- **Long-Term Flow Length (55)**: Controls slow EMA baseline
- **Volatility Expansion Multiplier (1.75)**: Adjusts breakout zone sensitivity
- **Trend Angle Threshold (25°)**: Sets minimum slope requirement for trend detection
**Visual Customization** 🎨
- **Upper Band Color**: Customize bullish momentum color (default: Cyan)
- **Lower Band Color**: Customize bearish momentum color (default: Purple)
- **Base Glow Intensity (3.0)**: Controls overall visual brightness
- **Momentum Boost Multiplier (1.3)**: Amplifies visual response to strong moves
**Learning Tools** 🔧
- **Show Debug Table**: Reveals all calculation steps and decision logic
- **Show Debug Lines**: Displays trend zones and breakout thresholds
- **Intensity Smoothing Period (8)**: Controls signal responsiveness vs stability
📚 **EDUCATIONAL VALUE**
This indicator serves as an excellent learning tool for understanding:
**Momentum Analysis Concepts:**
- How dual-timeframe EMA analysis reveals trend structure
- The relationship between volatility and trend confirmation
- Angular measurement techniques for trend strength assessment
**Advanced Pine Script Techniques:**
- Multi-level gradient rendering using fill() functions
- Dynamic color saturation based on calculated intensity
- Sophisticated fade effect systems using historical arrays
- Professional signal visualization with multi-layer plotshape
**Market Psychology:**
- How momentum builds and dissipates in trending markets
- Visual representation of market conviction through color intensity
- The relationship between breakout patterns and momentum confirmation
⚠️ **IMPORTANT NOTES**
**Analysis Guidelines:**
- Use on multiple timeframes for comprehensive momentum assessment
- Combine with support/resistance levels for enhanced flow initiation accuracy
- Consider overall market context when interpreting directional moves
**Important Notes:**
- Disable debug features for optimal chart performance
- Default settings are optimized for most market conditions
**Signal Interpretation:**
- Pulse signals indicate potential flow reversal points, not guaranteed outcomes
- Higher intensity signals generally show better momentum expansion reliability
- Always practice proper risk management regardless of directional move strength
⚠️ **Limitations**
1. **Backtesting Limitations**
This indicator is not a strategy and cannot perform official backtesting on TradingView's engine.
Pulse signals are visual cues only, not verified historical trades.
2. **Regression Band and ATG Filter Inherent Lag**
Linear regression bands are calculated from past data, creating natural lag.
The dual-timeframe EMA analysis (21/55) also requires sufficient data for trend establishment.
3. **High Intensity Threshold May Miss Signals**
The 75% intensity requirement filters for premium signals but may miss moderate opportunities.
In low-volatility periods, pulse signals may become infrequent.
4. **Single Indicator Dependency Risk**
Momentum Contour Pulse works best when combined with support/resistance analysis.
Relying solely on pulse signals without market context may reduce effectiveness.
5. **Parameter Sensitivity**
Modifying ATG filter settings or intensity thresholds should be done carefully.
Excessive sensitivity may produce false signals; excessive filtering may miss valid setups.
🎓 **TECHNICAL METHODOLOGY**
The indicator employs a sophisticated multi-step process:
1. **Flow Analysis**: Calculates dual-timeframe EMA separation and converts to angular measurements
2. **Threshold Adaptation**: Dynamically adjusts trend strength requirements based on historical volatility
3. **Breakout Detection**: Identifies price movements beyond adaptive volatility bands
4. **Intensity Calculation**: Normalizes momentum strength to 0-1 range with smoothing
5. **Visual Rendering**: Applies 20-level gradient system with dynamic transparency
6. **Signal Generation**: Filters for trend changes meeting maximum intensity criteria
**Core Algorithm:**
flowSeparation = math.atan(flowFast_ATG - flowSlow_ATG) * 180 / math.pi
- Converts dual-timeframe EMA separation into precise angular momentum measurement, enabling topographic-style visualization of market flow intensity.
! (i.imgur.com)
🎨 **Visual Features Showcase**
**Multi-Layer Contour Visualization in Action**
**Dynamic Gradient Bands:** Watch how the 20-level gradient system creates topographic-style momentum maps. The **emerald upper contours** represent bullish flow zones, while **violet lower contours** indicate bearish pressure areas. Notice how band intensity **glows brighter** during strong momentum phases and **fades** during consolidation.
**Precision Pulse Signal:** The **🟢 green pulse** (left side) demonstrates perfect trend reversal detection at the momentum flow initiation point. The multi-layer glow effect creates professional-grade signal visualization that stands out without cluttering the chart.
**Adaptive Band Expansion:** Observe how contour bands dynamically **expand during volatility** and **contract during calm periods**, automatically adjusting to market conditions using ATR-based calculations.
📊 **What You're Seeing:**
• **Emerald Glow Zones** → Bullish momentum dominance
• **Violet Flow Areas** → Bearish pressure regions
• **Gradient Intensity** → Real-time momentum strength
• **Pulse Signals** → High-conviction reversal points
• **Smooth Transitions** → Advanced fade effect system
✅ Usage Disclaimer
Momentum Contour Pulse is a visual analytics tool designed for educational and informational purposes only.
It is not financial advice, nor should its signals be interpreted as trading recommendations.
Users are solely responsible for their own trading decisions.
Always practice appropriate risk management and consult with a licensed financial professional when necessary.
The creator of this tool assumes no liability for any financial losses resulting from its use.
Liquidity Sweep Strategy [Enhanced]liquidity sweep simplifier
break of structure, move back into zone which pushes prices in the same direction, sweep of liquidity and entry