Range Oscillator Strategy + Stoch Confirm / Long Only by (Mara)Strategy Overview
This script is a long-only trend-following strategy that combines:
– Range-based trend filter (inspired by "Range Oscillator" by Zeiierman)
– Stochastic (7 / 3 / 3) for pullback & entry timing
– EMA Exit Filter for adaptive exits as default 70
Use it to backtest, tweak, and study how this combination behaves on different markets.
1. Trend Filter
Trade longs only when the trend filter value is above the user-defined Threshold.
If the filter ≤ Threshold → no new long entries.
Threshold is adjustable in the settings.
2. Pullback Logic – Stochastic (7 / 3 / 3)
While trend is bullish:
Wait for %K to pull back below a chosen level (e.g. 50 or 20),
then look for a bullish %K over %D crossover.
All parameters are configurable.
3. Entry Conditions (Long Only)
– Trend filter > Threshold
– Stoch pullback condition met
– Bullish %K > %D at bar close
No short entries.
4. Stop Loss & Take Profit
Configurable Stop Loss and optional Take Profit.
Use Inputs to compare fixed RR vs. indicator/exit-based management.
5. EMA Exit Filter (Optional)
Additional custom exit logic to react faster to weakening conditions.
Toggleable in Inputs.
6. How to Test
Try on BTC and major markets (1D / 4D / 1H) and review:
net profit, drawdown, win rate, and robustness over multiple years.
7. Disclaimer
This script is for testing, education, and strategy development only.
It is not financial advice and not a guarantee of profits.
Always manage your own risk.
Göstergeler ve stratejiler
Descending Scallop TargetThis is an indicator that attempts to identify the target point of descending scallops according to Thomas Bulkowski's "The Pattern Site".
Work in progress...
Candle Color & Time Filter + Flexible Price Triggeran indicator inspsired by a friend trader, it will tell you when a candle changes color, during the time window you like, and to the threshold you prefer respect to the previous candle
Adaptive EMA CrossoverIndicator Name: Adaptive EMA Crossover
Description:
The Adaptive EMA Crossover is a sleek, visual tool designed to help traders identify trend direction and potential entry/exit points with clarity. By employing two Exponential Moving Averages (EMAs) with dynamic coloring, it cuts through the noise of the chart, allowing you to focus on high-probability signals.
🔍 Key Features:
Dual EMA System: Utilizes a fast and a slow EMA to gauge market momentum. The default settings are 12 (fast) and 21 (slow) periods, which can be fully customized.
Adaptive Visuals: Both EMAs change color simultaneously to reflect the dominant trend.
🟢 Bright Turquoise: Indicates an Uptrend (Fast EMA >= Slow EMA).
🔴 Bright Pink: Indicates a Downtrend (Fast EMA < Slow EMA).
Clear Crossover Signals: Prominent dots directly on the chart mark the exact moment a crossover occurs.
Turquoise Dot: A Bullish Crossover signal (Fast EMA crosses above Slow EMA).
Pink Dot: A Bearish Crossover signal (Fast EMA crosses below Slow EMA).
Integrated Alerts: Never miss a trading opportunity! Built-in alert conditions notify you instantly for both bullish and bearish crossovers.
🎯 How to Use:
Trend Identification: The primary colors of the EMAs give an immediate sense of the trend. Trade in the direction of the trend for higher-probability setups.
Signal Confirmation: Use the crossover dots as potential triggers for entry or exit. A turquoise dot in a rising market can signal a buy opportunity, while a pink dot in a falling market can signal a sell or short opportunity.
Combination with Other Tools: For best results, combine this indicator with other forms of analysis like support/resistance levels or volume confirmation to filter out false signals.
⚙️ Inputs:
EMA Small: Period for the faster-moving average (default: 12).
EMA Big: Period for the slower-moving average (default: 21).
This is my first published indicator. I welcome all feedback and suggestions for improvement! Happy Trading!
Monster Stock" Tag + Concentrated Buying PointsHigh accuracy of "monster stock" tag + resonance buy point (TradingView version)
Multi EMA + Indicators + Mini-Dashboard + Reversals v6📘 Multi EMA + Indicators + Mini-Dashboard + Reversals v6
🧩 Overview
This indicator is a multi-EMA setup that combines trend, momentum, and reversal analysis in a single visual framework.
It integrates four exponential moving averages (EMAs), key oscillators (RSI, MACD, Stochastic, CCI), volatility filtering (ATR), and a dynamic mini-dashboard that summarizes all signals in real time.
Its purpose is to help traders visually confirm trend alignment, filter valid entries, and identify possible trend continuation or reversal points.
It can display buy/sell arrows, detect reversal candles, and issue alerts when trading conditions are met.
⚙️ Core Components
1. Moving Averages (EMA Setup)
EMA1 (fast) and EMA2 (medium) define the short-term trend and trigger bias.
When the price is above both EMAs → bullish bias.
When below → bearish bias.
EMA3 and EMA4 act as trend filters. Their slopes (up or down) confirm overall momentum and help validate signals.
Each EMA has customizable lengths, sources, and colors for up/down trends.
This “EMA stack” is the foundation of the setup — a structured trend-following framework that adapts to market speed and volatility.
2. Momentum and Confirmation Filters
Each indicator can be individually enabled or disabled for flexibility.
RSI: confirms direction (above/below 50).
MACD: detects momentum crossover (MACD > Signal for bullish confirmation).
Stochastic: identifies trend continuation (K > D for longs, K < D for shorts).
CCI: adds trend bias above/below a threshold.
ATR Filter: filters out small, low-volatility candles to reduce noise.
You can activate only the filters that fit your trading plan — for instance, trend traders often use RSI and MACD, while scalpers may rely on Stochastic and ATR.
3. Reversal Detection
The indicator includes an optional Reversal Section that independently detects potential turning points.
It combines multiple configurable criteria:
Candlestick patterns (Bullish Hammer, Shooting Star).
Large Candle filter — detects unusually large bars (relative to close).
Price-to-EMA distance — identifies overextended moves that might revert.
RSI Divergence — detects potential momentum shifts.
RSI Overbought/Oversold zones (70/30 by default).
Doji Candles — sign of indecision.
A bullish or bearish reversal signal appears when enough selected criteria are met.
All sub-modules can be toggled on/off individually, giving you full control over sensitivity.
4. Signal Logic
Buy and sell signals are triggered when EMA alignment and the chosen confirmations agree:
Buy Signal
→ Price above EMA1 & EMA2
→ Confirmations (RSI/MACD/Stoch/CCI/ATR) pass
→ Trend filters (EMA3/EMA4) point upward
Sell Signal
→ Price below EMA1 & EMA2
→ Confirmations align bearishly
→ Trend filters (EMA3/EMA4) slope downward
Reversal signals can appear independently, even against the current EMA trend, depending on your settings.
5. Visual Dashboard
A mini-dashboard appears near the chart showing:
Current trade bias (LONG / SHORT / NEUTRAL)
EMA3 and EMA4 trend directions (↑ / ↓)
Quick visual bars (🟩 / 🟥) for each filter: RSI, MACD, Stoch, ATR, CCI, EMA filters
Reversal criteria status (Doji, RSI divergence, candle size, etc.)
This panel gives you a compact overview of all indicator states at a glance.
The color of the panel changes dynamically — green for bullish, red for bearish, gray for neutral.
6. Alerts
Built-in alerts allow automation or notifications:
Buy Alert
Sell Alert
Reversal Buy
Reversal Sell
You can connect these alerts to TradingView notifications or external bots for semi-automated execution.
💡 How to Use
✅ Trend-Following Setup
Focus on trades in the direction of EMA1 & EMA2.
Confirm with EMA3 & EMA4 trending in the same direction.
Use RSI/MACD/Stoch filters to ensure momentum supports the trade.
Avoid entries when ATR filter indicates low volatility.
🔄 Reversal Setup
Enable the Reversal section for potential tops/bottoms.
Look for reversal buy signals near support zones or after strong downtrends.
Use RSI divergence or Doji + Hammer signals as confirmation.
Combine with key chart areas (supply/demand or previous swing levels).
⚖️ Combination Approach
Trade continuation signals when all EMAs are aligned and filters are green.
Trade reversals only when at a key area (support/resistance) and confirmed by reversal conditions.
Always check higher-timeframe bias before entering a trade.
🧭 Practical Tips
Use different EMA sets for different timeframes:
9/21/50/100 for swing or trend trades.
5/13/34/89 for intraday scalping.
Turn off filters you don’t use to reduce lag.
Always validate signals with price structure, not just indicator alignment.
Practice in replay mode before live trading.
🗺️ Key Chart Confluence (Highly Recommended)
Although the indicator provides structured signals, its best use is in confluence with:
Support and resistance levels
Supply/demand zones
Trendlines and channels
Liquidity pools
Volume clusters
Signals aligned with strong key areas on the chart tend to have greater reliability than isolated indicator triggers.
I use EMA 1 - 20 Open ; EMA 2 - 20 Close ; EMA 3 - 50 ; EMA 4 - 200 or 100 , but that's me...
⚠️ Important Disclaimer
This indicator is a technical tool, not a guarantee of results.
Trading involves risk, and no signal is ever 100% accurate.
Every trader should develop a personal strategy, use proper risk management, and adapt settings to their instrument and timeframe.
Always combine indicator signals with key chart areas, higher-timeframe context, and your own analysis before taking a trade.
神奇9转Indicator Name: 9 Countdown
Author: Lao Seng on Gold (Laoseng Lunjin)
Indicator Description:
This indicator is based on the “Setup” phase logic from DM technical framework. It automatically tracks consecutive upward or downward closes and clearly highlights key potential turning points at the 5th, 7th, 9th, 13th, 19th, and 21st candles.
Core Logic:
If the current close is higher than the close 4 bars earlier → count as one step in an upward sequence.
If the current close is lower than the close 4 bars earlier → count as one step in a downward sequence.
The sequence resets when the condition is broken.
Important observation levels are highlighted at bars 5/7/9/13/19/21 within each sequence.
How to Use:
Applicable to multiple timeframes. Recommended to combine with trendlines and support/resistance zones.
The 9th bar signal is often monitored as a potential reversal zone.
It does not imply an immediate buy or sell; it is used to assess sentiment and timing windows.
Tips:
Can be used as a timing and rhythm tool for swing trading.
Suitable for gold (XAUUSD), indices, and major FX pairs.
Disclaimer:
This script is for research and educational purposes only and does not constitute investment advice. Please use it in conjunction with your own strategy and risk management.
指标名称:德马克9转
作者:老僧论金
指标简介:
本指标基于德马克技术理论中的“计数(Setup)”阶段逻辑,自动追踪价格连续上涨/下跌的天数,并在图表中清晰标出关键转折点(第5、7、9、13、19、21根K线)。
核心逻辑:
如果当前收盘价高于4根K线前的收盘价 → 连续上涨记1次
如果低于4根K线前 → 连续下跌记1次
连续统计,遇中断重置
在图表中标记:5/7/9/13/19/21 为重要观察节点
使用方法:
适用于各周期,建议搭配趋势线与支撑阻力位共同使用
第9根信号常用于潜在反转区域判断
不代表立即买卖,仅作情绪与时间窗口判断
小贴士:
可作为波段交易辅助节奏工具
可叠加在黄金(XAUUSD)、指数、外汇品种中使用
免责声明:
该脚本仅供研究学习使用,不构成投资建议。请结合自身策略和风险控制使用。翻译成英文
Avalements Pertinents - M5, M10, M15An indicator that shows us bullish or bearish engulfing patterns, which may be relevant; use other confirmation (false signals happen, like with any indicator).
Greazy Bear 5-Min Scalper [by: New Market Wizards] - FVG + BB// ── GB 5-MIN SCALP LOGIC ───────────────────────
// 1. Price touches Lower BB → potential long
// 2. Next bar closes ABOVE Lower BB → BUY
// 3. Price touches Upper BB → potential short
// 4. Next bar closes BELOW Upper BB → SELL
// 5. Only trade in direction of the prevailing 20-period trend (close > basis = uptrend)
Uni VWAP + EMA ScalperWe learn more through the mistakes we make than the victories we enjoy. This is a work in progress to align visual and audible guidance for scalping and swing trades.
Z-Score of RSI//@version=5
indicator("Z-Score of RSI", overlay=false)
// Tham số
rsi_length = input.int(14, "RSI Length")
z_length = input.int(60, "Z-Score Period")
// Tính RSI
rsi = ta.rsi(close, rsi_length)
// Tính Z-Score
mean_rsi = ta.sma(rsi, z_length)
std_rsi = ta.stdev(rsi, z_length)
z_rsi = (rsi - mean_rsi) / std_rsi
// Vẽ biểu đồ
plot(z_rsi, color=color.new(color.aqua, 0), linewidth=2, title="Z-Score(RSI)")
hline(0, "Mean", color=color.gray)
hline(2, "Overbought (+2σ)", color=color.red)
hline(-2, "Oversold (-2σ)", color=color.lime)
// Cảnh báo (tuỳ chọn)
bgcolor(z_rsi < -2 ? color.new(color.lime, 85) : na)
bgcolor(z_rsi > 2 ? color.new(color.red, 85) : na)
3s vs 10s Up/Down//@version=5
indicator("3s vs 10s Up/Down", overlay=true, scale=scale.none)
three_sec_diff = close - request.security(syminfo.tickerid, "3S", close )
ten_sec_diff = close - request.security(syminfo.tickerid, "10S", close )
faster_up = three_sec_diff > ten_sec_diff
faster_down = three_sec_diff < ten_sec_diff
col = faster_up ? color.green : faster_down ? color.red : color.gray
// Plot a shape at the top of each bar
plotshape(series=true, location=location.top, color=col, style=shape.circle, size=size.large, title="Speed Tick Light")
// Optional: only display on the last bar for dashboard style light
show_light = barstate.islast
plotshape(series=show_light, location=location.top, color=col, style=shape.circle, size=size.huge, title="Current Tick Light")
moh//@version=5
indicator("Test - Clean Base (Fixed Line 95)", overlay=true)
// إعداد بسيط
pivotLen = input.int(5, "Pivot lookback", minval=2)
// نحدد القمم والقيعان
ph = ta.pivothigh(high, pivotLen, pivotLen)
pl = ta.pivotlow(low, pivotLen, pivotLen)
// نرسم القمم والقيعان
if not na(ph)
label.new(bar_index - pivotLen, ph, "Top", yloc=yloc.abovebar, style=label.style_label_down, color=color.new(color.red,0))
if not na(pl)
label.new(bar_index - pivotLen, pl, "Bottom", yloc=yloc.belowbar, style=label.style_label_up, color=color.new(color.green,0))
// نرسم خطين ترند من آخر قمتين وآخر قاعين
lastPH1 = ta.valuewhen(not na(ph), ph, 0)
lastPH2 = ta.valuewhen(not na(ph), ph, 1)
lastPH1_x = ta.valuewhen(not na(ph), bar_index - pivotLen, 0)
lastPH2_x = ta.valuewhen(not na(ph), bar_index - pivotLen, 1)
lastPL1 = ta.valuewhen(not na(pl), pl, 0)
lastPL2 = ta.valuewhen(not na(pl), pl, 1)
lastPL1_x = ta.valuewhen(not na(pl), bar_index - pivotLen, 0)
lastPL2_x = ta.valuewhen(not na(pl), bar_index - pivotLen, 1)
// الخطأ كان هنا (سطر 95) بسبب تنسيق أو محرف غير ظاهر
if not na(lastPH1) and not na(lastPH2)
line.new(x1=lastPH2_x, y1=lastPH2, x2=lastPH1_x, y2=lastPH1, extend=extend.right, color=color.red, width=2)
if not na(lastPL1) and not na(lastPL2)
line.new(x1=lastPL2_x, y1=lastPL2, x2=lastPL1_x, y2=lastPL1, extend=extend.right, color=color.green, width=2)
Average Dollar Volume by Mashrab
Standard Mode: By default, it shows a 20-period SMA of the Dollar Volume. This is great for swing trading to see if money flow is increasing over days.
Day Trading Mode: Go to the indicator settings (User Input) and check "Reset Average Daily".
The line will now represent the Cumulative Average for today only.
Example: If it's 10:00 AM, the line shows the average dollar volume per bar since the market opened at 9:30 AM. This helps you spot if the current 5-minute bar is truly igniting compared to the rest of the morning.
How to Use for Day Trading
Add the script to your 1-minute chart.
Ensure "Reset Average Daily" is checked in the settings (I made it default to true for you).
Look at the Table in the top right:
Avg Dollar Vol: This tells you the average money flowing into the stock per minute today.
1% Threshold: This gives you the exact number your friend likely uses to gauge "minimum viable liquidity" or specific risk calculations.
Force DashboardScalping Dashboard - Complete User Guide
Overview
This scalping system consists of two complementary TradingView indicators designed for intraday trading with no overnight holds:
Force Dashboard - Single-row table showing real-time market bias and entry signals
Large Order Detection - Visual diamonds showing institutional order flow
Together, they provide a complete at-a-glance view of market conditions optimized for quick entries and exits.
Recommended Timeframes
Primary Scalping Timeframes
1-minute chart: Ultra-fast scalps (30 seconds - 3 minutes hold time)
2-minute chart: Quick scalps (2-5 minutes hold time)
5-minute chart: Standard scalps (5-15 minutes hold time)
Best Practices
Use 1-2 minute for highly liquid instruments (ES, NQ, major forex pairs)
Use 5-minute for less liquid markets or if you prefer fewer signals
Never hold past the last hour of trading to avoid overnight risk
Set hard stop times (e.g., exit all positions by 3:45 PM EST)
Dashboard Components Explained
Core Indicators (Circles ●)
MACD (5/13/5)
Green ● = Bullish momentum (MACD histogram positive)
Red ● = Bearish momentum (MACD histogram negative)
Gray ● = No clear momentum
Use: Confirms trend direction and momentum shifts
EMA (9/20/50)
Green ● = Price > EMA9 > EMA20 (uptrend)
Red ● = Price < EMA9 < EMA20 (downtrend)
Gray ● = Choppy/sideways
Use: Identifies the immediate micro-trend
Stoch (5-period Stochastic)
Green ● = Oversold (<20) - potential reversal up
Red ● = Overbought (>80) - potential reversal down
Gray ● = Neutral zone (20-80)
Use: Spots reversal opportunities at extremes
RSI (7-period)
Green ● = Oversold (<30)
Red ● = Overbought (>70)
Gray ● = Neutral
Use: Confirms overbought/oversold conditions
CVD (Cumulative Volume Delta)
Green ● = CVD above its moving average (buying pressure)
Red ● = CVD below its moving average (selling pressure)
Gray ● = Neutral
Use: Shows overall buying vs selling pressure
ΔCVD (Delta CVD - Rate of Change)
Green ● = CVD accelerating upward (buying acceleration)
Red ● = CVD accelerating downward (selling acceleration)
Gray ● = No acceleration
Use: Detects momentum shifts in order flow
Imbal (Order Flow Imbalance)
Green ● = Buy pressure >2x sell pressure
Red ● = Sell pressure >2x buy pressure
Gray ● = Balanced
Use: Identifies extreme one-sided order flow
Vol (Volume Strength)
Green ● = Volume >1.5x average (strong interest)
Red ● = Volume <0.7x average (low interest)
Gray ● = Normal volume
Yellow background = Volume surge (>2x average) - BIG MOVE ALERT
Use: Confirms conviction behind price moves
Tape (Tape Speed)
Green ● = Fast order flow (>1.3x normal)
Red ● = Slow order flow (<0.7x normal)
Gray ● = Normal speed
Yellow background = Very fast tape (>1.5x) - RAPID EXECUTION ALERT
Use: Measures urgency and speed of orders
Key Levels
Support (Supp)
Shows the nearest high-volume support level below current price
Bright Green background = Price is AT support (within 0.3%) - BOUNCE ZONE
Green background = Price above support (healthy)
Red background = Price below support (broken support, now resistance)
Resistance (Res)
Shows the nearest high-volume resistance level above current price
Bright Orange background = Price is AT resistance (within 0.3%) - REJECTION ZONE
Red background = Price below resistance (facing overhead supply)
Green background = Price above resistance (breakout)
These levels update automatically every 3 bars based on volume profile
Entry Signal Components
Score
Displays format: "6L" (6 long indicators) or "4S" (4 short indicators)
Bright Green = 6-7 indicators aligned for long
Light Green = 5 indicators aligned for long
Yellow = 4 indicators aligned (weaker setup)
Gray = No alignment
Red/Orange colors = Same scale for short setups
Score of 5+ indicates high-probability setup
SCALP (Main Entry Signal)
BRIGHT GREEN "LONG" = High-quality long scalp (Score 5+)
Green "LONG" = Decent long scalp (Score 4)
BRIGHT ORANGE "SHORT" = High-quality short scalp (Score 5+)
Red "SHORT" = Decent short scalp (Score 4)
Gray "WAIT" = No clear setup - STAY OUT
Entry Strategies
Strategy 1: High-Probability Scalps (Conservative)
When to Enter:
SCALP column shows BRIGHT GREEN "LONG" or BRIGHT ORANGE "SHORT"
Score is 5 or higher
Vol or Tape has yellow background (volume surge)
Example Long Setup:
SCALP = BRIGHT GREEN "LONG"
Score = 6L
Vol = Yellow background
Price AT Support (bright green Supp cell)
EMA, MACD, CVD, ΔCVD, Imbal all green
Entry: Enter immediately on next candle
Target: 0.5-1% move or resistance level
Stop: Below support or -0.3%
Hold Time: 2-10 minutes
Strategy 2: Momentum Scalps (Aggressive)
When to Enter:
Tape has yellow background (fast tape)
Vol has yellow background (volume surge)
ΔCVD is green (for longs) or red (for shorts)
Imbal shows strong imbalance in your direction
Score is 4+
Example Short Setup:
Tape & Vol = Yellow backgrounds
ΔCVD = Red, Imbal = Red
Price AT Resistance (bright orange)
Score = 5S
Entry: Enter immediately
Target: Quick 0.3-0.7% move
Stop: Tight -0.2%
Hold Time: 1-5 minutes
Strategy 3: Reversal Scalps (Mean Reversion)
When to Enter:
Stoch shows oversold (green) or overbought (red)
RSI confirms the extreme
Price is AT Support (for longs) or AT Resistance (for shorts)
ΔCVD and Imbal start reversing direction
Score is 4+
Example Long Setup:
Stoch = Green (oversold)
RSI = Green (oversold)
Supp = Bright green (at support)
ΔCVD turns green
Imbal turns green
Score = 4L or 5L
Entry: Wait for confirmation candle
Target: Move back to EMA9 or mid-range
Stop: Below the low
Hold Time: 3-8 minutes
Large Order Detection Usage
Diamond Signals
Green diamonds below bar = Large buy orders (institutional buying)
Red diamonds above bar = Large sell orders (institutional selling)
Size matters: Larger diamonds = larger order flow
How to Use with Dashboard
Confirmation Entries
Dashboard shows "LONG" signal
Green diamond appears
Enter immediately - institutions are buying
Divergence Alerts (CAUTION)
Dashboard shows "LONG" signal
RED diamond appears (institutions selling)
DO NOT ENTER - conflicting order flow
Cluster Patterns
Multiple green diamonds in row = Strong accumulation, stay long
Multiple red diamonds in row = Strong distribution, stay short
Alternating colors = Chop, avoid trading
Risk Management Rules
Position Sizing
Risk 0.5-1% of account per scalp
Maximum 3 concurrent positions
Reduce size after 2 consecutive losses
Stop Loss Guidelines
Tight stops: 0.2-0.3% for 1-2 min charts
Standard stops: 0.3-0.5% for 5 min charts
Always use stop loss - no exceptions
Place stops below support (longs) or above resistance (shorts)
Take Profit Targets
Target 1: 0.3-0.5% (take 50% off)
Target 2: 0.7-1% (take remaining 50%)
Move stop to breakeven after Target 1 hit
Trail stop if Score remains high
Time-Based Exits
Exit immediately if:
SCALP changes from LONG/SHORT to WAIT
Score drops below 3
Large diamond appears in opposite direction
Maximum hold time: 15 minutes (even if profitable)
Hard exit time: 30 minutes before market close
Trading Sessions
Best Times to Scalp
High-Liquidity Sessions
9:30-11:00 AM EST (Market open, highest volume)
2:00-3:30 PM EST (Afternoon session, good moves)
Avoid
11:30 AM-1:30 PM EST (Lunch, low volume)
Last 30 minutes (unpredictable, don't initiate new trades)
News releases (wait 5 minutes for volatility to settle)
Common Patterns & Setups
The Perfect Storm (Highest Probability)
Score = 6L or 7L
SCALP = BRIGHT GREEN
Vol + Tape = Yellow backgrounds
Green diamond appears
Price AT Support
Win rate: ~70-80%
The Fade Setup (Counter-Trend)
Price hits resistance (bright orange)
Stoch + RSI overbought (red)
Red diamond appears
CVD starts turning red
SCALP shows "SHORT"
Win rate: ~60-70%
The Breakout Continuation
Price breaks resistance (Res turns green)
EMA, MACD green
Vol surge (yellow)
Multiple green diamonds
SCALP = "LONG"
Win rate: ~65-75%
Warning Signs - DO NOT TRADE
Red Flags
❌ SCALP shows "WAIT"
❌ Score below 3
❌ Vol and Tape both gray (no volume)
❌ Conflicting signals (dashboard says LONG but red diamonds appearing)
❌ Alternating green/red circles (choppy market)
❌ Support and Resistance very close together (tight range)
Market Conditions to Avoid
Low volume periods
Major news releases (first 5 minutes after)
First 2 minutes after market open
Wide spreads
Consecutive losing trades (take a break after 2 losses)
Quick Reference Checklist
Before Taking ANY Trade:
☑ SCALP shows LONG or SHORT (not WAIT)
☑ Score is 4 or higher
☑ Vol or Tape shows activity
☑ No conflicting diamond signals
☑ Stop loss level identified
☑ Target profit level identified
☑ Not in restricted time periods
After Entering:
☑ Set stop loss immediately
☑ Set profit targets
☑ Watch SCALP column - exit if changes to WAIT
☑ Watch for opposite-colored diamonds
☑ Move stop to breakeven after first target
☑ Exit all by market close
Advanced Tips
Scalping Psychology
Be patient: Wait for Score 5+ setups
Be decisive: When signal appears, act immediately
Be disciplined: Follow your stop loss always
Be flexible: Exit quickly if dashboard reverses
Optimization
Backtest on your specific instrument
Adjust RSI/Stoch levels for your market
Fine-tune volume thresholds
Keep a trade journal to track which setups work best
Multi-Timeframe Confirmation
Use 5-min dashboard as "trend filter"
Take 1-min trades only in direction of 5-min SCALP signal
Increases win rate by ~10-15%
Troubleshooting
Q: Dashboard shows WAIT most of the time
Normal - scalping is about patience. Quality > Quantity
3-8 good setups per day is excellent
Q: Too many false signals
Increase minimum Score requirement to 5 or 6
Only trade with volume surge (yellow backgrounds)
Add large order detection confirmation
Q: Signals too slow
You may be on too high a timeframe
Try 1-minute chart for faster signals
Ensure real-time data feed is active
Q: Support/Resistance not updating
Normal - updates every 3 bars
If completely stuck, remove and re-add indicator
Summary
This scalping system works best when:
✅ Multiple indicators align (Score 5+)
✅ Volume and tape speed confirm the move
✅ Order flow (diamonds) confirms direction
✅ Price is at key levels (support/resistance)
✅ You manage risk strictly
✅ You exit before market close
The golden rule: When SCALP says WAIT, you WAIT. Discipline beats frequency.
EMA + SuperTrend Signals (Customized Subham) - FIXED//@version=5
indicator("EMA + SuperTrend Signals (modes + filters) - FIXED firstClose", overlay=true, shorttitle="EMA×ST Modes", max_labels_count=500)
// ====== USER INPUTS ======
useHeikin = input.bool(false, "Use Heikin Ashi price (set true if chart is Heikin Ashi)")
srcType = input.string("Close", "Price source for EMA/SuperTrend", options= )
emaFastLen = input.int(10, "Fast EMA Length", minval=1)
emaSlowLen = input.int(50, "Slow EMA Length", minval=1)
useEMAFilter = input.bool(true, "Require EMA filter for signals (Fast EMA > Slow EMA)")
atrLen = input.int(10, "SuperTrend ATR Length", minval=1)
atrMult = input.float(3.0, "SuperTrend ATR Multiplier", step=0.1)
showArrows = input.bool(true, "Show buy/sell arrows")
showBands = input.bool(true, "Show final upper/lower bands")
showST = input.bool(true, "Show SuperTrend line")
showEMA = input.bool(true, "Plot EMAs")
showBg = input.bool(true, "Color background by ST")
alertsEnabled = input.bool(true, "Enable alertcondition()s")
// ====== SIGNAL MODE / BEHAVIOR ======
signalMode = input.string("Flip only", "Signal Mode", options= )
allowOnTrendNotOnlyFlip = input.bool(true, "Allow signals based on Signal Mode (in addition to flips)")
// ====== SIDEWAYS / NOISE FILTER INPUTS ======
useAdxFilter = input.bool(true, "Use ADX filter (require trend strength)")
adxLen = input.int(14, "ADX length", minval=1)
adxThreshold = input.int(20, "ADX threshold (lower = more signals)")
useVolFilter = input.bool(true, "Use ATR% volatility filter (require sufficient movement)")
volPctThreshold = input.float(0.002, "ATR / Price threshold (e.g. 0.002 = 0.2%)", step=0.0001)
useRsiFilter = input.bool(true, "Use RSI filter")
rsiLen = input.int(14, "RSI length", minval=1)
rsiBuyThreshold = input.int(50, "RSI buy threshold (require RSI > this for buys)", minval=1, maxval=99)
rsiSellThreshold = input.int(50, "RSI sell threshold (require RSI < this for sells)", minval=1, maxval=99)
// ====== HEIKIN ASHI VALUES (optional) ======
var float haOpen = na
var float haClose = na
var float haHigh = na
var float haLow = na
if useHeikin
haClose := (open + high + low + close) / 4.0
haOpen := na(haOpen ) ? (open + close) / 2.0 : (haOpen + haClose ) / 2.0
haHigh := math.max(high, math.max(haOpen, haClose))
haLow := math.min(low, math.min(haOpen, haClose))
// ====== PRICE SOURCE FUNCTION ======
_getSrc(_choice) =>
float _result = na
if useHeikin
if _choice == "Close"
_result := haClose
else if _choice == "HL2"
_result := (haHigh + haLow) * 0.5
else
_result := (haHigh + haLow + haClose) / 3.0
else
if _choice == "Close"
_result := close
else if _choice == "HL2"
_result := (high + low) * 0.5
else
_result := (high + low + close) / 3.0
_result
priceSrc = _getSrc(srcType)
priceHigh = useHeikin ? haHigh : high
priceLow = useHeikin ? haLow : low
priceClose = nz(priceSrc, close)
// ====== EMA CALC ======
emaFast = ta.ema(priceSrc, emaFastLen)
emaSlow = ta.ema(priceSrc, emaSlowLen)
// ====== SUPER TREND CALC (finalUpper / finalLower) ======
hl2_local = (priceHigh + priceLow) * 0.5
atr = ta.atr(atrLen)
upperBasic = hl2_local + atrMult * atr
lowerBasic = hl2_local - atrMult * atr
var float finalUpper = na
var float finalLower = na
finalUpper := nz(finalUpper , upperBasic)
finalLower := nz(finalLower , lowerBasic)
finalUpper := (upperBasic < finalUpper or priceClose > finalUpper) ? upperBasic : finalUpper
finalLower := (lowerBasic > finalLower or priceClose < finalLower) ? lowerBasic : finalLower
var int trend = 1
trend := nz(trend , 1)
if (priceClose > nz(finalUpper , finalUpper))
trend := 1
else if (priceClose < nz(finalLower , finalLower))
trend := -1
superTrend = trend == 1 ? finalLower : finalUpper
isBull = trend == 1
isBear = trend == -1
// ====== SIGNAL RULE BASE (flips) ======
prevTrend = nz(trend , trend)
bullFlip = (trend == 1 and prevTrend == -1)
bearFlip = (trend == -1 and prevTrend == 1)
// EMA crossover signals (series)
emaXoverBuy = ta.crossover(emaFast, emaSlow)
emaXoverSell = ta.crossunder(emaFast, emaSlow)
// price vs superTrend confirmation
priceAboveST = priceClose > superTrend
priceBelowST = priceClose < superTrend
// Basic EMA filters
emaFilterBuy = (emaFast > emaSlow) and (priceClose > emaFast)
emaFilterSell = (emaFast < emaSlow) and (priceClose < emaFast)
// Build raw candidates depending on mode
flipBuy = bullFlip
flipSell = bearFlip
// firstClose: first bar where trend flipped and price confirms on that bar's close
firstCloseBuy = (trend == 1) and (prevTrend == -1) and (priceClose > superTrend)
firstCloseSell = (trend == -1) and (prevTrend == 1) and (priceClose < superTrend)
// emaCrossoverCandidate: EMA cross while trend confirms
emaCandidateBuy = emaXoverBuy and (trend == 1)
emaCandidateSell = emaXoverSell and (trend == -1)
// Compose the raw buy/sell depending on chosen Signal Mode
var bool buySignal_raw = false
var bool sellSignal_raw = false
if signalMode == "Flip only"
buySignal_raw := flipBuy
sellSignal_raw := flipSell
else if signalMode == "First close in trend"
buySignal_raw := firstCloseBuy or (allowOnTrendNotOnlyFlip and flipBuy)
sellSignal_raw := firstCloseSell or (allowOnTrendNotOnlyFlip and flipSell)
else // "EMA crossover in trend"
buySignal_raw := emaCandidateBuy or (allowOnTrendNotOnlyFlip and flipBuy)
sellSignal_raw := emaCandidateSell or (allowOnTrendNotOnlyFlip and flipSell)
// Apply EMA filter option (if enabled)
if useEMAFilter
buySignal_raw := buySignal_raw and emaFilterBuy
sellSignal_raw := sellSignal_raw and emaFilterSell
// ====== SIDEWAYS FILTERS IMPLEMENTATION ======
// Manual ADX implementation (Wilder smoothing)
up = priceHigh - priceHigh
down = priceLow - priceLow
plusDM = (up > down and up > 0) ? up : 0.0
minusDM = (down > up and down > 0) ? down : 0.0
tr1 = priceHigh - priceLow
tr2 = math.abs(priceHigh - nz(priceClose , priceClose))
tr3 = math.abs(priceLow - nz(priceClose , priceClose))
trueRange = math.max(tr1, math.max(tr2, tr3))
smoothedTR = ta.rma(trueRange, adxLen)
smoothedPlusDM = ta.rma(plusDM, adxLen)
smoothedMinusDM = ta.rma(minusDM, adxLen)
plusDI = smoothedTR == 0 ? 0.0 : (100.0 * smoothedPlusDM / smoothedTR)
minusDI = smoothedTR == 0 ? 0.0 : (100.0 * smoothedMinusDM / smoothedTR)
dx = (plusDI + minusDI == 0) ? 0.0 : (100.0 * math.abs(plusDI - minusDI) / (plusDI + minusDI))
adxValue = ta.rma(dx, adxLen)
adxOk = useAdxFilter ? (adxValue > adxThreshold) : true
// ATR% check
safePrice = priceClose == 0.0 ? nz(close) : priceClose
atrPct = atr / math.abs(safePrice)
volOk = useVolFilter ? (atrPct > volPctThreshold) : true
// RSI checks
rsiValue = ta.rsi(priceSrc, rsiLen)
rsiOkBuy = useRsiFilter ? (rsiValue > rsiBuyThreshold) : true
rsiOkSell = useRsiFilter ? (rsiValue < rsiSellThreshold) : true
// Allow signal only when all enabled filters pass (separate for buy/sell)
allowBuy = adxOk and volOk and rsiOkBuy
allowSell = adxOk and volOk and rsiOkSell
// Final gated signals
buySignal = buySignal_raw and allowBuy
sellSignal = sellSignal_raw and allowSell
// Avoid both at once
if (buySignal and sellSignal)
buySignal := false
sellSignal := false
// ====== PLOTTING ======
plot(showEMA ? emaFast : na, title="EMA Fast", linewidth=2)
plot(showEMA ? emaSlow : na, title="EMA Slow", linewidth=2)
pUpper = plot(showBands ? finalUpper : na, title="Final Upper", linewidth=2, style=plot.style_line)
pLower = plot(showBands ? finalLower : na, title="Final Lower", linewidth=2, style=plot.style_line)
plot(showST ? superTrend : na, title="SuperTrend", linewidth=3, style=plot.style_line)
fill(pUpper, pLower, color = color.new(color.blue, 92))
plotshape(series = (showArrows and buySignal), title="Buy Arrow", style=shape.labelup, location=location.belowbar, color=color.green, text="BUY", textcolor=color.white, size=size.tiny)
plotshape(series = (showArrows and sellSignal), title="Sell Arrow", style=shape.labeldown, location=location.abovebar, color=color.red, text="SELL", textcolor=color.white, size=size.tiny)
// ====== BACKGROUND COLOR ======
var color bg_col = na
if showBg
if not (adxOk and volOk)
bg_col := color.new(color.gray, 85)
else
bg_col := isBull ? color.new(color.green, 90) : color.new(color.red, 90)
else
bg_col := na
bgcolor(bg_col)
// ====== ALERTS ======
alertcondition(alertsEnabled and buySignal, title="EMA+ST Buy", message="EMA+ST BUY — signal passed filters.")
alertcondition(alertsEnabled and sellSignal, title="EMA+ST Sell", message="EMA+ST SELL — signal passed filters.")
alertcondition(alertsEnabled and (buySignal or sellSignal), title="EMA+ST Any Signal", message="EMA+ST signal detected.")
// ====== DEBUG / LABELS ======
showDebug = input.bool(false, "Show debug label (mode, ADX, ATR%, RSI)")
if showDebug and barstate.islast
var label dbg = na
label.delete(dbg)
dbgText = "Mode:" + signalMode + " ADX:" + str.tostring(adxValue, "#.0") + " ATR%:" + str.tostring(atrPct*100, "#.2") + "% RSI:" + str.tostring(rsiValue, "#.1")
dbg := label.new(bar_index, high, dbgText, xloc=xloc.bar_index, yloc=yloc.abovebar, style=label.style_label_left, color=color.gray, textcolor=color.white)
var label lastLbl = na
if barstate.islast
label.delete(lastLbl)
lastLbl := label.new(bar_index, high, isBull ? "ST: Bull" : "ST: Bear", xloc=xloc.bar_index, yloc=yloc.abovebar, style=label.style_label_left, color=isBull ? color.green : color.red, textcolor=color.white)
Big Orders Detector (Smart Cluster v4)The Big Orders Detector (Smart Cluster v4) is a trading indicator designed to highlight unusually large market orders and potential institutional activity directly on price charts. It identifies candles with volumes significantly above the recent average and can detect clusters of consecutive high-volume bars that may indicate accumulation or distribution by large players. The indicator visualizes these events using circles, labels with estimated monetary values, and a mini dashboard showing the current status of market activity.
Potential ways to use this indicator:
Spotting large market moves: Traders can use it to identify sudden spikes in volume that might precede significant price movements.
Monitoring institutional activity: The “Smart Cluster” feature highlights potential clusters of high-volume bars, which may suggest institutional accumulation or distribution.
Supporting trade decisions: It can serve as an additional layer of information alongside other technical analysis tools, helping traders gauge market interest and momentum.
Alert setup: Users can configure alerts for large orders or clusters to stay informed without constantly monitoring the chart.
Important considerations:
Nothing in trading is certain. This indicator highlights volume anomalies and potential clusters, but it does not guarantee profits or predict market direction.
Trading always involves risk, including the loss of capital. Use this indicator as a supplementary tool rather than a standalone strategy.
Proper risk management, position sizing, and confirmation from other analyses are essential when making trading decisions.
In essence, this tool is for information and insight, helping traders observe where significant market activity occurs, while emphasizing caution and the inherent uncertainty of financial markets.
ES VIX on MNQ🧭 ES + VIX Overlay on MNQ
This indicator overlays the ES (S&P 500 futures) and VIX (Volatility Index) directly on the MNQ (Micro Nasdaq Futures) chart, allowing traders to visualize in real time the correlation, divergence, and volatility influence between the three instruments.
⸻
⚙️ How It Works
• The VIX is dynamically rescaled to the MNQ’s daily open, so its moves appear on the same price scale.
• The ES line is projected based on its percentage move relative to the session open (18:00 NY).
• Both are plotted in sync with MNQ to expose relative strength and divergence zones that often precede strong directional moves.
⸻
🧩 Inputs
• VIX Symbol: choose between VIX, CBOE:VIX, TVC:VIX
• Invert VIX Correlation: flips the VIX line for inverse-correlation setups
• VIX Step: controls how sensitively the VIX moves on the MNQ scale
• ES Symbol: defines the ES contract (e.g. ES1!)
• Show Signals: toggles on/off buy & sell markers
• Step (points): minimum distance between MNQ and VIX for a valid signal
• Block Signals: disables signals between 16:15 – 03:15 (illiquid hours)
⸻
💡 Signal Logic
The system tracks crossings between MNQ and the projected VIX line:
• Buy signal → when MNQ crosses above the VIX and expands upward by ≥ X points.
• Sell signal → when MNQ crosses below the VIX and expands downward by ≥ X points.
A time filter avoids noise during low-volume sessions.
⸻
📊 Visual Guide
• Cyan line = VIX on MNQ scale
• Orange line = ES on MNQ scale
• Labels on the right = current VIX / ES values
• BUY/SELL markers = potential volatility-based reversals
⸻
🚀 Practical Use
Perfect for traders who monitor:
• VIX–price divergence
• ES vs MNQ momentum confirmation
• Early volatility expansions before trend moves
⸻
💬 Core Idea:
“Volatility leads — price confirms.”
Pyramid EnterPyramid Enter — Educational Position-Scaling Study
Purpose
Pyramid Enter is a lightweight, educational visualization of additive entries (“pyramiding into strength”). It’s designed to help you study how layered entries might line up during persistent trends. This script does not execute orders, make predictions, or provide financial advice. It simply shows where entry candidates could appear under a simple crossover framework with an optional trend filter.
How it works (concept)
Computes a fast EMA of your chosen Source (default: close).
Applies a user-selected Smoother (SMA/EMA/RMA/WMA/None) to create a slower reference line.
Marks an Enter candidate when the fast EMA crosses above the smoothed line.
Optional EMA 8/21 trend filter can be enabled to allow marks only when EMA(8) > EMA(21).
Includes an adaptive-on-flip option: if the 8/21 filter turns on, a one-time Enter candidate is allowed (useful for studying “first add after trend resumes”).
This is strictly a visual study of where entries might layer during momentum continuation — exits, risk, and sizing are intentionally out of scope so you can analyze those topics separately.
Inputs
Inputs
Length: Period of the fast EMA applied to Source.
Source: Price series used for the fast EMA.
Offset: Visual offset only; no effect on logic.
Smoothing
Type: Choose “SMA / EMA / RMA / WMA / None” for the reference line.
Length: Period for the smoothing type above.
Visualization
Show Labels: Toggle the on-chart Enter labels.
EMA 8/21 Filter
Enable EMA 8/21 Filter: Only mark when EMA(8) > EMA(21).
Fast EMA / Slow EMA: Lengths for the filter (defaults 8/21).
Plot Filter EMAs: Display the 8/21 lines for context.
Adaptive entry when filter flips ON: Allows a one-time Enter candidate on the bar the trend filter turns on (handy when studying re-acceleration after a pullback).
Visuals
White line: Fast EMA of Source.
Blue line: Selected smoother (your slower reference).
Labels: “Pyramid Enter” markers at candidate spots (intrabar + bar-close confirmation are handled internally to keep charts tidy).
No alerts are included. This tool is for chart study only.
Suggested study workflow
Context first — Add your higher-timeframe tools or moving averages to understand the broader regime.
Enable the 8/21 filter if you want to restrict labels to uptrends only.
Experiment with the smoother — SMA is simple, but EMA/RMA/WMA can change sensitivity.
Review clusters of “Pyramid Enter” labels during strong trends to learn where scaling could be considered in a rules-based process.
Pair with your risk framework — Because this script intentionally omits exits/position sizing, use it alongside your own stop, trailing, and de-risking logic for research.
Good citizens of the chart
No repainting tricks.
Marks follow standard EMA/smoothing crossovers with a simple state lock to avoid duplicates.
Designed to be lightweight and readable on any timeframe or symbol.
Limitations & notes
This is not a signal provider, trading system, or performance model.
Labels are educational candidates only; they do not imply profitability or suitability.
Past chart behavior does not guarantee future results. Always do your own research and practice risk management.
Compatibility
Works on all symbols/timeframes supported by TradingView.
Overlay: true (prints on price chart).
No alerts included by design.
Changelog
v1.0 — Initial public release: minimal visual study, optional 8/21 filter, adaptive flip option, no alerts.
License
Michael Culpepper Gratitude License — Free to use and modify for education and research. Please credit the author if you remix or share. Not for sale. No warranty.
Tags / Category (suggested)
Category: Trend Analysis / Educational Tools
Tags: pyramid, scaling, trend, ema, crossover, education, study
Recent Swing High/Low Lines With Stats TableSwing-Based Volatility
This indicator measures volatility using the distance between recent swing highs and swing lows rather than fixed averages like ATR. Each swing captures a meaningful shift in market control, making this a structure-aware view of volatility.
The tool calculates and plots the average swing range over time, highlighting when the market is expanding (wide swings, high volatility) or contracting (tight swings, low volatility). These phases can help traders identify breakout potential, adjust stop-loss or profit targets, and align position sizing with current market conditions.






















