BTC Momentum Strategy Ver2.0 by @AshokTrendThe BTC Momentum Strategy with LazyBear SQZMOM & Custom SL + Angle Filter is a technical trading strategy that blends multiple proven concepts to capture favorable momentum trades in Bitcoin or other assets.
### Core Components
- **LazyBear Squeeze Momentum Indicator (SQZMOM):** This indicator identifies low volatility "squeeze" periods when Bollinger Bands contract inside Keltner Channels, signaling potential explosive moves once the squeeze releases. The strategy uses momentum derived from linear regression on price to judge trade direction—positive momentum favors longs, negative momentum favors shorts.
- **EMA 200 Trend Filter:** The 200-period Exponential Moving Average defines the prevailing trend. Trades are taken long only if price is above the EMA and short if below, reducing risk of countertrend entries.
- **Price Movement Angle Filter:** The strategy calculates the angle of recent price movement over a lookback period. Entries require a price angle greater than 27 degrees for longs and less than -27 degrees for shorts, confirming strong directional momentum and filtering out weak moves.
- **Stop Loss Management:** A custom stop loss in fixed points distance from the entry price manages risk, protecting capital if the market moves against the trade.
- **Trading Time Window:** The strategy trades only during Indian market hours (4:00 AM to 11:00 PM IST), filtering trades to relevant active market sessions.
- **Swing Levels:** Recent swing highs and lows are used as additional confirmation levels for entries and exits, helping to time trade triggers more precisely.
### How Trades Are Executed
- **Long Entry:** When trading hours are active, SQZMOM indicates bullish momentum (momentum histogram positive and squeeze released), price is in an uptrend (above EMA 200), the current close is above recent swing highs, and the price movement angle exceeds 27 degrees, the strategy enters a long position.
- **Short Entry:** When trading hours are active, SQZMOM shows bearish momentum (momentum histogram negative and squeeze released), price is in a downtrend (below EMA 200), the current close is below recent swing lows, and the price movement angle is less than -27 degrees, the strategy enters a short position.
- **Exits:** Positions are closed either when price breaches opposite swing levels, momentum conditions reverse, or trading hours end. Stop losses are also triggered if price moves unfavorably by the defined points.
### Strategy Benefits
- Detects volatility contractions and momentum expansions for potentially strong directional moves.
- Reduces false entries with the EMA trend and angle momentum filters.
- Manages risk actively with stop losses and time-based filters.
- Combines multiple technical tools — momentum, trend, volatility, price structure — for a holistic approach.
This strategy tends to work best on active higher timeframes where trends and momentum have clarity and is designed for disciplined, momentum-focused trading with robust trade management.
Concepts used-
SMC
TRednline Breaout,
Timefram-15M or Higher For better Result.
Note-We are not SEBI-Registered, Graphs, charts, and tables are provided for illustrative purposes only. Investing is subject to market risks. Investors acknowledge and accept the potential loss of some or all of an investment's value.Please consult your financial advisor before taking any decision.
Please whatsapp only=7835983697.
Candlestick analysis
Multi-Confluence MTF S/R Signal5 Confluences:
RSI - Detects oversold/overbought conditions with momentum
MACD - Confirms trend direction and momentum shifts
Moving Average Trend - Validates price position relative to 50 SMA and 20 EMA
Volume - Ensures strong participation (1.5x average volume)
Price Action - Confirms breakout (higher high for buys, lower low for sells)
Features:
Green triangles below bars = BUY signal (all 5 confluences bullish)
Red triangles above bars = SELL signal (all 5 confluences bearish)
Background coloring when signals occur
Real-time dashboard showing each confluence status
Built-in alerts you can enable
Customizable parameters for all indicators
Multi-Timeframe Features:
Higher Timeframe Analysis (Default: 60 min)
HTF Trend - Checks if price is above/below moving averages on higher timeframe
HTF MACD - Confirms momentum direction
HTF RSI - Validates not overbought/oversold
Signal Types:
Strong Signals (Full triangles with text)
✅ All 5 current timeframe confluences aligned
✅ Higher timeframe confirmation (2 of 3 HTF conditions)
GREEN "BUY" or RED "SELL" labels
Weak Signals (Small transparent triangles with "?")
✅ All 5 current timeframe confluences aligned
❌ NO higher timeframe confirmation
Use with caution - may signal counter-trend trades
Dashboard Updates:
Shows Current Timeframe section (all 5 confluences)
Shows HTF status (your chosen higher timeframe)
Displays final signal strength
Customizable Settings:
Enable/Disable MTF - Toggle multi-timeframe confirmation
Higher Timeframe - Choose any timeframe (15m, 60m, 4H, D, etc.)
Require HTF - Force HTF confirmation or allow weak signals
Alerts:
Strong Buy/Sell - Full confirmation
Weak Buy/Sell - No HTF confirmation
Triple RSI Strategy @AshokTrendThe Triple RSI Strategy is a trading approach that uses three separate Relative Strength Index (RSI) indicators, typically set to different periods, to generate buy and sell signals with potentially higher accuracy. It aims to filter false signals and improve the probability of successful trades by confirming conditions across multiple timeframes or sensitivity levels.
How the Triple RSI Strategy Works:
Different RSI Periods: Usually set with short, medium, and long periods (e.g., 5, 14, and 30).
Buy Signal: When all three RSIs indicate oversold conditions (below a certain threshold like 30) and show upward momentum.
Sell Signal: When all three RSIs indicate overbought conditions (above a certain threshold like 70) and show downward momentum.
Confirmation: The strategy often confirms signals when the shorter RSI crosses its own previous value or an opposite threshold.
Benefits:
Reduces false signals by requiring multiple conditions.
Suitable for trending or ranging markets, depending on parameters.
Customizable for different assets and timeframes.
Concepts used-
SMC
Trendline Breakout,
Suitable for Long traders.
⦁ Disclaimer: The content in this Article is for educational purposes only and should not be considered financial advice. We are not SEBI-registered advisors. Options trading is highly volatile and carries significant risk. Consult a qualified financial advisor before making any investment decisions.. About Us: We provide educational content on trading strategies and market analysis.
Connect With Us: For business inquiries, email us at: customercare@eamzn.in
For our trading course,
contact us on WhatsApp:
Backtesting Services: We offer strategy backtesting on TradingView.
Contact us for details.
bar count plot only for far lookbackPurpose:
TradingView limits the number of text/label objects (≈500), which causes traditional bar-count indicators to stop showing numbers when you scroll far back in history.
This plots-only version bypasses that limitation entirely, allowing you to view bar numbers anywhere on the chart, even thousands of bars back.
How It Works:
Displays each bar’s in-day sequence number (1–78 by default) under the candles.
Counts restart automatically at the start of each trading day.
Uses a dual-channel “digit plot” system (tens + ones) instead of labels—extremely light on performance and unlimited in lookback.
The digits are drawn every N bars (default = 3) to keep the view uncluttered.
Key Parameters:
Show every Nth bar: Controls how often numbers appear (1 = every bar, 3 = every 3 bars, etc.).
Notes:
Digits are plotted directly via plotshape()—no labels—so they remain visible even 5 000 + bars back.
Alignment may vary slightly depending on chart zoom; this version is intended mainly for deep historical review rather than precise near-term alignment.
MACD / AO Alineación (V21) PublicA long or short indicator for any timeframe. It's important to consider volatility and ADX to find the most appropriate momentum. There are also other details to consider.
No Supply (Low-Volume Down Bars) — IdoThis indicator flags classic Wyckoff/VSA “No Supply (NS)” events—down bars that print on unusually low volume, suggesting a lack of sellers rather than strong selling pressure. NS often appears near support, LPS, or within re-accumulation ranges as a test before continuation higher.
Signal definition (configurable):
Down bar: choose Close < PrevClose or Close < Open.
Low volume: Volume < SMA(Volume, len) × threshold (e.g., 0.7).
Optional volume lower than the prior two bars (reduces noise).
Optional narrow spread: range (H–L) below its average.
Optional close position: close in the upper half of the bar.
Optional trend filter: only mark NS above or below an EMA (or any).
Optional wide-bar exclusion: skip unusually wide bars.
Visuals & outputs
Blue dot below each NS bar (optional bar tint).
Separate pane showing Relative Volume (vol / volSMA) to gauge effort.
Built-in alertcondition to trigger notifications when NS prints.
Inputs (high level)
lenVol: Volume SMA length.
ratioVol: Volume threshold vs. average (e.g., 0.7 = 70%).
usePrev2: Require volume below each of the prior two bars.
useNarrow + lenRange + ratioRange: Narrow-bar filter.
useClosePos + minClosePos: Close in upper portion of the bar.
downBarMode: Define “down bar” logic.
trendFiltOn, trendLen, trendSide: EMA trend filter.
useWideFilter, lenRangeWide, wideThreshold: Skip wide bars.
How to use (Wyckoff/VSA context)
Treat NS as a test of supply: price dips, but volume is light and close holds up.
Stronger when it prints near support/LPS within a re-accumulation structure.
Confirmation (recommended): within 1–3 bars, see demand—e.g., break above the NS high with expanding volume (above average or above the prior two bars). Many traders place a buy-stop just above the NS high; common stops are below the NS low or the most recent swing low.
Scanning tip
TradingView’s stock screener can’t consume Pine directly.
Use a Watchlist Custom Column that reports “bars since NS” to sort symbols (0 = NS on the latest bar). A companion column script is provided separately.
Notes & limitations
Works on any timeframe (intraday/daily/weekly), but context matters.
Expect false positives around news, gaps, or illiquid symbols—combine with structure (trend, S/R, phases) and risk management.
© moshel — Educational use only; not financial advice.
Breakout buy and sell//@version=6
indicator("突破 + 反轉指標(嚴格版)", overlay=true)
// 均線計算
ma5 = ta.sma(close, 5)
ma20 = ta.sma(close, 20)
ma_cross_up = ta.crossover(ma5, ma20)
ma_cross_down = ta.crossunder(ma5, ma20)
// 成交量判斷(嚴格:放量 1.5 倍以上)
vol = volume
vol_avg = ta.sma(vol, 20)
vol_increase = vol > vol_avg * 1.5
// 價格突破(嚴格:創 20 根新高/新低)
price_breakout_up = close > ta.highest(close, 20)
price_breakout_down = close < ta.lowest(close, 20)
// KDJ 隨機指標(抓反轉)
k = ta.stoch(close, high, low, 14)
d = ta.sma(k, 3)
kd_cross_up = ta.crossover(k, d)
kd_cross_down = ta.crossunder(k, d)
// 時間過濾(美股正規交易時段)
isRegularSession = (hour >= 14 and hour < 21) or (hour == 21 and minute == 0)
// 冷卻時間(避免連續訊號)
var int lastEntryBar = na
var int lastExitBar = na
entryCooldown = na(lastEntryBar) or (bar_index - lastEntryBar > 5)
exitCooldown = na(lastExitBar) or (bar_index - lastExitBar > 5)
// 嚴格進場條件
entryBreakout = ma_cross_up and vol_increase and price_breakout_up
entryReversal = kd_cross_up
entrySignal = (entryBreakout or entryReversal) and isRegularSession and entryCooldown
// 嚴格出場條件
exitBreakdown = ma_cross_down and vol_increase and price_breakout_down
exitReversal = kd_cross_down
exitSignal = (exitBreakdown or exitReversal) and isRegularSession and exitCooldown
// 更新冷卻時間
if entrySignal
lastEntryBar := bar_index
if exitSignal
lastExitBar := bar_index
// 顯示訊號
plotshape(entrySignal, location=location.belowbar, color=color.green, style=shape.labelup, title="進場訊號", text="買入")
plotshape(exitSignal, location=location.abovebar, color=color.red, style=shape.labeldown, title="出場訊號", text="賣出")
// 均線顯示
plot(ma5, color=color.orange, title="5MA")
plot(ma20, color=color.blue, title="20MA")
// 提醒條件(alertcondition)
alertcondition(entrySignal, title="買入訊號", message="出現買入訊號")
alertcondition(exitSignal, title="賣出訊號", message="出現賣出訊號")
Volume Peak (2 before & 2 after) - FixedThe option to detect volume peaks higher than the surrounding bars.
HTF Candle Overlay (Boxes + Wicks) 1hr / SolalDescription:
This indicator lets you visualize higher time frame (HTF) candles directly on a lower time frame chart.
It draws each HTF candle as a transparent box (the body) with wicks extending to the high and low. The boxes automatically update as each higher time frame candle forms and remain fixed once the candle closes.
You can choose any higher time frame (e.g., 1H, 4H, 1D) while trading on lower intervals (like 1m, 5m, 15m) to see key market structure and price zones.
Features:
Display candles from any higher time frame on your current chart.
Customizable colors for bullish and bearish candles.
Adjustable transparency, border and wick thickness.
History depth setting to control how many past HTF candles are displayed.
No repainting — candles stay fixed once closed.
Use case:
Ideal for traders who want to monitor higher time frame price action (support/resistance, trend direction) without switching chart time frames.
Manipolazione Luca C.(H1)Osservando le candele su H1 se notiamo una manipolazione evidente entriamo a mercato.
3/4-Bar GRG / RGR Pattern (Conditional 4th Candle)This indicator can be used to identify the Green-Red-Green or Red-Green-Red pattern.
It is a price action indicator where a price action which identifies the defeat of buyers and sellers.
If the buyers comprehensively defeat the sellers then the price moves up and if the sellers defeat the buyers then the price moves down.
In my trading experience this is what defines the price movement.
It is a 3 or 4 candle pattern, beyond that i.e, 5 or more candles could mean a very sideways market and unnecessary signal generation.
How does it work?
Upside/Green signal
Say candle 1 is Green, which means buyers stepped in, then candle 2 is Red or a Doji, that means sellers brought the price down. Then if candle 3 is forming to be Green and breaks the closing of the 1st candle and opening of the 2nd candle, then a green arrow will appear and that is the place where you want to take your trade.
Here the buyers defeated the sellers.
Sometimes candle 3 falls short but candle 4 breaks candle 1's closing and candle 2's opening price. We can enter on candle 4.
Important - We need to enter the trade as soon as the price moves above the candle 1 and 2's body and should not wait for the 3rd or 4th candle to close. Ignore wicks.
I have restricted it to 4 candles and that is all that is needed. More than that is a longer sideways market.
I call it the +-+ or GRG pattern.
Stop loss can be candle 2's mid for safe traders (that includes me) or candle 2's body low for risky traders.
Back testing suggests that body low will be useless and result in more points in loss because for the bigger move this point will not be touched, so why not get out faster.
Downside/Red signal
Say candle 1 is Red, which means sellers stepped in, then candle 2 is Green or a Doji, that means buyers took the price up. Then if candle 3 is forming to be Red and breaks the closing of the 1st candle and opening of the 2nd candle then a Red arrow will appear and that is the place where you want to take your trade.
Sometimes candle 3 falls short but candle 4 breaks candle 1's closing and candle 2's opening price. We can enter on candle 4.
We need to enter the trade as soon as the price moves below the candle 1 and 2's body and should not wait for the 3rd or 4th candle to close.
I have restricted it to 4 candles and that is all that is needed. More than that is a longer sideways market.
I call it the -+- or RGR pattern.
Stop loss can be candle 2's mid for safe traders ( that includes me) or candle 2's body high for risky traders.
Back testing suggests that body high will be useless and result in more points in loss because for the bigger move this point will not be touched, so why not get out faster.
Important Settings
You can enable or disable the 4th candle signal to avoid the noise, but at times I have noticed that the 4th candle gives a very strong signal or I can say that the strong signal falls on the 4th candle. This is mostly a coincidence.
You can also configure how many previous bars should the signal be generated for. 10 to 30 is good enough. To backtest increase it to 2000 or 5000 for example.
Rest are self explanatory.
Pointers
If after taking the trade, the next candle moves in your direction and closes strong bullish or bearish, then move SL to break even and after that you can trail it.
If a upside trade hits SL and immediately a down side trade signal is generated on the next candle then take it. Vice versa is true.
Trades need to be taken on previous 2 candle's body high or low combined and not the wicks.
The most losses a trader takes is on a sideways day and because in our strategy the stop loss is so small that even on a sideways day we'll get out with a little profit or worst break even.
Hold targets for longer targets and don't panic.
If last 3-4 days have been sideways then there is a good probability that day will be trending so we can hold our trade for longer targets. Target to hold the trade for whole day and not exit till the day closes.
In general avoid trading in the middle of the day for index and stocks. Divide the day into 3 parts and avoid the middle.
Use Support/Resistance, 10, 20, 50, 200 EMA/SMA, Gaps, Whole/Round numbers(very imp) for identifying targets.
Trail your SL.
For indexes I would use 5 min and 15 min timeframe.
For commodities and crypto we can use higher timeframe as well. Look for signals during volatile time durations and avoid trading the whole day. Signal usually gives good targets on those times.
If a GRG or RGR pattern appears on a daily timeframe then this is our time to go big.
Minimum Risk to Reward should be 1:2 and for longer targets can be 1:4 to 1:10.
Trade with small lot size. Money management will happen automatically.
With small lot size and correct Risk-Re ward we can be very profitable. Don't trade with big lot size.
Stay in the market for longer and collect points not money.
Very imp - Watch market and learn to generate a market view.
Very imp - Only 4 candles are needed in trading - strong bullish, strong bearish, hammer, inverse hammer and doji.
Go big on bearish days for option traders. Puts are better bought and Calls are better sold.
Cluster of green signals can lead to bigger move on the upside and vice versa for red signals.
Most of this is what I learned from successful traders (from the top 2%) only the indicator is mine.
DCC Sessions Pro — fixed sessionsDCC Sessions Pro automatically highlights the three main market sessions directly on your candles for a clean and professional chart view.
• Asia (purple): 01:00 – 08:00
• London (blue): 08:00 – 15:30
• US (orange): 15:30 – 23:00
Weekends are automatically excluded so you only see relevant price action.
Perfect for intraday traders who want to track session behavior, volume shifts, and liquidity timing without overlapping colors or messy backgrounds.
Multi-Time Frame Momentum PredictorFifteen-minute candle forming:
- Minute 1-15: Analyze one-minute candles
- Minute 14:30: Evaluate conditions
- Minute 14:45: Make decision
- Minute 14:59: Execute order if criteria are met
Crypto Scalping Strategy - High Win Rategrok first try. I used grok to create a scalping strategy that is automated for crypto scalp trading on 5-15 min intervals
US Opening 5-Minute Candle HighlighterUS Opening 5-Minute Candle Highlighter — True RVOL (Two-Tier + Label)
What it does (in plain English)
This indicator finds the first 5-minute bar of the US cash session (09:30–09:35 ET) and highlights it when the candle has the specific “strong open” look you want:
Opens near the low of its own range, and
Closes near the high of its own range, and
Has a decisive real body (not a wick-y doji), and
(Optionally) is a green candle, and
Meets a TRUE opening-bar RVOL filter (compares today’s 09:30–09:35 volume only to prior sessions’ 09:30–09:35 volumes).
You get two visual intensities based on opening RVOL:
Tier-1 (≥ threshold 1, default 1.0×) → light green highlight + lime arrow
Tier-2 (≥ threshold 2, default 1.5×) → darker green highlight + green arrow
An RVOL label (e.g., RVOL 1.84x) can be shown above or below the opening bar.
Designed for 5-minute charts. On other timeframes the “opening bar” will be the bar that starts at 09:30 on that timeframe (e.g., 15-minute 09:30–09:45). For best results keep the chart on 5m.
How the pattern is defined
For the opening 5-minute bar, we compute:
Range = high − low
Body = |close − open|
Then we measure where the open and close sit within the bar’s own range on a 0→1 scale:
0 means exactly at the low
1 means exactly at the high
Using two quantiles:
Open ≤ position in range (0–1) (default 0.20)
Example: 0.20 means “open must be in the lowest 20% of the bar’s range.”
Close ≥ position in range (0–1) (default 0.80)
Example: 0.80 means “close must be in the top 20% of the bar’s range.”
This keeps the logic range-normalized so it adapts across different tickers and vol regimes (you’re not using fixed cents or % of price).
Body ≥ fraction of range (0–1) (default 0.55)
Requires the real body to be at least that fraction of the total range.
0.55 = body fills ≥ 55% of the candle.
Purpose: filter out indecisive, wick-heavy bars.
Raise to 0.7–0.8 for only the fattest thrusts; lower to 0.3–0.4 to admit more bars.
Require green candle? (default ON)
If ON, close > open must be true. Turn OFF if you also want to catch strong red opens for shorts.
Minimum range (ticks)
Ignore tiny, illiquid opens: e.g., set to 2–5 ticks to suppress micro bars.
TRUE Opening-Bar RVOL (why it’s “true”)
Most “RVOL” compares against any recent bars, which isn’t fair at the open.
This indicator calculates only against prior opening bars:
At 09:30–09:35 ET, take today’s opening 5-minute volume.
Compare it to the average of the last N sessions’ opening 5-minute volumes.
RVOL = today_open_volume / average_prior_open_volumes.
So:
1.0× = equal to average prior opens.
1.5× = 150% of average prior opens.
2.0× = double the typical opening participation.
A minimum prior samples guard (default 10) ensures you don’t judge with too little history. Until enough samples exist, the RVOL gate won’t pass (you can disable RVOL temporarily if needed).
Visuals & tiers
Light green highlight + lime arrow → price filters pass and RVOL ≥ Tier-1 (default 1.0×)
Dark green highlight + green arrow → price filters pass and RVOL ≥ Tier-2 (default 1.5×)
Optional bar paint in matching green tones for extra visibility.
Optional RVOL label (e.g., RVOL 1.84x) above or below the opening bar.
You can show the label only when the candle qualifies, or on every open.
Inputs (step-by-step)
Price-action filters
Open ≤ position in range (0–1): default 0.20. Smaller = stricter (must open nearer the low).
Close ≥ position in range (0–1): default 0.80. Larger = stricter (must close nearer the high).
Body ≥ fraction of range (0–1): default 0.55. Raise to demand a “fatter” body.
Require green candle?: default ON. Turn OFF to also mark bearish thrusts.
Minimum range (ticks): default 0. Set to 2–5 for liquid mid/large caps.
Time settings
Timezone: default America/New_York. Leave as is for US equities.
Start hour / minute: defaults 09:30. The bar that starts at this time is evaluated.
TRUE Opening-Bar RVOL (two-tier)
Require TRUE opening-bar RVOL?: ON = must pass Tier-1 to highlight; OFF = price filters alone can highlight (still shows Tier-2 when hit).
RVOL lookback (prior opens count): default 20. How many prior openings to average.
Min prior opens required: default 10. Warm-up guard.
Tier-1 RVOL threshold (× avg): default 1.00× (light green).
Tier-2 RVOL threshold (× avg): default 1.50× (dark green).
Display
Also paint candle body?: OFF by default. Turn ON for instant visibility on a chart wall.
Arrow size: tiny/small/normal/large.
Light/Dark opacity: tune highlight strength.
Show RVOL label?: ON/OFF.
Show label only when candle qualifies?: ON by default; OFF to see RVOL every open.
Label position: Above candle or Below candle.
Label size: tiny/small/normal/large.
How to use (quick start)
Apply to a 5-minute chart.
Keep defaults: Open ≤ 0.20, Close ≥ 0.80, Body ≥ 0.55, Require green ON.
Turn RVOL required ON, with Tier-1 = 1.0×, Tier-2 = 1.5×, Lookback = 20, Min prior = 10.
Optional: enable Paint bar and set Arrow size = large for monitor-wall visibility.
Optional: show RVOL label below the bar to keep wicks clean.
Interpretation:
Dark green = A+ opening thrust with strong participation (≥ Tier-2).
Light green = Valid opening thrust with at least average participation (≥ Tier-1).
No highlight = one or more filters failed (quantiles, body, green, range, or RVOL if required).
Alerts
Two alert conditions are included:
Opening 5m Match — Tier-2 RVOL → fires when the opening candle passes price filters and RVOL ≥ Tier-2.
Opening 5m Match — Tier-1 RVOL → fires when the opening candle passes price filters and RVOL ≥ Tier-1 (but < Tier-2).
Recommended alert settings
Condition: choose the script + desired tier.
Options: Once Per Bar Close (you want the confirmed 09:30–09:35 bar).
Set your watchlist to symbols of interest (themes/sectors) and let the alerts pull you to the right charts.
Recommended starting values
Quantiles: Open ≤ 0.20, Close ≥ 0.80
Body fraction: 0.55
Require green: ON
RVOL: Required ON, Tier-1 = 1.0×, Tier-2 = 1.5×, Lookback 20, Min prior 10
Display: Paint bar ON, Arrow large, Label ON, Below candle
Tune tighter for A-plus selectivity:
Open ≤ 0.15, Close ≥ 0.85, Body ≥ 0.65, Tier-2 2.0×.
Notes, tips & limitations
5-minute timeframe is the intended use. On higher TFs, the 09:30 bar spans more than 5 minutes; geometry may not reflect the first 5 minutes alone.
RTH only: The opening detection looks at the clock (09:30 ET). Pre-market bars are ignored for the signal and for RVOL history.
Warm-up period: Until you have Min prior opens required samples, the RVOL gate won’t pass. You can temporarily toggle RVOL off.
DST & timezone: Leave timezone on America/New_York for US equities. If you trade non-US exchanges, set the appropriate TZ and opening time.
Illiquid tickers: Use Minimum range (ticks) and require RVOL to reduce noise.
No strategy orders: This is a visual/alert tool. Combine with your execution and risk plan.
Why this is useful on multi-monitor setups
Instant pattern recognition: the two-shade green makes A vs A+ opens pop at a glance.
Adaptive thresholds: quantiles & body are within-bar, so it works across $5 and $500 names.
Fair volume test: TRUE opening RVOL avoids comparing to pre-market or midday bars.
Optional labels: glanceable RVOL x-value helps triage the strongest themes quickly.
Volume Bubbles & Liquidity Heatmap 30% + biasLuxAlgo gave us an open script, I just primmed it up with the use of Chat GPT:There is no single magic number (like “delta must be 800”) that will guarantee directional follow-through in every market. But you can make a mathematically rigorous filter that gives you a high-probability test — by normalizing the delta against that market’s typical behavior and requiring multiple confirmations. Below is a compact, actionable algorithm you can implement immediately (in your platform or spreadsheet) plus concrete thresholds and the math behind them.
High-IQ rule set (math + trade logic)
Use three independent checks. Only take the trade if ALL three pass.
1) Z-score (statistical significance of the delta)
Compute rolling mean
𝜇
μ and std dev
𝜎
σ of delta on the same timeframe (e.g. 5m) over a lookback window
𝑊
W (suggest
𝑊
=
50
W=50–200 bars).
𝑍
=
delta
bar
−
𝜇
𝑊
𝜎
𝑊
Z=
σ
W
delta
bar
−μ
W
Threshold: require
𝑍
≥
2.5
Z≥2.5 (strong) — accept 2.0 for less strict, 3.0 for very rare signals.
Why: a Z>=2.5 means this delta is an outlier (~<1% one-sided), not normal noise.
2) Relative Imbalance (strength vs total volume)
Compute imbalance ratio:
𝑅
=
∣
delta
bar
∣
volume
bar
R=
volume
bar
∣delta
bar
∣
Threshold: require
𝑅
≥
0.25
R≥0.25 (25% of the bar’s volume is one-sided). For scalping you can tighten to 0.30–0.40.
Why: a big delta with tiny volume isn’t meaningful; this normalizes to participation.
3) Net follow-through over a confirmation window
Look ahead
𝑁
N bars (or check the next bar if you need intrabar speed). Compute cumulative delta and price move:
cum_delta
𝑁
=
∑
𝑖
=
1
𝑁
delta
bar
+
𝑖
cum_delta
N
=
i=1
∑
N
delta
bar+i
price_move
=
close
bar
+
𝑁
−
close
bar
price_move=close
bar+N
−close
bar
Thresholds: require
cum_delta
𝑁
cum_delta
N
has the same sign as the trigger and
∣
cum_delta
𝑁
∣
≥
0.5
×
∣
delta
bar
∣
∣cum_delta
N
∣≥0.5×∣delta
bar
∣, and
price_move
price_move exceeds a minimum meaningful tick amount (instrument dependent). For ES / US30 type futures: price move ≥ 5–10 ticks; for forex pairs maybe 10–20 pips? Use ATR
20
20
×0.05 as a generic minimum.
Why: separates immediate absorption (buy delta then sellers soak it) from genuine continuation.
Bonus check — Structural context (must be satisfied)
Trigger should not occur against a strong structural barrier (VWAP, daily high/low, previous session POC) unless you’re explicitly trading exhaustion/absorption setups.
If signal occurs near resistance and price does not clear that resistance within
𝑁
N bars, treat as probable trap.
Putting it together — final trade decision
Take the long (example):
If
𝑍
≥
2.5
Z≥2.5 and
𝑅
≥
0.25
R≥0.25 and cum_delta_N confirms and no hard resistance above (or you’re willing to trade absorption), then enter.
Place stop: under the low of the last 2–3 bars or X ATR (instrument dependent).
Initial target: risk:reward 1:1 minimum, scale out at 1.5–2R after confirming further delta.
Concrete numeric illustration using your numbers
You saw FOL = 456, then sell reaction with ~350 opposite. How to interpret:
Suppose your 5-min rolling mean
𝜇
μ = 100 and
𝜎
σ=120 (example):
𝑍
=
(
456
−
100
)
/
120
≈
2.97
⇒
statistically big
Z=(456−100)/120≈2.97⇒statistically big
So it passes Z.
If volume on that bar = 2000 contracts:
𝑅
=
456
/
2000
=
0.228
⇒
just below 0.25 threshold
R=456/2000=0.228⇒just below 0.25 threshold
So it fails R (weak participation proportionally), explaining why 456 alone didn’t move price.
Seller came back with 350 opposite soon after — check cum_delta_N:
cum_delta
𝑛
𝑒
𝑥
𝑡
3
≈
456
−
350
=
106
net
cum_delta
next3
≈456−350=106 net
Net is small relative to the initial spike — not convincing follow-through.
Conclusion: despite a big absolute number (456), relative measures and lack of follow-through meant the move failed. That’s exactly why raw numbers alone are unreliable.
Advanced refinement (for elite performance)
Use rolling median + MAD instead of mean/std if delta distribution is skewed.
Scale Z by volume volatility: divide Z by
volume
bar
/
volume
‾
volume
bar
/
volume
to penalize low-volume bars.
Use a signed cumulative delta over micro-windows: compute windowed cumulative delta standardized:
𝑍
cum
=
∑
𝑖
=
0
𝑀
−
1
delta
𝑡
−
𝑖
−
𝑀
𝜇
𝑀
𝜎
Z
cum
=
M
σ
∑
i=0
M−1
delta
t−i
−Mμ
and require
𝑍
cum
≥
3
Z
cum
≥3 for very high confidence.
Add market-depth / DOM confirmation (if available): require that resting ask size above is less than resting bid size below by a factor (i.e. visible liquidity supports the move).
Practical thresholds to start with (tune per instrument)
Lookback
𝑊
W: 100 bars (5m → about a trading day)
Z threshold: 2.5
Imbalance ratio
𝑅
R: ≥ 0.25 (tighten to 0.30 for scalping)
Confirmation window
𝑁
N: next 1–3 bars for intraday scalps; 3–6 bars for short swings
Cum delta confirmation: ≥ 0.5 × initial delta and same sign
Price move confirmation: ≥ 0.03 × ATR20 (or set absolute ticks per instrument)
TL;DR — the single best rule
Don’t chase absolute numbers. Use Z-score of delta + delta/volume ratio + real follow-through. If all three align, odds are heavily in your favor.
If you want, I can:
give you a tiny script (pseudocode or Pine / Python) that computes Z, R, cum_delta_N and flags qualifying bars, or
run the calculation on a sample of your recent bars if you paste a small CSV of time, delta, volume, close.
Which do you want? (I’ll give code right away.)
You said:
give me a percentage of difference where we have a high probability
ChatGPT said:
Thought for 7s
Nice — straight to the point. Here’s a concise, practical set of percentage thresholds (and associated confidence estimates) you can use right now to flag a “high probability” delta signal. I’ll give you three tiers (good / strong / elite), explain what each means, show how to compute it, and give a short example using your 456/2000 bar.
One-line rule
Compute delta percent
𝑃
=
∣
delta
∣
volume
×
100
%
P=
volume
∣delta∣
×100%.
Then require Z-score of delta ≥ 2.5 and P to be at or above the threshold below for the desired confidence tier.
Threshold tiers (percent of bar volume)
Good (high-probability trade candidate)
P ≥ 20–25%
Typical success probability (when combined with Z≥2.5 and no hard structural resistance): ~60–70%.
Use when you want a steady flow of signals with decent edge.
Strong (high confidence)
P ≥ 30–35%
Typical success probability: ~70–80% (with Z≥2.5 + structural alignment).
Fewer signals, higher win-rate. Good default for intraday.
Elite (very high probability / low false positives)
P ≥ 40–50%
Typical success probability: ~80–90% (with Z≥3 and confirmation).
Rare signals. Use for meaningful size or when you need maximum certainty.
Why percentage matters (short)
Absolute delta (456) is meaningless without volume context. A 456 delta on 2,000 volume → P = 456/2000 = 22.8% → sits just below the Good threshold, which matches why it failed: decent but not dominant participation.
Additional required checks (don’t skip these)
To turn P into a reliable filter, always require:
Z-score of the delta ≥ 2.5 (or ≥3 for Elite signals).
No immediate structural barrier (VWAP, strong resistance) that would plausibly absorb the order.
Follow-through: within next N bars (N = 1–3 for scalps) price moves in the same direction by ≥ 0.03×ATR20 (or instrument-specific tick threshold). If this fails, cut fast.
Combine all three and your realized win-rate will approach the probabilities above.
Practical quick checklist (to apply each signal)
Compute P = |delta|/volume. Is P ≥ 30%? (or your chosen tier)
Compute Z = (delta − mean)/std over last 100 bars. Is Z ≥ 2.5?
Is price not pinned under a heavy resistance?
Enter on next bar close (or intrabar on continuation), stop under last 2-bar low (for longs).
If price fails to move ≥ 0.03×ATR20 within 3 bars, exit.
Example (your bar)
delta = 456, volume = 2000 → P = 22.8% → below Good threshold (25%).
Even if Z was high, P failed — explains the failure. You need P ≥ ~30% plus Z≥2.5 to call it a Strong signal.
Final notes (instrument & timeframe)
These percentages were calibrated for futures/US indices and short intraday bars (1–5m).
For FX or low-tick instruments, use absolute ticks + a smaller P threshold (start at 15–20%).
Always backtest on the specific instrument/timeframe and tune thresholds.
If you want, I’ll generate a tiny script (Python or Pine) that calculates P and Z and flags Good/Strong/Elite signals for your chart history so you can see exact historical hit rates. Which language (Python or Pine)?
You said:
so if we have 456 g vs 350 r what pct is that in favour of green?
ChatGPT said:
Perfect — let’s calculate it carefully, digit by digit so we don’t make a slip.
We have:
Green (buy) volume = 456
Red (sell) volume = 350
We want to know what percentage is in favor of green, relative to the total volume.
Step 1. Compute total volume
Total
=
456
+
350
=
806
Total=456+350=806
Step 2. Compute green’s share
\text{Green %} = \frac{456}{806} \times 100
Now do it precisely:
456
÷
806
=
0.565506
456÷806=0.565506 (rounded)
So:
0.565506
×
100
=
56.55
%
0.565506×100=56.55%
Step 3. Compute red’s share (for context)
350
806
=
0.434494
→
43.45
%
806
350
=0.434494→43.45%
Step 4. Compute difference (bias toward green)
56.55
%
−
43.45
%
=
13.10
%
56.55%−43.45%=13.10%
✅ Final answer:
Green = 56.6% of total
Red = 43.4% of total
Bias = +13.1 percentage points in favor of green
So that’s only a 13% advantage to buyers — modest pressure, not a dominant imbalance.
For a high-probability signal (as we discussed earlier), you generally want ≥30% imbalance (e.g. ~65/35 split or stronger).
Original:
''The Volume Bubbles & Liquidity Heatmap indicator is a powerful trading tool designed to give traders a clearer picture of volume dynamics and liquidity distribution across multiple timeframes. By combining dynamic volume bubbles with a liquidity heatmap, this indicator makes it easy to identify areas of price interest, spot market imbalances, and improve decision-making for both scalpers and swing traders.
This trading indicator is ideal for volume traders, price action traders, and liquidity-focused traders who need a clean, multi-dimensional view of buyer/seller activity and the zones where market participants are most active. With full customization over bubble display, timeframes, and visual settings, traders can tailor the tool to fit virtually any trading strategy or market.''
Triple Close Indicator (TCI)Triple Close Indicator (TCI)
Overview:
The Triple Close Indicator (TCI) is a trend-following and entry signal tool designed to simplify market decision-making. Using a 50-period moving average (MA) as the primary trend filter, TCI identifies consecutive close patterns to generate high-probability bullish and bearish entry signals. Its clean design ensures minimal chart clutter while highlighting actionable points.
How It Works:
Trend Identification
The 50 MA is the core trend filter:
Price above 50 MA → bullish trend
Price below 50 MA → bearish trend
Signal Lines (Green/Red Lines)
Green Line: Marks every 3rd consecutive higher close
Red Line: Marks every 3rd consecutive lower close
Signal lines extend 6 bars forward for reference
Users can customize line width, transparency, and style (solid/dotted)
Entry Signals (Triangles)
Bullish Entry:
Green line above 50 MA → look for a candle closing above this line within the next configurable lookback window (default 5 bars)
Red line above 50 MA → if a candle closes above this line within the lookback window, bullish entry is triggered
Bearish Entry:
Red line below 50 MA → look for a candle closing below this line within the lookback window
Green line below 50 MA → if a candle closes below this line within the lookback window, bearish entry is triggered
Visuals
50 MA line – yellow, main trend filter
Signal lines – green/red with customizable width, transparency, and style
Entry triangles – lime for bullish, red for bearish
Alerts are available for real-time notifications
How to Use Effectively:
Trend Confirmation
Only take long entries above 50 MA and short entries below 50 MA
Avoid counter-trend entries to reduce false signals
Signal Validation
Wait for a candle close beyond the signal line to confirm the entry
Use the configurable lookback window to capture the most recent valid candle
Combine with Other Filters (Optional)
Use volume, ATR, or RSI to filter low-probability setups
Multi-timeframe analysis can enhance signal reliability
Alerts
Use built-in TradingView alerts for real-time execution
Customize messages for notifications on mobile, email, or webhook
Inputs & Customization:
MA Type & Length: Choose SMA, EMA, WMA, or VWMA for 50 MA
Signal Line Colors: Green (bullish), Red (bearish)
Line Width & Transparency: Adjust visual clarity
Line Style: Solid or Dotted
Lookback Window: Number of bars to check for valid entry after a signal line
Best Practices:
Use higher timeframes (1H, 4H, daily) for more reliable signals
Avoid trading in tight consolidation zones; the indicator works best in trending markets
Combine with risk management: define stop-loss below/above signal lines or ATR multiples
30 Day HighDisplay the 30 day high on the chart, based on the highest high (as opposed to the highest close).
Daily ATR% Dashboard george_pirlog//@version=6
indicator("ATR(14) – Daily + % vs Daily Close & Current (Heat + Alerts)", overlay=true)
// ── Inputs
atrLen = input.int(14, "ATR Length")
tfATR = input.timeframe("D", "ATR Timeframe (for ATR & daily close)")
decATR = input.int(2, "Decimals (ATR)", minval=0, maxval=6)
decPct = input.int(2, "Decimals (%)", minval=0, maxval=6)
pos = input.string("Top Right", "Table Position", options= )
bgAlpha = input.int(75, "Table BG Transparency (0-100)", minval=0, maxval=100)
showLabel = input.bool(false, "Show floating label")
yOffsetATR = input.float(0.25, "Label Y offset (× ATR)", step=0.05)
// Praguri culoare / alerte
warnPct = input.float(2.0, "Warn Threshold % (yellow/orange)", step=0.1)
highPct = input.float(3.0, "High Threshold % (red)", step=0.1)
// ── Helpers
f_pos(p) =>
if p == "Top Left"
position.top_left
else if p == "Top Right"
position.top_right
else if p == "Bottom Left"
position.bottom_left
else
position.bottom_right
f_heatColor(pct) =>
if pct >= highPct
color.new(color.red, 0)
else if pct >= warnPct
color.new(color.orange, 0)
else
color.new(color.teal, 0)
// ── Serii daily
atrDaily = request.security(syminfo.tickerid, tfATR, ta.atr(atrLen))
closeD = request.security(syminfo.tickerid, tfATR, close)
// ── Ultima valoare & procente
atrLast = atrDaily
pctOfDailyClose = atrLast / closeD * 100
pctOfCurrent = atrLast / close * 100
// ── Tabel static (3×2)
var table box = table.new(f_pos(pos), 3, 2, border_width=1, frame_color=color.new(color.gray, 0), bgcolor=color.new(color.black, bgAlpha))
if barstate.islast
table.cell(box, 0, 0, "ATR14 (Last D)", text_color=color.white, text_size=size.small, bgcolor=color.new(color.black, bgAlpha))
table.cell(box, 1, 0, "% of Daily Close", text_color=color.white, text_size=size.small, bgcolor=color.new(color.black, bgAlpha))
table.cell(box, 2, 0, "% of Current", text_color=color.white, text_size=size.small, bgcolor=color.new(color.black, bgAlpha))
table.cell(box, 0, 1, str.tostring(atrLast, "0." + str.repeat("0", decATR)), text_color=color.white, bgcolor=color.new(color.black, bgAlpha))
table.cell(box, 1, 1, str.tostring(pctOfDailyClose, "0." + str.repeat("0", decPct)) + "%", text_color=f_heatColor(pctOfDailyClose), bgcolor=color.new(color.black, bgAlpha))
table.cell(box, 2, 1, str.tostring(pctOfCurrent, "0." + str.repeat("0", decPct)) + "%", text_color=f_heatColor(pctOfCurrent), bgcolor=color.new(color.black, bgAlpha))
// ── Etichetă opțională (apel pe o singură linie)
var label info = na
if showLabel and barstate.islast
label.delete(info)
txt = "ATR14 (Last D): " + str.tostring(atrLast, "0." + str.repeat("0", decATR)) +
" vs Daily Close: " + str.tostring(pctOfDailyClose, "0." + str.repeat("0", decPct)) + "%" +
" vs Current: " + str.tostring(pctOfCurrent, "0." + str.repeat("0", decPct)) + "%"
info := label.new(x=bar_index, y=close + atrLast * yOffsetATR, text=txt, xloc=xloc.bar_index, yloc=yloc.price, style=label.style_label_left, textcolor=color.white, color=color.new(color.black, 0), size=size.normal)
// ── Alerts (cross peste praguri)
dailyWarnUp = ta.crossover(pctOfDailyClose, warnPct)
dailyHighUp = ta.crossover(pctOfDailyClose, highPct)
currWarnUp = ta.crossover(pctOfCurrent, warnPct)
currHighUp = ta.crossover(pctOfCurrent, highPct)
alertcondition(dailyWarnUp, "Daily % crossed WARN", "ATR% vs Daily Close crossed above WARN threshold")
alertcondition(dailyHighUp, "Daily % crossed HIGH", "ATR% vs Daily Close crossed above HIGH threshold")
alertcondition(currWarnUp, "Current % crossed WARN", "ATR% vs Current Price crossed above WARN threshold")
alertcondition(currHighUp, "Current % crossed HIGH", "ATR% vs Current Price crossed above HIGH threshold")
Anti-PDT Swing Trade Signals//@version=5
indicator("Anti-PDT Swing Trade Signals", overlay=true)
// === User Inputs ===
priceLimit = input.float(25, "Max Price ($)", minval=1)
minVolume = input.int(200000, "Min Avg Volume (10D)", minval=1)
// === Indicators ===
sma20 = ta.sma(close, 20)
sma50 = ta.sma(close, 50)
macdLine = ta.ema(close, 12) - ta.ema(close, 26)
signalLine = ta.ema(macdLine, 9)
rsi = ta.rsi(close, 14)
avgVolume = ta.sma(volume, 10)
// === Conditions ===
priceFilter = close <= priceLimit
volumeFilter = avgVolume >= minVolume
rsiFilter = ta.crossover(rsi, 40)
macdFilter = ta.crossover(macdLine, signalLine)
smaFilter = close > sma20 and close > sma50
momentumFilter = close > close * 1.03 and close < close * 1.10
// === Day Filter ===
isMonWedFri = dayofweek == dayofweek.monday or dayofweek == dayofweek.wednesday or dayofweek == dayofweek.friday
entryCondition = priceFilter and volumeFilter and rsiFilter and macdFilter and smaFilter and momentumFilter and isMonWedFri
// === Alerts & Visuals ===
plotshape(entryCondition, title="BUY", location=location.belowbar, color=color.green, style=shape.labelup, text="BUY")
alertcondition(entryCondition, title="BUY Alert", message="BUY Signal: {{ticker}} meets swing trading entry criteria.")
plot(sma20, color=color.orange)
plot(sma50, color=color.blue)
50 SMA 5-Candle Crossover50 SMA 5-Candle Crossover. Testing out. Not for trading but for investing. HOLD