NY ORB (30m) + ATR CheckNY Open strategy
First candle at 30min NY Open @ 9:30
Mark high/low of that candle (ORB)
Make sure ATR is within 25% deviation +/-
If ATR is in harmony with the price difference of the first candle high/low
You trade the first candle close that closes above the candle high/low (ORB)
Penunjuk dan strategi
Candlestick Patterns Dashboard Pro+ [ULTIMATE]Unleash the power of automated candlestick analysis with the most comprehensive and customizable pattern detection tool on TradingView. This is not just another pattern scanner; it's a complete trading dashboard designed to identify, score, and confirm high-probability setups, saving you hours of manual chart analysis.
Built with performance and reliability in mind, this script goes beyond simple detection by introducing a unique reliability score for every pattern, advanced confirmation filters, and a powerful on-screen dashboard to keep you informed.
Key Features
📈 Comprehensive Pattern Detection: Automatically identifies 13 of the most effective candlestick patterns, including Bullish/Bearish Engulfing, Hammer, Shooting Star, Doji, Morning/Evening Star, and more.
🔟 Dynamic Reliability Scoring: Every pattern is assigned a score from 1-10 based on its confirmation strength. Factors include candle body size, volume confirmation, trend alignment, and higher-timeframe confluence, giving you a quantifiable measure of a pattern's potential.
📊 The Ultimate Dashboard: Your at-a-glance command center. The on-screen dashboard provides a complete summary of all active patterns, showing you exactly when they last occurred and highlighting the most recent signals. It also includes an "Overall Bias" meter for a quick sentiment check.
🛡️ Trade Smarter with Advanced Confirmation Filters: Eliminate low-quality signals and focus on what matters.
Trend Alignment: Use SMA(50) and SMA(200) to only show patterns that agree with the dominant market trend.
Volume Confirmation: Validate patterns by requiring a surge in volume.
Non-Repainting HTF Confirmation: Ensure your patterns align with the trend on a higher timeframe (e.g., Daily trend for a 4H signal) using a reliable, non-repainting method.
Market Condition Filter: Isolate patterns that occur only in "Trending" or "Ranging" markets.
Time Filter: Restrict pattern detection to specific trading sessions.
🔧 ‘Fuzzy Logic’ for Real-World Trading: Textbook patterns are rare. Use the "Fuzzy Logic" settings to adjust the criteria for patterns like the Hammer, Piercing Line, and Doji, allowing you to catch imperfect but still valid real-world formations.
⚙️ Fully Customizable Scoring: You decide what's important! Adjust the bonus scores for volume, trend, and other factors to create a scoring system that perfectly aligns with your trading strategy.
🚨 Powerful & Customizable Alerts: Never miss an opportunity.
Create alerts for any individual pattern.
Get notified of "Pattern Clusters" when multiple bullish or bearish signals appear in close succession.
Customize the alert messages to be compatible with your favorite trading automation services.
🚀 Performance Optimized: A "Max Bars Back" setting ensures the script runs smoothly and efficiently, even on lower-end devices or extensive historical data.
How To Use This Indicator
For Confirmation: The primary strength of this tool is for confirmation. Do not trade based on patterns alone. Use the detected signals to confirm your own analysis, such as a pattern appearing at a key support/resistance level, a trendline, or a Fibonacci retracement. A Bullish Engulfing pattern at a major support level is a much stronger signal than one appearing in the middle of a range.
For Discovery: Use the Dashboard to quickly scan through your favorite assets. A dashboard full of recent bullish signals on one asset, and bearish on another, can instantly help you focus your attention for the day.
Customizing for Your Style:
Start with the Market Presets ("Forex," "Stocks," "Crypto") for a solid baseline.
Dive into the Scoring Weights to tell the indicator what you value most. A pure volume trader might increase the Volume Bonus score.
Adjust the Fuzzy Logic settings based on your market's volatility. A volatile crypto market might require a more lenient Doji definition than a stable blue-chip stock.
Setting Up Alerts:
Add the indicator to your chart.
Click the "Alert" button in the TradingView toolbar.
Set the "Condition" to "Candlestick Patterns Dashboard Pro+ ".
Choose the specific alert you want from the dropdown (e.g., "Bullish Pattern Detected," "Bearish Pattern Cluster").
Customize the message if needed and click "Create."
A Note of Thanks
This script began as a personal project and has evolved into this ultimate version thanks to invaluable community feedback, bug reports, and suggestions. A special thank you to the users who helped identify and fix critical bugs related to syntax and variable scope. This collaborative effort has made the indicator more robust and reliable for everyone.
Disclaimer: This tool is for educational and analytical purposes only. All trading involves substantial risk. Past performance is not indicative of future results. Please trade responsibly.
BPS Multi-MA 5 — 22/30, SMA/WMA/EMA# Multi-MA 5 — 22/30 base, SMA/WMA/EMA
**What it is**
A lightweight 5-line moving-average ribbon for fast visual bias and trend/mean-reversion reads. You can switch the MA type (SMA/WMA/EMA) and choose between two ways of setting lengths: by monthly “session-based” base (22 or 30) with multipliers, or by entering exact lengths manually. An optional info table shows the effective settings in real time.
---
## How it works
* Calculates five moving averages from the selected price source.
* Lengths are either:
* **Multipliers mode:** `Base × Multiplier` (e.g., base 22 → 22/44/66/88/110), or
* **Manual mode:** any five exact lengths (e.g., 10/22/50/100/200).
* Plots five lines with fixed legend titles (MA1…MA5); the **info table** displays the actual type and lengths.
---
## Inputs
**Length Mode**
* **Multipliers** — choose a **Base** of **22** (≈ trading sessions per month) or **30** (calendar-style, smoother) and set **×1…×5** multipliers.
* **Manual** — enter **Len1…Len5** directly.
**MA Settings**
* **MA Type:** SMA / WMA / EMA
* **Source:** any series (e.g., `close`, `hlc3`, etc.)
* **Use true close (ignore Heikin Ashi):** when enabled, the MA is computed from the underlying instrument’s real `close`, not HA candles.
* **Show info table:** toggles the on-chart table with the current mode, type, base, and lengths.
---
## Quick start
1. Add the indicator to your chart.
2. Pick **MA Type** (e.g., **WMA** for faster response, **SMA** for smoother).
3. Choose **Length Mode**:
* **Multipliers:** set **Base = 22** for session-based monthly lengths (stocks/FX), or **30** for heavier smoothing.
* **Manual:** enter your exact lengths (e.g., 10/22/50/100/200).
4. (Optional) On **Heikin Ashi** charts, enable **Use true close** if you want the lines based on the instrument’s real close.
---
## Tips & notes
* **1 month ≈ 21–22 sessions.** Using 30 as “monthly” yields a smoother, more delayed curve.
* **WMA** reacts faster than **SMA** at the same length; expect earlier signals but more whipsaws in chop.
* **Len = 1** makes the MA track the chosen source (e.g., `close`) almost exactly.
* If changing lengths doesn’t move the lines, ensure you’re editing fields for the **active Length Mode** (Multipliers vs Manual).
* For clean comparisons, use the **same timeframe**. If you later wrap this in MTF logic, keep `lookahead_off` and handle gaps appropriately.
---
## Use cases
* Trend ribbon and dynamic bias zones
* Pullback entries to the mid/slow lines
* Crossovers (fast vs slow) for confirmation
* Volatility filtering by spreading lengths (e.g., 22/44/88/132/176)
---
**Credits:** Built for clarity and speed; designed around session-based “monthly” lengths (22) or smoother calendar-style (30).
(ES, NQ) Trend Checker SB1(ES, NQ) Trend Checker SB1
Stay ahead of the market by tracking whether the E-mini S&P 500 (ES) and the Nasdaq 100 (NQ) are moving in sync.
📊 How it works:
The script checks whether each index is bullish (close > open) or bearish (close < open).
If both are aligned (all bullish or all bearish), conditions are stable.
If they diverge, the indicator instantly flags a mismatch in trend.
🎯 Features:
Background shading to highlight mismatched conditions.
Real-time alerts when ES and NQ fall out of sync.
Works on any timeframe.
🔥 Why it matters:
When ES and NQ move together, market momentum is usually stronger and cleaner.
But when they disagree, expect choppiness, fakeouts, or caution zones — the perfect heads-up before entering trades.
Previous Candle High/Low (Global Rays)Previous Candle High/Low (Global Rays, Corrected)
This indicator tracks the high and low of the most recently closed candle and projects them forward as global horizontal rays.
Features:
✅ Automatically updates the levels once a candle fully closes.
✅ Draws persistent lines at the previous candle’s high (green) and low (red), extending them into the future.
✅ Highlights real-time breakouts:
✅ Includes built-in alert conditions for both breakout events.
How to Use:
Use the levels as reference points for breakout trades, liquidity sweeps, or stop hunts.
Alerts can help you catch moves without needing to constantly watch the chart.
Works on any timeframe and symbol.
FVG Zones – shrink on fill (bull/bear)Detects classic 3-candle FVGs (ICT definition).
Draws zones as boxes that extend to the right.
On each bar close:
Checks overlap with the current candle.
Shrinks the zone when price wicks into it (bullish: top moves down; bearish: bottom moves up).
Deletes the zone once it’s completely filled/closed.
Inputs: bullish/bearish zone color, border color, and max number of visible FVGs.
Possible extensions:
Multi-timeframe FVGs (e.g. H1 FVGs shown on M5).
Separate limits for bullish and bearish zones.
Alerts for new FVG, partial fill, or closed FVG.
Option “Body only” (ignore wicks when detecting overlap).
Minimum FVG size filter (ticks/ATR).
DTC FX+DTC FX+
All in One Indicator for Forex Markets
A comprehensive FX session indicator designed to help traders identify and analyze different trading sessions throughout the day.
This indicator provides real-time detection of major FX trading sessions including New York, London, and Tokyo sessions. It displays session ranges, highs and lows, and includes volume analysis to help identify periods of increased market activity.
Key features include:
• Real-time FX Session Detection (NY, London, Tokyo)
• Live Daily Candle Overlay with OHLC tracking
• Volume Bars for Strong Volume Detection
• Session Trend Detection
• Dynamic Session Status Tables
• Daily Dividers and Session Box Visualization
• Custom Trading Rules Display
• Watermark System
• Moving Averages (EMA, WMA, SMA)
• Fair Value Gaps (FVG) Detection
• Support & Resistance Levels (CISD)
• Gap Violations Analysis
• Session-specific Volume Analysis
• Customizable Session Times and Colors
• Theme-aware Display Options
• Multiple Watermark Styles
• Session Range and Extremes Display
• Professional Session Dashboard
The session dashboard provides a clear overview of current market conditions, while customizable trading rules can be displayed directly on the chart. Session boxes and dividers help visualize different trading periods, making it easier to understand market structure across different time zones.
All session times, colors, and display options are fully customizable to match your trading preferences. The indicator works across multiple timeframes and includes theme-aware display options for both light and dark chart themes.
Whether you're a day trader looking for session-based opportunities or a swing trader analyzing market structure, this indicator provides the tools needed to better understand FX market dynamics across different trading sessions.
Trapped Traders [ScorsoneEnterprises]This indicator identifies and visualizes trapped traders - market participants caught on the wrong side of price movements with significant volume imbalances. By analyzing volume delta at specific price levels, it reveals where traders are likely experiencing unrealized losses and may be forced to exit their positions.
The point of this tool is to identify where the liquidity in a trend may be.
var lowerTimeframe = switch
useCustomTimeframeInput => lowerTimeframeInput
timeframe.isseconds => "1S"
timeframe.isintraday => "1"
timeframe.isdaily => "5"
=> "60"
= ta.requestVolumeDelta(lowerTimeframe)
price_quantity = map.new()
is_red_candle = close < open
is_green_candle = close > open
for i=0 to lkb-1 by 1
current_vol = price_quantity.get(close)
new_vol = na(current_vol) ? lastVolume : current_vol + lastVolume
price_quantity.put(close, new_vol)
if is_green_candle and new_vol < 0
price_quantity.put(close, new_vol)
else if is_red_candle and new_vol > 0
price_quantity.put(close, new_vol)
We see in this snippet, the lastVolume variable is the most recent volume delta we can receive from the lower timeframe, we keep updating the price level we're keeping track of with that lastVolume from the lower timeframe.
This is the bulk of the concept as this level and size gives us the idea of how many traders were on the wrong side of the trend, and acting as liquidity for the profitable entries. The more, the stronger.
There are 3 ways to visualize this. A basic label, that will display the size and if positive or negative next to the bar, a gradient line that goes 10 bars to the future to be used as a support or resistance line that includes the quantity, and a bubble chart with the quantity. The larger the quantity, the bigger the bubble.
We see in this example on NYMEX:CL1! that there are lines plotted throughout this price action that price interacts with in meaningful way. There are consistently many levels for us.
Here on CME_MINI:ES1! we see the labels on the chart, and the size set to large. It is the same concept just another way to view it.
This chart of CME_MINI:RTY1! shows the bubble chart visualization. It is a way to view it that is pretty non invasive on the chart.
Every timeframe is supported including daily, weekly, and monthly.
The included settings are the display style, like mentioned above. If the user would like to see the volume numbers on the chart. The text size along with the transparency percentage. Following that is the settings for which lower timeframe to calculate the volume delta on. Finally, if you would like to see your inputs in the status line.
No indicator is 100% accurate, use "Trapped Traders" along with your own discretion.
Liquidity-Weighted Business Cycle (Satoshi Global Base)🌍 BTC-Affinity Global Liquidity Business Cycle (MACD Model)
This indicator models Bitcoin’s macroeconomic business cycle using a BTC-weighted global liquidity index as its foundation. It adapts a MACD-based framework to visualize expansions and contractions in fiat liquidity across major economies with high Bitcoin affinity.
🔍 What It Does:
🧠 Constructs a Global M2 Liquidity Index from the top 10 most BTC-relevant fiat currencies
(USD, EUR, JPY, GBP, INR, CNY, KRW, BRL, CAD, AUD)
— each weighted by its Bitcoin adoption score and FX-converted into USD.
📊 Applies a MACD (Moving Average Convergence Divergence) signal to the index to detect macro liquidity trends.
🟢 Plots a histogram of business cycle momentum (red = expansion, green = contraction).
🔴 Marks potential cycle peaks, useful for macro trading alignment.
⚖️ BTC Affinity-Weighted Countries:
🇺🇸 United States
🇪🇺 Eurozone
🇯🇵 Japan
🇬🇧 United Kingdom
🇮🇳 India
🇨🇳 China
🇰🇷 South Korea
🇧🇷 Brazil
🇨🇦 Canada
🇦🇺 Australia
Weights are user-adjustable to reflect evolving capital controls, regulation, and real-world BTC adoption trends.
✅ Use Cases:
Confirm macro risk-on vs risk-off regimes for BTC and crypto.
Identify ideal entry and exit zones in macro pair trades (e.g., MSTR vs MSTY).
Monitor how global monetary expansion feeds into BTC valuations.
US Liquidity-Weighted Business Cycle📈 BTC Liquidity-Weighted Business Cycle
This indicator models the Bitcoin macro cycle by comparing its logarithmic price against a log-transformed liquidity proxy (e.g., US M2 Money Supply). It helps visualize cyclical tops and bottoms by measuring the relative expansion of Bitcoin price versus fiat liquidity.
🧠 How It Works:
Transforms both BTC and M2 using natural logarithms.
Computes a liquidity ratio: log(BTC) – log(M2) (i.e., log(BTC/M2)).
Runs MACD on this ratio to extract business cycle momentum.
Plots:
🔴 Histogram bars showing cyclical growth or contraction.
🟢 Top line to track the relative price-to-liquidity trend.
🔴 Cycle peak markers to flag historical market tops.
⚙️ Inputs:
Adjustable MACD lengths
Toggle for liquidity trend line overlay
🔍 Use Cases:
Identifying macro cycle tops and bottoms
Timing long-term Bitcoin accumulation or de-risking
Confirming global liquidity's influence on BTC price movement
Note: This version currently uses US M2 (FRED:M2SL) as the liquidity base. You can easily expand it with other global M2 sources or adjust the weights.
ICT Macro Time Window NYThis script highlights the typical ICT “macro” algorithm activity windows on your chart. It marks 10 minutes before to 10 minutes after each full hour, based on New York time (NY). The display is restricted to the 00:00 – 16:00 NY time range.
Overlay on chart with semi-transparent background
Automatically adjusts to the chart timeframe
Customizable: window start/end minutes, hours, and background color
Ideal for traders following ICT concepts to visually identify high-probability algorithm activity periods.
Latest Lime CherryLatest Lime Cherry is an indicator based on EMA that you can use to try to discern whether the current trend is up or down
Lime Cherry IndicatorThe Lime Cherry Indicator is a version of an EMA that may help you to better determine whether the overall trend is up or down
PanelWithGrid v1.7PanelWithGrid v1.7 - Advanced Multi-Timeframe Grid and Panel Indicator
DESCRIPTION:
PanelWithGrid v1.7 is a comprehensive tool for traders who want to monitor multiple timeframes simultaneously while operating based on a customizable price grid. This indicator combines two essential functionalities in a single script:
🎯 MAIN FEATURES:
✅ CUSTOMIZABLE GRID SYSTEM
Configurable timeframe for the grid base (1M to Monthly)
Selection of the reference candlestick level (0 = current, 1 = previous, etc.)
NEW: Custom price as the grid base
Adjustable distance between lines in points
Colored lines (red = base, blue = above, gold = below)
Informative label with the base value
✅ COMPLETE MULTI-TIMEFRAME DASHBOARD
Monitoring of 11 timeframes: 1M, 5M, 15M, 30M, 1H, 2H, 3H, 4H, 6H, 12H, and 1D
Real-time data: open, close, difference, and candlestick type
Countdown to close Each candle
Intuitive colors (green for bullish, red for bearish)
✅ CONFLUENCE SYSTEM
Visual and audio alerts for bullish/bearish confluence on all timeframes
Special confluence analysis for 1H candles after 30 minutes of formation
Buy/sell arrows on the chart for clear signals
⚙️ MAIN SETTINGS:
Grid Settings:
Timeframe for Grid: Select the period for the baseline
Candle Level: 0 (current candle), 1 (last candle), etc.
Grid Distance: Distance between lines in points
NEW: Use Custom Price - Enables manual price as a base
Custom Close Price - Sets the manual value for the grid
🎨 VISUAL:
Grid with lines extended to the right
Panel positioned in the upper left corner
Colors organized for easy interpretation
Informative labels directly on the chart
🔔 ADVANCED FEATURES:
Alerts configured for confluences
Optimized for performance
Real-time updates
Compatible with all pairs and markets
PERFECT FOR:
Scalpers and day traders
Level-based trading
Multiple timeframe analysis
Reversal and breakout strategies
UPDATE v1.7:
Added custom price option for the grid
Improved line stability
Performance optimization
Bug fixes minors
INSTRUCTIONS FOR USE:
Apply the indicator to the chart
Set the desired timeframe and level for the grid
Adjust the distance between lines according to your strategy
Use the custom price if you want a specific basis
Monitor the dashboard to see the convergence between timeframes
Trade based on the identified confluences
Smart Money Concepts //@deepak
//@version=5
indicator(title='Custom Also Builder - v1', shorttitle="Custom Also Builder - v1", overlay=true, max_bars_back=500)
ma(_source, _length, _type) =>
switch _type
"SMA" => ta.sma (_source, _length)
"EMA" => ta.ema (_source, _length)
"RMA" => ta.rma (_source, _length)
"WMA" => ta.wma (_source, _length)
"VWMA" => ta.vwma(_source, _length)
alarm(_osc, _message) =>
alert(syminfo.ticker + ' ' + _osc + ' : ' + _message + ', price (' + str.tostring(close, format.mintick) + ')')
//Conditional Sampling EMA Function
Cond_EMA(x, cond, n) =>
var val = array.new_float(0)
var ema_val = array.new_float(1)
if cond
array.push(val, x)
if array.size(val) > 1
array.remove(val, 0)
if na(array.get(ema_val, 0))
array.fill(ema_val, array.get(val, 0))
array.set(ema_val, 0, (array.get(val, 0) - array.get(ema_val, 0)) * (2 / (n + 1)) + array.get(ema_val, 0))
EMA = array.get(ema_val, 0)
EMA
//Conditional Sampling SMA Function
Cond_SMA(x, cond, n) =>
var vals = array.new_float(0)
if cond
array.push(vals, x)
if array.size(vals) > n
array.remove(vals, 0)
SMA = array.avg(vals)
SMA
//Standard Deviation Function
Stdev(x, n) =>
math.sqrt(Cond_SMA(math.pow(x, 2), 1, n) - math.pow(Cond_SMA(x, 1, n), 2))
//Range Size Function
rng_size(x, scale, qty, n) =>
ATR = Cond_EMA(ta.tr(true), 1, n)
AC = Cond_EMA(math.abs(x - x ), 1, n)
SD = Stdev(x, n)
rng_size = scale == 'Pips' ? qty * 0.0001 : scale == 'Points' ? qty * syminfo.pointvalue : scale == '% of Price' ? close * qty / 100 : scale == 'ATR' ? qty * ATR : scale == 'Average Change' ? qty * AC : scale == 'Standard Deviation' ? qty * SD : scale == 'Ticks' ? qty * syminfo.mintick : qty
rng_size
//Two Type Range Filter Function
rng_filt(h, l, rng_, n, type, smooth, sn, av_rf, av_n) =>
rng_smooth = Cond_EMA(rng_, 1, sn)
r = smooth ? rng_smooth : rng_
var rfilt = array.new_float(2, (h + l) / 2)
array.set(rfilt, 1, array.get(rfilt, 0))
if type == 'Type 1'
if h - r > array.get(rfilt, 1)
array.set(rfilt, 0, h - r)
if l + r < array.get(rfilt, 1)
array.set(rfilt, 0, l + r)
if type == 'Type 2'
if h >= array.get(rfilt, 1) + r
array.set(rfilt, 0, array.get(rfilt, 1) + math.floor(math.abs(h - array.get(rfilt, 1)) / r) * r)
if l <= array.get(rfilt, 1) - r
array.set(rfilt, 0, array.get(rfilt, 1) - math.floor(math.abs(l - array.get(rfilt, 1)) / r) * r)
rng_filt1 = array.get(rfilt, 0)
hi_band1 = rng_filt1 + r
lo_band1 = rng_filt1 - r
rng_filt2 = Cond_EMA(rng_filt1, rng_filt1 != rng_filt1 , av_n)
hi_band2 = Cond_EMA(hi_band1, rng_filt1 != rng_filt1 , av_n)
lo_band2 = Cond_EMA(lo_band1, rng_filt1 != rng_filt1 , av_n)
rng_filt = av_rf ? rng_filt2 : rng_filt1
hi_band = av_rf ? hi_band2 : hi_band1
lo_band = av_rf ? lo_band2 : lo_band1
ma_function(source, length, type) =>
if type == 'RMA'
ta.rma(source, length)
else if type == 'SMA'
ta.sma(source, length)
else if type == 'EMA'
ta.ema(source, length)
else if type == 'WMA'
ta.wma(source, length)
else if type == 'HMA'
if(length<2)
ta.hma(source,2)
else
ta.hma(source, length)
else
ta.vwma(source, length)
// Get Table Size
table_size(s) =>
switch s
"Auto" => size.auto
"Huge" => size.huge
"Large" => size.large
"Normal" => size.normal
"Small" => size.small
=> size.tiny
setup_group= "████████ Indicator Setup ████████"
signalexpiry = input.int(defval=3, title='Signal Expiry Candle Count',group=setup_group, inline='expiry',tooltip="Number of candles to wait for all indicators to confirm a signal. Default is 3 which means if leading indicator print the signal, it will wait for max 3 more candles for rest of the indicators to print signal, if not then this setup is invalided and will have to wait for another signal form the leading indicator.")
alternatesignal = input.bool (true, "Alternate Signal", group=setup_group, inline='alternate')
showsignal = input.bool (true, "Show Long/Short Signal", group=setup_group,inline='showsignal',tooltip="Option to turn on/off the Long/Short signal shown on the chart. by default it will print Long/ Short signal on the chart.")
showdashboard = input.bool (true, "Show Dashboard", group=setup_group,inline='dashboard')
string i_tab1Ypos = input.string('bottom', 'Dashboard Position',group=setup_group, inline='dashboard2', options= )
string i_tab1Xpos = input.string('right', '', inline='dashboard2', group=setup_group,options= )
in_dashboardtab_size = input.string(title="Dashboard Size ", defval="Normal",
options= ,
group= setup_group , inline= "dashboard3")
///////////////////////////////////////////////
///// Signal filters
/////////////////////////////////////////////
leadingindicator = input.string(title="Leading Indicator", defval="Range Filter",
options= , group='████████ Main Indicator (signal) ████████', inline='li')
confirmation_group = "████████ Confirmation Indicators (filter) ████████ "
ema_tooltip = "EMA filter for confirmation. Validates Long signal if price is above the EMA FILTER level, and validates Short signal if price is below the EMA FILTER level. Default is 200, you can change that to meet your requiremnt."
respectema = input.bool (false, "EMA Filter", group=confirmation_group, inline='respectema')
respectemaperiod = input.int(defval=200, minval=1, title='', group=confirmation_group, inline='respectema', tooltip=ema_tooltip)
ema2_tooltip = "Generates Long signal if Fast EMA cross above Slow EMA. Generates Short signal when Fast EMA cross below the Slow EMA. Default values are 50 and 200. you can change that to meet your requirement."
respect2ma = input.bool (false, "2 EMA Cross : ", group=confirmation_group, inline='2ma')
respect2maperiod_1 = input.int(defval=50, title='',group=confirmation_group, inline='2ma')
respect2maperiod_2 = input.int(defval=200, title='',group=confirmation_group, inline='2ma',tooltip=ema2_tooltip)
ema3_tooltip = "Generates Long signal if first EMA (Fastest) cross above 2nd and 3rd EMA and 2nd EMA cross above 3rd EMA. Generates Short signal if first EMA (Fastest) cross below 2nd and 3rd EMA and 2nd EMA cross below 3rd EMA . Default values are 9,21 and 55. you can change that to meet your requirement."
respect3ma = input.bool (false, "3 EMA Cross : ", group=confirmation_group, inline='3ma',tooltip=ema3_tooltip)
respect3maperiod_1 = input.int(defval=9, title='',group=confirmation_group, inline='3ma',tooltip=ema3_tooltip)
respect3maperiod_2 = input.int(defval=21, title='',group=confirmation_group, inline='3ma',tooltip=ema3_tooltip)
respect3maperiod_3 = input.int(defval=55, title='',group=confirmation_group, inline='3ma',tooltip=ema3_tooltip)
respectrf = input.bool (false, "Range Filter", group=confirmation_group, inline='rf')
rftype = input.string(title="", defval="Default", options= , group=confirmation_group, inline='rf')
respectrqk = input.bool (true, "Rational Quadratic Kernel (RQK)", group=confirmation_group, inline='rqk',tooltip="Nadaraya Watson: Rational Quadratic Kernel (RQK)")
respectst = input.bool (false, "SuperTrend", group=confirmation_group, inline='st')
respectht = input.bool (false, "Half Trend", group=confirmation_group, inline='ht')
respectdonchian = input.bool (false, "Donchian Trend Ribbon", group=confirmation_group, inline='donchian')
respectroc = input.bool (false, "Rate of Change (ROC)", group=confirmation_group, inline='roc')
respecttsi = input.bool (false, "True Strength Indicator (TSI)", group=confirmation_group, inline='tsi')
tsitooltip = "Signal Crossover: TSI crossover or greater than signal line for long, and TSI crossunder signal line for short. Zero Line Cross: TSI cross above zero line and signal line for long signal. Tsi Cross below zero and signal line for short signal."
tsitype = input.string(title="", defval="Signal Cross", options= ,tooltip=tsitooltip, group=confirmation_group, inline='tsi')
respecttdfi = input.bool (false, "Trend Direction Force Index (TDFI)", group=confirmation_group, inline='tdfi')
respectmd = input.bool (false, "McGinley Dynamic", group=confirmation_group, inline='md')
respectdpo = input.bool (false, "Detrended Price Oscillator (DPO)", group=confirmation_group, inline='dpo')
respectichi = input.bool (false, "Ichimoku Cloud", group=confirmation_group, inline='ichi')
respectsuperichi = input.bool (false, "SuperIchi", group=confirmation_group, inline='ichi',tooltip="Ichimoku Cloud Conditions: 1. Candle above cloud 2. Converstion Line above base line 3. Leading 26 bar cloud is green 4. lagging span is above the cloud")
respecttrendline_breakout = input.bool (false, "Trendline Breakout", group=confirmation_group, inline='tb')
respectrd = input.bool (false, "Range Detector", group=confirmation_group, inline='rd',tooltip="Range Detector: if used as leading indicator, it will be based on range breakout. If used as confirmation indicator, it will be used to filter entries within the active range area.")
respecthacolt = input.bool (false, "Heiken-Ashi Candlestick Oscillator", group=confirmation_group, inline='hacolt',tooltip="Vervoort LongTerm Heiken-Ashi Candlestick Oscillator: If oscilliation is above 0 line, then long signal is issued and if below zero line, short signal is issued.")
respectbx = input.bool (false, "B-Xtrender", group=confirmation_group, inline='bx')
bxtype = input.string(title="", defval="Short and Long term trend", options= , group=confirmation_group, inline='bx', tooltip = "Short term trend: ===================== For buy signal the short term trend line must turn green, and for the sell signal, the short term trend line must turn red. Short and Long term trend: ===================== For buy signal, the short term trend must change from red to green and long term trend cross above zero line, for Sell signal the short term trend must turn red and long term trend line cross down the zero line..")
respectbbpt = input.bool (false, "Bull bear Power Trend", group=confirmation_group, inline='bbpt')
bbpttype = input.string(title="", defval="Follow Trend", options= , group=confirmation_group, inline='bbpt', tooltip = "Follow Trend: ===================== Buy signal will be validated if the BBPT trend line is above 2, and Sell signal will be validated if BBPT trend line is below -2. Without Trend: ===================== Ignore the BBPT trend line.")
respectvwap = input.bool (false, "VWAP", group=confirmation_group, inline='vwap')
respectbbosc = input.bool (false, "BB Oscillator", group=confirmation_group, inline='bbosc')
bbtype = input.string(title="", defval="Entering Lower/Upper Band", options= , group=confirmation_group, inline='bbosc')
respecttm = input.bool (false, "Trend Meter", group=confirmation_group, inline='tm')
tmtype = input.string(title="", defval="3 TM and 2 TB change to same color", options= , group=confirmation_group, inline='tm')
respectce = input.bool (false, "Chandelier Exit", group=confirmation_group, inline='ce')
respectcci = input.bool (false, "CCI", group=confirmation_group, inline='cci')
respectao = input.bool (false, "Awesome Oscillator", group=confirmation_group, inline='ao')
aotype = input.string(title="", defval="Zero Line Cross", options= , group=confirmation_group, inline='ao', tooltip = "Zero Line Cross: If AO value cross the zero line up, Buy signal will be generated, and if AO value cross down the zero line, sell signal will be generated.")
respectadx = input.bool (false, "DMI (ADx)", group=confirmation_group, inline='adx')
adxtype = input.string(title="", defval="Adx & +Di -Di", options= , group=confirmation_group, inline='adx', tooltip = "Adx Only: If Adx value is above the defined level. Adx & +Di -DI : When Adx value is above the defined level and croseeover between +di and -di. Di will determine the direction of the movement. Advance: ")
respectsar = input.bool (false, "Parabolic SAR (PSAR)", group=confirmation_group, inline='sar')
respectwae = input.bool (false, "Waddah Attar Explosion", group=confirmation_group, inline='wae')
vo_tooltip = "Volatility Oscillator: ======================= If the spike line is above the upper line, buy signal is generated (or validated). If the spike line is below the lower line, sell signal is generated (or validated)."
respectvo = input.bool (false, "Volatility Oscillator", group=confirmation_group, inline='vo', tooltip = vo_tooltip)
ci_tooltip = "Choppiness index: ======================= If the index is below the defined threshold (default 61.8) then asset is considered trending and signal will be validated, if index is above 61.8 then asset is considered having sideway movement."
respectci = input.bool (false, "Choppiness Index ", group=confirmation_group, inline='ci')
ci_limit = input.float(61.8,title=" ", inline='ci',group=confirmation_group, tooltip = ci_tooltip)
respectdv = input.bool (false, "Damiani Volatility (DV)", group=confirmation_group, inline='dv')
dvtype = input.string(title="", defval="Simple", options= , group=confirmation_group, inline='dv', tooltip = "Simple Volatility is green. Threshold Volatility green and >1.1")
stochtooltip="CrossOver: ------------------ CrossOver of K and D line at any level. CrossOver in OB & OS levels: Generate buy signal if crossover happens in oversold area and crossing up oversold level. Generate sell signal on crossover in overbought area and cross down upper level. ------------------ %K above/below %D ------------------ : Generate Buy signal or validate other signal if %K is above %D and opposite for Sell Signal."
respectstochastic = input.bool (false, "Stochastic", group=confirmation_group, inline='stoch')
stochtype = input.string(title="", defval="CrossOver", options= ,tooltip=stochtooltip, group=confirmation_group, inline='stoch')
rsi_tooltip = "RSI MA Cross: ============= Generate buy signal when RSI cross up RSI MA line and sell signal when RSI cross down RSI MA line. RSI Exits OB/OS zones: ================== Generate Buy signal when RSI crosses down the overbough zone and sell signal when RSI crosses up the oversold zone. RSI Level: ========== Generate buy signal if RSI cross above the specific level and sell signal when RSI crossdown the level. +++++ You can change the setting to define the OB/OS and MidLine Levels"
respectrsi = input.bool (false, "RSI", group=confirmation_group, inline='rsi')
rsitype = input.string(title="", defval="RSI MA Cross", options= , tooltip=rsi_tooltip, group=confirmation_group, inline='rsi')
rsima_tooltip = "RSI MA Direction: ============= The buy and sell signal will respect the RSI MA direction. For buy signal, the RSI MA should be increasing or same compared to previous RSI MA. for SHORT, the RSI MA should be same or decreasing compared to last RSI MA"
respectrsima = input.bool (false, "RSI MA Direction", group=confirmation_group, inline='rsi2',tooltip=rsima_tooltip)
rsilimit_tooltip = "RSI Limit: ============= This is to allow you to set limit for the RSI value for long and short. default value for long is 40, which means if the RSI is 40 or above, only then BUY signal will be validated. for short if RSI is 60 or less, only then sell signal willbe validated."
respectrsilimit = input.bool (false, "RSI Limit : ", group=confirmation_group, inline='rsi3',tooltip=rsilimit_tooltip)
rsilimitup = input.int(40, title="Long",inline='rsi3', group=confirmation_group)
rsilimitdown = input.int(60, title="short",inline='rsi3', group=confirmation_group)
rsimalimit_tooltip = "RSI MA Limit: ============= This is to allow you to set limit for the RSI MA value for long and short. default value for long is 40, which means if the RSI MA is 40 or above, only then BUY signal will be validated. for short if RSI MA is 60 or less, only then sell signal willbe validated."
respectrsimalimit = input.bool (false, "RSI MA Limit : ", group=confirmation_group, inline='rsi4',tooltip=rsimalimit_tooltip)
rsimalimitup = input.int(40, title="Long",inline='rsi4', group=confirmation_group)
rsimalimitdown = input.int(60, title="short",inline='rsi4', group=confirmation_group)
macdtooltip="MACD Crossover: ------------------ CrossOver of MACD and the Signal line. Generates Long signal when MACD cross up Signal line and Short signal when MACD cross down Signal Line. . Zero line crossover: ------------------ Generate buy signal when MACD cross up the zero line and Sell signal when MACD cross down the zero line."
respectmacd = input.bool (false, "MACD", group=confirmation_group, inline='macd')
macdtype = input.string(title="", defval="MACD Crossover", options= ,tooltip=macdtooltip, group=confirmation_group, inline='macd')
respectssl = input.bool (false, "SSL Channel", group=confirmation_group, inline='ssl')
respectstc = input.bool (false, "Schaff Trend Cycle (STC)", group=confirmation_group, inline='stc')
respectchaikin = input.bool (false, "Chaikin Money Flow", group=confirmation_group, inline='chaikin')
respectvol = input.bool (false, "Volume", group=confirmation_group, inline='volume')
volumetype = input.string(title="", defval="volume above MA", options= , group=confirmation_group, inline='volume', tooltip = "Simple volume is comparing the up/down volme with previous candle. Volume delta will compare the delta or difference between up and down volume with previous candle. Example: up volume = 100 Down volume=-1100 Delta = -1000 Satisfy the bear flag condition if previous -ve delta is lower")
respectwolf = input.bool (false, "Wolfpack Id", group=confirmation_group, inline='wolf')
respectqqe = input.bool (false, "QQE Mod", group=confirmation_group, inline='qqe')
qqetype = input.string(title="", defval="Line", options= , group=confirmation_group, inline='qqe', tooltip = "Line: signal generated when QQE line is above or below 0. Bar: when Blue bar is above 0 or Red bar below 0 Line & Bar: Both Bar and Line to be above(bullist) or below (beari
ST-Stochastic DashboardST-Stochastic Dashboard: User Manual & Functionality
1. Introduction
The ST-Stochastic Dashboard is a comprehensive tool designed for traders who utilize the Stochastic Oscillator. It combines two key features into a single indicator:
A standard, fully customizable Stochastic Oscillator plotted directly on your chart.
A powerful Multi-Timeframe (MTF) Dashboard that shows the status of the Stochastic %K value across three different timeframes of your choice.
This allows you to analyze momentum on your current timeframe while simultaneously monitoring for confluence or divergence on higher or lower timeframes, all without leaving your chart.
Disclaimer: In accordance with TradingView's House Rules, this document describes the technical functionality of the indicator. It is not financial advice. The indicator provides data based on user-defined parameters; all trading decisions are the sole responsibility of the user. Past performance is not indicative of future results.
2. How It Works (Functionality)
The indicator is divided into two main components:
A. The Main Stochastic Indicator (Chart Pane)
This is the visual representation of the Stochastic Oscillator for the chart's current timeframe.
%K Line (Blue): This is the main line of the oscillator. It shows the current closing price in relation to the high-low range over a user-defined period. A high value means the price is closing near the top of its recent range; a low value means it's closing near the bottom.
%D Line (Black): This is the signal line, which is a moving average of the %K line. It is used to smooth out the %K line and generate trading signals.
Overbought Zone (Red Area): By default, this zone is above the 75 level. When the Stochastic lines are in this area, it indicates that the asset may be "overbought," meaning the price is trading near the peak of its recent price range.
Oversold Zone (Blue Area): By default, this zone is below the 25 level. When the Stochastic lines are in this area, it indicates that the asset may be "oversold," meaning the price is trading near the bottom of its recent price range.
Crossover Signals:
Buy Signal (Blue Up Triangle): A blue triangle appears below the candles when the %K line crosses above the Oversold line (e.g., from 24 to 26). This suggests a potential shift from bearish to bullish momentum.
Sell Signal (Red Down Triangle): A red triangle appears above the candles when the %K line crosses below the Overbought line (e.g., from 76 to 74). This suggests a potential shift from bullish to bearish momentum.
B. The Multi-Timeframe Dashboard (Table on Chart)
This is the informational table that appears on your chart. Its purpose is to give you a quick, at-a-glance summary of the Stochastic's condition on other timeframes.
Function: The script uses TradingView's request.security() function to pull the %K value from three other timeframes that you specify in the settings.
Efficiency: The table is designed to update only on the last (most recent) bar (barstate.islast) to ensure the script runs efficiently and does not slow down your chart.
Columns:
Timeframe: Displays the timeframe you have selected (e.g., '5', '15', '60').
Stoch %K: Shows the current numerical value of the %K line for that specific timeframe, rounded to two decimal places.
Status: Interprets the %K value and displays a clear status:
OVERBOUGHT (Red Background): The %K value is above the "Upper Line" setting.
OVERSOLD (Blue Background): The %K value is below the "Lower Line" setting.
NEUTRAL (Black/Dark Background): The %K value is between the Overbought and Oversold levels.
3. Settings / Parameters in Detail
You can access these settings by clicking the "Settings" (cogwheel) icon on the indicator name.
Stochastic Settings
This group controls the behavior and appearance of the main Stochastic indicator plotted in the pane.
Stochastic Period (length)
Description: This is the lookback period used to calculate the Stochastic Oscillator. It defines the number of past bars to consider for the high-low range.
Default: 9
%K Smoothing (smoothK)
Description: This is the moving average period used to smooth the raw Stochastic value, creating the %K line. A higher value results in a smoother, less sensitive line.
Default: 3
%D Smoothing (smoothD)
Description: This is the moving average period applied to the %K line to create the %D (signal) line. A higher value creates a smoother signal line that lags further behind the %K line.
Default: 6
Lower Line (Oversold) (ul)
Description: This sets the threshold for the oversold condition. When the %K line is below this value, the dashboard will show "OVERSOLD". It is also the level the %K line must cross above to trigger a Buy Signal triangle.
Default: 25
Upper Line (Overbought) (ll)
Description: This sets the threshold for the overbought condition. When the %K line is above this value, the dashboard will show "OVERBOUGHT". It is also the level the %K line must cross below to trigger a Sell Signal triangle.
Default: 75
Dashboard Settings
This group controls the data and appearance of the multi-timeframe table.
Timeframe 1 (tf1)
Description: The first timeframe to be displayed in the dashboard.
Default: 5 (5 minutes)
Timeframe 2 (tf2)
Description: The second timeframe to be displayed in the dashboard.
Default: 15 (15 minutes)
Timeframe 3 (tf3)
Description: The third timeframe to be displayed in the dashboard.
Default: 60 (1 hour)
Dashboard Position (table_pos)
Description: Allows you to select where the dashboard table will appear on your chart.
Options: top_right, top_left, bottom_right, bottom_left
Default: bottom_right
4. How to Use & Interpret
Configuration: Adjust the Stochastic Settings to match your trading strategy. The default values (9, 3, 6) are common, but feel free to experiment. Set the Dashboard Settings to the timeframes that are most relevant to your analysis (e.g., your entry timeframe, a medium-term timeframe, and a long-term trend timeframe).
Analysis with the Dashboard: The primary strength of this tool is confluence. Look for situations where multiple timeframes align. For example:
If the dashboard shows OVERSOLD on the 15-minute, 60-minute, and your current 5-minute chart, a subsequent Buy Signal on your 5-minute chart may carry more weight.
Conversely, if your 5-minute chart shows OVERSOLD but the 60-minute chart is strongly OVERBOUGHT, it could indicate that you are looking at a minor pullback in a larger downtrend.
Interpreting States:
Overbought is not an automatic "sell" signal. It simply means momentum has been strong to the upside, and the price is near its recent peak. It could signal a potential reversal, but the price can also remain overbought for extended periods in a strong uptrend.
Oversold is not an automatic "buy" signal. It means momentum has been strong to the downside. While it can signal a potential bounce, prices can remain oversold for a long time in a strong downtrend.
Use the signals and dashboard states as a source of information to complement your overall trading strategy, which should include other forms of analysis such as price action, support/resistance levels, or other indicators.
Renko Open Range 𝛥
Delta Renko-Style Indicator Guide (NQ Focus)
This indicator takes inspiration from the Renko Chart concept and is optimized for the RTH session (New York time zone), specifically applied to the Nasdaq futures (NQ) product.
If you’re unfamiliar with Renko charts, it may help to review their basics first, as this indicator borrows their clean, block-based perspective to simplify price interpretation.
⸻
🔧 How the Indicator Works
• At market open (9:30 AM EST), the indicator plots a horizontal open price line, referred to as 0 delta.
• From this anchor, it plots 10 incremental levels (deltas) both above and below the open, each spaced by 62.5 NQ points.
Why 62.5?
• With NQ currently trading in the 23,000–24,000 range, a 62.5-point move represents roughly 0.26% of the daily average range.
• This makes each delta step significant enough to capture movement while filtering out smaller noise.
A mini table (location adjustable) displays:
• Current delta zone
• Last touched delta level
This gives you a quick snapshot of where price sits relative to the open.
⸻
📈 How to Read the Market
• At the open, price typically oscillates between 0 and +1 / -1 delta.
• A break beyond this zone often signals stronger directional intent:
• Trending day: price can push into +2, +3, +4, +5 (or the inverse for downside).
• Range day: expect price to bounce between +1, 0, -1 deltas.
⚠️ Note: This is a visualization tool, not a trading system. Its purpose is to help you quickly recognize range vs. trend conditions.
⸻
📊 Example
• In this case, NQ reached +1 delta shortly after open.
• A retest of 0 delta followed, and price later surged to +5/+6 deltas (helped by Fed news).
⸻
🛠️ Practical Uses
This indicator can help you:
• Define profit targets
• Place hard stop levels
• Gauge whether a counter-trend trade is worth the risk
⚠️ Caution: Avoid counter-trend trades if price is aggressively pushing toward +5/+6 or -5/-6 deltas, as trend exhaustion usually hasn’t set in yet.
⸻
🔄 Adapting for ES (S&P Futures)
• On NQ, 62.5 points ≈ $1,250 per contract.
• For ES, this translates to 25 points.
• Since 1 NQ contract ≈ 2 ES contracts in dollar terms, an optimized ES delta step would be 12.5 points.
You may also experiment with different delta values (e.g., 50 or 31.25 for NQ) to align with your risk profile and trading style.
⸻
🧪 Extending Beyond NQ
You can experiment with applying this indicator to ES or even stocks, but non-futures assets may require additional calibration and testing.
⸻
✅ Bottom line: This tool provides a clean, Renko-inspired framework for quickly gauging trend vs. range conditions, setting realistic profit targets, and avoiding poor counter-trend setups.
Simple EMA Cross Fill (Custom Lengths)Creating helpfull clouds for direction bias
Green cloud for bullish trends
Red for bearish
Simple yet effective
MACD Momentum Slowdown Alert (Bullish + Bearish)little arrows showing on chart when MACD histogram has a slowdown (change of color) in momentum
VWAP with period (rajib127)VWAP with Adjustable Period (rajib127)
This advanced VWAP (Volume Weighted Average Price) indicator offers enhanced functionality with customizable anchor periods and multiple standard deviation bands.
Key Features:
Adjustable Anchor Period: Unlike standard VWAP that resets daily, this indicator allows you to set custom anchor timeframes (Daily, Weekly, Monthly) to match your trading strategy
Multiple Deviation Bands: Display up to 3 sets of bands with customizable multipliers for better support/resistance identification
Dual Calculation Modes: Choose between Standard Deviation or Percentage-based band calculations
Flexible Price Sources: Select from 7 different price calculation methods (Typical, Close, High, Low, Median, Weighted, Open)
Timeframe Visibility Control: Option to hide VWAP on higher timeframes (Daily and above) for cleaner charts
Visual Enhancements: Color-coded bands with fill areas and real-time value display table
Trading Applications:
Identify dynamic support and resistance levels
Spot mean reversion opportunities when price deviates from bands
Use different anchor periods for swing trading vs day trading strategies
Combine with other indicators for confluence-based entries
Unique Advantage:
The ability to adjust the VWAP reset period makes this indicator versatile for various trading styles - from intraday scalping with hourly resets to swing trading with weekly anchors.
Perfect for traders who want more control over their VWAP analysis beyond the standard daily reset limitation.