ACCDv3# ACCDv3 - Accumulation/Distribution MACD with Divergence Detection
## Overview
**ACCDv3** (Accumulation/Distribution MACD Version 3) is an advanced volume-weighted momentum indicator that combines the Accumulation/Distribution (A/D) line with MACD methodology and divergence detection. It helps identify trend strength, momentum shifts, and potential reversals by analyzing volume-weighted price movements.
## Key Features
- **Volume-Weighted MACD**: Applies MACD calculation to volume-weighted A/D values for earlier, more reliable signals
- **Divergence Detection**: Identifies when A/D trend diverges from MACD momentum
- **Volume Strength Filtering**: Distinguishes high-volume confirmations from low-volume noise
- **Color-Coded Histogram**: 4-color system showing momentum direction and volume strength
- **Real-Time Alerts**: Background colors and alert conditions for bullish/bearish divergences
## Components
### 1. Accumulation/Distribution (A/D) Line
The A/D line measures buying and selling pressure by comparing the close price to the trading range, weighted by volume:
```
A/D = Σ ((2 × Close - Low - High) / (High - Low)) × Volume
```
- **Rising A/D**: More accumulation (buying pressure)
- **Falling A/D**: More distribution (selling pressure)
- **Doji Handling**: When High = Low, contribution is zero (avoids division errors)
### 2. Volume-Weighted MACD
Instead of simple EMAs, the indicator weights A/D values by volume:
- **Fast Line** (default 12): `EMA(A/D × Volume, 12) / EMA(Volume, 12)`
- **Slow Line** (default 26): `EMA(A/D × Volume, 26) / EMA(Volume, 26)`
- **MACD Line**: Fast Line - Slow Line (green line)
- **Signal Line** (default 9): EMA or SMA of MACD (orange line)
- **Histogram**: MACD - Signal (color-coded columns)
This volume-weighting ensures that periods with higher volume have greater influence on the indicator values.
### 3. Histogram Color System
The histogram uses 4 distinct colors based on **direction** and **volume strength**:
| Condition | Color | Meaning |
|-----------|-------|---------|
| Rising + High Volume | **Dark Green** (#1B5E20) | Strong bullish momentum with volume confirmation |
| Rising + Low Volume | **Light Teal** (#26A69A) | Bullish momentum but weak volume (less reliable) |
| Falling + High Volume | **Dark Red** (#B71C1C) | Strong bearish momentum with volume confirmation |
| Falling + Low Volume | **Light Red/Pink** (#FFCDD2) | Bearish momentum but weak volume (less reliable) |
Additional shading:
- **Light Cyan** (#B2DFDB): Positive but not rising (momentum stalling)
- **Bright Red** (#FF5252): Negative and accelerating down
### 4. Divergence Detection
Divergence occurs when A/D trend and MACD momentum move in opposite directions:
#### Bullish Divergence (Green Background)
- **Condition**: A/D is trending up BUT MACD is negative and trending down
- **Interpretation**: Accumulation increasing while momentum appears weak
- **Signal**: Potential bullish reversal or continuation
- **Action**: Look for entry opportunities or hold long positions
#### Bearish Divergence (Red Background)
- **Condition**: A/D is trending down BUT MACD is positive and trending up
- **Interpretation**: Distribution increasing while momentum appears strong
- **Signal**: Potential bearish reversal or weakening uptrend
- **Action**: Consider exits, tighten stops, or prepare for reversal
## Parameters
| Parameter | Default | Range | Description |
|-----------|---------|-------|-------------|
| **Fast Length** | 12 | 1-50 | Period for fast EMA (shorter = more sensitive) |
| **Slow Length** | 26 | 1-100 | Period for slow EMA (longer = smoother) |
| **Signal Smoothing** | 9 | 1-50 | Period for signal line (MACD smoothing) |
| **Signal Line MA Type** | EMA | SMA/EMA | Moving average type for signal calculation |
| **Volume MA Length** | 20 | 5-100 | Period for volume average (strength filter) |
## Usage Guide
### Reading the Indicator
1. **MACD Lines (Green & Orange)**
- **Crossovers**: When green crosses above orange = bullish, below = bearish
- **Distance**: Wider gap = stronger momentum
- **Zero Line**: Above = bullish bias, below = bearish bias
2. **Histogram Colors**
- Focus on **dark colors** (dark green/red) for high-confidence signals
- Be cautious with **light colors** (teal/pink) - wait for volume confirmation
- Watch for **rising red bars** (V-bottom pattern) = potential bullish reversal
- Watch for **falling green bars** (Λ-top pattern) = potential bearish reversal
3. **Background Divergence Alerts**
- **Green background**: Bullish divergence - consider long entries
- **Red background**: Bearish divergence - consider exits or shorts
- Best used in combination with price action and support/resistance levels
### Trading Strategies
#### Trend Following
1. Wait for MACD to cross above zero line with dark green histogram
2. Enter long when histogram shows consecutive dark green bars
3. Exit when histogram turns light green or red appears
#### Divergence Trading
1. Wait for background divergence alert (green or red)
2. Confirm with price action (support/resistance, candlestick patterns)
3. Enter on next dark-colored histogram bar in divergence direction
4. Set stops beyond recent swing high/low
#### Volume Confirmation
1. Ignore signals during low-volume periods (light colors)
2. Take aggressive positions during high-volume confirmations (dark colors)
3. Use volume strength as position sizing guide (larger size on dark bars)
### Best Practices
✓ **Combine with price action**: Don't rely on indicator alone
✓ **Wait for dark colors**: High-volume bars are more reliable
✓ **Watch for divergences**: Early warning signs of reversals
✓ **Use multiple timeframes**: Confirm signals across 1m, 5m, 15m
✓ **Respect zero line**: Trading direction should align with MACD side
✗ **Don't chase light-colored signals**: Low volume = lower reliability
✗ **Don't ignore context**: Market structure and levels matter
✗ **Don't over-trade**: Wait for clear, high-volume setups
✗ **Don't ignore alerts**: Divergences are early warnings
## Technical Details
### Volume-Weighted Calculation Method
Traditional MACD uses simple price EMAs. ACCDv3 weights each A/D value by its corresponding volume:
```pine
// Volume-weighted fast EMA
close_vol_fast = ta.ema(ad × volume, fast_length)
vol_fast = ta.ema(volume, fast_length)
vw_ad_fast = close_vol_fast / vol_fast
// Same for slow EMA
close_vol_slow = ta.ema(ad × volume, slow_length)
vol_slow = ta.ema(volume, slow_length)
vw_ad_slow = close_vol_slow / vol_slow
// MACD is the difference
macd = vw_ad_fast - vw_ad_slow
```
This ensures high-volume periods have proportionally more impact on the indicator.
### Volume Strength Filter
Determines whether current volume is above or below average:
```pine
vol_avg = ta.sma(volume, vol_length)
vol_strength = volume > vol_avg
```
Used to select dark (high volume) vs light (low volume) histogram colors.
### Divergence Logic
```pine
// A/D trending up if above its 5-period SMA
ad_trend = ad > ta.sma(ad, 5)
// MACD trending up if above zero
macd_trend = macd > 0
// Divergence when trends oppose
divergence = ad_trend != macd_trend
// Specific conditions
bullish_divergence = ad_trend and not macd_trend and macd < 0
bearish_divergence = not ad_trend and macd_trend and macd > 0
```
## Alerts
The indicator includes built-in alert conditions:
- **Bullish Divergence**: "Bullish Divergence: A/D trending up but MACD trending down"
- **Bearish Divergence**: "Bearish Divergence: A/D trending down but MACD trending up"
To enable:
1. Click "Create Alert" button in TradingView
2. Select "ACCDv3" as condition
3. Choose "Bullish Divergence" or "Bearish Divergence"
4. Configure notification method (popup, email, webhook, etc.)
## Comparison with Standard MACD
| Feature | Standard MACD | ACCDv3 |
|---------|---------------|---------|
| **Input** | Close price | Accumulation/Distribution line |
| **Weighting** | Simple EMA | Volume-weighted EMA |
| **Divergence** | Price vs MACD | A/D vs MACD |
| **Volume Analysis** | None | Built-in strength filter |
| **Color System** | 2 colors (up/down) | 4+ colors (direction + volume) |
| **Leading/Lagging** | Lagging | More leading (volume-weighted) |
## Example Scenarios
### Scenario 1: Strong Bullish Signal
- **Chart**: MACD crosses above zero line
- **Histogram**: Dark green bars (#1B5E20) appearing
- **Volume**: Above 20-period average
- **Action**: Enter long, strong momentum with volume confirmation
### Scenario 2: Weak Bearish Signal
- **Chart**: MACD crosses below zero line
- **Histogram**: Light pink bars (#FFCDD2) appearing
- **Volume**: Below 20-period average
- **Action**: Avoid shorting, low volume = unreliable signal
### Scenario 3: Bullish Divergence Reversal
- **Chart**: Price making lower lows
- **Indicator**: A/D line trending up, MACD negative
- **Background**: Green shading appears
- **Histogram**: Transitions from red to dark green
- **Action**: Look for long entry on next dark green bar
### Scenario 4: V-Bottom Reversal
- **Chart**: Downtrend in place
- **Histogram**: Red bars start rising (becoming less negative)
- **Pattern**: Forms "V" shape at bottom
- **Confirmation**: Transitions to dark green bars
- **Action**: Bullish reversal signal, consider long entry
## Timeframe Recommendations
- **1-minute**: Scalping, very fast signals (noisy, use with caution)
- **5-minute**: Intraday momentum trading (recommended)
- **15-minute**: Swing entries, clearer trend signals
- **1-hour+**: Position trading, major trend identification
## Limitations
- **Requires volume data**: Will not work on instruments without volume
- **Lag during consolidation**: MACD is inherently trend-following
- **False signals in chop**: Sideways markets generate noise
- **Not a standalone system**: Should be combined with price action and risk management
## Version History
- **v3**: Removed traditional price MACD, using only volume-weighted A/D MACD with A/D divergence
- **v2**: Added A/D divergence detection, volume strength filtering, enhanced histogram colors
- **v1**: Basic MACD on A/D line with volume-weighted calculation
## Support & Further Reading
For questions, updates, or to report issues, refer to the main project documentation or contact the developer.
**Related Indicators in Suite:**
- **VMACDv3**: Volume-weighted MACD on price (not A/D)
- **RSIv2**: RSI with A/D divergence
- **DMI**: Directional Movement Index with A/D divergence
- **Elder Impulse**: Bar coloring system using volume-weighted MACD
---
*This indicator is for educational purposes. Always practice proper risk management and never risk more than you can afford to lose.*
"entry"に関するスクリプトを検索
⭐ Silver HUD v15.1 — Full Notes Version (3-Column HUD)Silver HUD v15.1 is a comprehensive Pine Script v5 indicator designed for micro silver futures (SIL) trading on TradingView. It overlays a 3-column HUD table displaying real-time analysis across multiple engines including trend, flow, momentum, pullback, turbo (breakout), divergence, volume, and 2H structure. The system generates weighted BUY/SELL scores and final signals with risk warnings, optimized for 5m charts with 30m support/resistance levels.
Core Components
Support/Resistance & Trade Levels
Pulls 30m lowest low (support) and highest high (resistance) for entry/stop/TP calculation. Entry defaults to support, stop loss at support - 0.10, with ATR-based TPs (1x/2x/3x). Risk per lot factors SIL contract specs (1000oz, $5/tick). Alerts when price nears support within 0.05.
Multi-Engine Analysis
TREND: EMA20/50 + VWAP direction (UP/DOWN/MIXED).
FLOW: CCIOBV (CCI+OBV) + QQE momentum sync.
MOMENTUM: RSI/MFI >55 (UP) or <45 (DOWN).
PB (Pullback): EMA20 deviation (-0.4% to +1.2% = OK; flags CHASE/DEEP).
TURBO: ATR percentile + BB width squeeze for BREAKOUT/EXHAUST.
Scores weight flow (30%), momentum (25%), PB (25%), trend/turbo (10-20%). BUY ≥75, SELL ≥72 triggers raw signals.
Advanced Features
2H Structure: Detects HH/HL/LL/LH swings for macro bias (UP/DOWN/MIXED).
SELL System: Distinguishes SELL-ALERT (exhaustion) vs full SELL-REVERSAL (multi-condition bear flip).
Divergence & Volume: RSI-based bear/bull div on swing highs/lows; surge detection (>2x vol MA or 80th percentile).
Final Signal: Combines raw scores with filters (no DEEP PB for BUY, 2H tiebreaker); RISK flags conflicts like div or trend mismatches.
HUD Display & Usage
Renders a bottom-right table with metric, status (color-coded), and Chinese explanations. Stars rate scores (★★★★★=90+). Ideal for high-frequency SIL traders monitoring multi-timeframe confluence on 5m charts.
Moving Average Channel Breakout (No Repaint) This indicator creates a channel using two simple moving averages: SMA of highs (upper line) and SMA of lows (lower line).
How it works:
- When a candle closes above the upper channel line, the following candles turn green (bullish trend)
- When a candle closes below the lower channel line, the following candles turn red (bearish trend)
- The trend color remains until a breakout in the opposite direction occurs
Anti-repaint:
This indicator does NOT repaint. The candle color is determined at the open, based on the previous candle's close. Once a candle opens with a color, that color never changes.
Breakout strategy:
- Candle opens green → Long entry signal
- Candle opens red → Short entry signal
The signal and entry moment are perfectly synchronized at the candle open, making it ideal for systematic breakout strategies.
P_NQ Futures Daily Bias & Structure ProOverview The Master Sniper is a professional-grade execution system designed for high-volatility assets like NQ (Nasdaq 100) and ES (S&P 500). Unlike standard indicators that generate blind signals, this script uses a Multi-Timeframe Logic Engine to first establish a daily bias and then hunt for specific intraday triggers.
It features a Hybrid Strategy that can automatically switch between Trend Following (Smart Money Concepts) and Mean Reversion (Gap Fades), giving you a complete toolkit for any market condition.
Key Features
1. Macro Bias Engine (The Filter) Before generating any signal, the script analyzes the Daily Chart in the background:
Structure: Checks for Higher Highs/Lows vs. Lower Highs/Lows.
Momentum: Uses RSI and the 200 EMA to ensure you aren't buying the top or selling the bottom.
Result: It generates a directional bias (Bullish/Bearish) that filters out low-probability trades.
2. Hybrid Entry Logic
Trend Mode (SMC): Identifies Fair Value Gaps (FVG) within "Discount" or "Premium" zones. It only triggers if the price pulls back into a value area aligned with the Daily Bias.
Reversal Mode (Elasticity): Detects when price is over-extended (2.0 Standard Deviations from VWAP) or when a "Liquidity Sweep" occurs, signaling a snap-back trade.
Gap Rejection (Morning Fade): A dedicated engine that monitors the Opening Gap. If the market gaps significantly but fails to hold, it triggers a "Fade" trade to target the gap fill.
3. Professional Trade Management Visualizes your trade plan instantly on the chart:
Split Targets: Draws targets for Contract 1 (Scalp) and Contract 2 (Runner).
Auto-Break Even: The moment TP1 is hit, the Stop Loss line visually moves to your Entry Price, signaling a "Risk-Free" trade.
Infinite Target Lines: Extends target lines to the right until the trade concludes, keeping your chart clean.
4. Risk Filters
Range Filter: Prevents buying in the Top 1/3 or selling in the Bottom 1/3 of the daily range.
Proximity Filter: Blocks trades that are squeezing too tight against the 100-candle High/Low.
How to Use
Timeframe: Optimized for the 5-Minute (5m) chart on Futures (NQ/ES) or Tech Stocks.
Dashboard: Check the bottom-right panel. Ensure "Status" says "SCANNING" and Filters show "Active."
Execution: Wait for the alert (e.g., "🟢 ENTER LONG"). Place your orders at the Blue Line with SL at the Red Line.
Top 20 Adaptive Momentum [Trend Aligned]his script is an automated End-of-Day Momentum Dashboard designed to predict the next trading day's directional bias for the top 20 most volatile stocks. It analyzes institutional price action during the final 10 minutes of the trading session and filters signals based on the long-term trend.
How It Works
Trend Identification: The script calculates a 50-Day Moving Average proxy (using 5-minute data) to determine if a stock is in a Long-Term Uptrend or Downtrend.
Adaptive Signal Logic: Instead of a simple reversal strategy, the script adapts its prediction based on the trend context:
Trend Following: If a stock closes strong (Green) in an Uptrend, it signals Bullish Momentum (continuation).
Mean Reversion: If a stock closes strong (Green) in a Downtrend, it signals Bearish Reversion (fade the bounce).
Dip Buying: If a stock closes weak (Red) in an Uptrend, it signals Bullish Reversion (buy the dip).
Live Backtesting: The dashboard features a "Win Rate (3M)" column. This metric backtests the strategy over the past 3 months for each specific ticker, calculating the percentage of time the predicted bias resulted in a winning trade the following day.
Dashboard Columns
Ticker: The stock symbol.
Prev Day: The overall close vs. open of the previous session.
Trend (50d): The long-term trend direction (UP or DOWN).
BIAS TODAY: The actionable signal for the current session (📈 BULLISH or 📉 BEARISH).
Win Rate: The historical probability of success for this strategy on this specific stock.
Usage: Use this tool pre-market to identify high-probability setups where the previous day's closing momentum aligns with the long-term trend.
To effectively use the Top 20 Adaptive Momentum script, you need to treat it as a Pre-Market Screener. It performs the heavy lifting of analyzing trend, momentum, and historical probability instantly, giving you a "Cheat Sheet" for the trading day.
Here is a step-by-step guide on how to integrate it into your routine:
1. The Setup
Timeframe: Set your chart to 5 Minutes. The logic specifically hunts for the 15:50 (3:50 PM) and 15:55 (3:55 PM) candles, so the calculation works best on this timeframe.
Timing: Check this dashboard before the market opens (e.g., 9:00 AM EST) or shortly after the close (4:05 PM EST) to plan for the next session.
2. Reading the Dashboard Columns
Column What to Look For Actionable Insight
Trend (50d) UP (Green) or DOWN (Red) This tells you the "Big Picture." Only trade in this direction. If Trend is UP, you only want to see Bullish signals. If Trend is DOWN, you only want Bearish signals.
BIAS TODAY 📈 BULLISH Plan: Look for Long/Buy setups at the open. The algorithm predicts price will close higher today.
📉 BEARISH Plan: Look for Short/Sell setups at the open. The algorithm predicts price will close lower.
Win Rate (3M) Percentage (e.g., 65%) Confidence Filter. Only take trades on stocks with a Win Rate above 55-60%. This proves the stock historically respects this specific strategy.
3. The Strategy Scenarios (How to Trade)
Scenario A: The "Trend Continuation" (High Probability)
Dashboard: Trend is UP + Bias is BULLISH.
Context: The stock is strong long-term, and it closed strong yesterday (Momentum).
Execution: Watch for an opening gap up or an early breakout above the pre-market high. Go Long.
Scenario B: The "Dip Buy" (High Probability)
Dashboard: Trend is UP + Bias is BULLISH.
Context: The stock is strong long-term, but it pulled back yesterday (Weak Close). The script identifies this as a discount, not a reversal.
Execution: Watch for the stock to find support early. Use the "Master Sniper" (from your other script) to find a Discount Entry FVG.
Scenario C: The "Trap" (Avoid)
Dashboard: Win Rate is < 50%.
Context: The stock is choppy or news-driven. It does not follow technical momentum rules reliably.
Execution: Skip this stock. Move to the next one on the list.
4. Execution Workflow
Scan: Glance at the dashboard. Identify the 2-3 stocks with Green Bias + Green Trend (for Buys) or Red Bias + Red Trend (for Shorts).
Filter: Ensure their "Win Rate" is decent (over 55%).
Trade: Open the charts for those specific stocks. Use your execution indicators (like the Master Sniper) to time the entry on the 1-minute or 5-minute chart.
By using this dashboard, you stop guessing which stock to trade and focus entirely on executing the best setups.
Evergito HH/LL 3 Señales + ATR SL 2How to trade with the Evergito HH/LL 3 Signals + ATR SL indicator? Brief and direct explanation: General system logic: The indicator looks for actual breakouts of the high/low of the last 20 bars (HH/LL) and combines them with the position relative to the 200 SMA to filter the underlying trend. You have 3 types of signals that you can activate/deactivate separately: Signal
When it appears
What it means in practice
Entry type
V1
HH breakout + the close crosses above the 200 SMA (or the opposite in a short position)
Very safe entry confirmed. The price has just validated the long/flat trend → safer and with a better ratio
The most reliable (the original)
V2
HH breakout but the price was already above the 200 SMA (or already below in a short position)
Entry in an already established trend. Fewer “surprises”, more continuity
Ideal for strong trends
V3
Only the breakout of the HH or LL, without looking at the 200 SMA
Aggressive entry/scalping on explosive breakouts. More signals, more noise.
For times of high volatility.
How to enter the market (simple rule): Wait for any of the 3 labels (V1, V2, or V3) to appear, depending on which ones you have activated.
Enter at the close of that candle (or at the open of the next one if you are conservative).
Automatic Stop Loss → the blue (long) or yellow (short) line that represents the ATR x2.
Take Profit → you decide, but the indicator already gives you the visual reference for the risk (ATR x2), so 1:2 or 1:3 is usually very convenient.
Practical example: You see a large green label “HH LONG V1” → you go long at the close of that candle. Stop right at the blue line (ATR x2 below the price).
Typical target: 2x or 3x the risk (very common to reach it in a trend).
Recommended use: Most traders leave only V1 activated → fewer signals but very high quality.
Those who trade intraday or crypto usually combine V1 + V2.
V3 only for news events or very volatile openings.
In summary:
Label = immediate entry
Blue/yellow line = automatic stop
And enjoy the move.
Evergito HH/LL 3 Señales + ATR SLHow to trade with the Evergito HH/LL 3 Signals + ATR SL indicator? Brief and direct explanation: General system logic: The indicator looks for actual breakouts of the high/low of the last 20 bars (HH/LL) and combines them with the position relative to the 200 SMA to filter the underlying trend. You have 3 types of signals that you can activate/deactivate separately: Signal
When it appears
What it means in practice
Entry type
V1
HH breakout + the close crosses above the 200 SMA (or the opposite in a short position)
Very safe entry confirmed. The price has just validated the long/flat trend → safer and with a better ratio
The most reliable (the original)
V2
HH breakout but the price was already above the 200 SMA (or already below in a short position)
Entry in an already established trend. Fewer “surprises”, more continuity
Ideal for strong trends
V3
Only the breakout of the HH or LL, without looking at the 200 SMA
Aggressive entry/scalping on explosive breakouts. More signals, more noise.
For times of high volatility.
How to enter the market (simple rule): Wait for any of the 3 labels (V1, V2, or V3) to appear, depending on which ones you have activated.
Enter at the close of that candle (or at the open of the next one if you are conservative).
Automatic Stop Loss → the blue (long) or yellow (short) line that represents the ATR x2.
Take Profit → you decide, but the indicator already gives you the visual reference for the risk (ATR x2), so 1:2 or 1:3 is usually very convenient.
Practical example: You see a large green label “HH LONG V1” → you go long at the close of that candle. Stop right at the blue line (ATR x2 below the price).
Typical target: 2x or 3x the risk (very common to reach it in a trend).
Recommended use: Most traders leave only V1 activated → fewer signals but very high quality.
Those who trade intraday or crypto usually combine V1 + V2.
V3 only for news events or very volatile openings.
In summary:
Label = immediate entry
Blue/yellow line = automatic stop
And enjoy the move.
Evergito HH/LL 3 Señales + ATR SLHow to trade with the Evergito HH/LL 3 Signals + ATR SL indicator? Brief and direct explanation: General system logic: The indicator looks for actual breakouts of the high/low of the last 20 bars (HH/LL) and combines them with the position relative to the 200 SMA to filter the underlying trend. You have 3 types of signals that you can activate/deactivate separately: Signal
When it appears
What it means in practice
Entry type
V1
HH breakout + the close crosses above the 200 SMA (or the opposite in a short position)
Very safe entry confirmed. The price has just validated the long/flat trend → safer and with a better ratio
The most reliable (the original)
V2
HH breakout but the price was already above the 200 SMA (or already below in a short position)
Entry in an already established trend. Fewer “surprises”, more continuity
Ideal for strong trends
V3
Only the breakout of the HH or LL, without looking at the 200 SMA
Aggressive entry/scalping on explosive breakouts. More signals, more noise.
For times of high volatility.
How to enter the market (simple rule): Wait for any of the 3 labels (V1, V2, or V3) to appear, depending on which ones you have activated.
Enter at the close of that candle (or at the open of the next one if you are conservative).
Automatic Stop Loss → the blue (long) or yellow (short) line that represents the ATR x2.
Take Profit → you decide, but the indicator already gives you the visual reference for the risk (ATR x2), so 1:2 or 1:3 is usually very convenient.
Practical example: You see a large green label “HH LONG V1” → you go long at the close of that candle. Stop right at the blue line (ATR x2 below the price).
Typical target: 2x or 3x the risk (very common to reach it in a trend).
Recommended use: Most traders leave only V1 activated → fewer signals but very high quality.
Those who trade intraday or crypto usually combine V1 + V2.
V3 only for news events or very volatile openings.
In summary:
Label = immediate entry
Blue/yellow line = automatic stop
And enjoy the move.
Dynamic TP Based on RR - Position ToolSimple indicator that automatically plots the take-profit (TP) level based on the below inputs:
- Entry price
- Stop-loss (SL)
- Risk-to-reward (RR)
The long/short-position drawing tools are simple enough to use, but wanted something that will automatically plot the TP instead. Couldn't find anything basic and free of extra features so built this instead.
This is how I use it.
1 (optional): Use the long/short-position drawing tool to plot the entry and stop-loss levels
2: Enable the indicator and enter the inputs
- Entry
- SL
- RR
3: The TP will automatically plot. Change the RR to your liking.
EXPLOSION Scanner v1 - Sudden Spike Hunter//@version=5
indicator("EXPLOSION ENTRY v1 - 5Day Swing Breakout Scanner", overlay=true)
// ===============================
// 입력값
// ===============================
lenBB = input.int(20, "BB Length")
multBB = input.float(2.0, "BB StdDev")
lenVolMA = input.int(20, "Volume MA Length")
volMult = input.float(1.8, "Volume Explosion Mult")
lenATR = input.int(14, "ATR Length")
atrThresh= input.float(3.0, "ATR % Threshold")
needBull = input.int(4, "최근 5봉 중 최소 양봉 개수", minval=1, maxval=5)
// ===============================
// Bollinger Band
// ===============================
basis = ta.sma(close, lenBB)
dev = ta.stdev(close, lenBB)
upper = basis + dev * multBB
lower = basis - dev * multBB
plot(upper, "BB Upper", display=display.none)
plot(basis, "BB Basis", display=display.none)
plot(lower, "BB Lower", display=display.none)
// ===============================
// Volume Explosion
// ===============================
volMA = ta.sma(volume, lenVolMA)
volCond = volume > volMA * volMult
// ===============================
// 5-Day Candle Strength (최근 5봉 양봉 개수)
// ===============================
bullCount = (close > open ? 1 : 0) +
(close > open ? 1 : 0) +
(close > open ? 1 : 0) +
(close > open ? 1 : 0) +
(close > open ? 1 : 0)
candleCond = bullCount >= needBull
// ===============================
// ATR Volatility Filter
// ===============================
atrValue = ta.atr(lenATR)
atrRate = atrValue / close * 100.0
volatilityCond = atrRate > atrThresh
// ===============================
// Trend Filter (기본 추세)
// ===============================
trendCond = close > basis
// ===============================
// 최종 매수 조건
// ===============================
buyCond = trendCond and volCond and candleCond and volatilityCond
// ===============================
// BUY 신호 표시
// ===============================
plotshape(
buyCond,
title = "BUY Signal",
style = shape.triangleup,
location = location.belowbar,
size = size.small,
text = "BUY",
textcolor = color.white
)
// ===============================
// 알림(Alert)
// ===============================
alertcondition(
buyCond,
title = "EXPLOSION BUY",
message = "EXPLOSION ENTRY v1 : BUY SIGNAL 발생"
)
TMT ICT SMC - Hitesh NimjeTMT ICT SMC - Smart Money Concepts
Overview
T
he TMT ICT SMC indicator is a comprehensive, all-in-one toolkit designed for traders utilizing Smart Money Concepts (SMC) and Inner Circle Trader (ICT) methodologies. Developed by Hitesh Nimje (Thought Magic Trading), this script automates the complex task of market structure mapping, order block identification, and liquidity analysis, providing a clear, institutional-grade view of price action.
Whether you are a scalper looking for internal structure shifts or a swing trader analyzing major trend reversals, this tool adapts to your timeframe with precision.
Key Features
1. Market Structure Mapping (Internal & Swing)
* Real-Time Structure: Automatically detects and labels BOS (Break of Structure) and CHoCH (Change of Character).
* Dual-Layer Analysis:
I nternal Structure: Captures short-term momentum and minor shifts for entry refinement.
Swing Structure: Identifies the overarching trend and major pivot points.
* Strong vs. Weak Highs/Lows: visualizes significant swing points to help you identify safe invalidation levels.
* Trend Coloring: Optional feature to color candles based on the active market structure trend.
2. Advanced Order Blocks (OB)
* Auto-Detection: Plots both Internal and Swing Order Blocks automatically.
* Smart Filtering: Includes an ATR or Cumulative Mean Range filter to remove noise and only display significant institutional footprint zones.
* Mitigation Tracking: Choose how order blocks are mitigated (Close vs. High/Low) to keep your chart clean.
3. Liquidity & Gaps
* Fair Value Gaps (FVG): Automatically highlights bullish and bearish imbalances. Includes MTF (Multi-Timeframe) capabilities to see higher timeframe gaps on lower timeframe charts.
* Equal Highs/Lows (EQH/EQL): Marks potential liquidity pools where price often reverses or targets.
4. Multi-Timeframe Levels
* Plots Daily, Weekly, and Monthly High/Low levels directly on your chart to help identify macro support and resistance without switching timeframes.
5. Premium & Discount Zones
* Automatically plots the Fibonacci range of the current price leg to show Premium (expensive), Discount (cheap), and Equilibrium zones, aiding in high-probability entry placement.
Customization
* Style: Switch between a "Colored" vibrant theme or a "Monochrome" minimal theme.
* Control: Every feature can be toggled on/off. Adjust lookback periods, sensitivity thresholds, and colors to match your personal trading style.
* Modes: Choose between "Historical" (for backtesting) and "Present" (for optimized real-time performance).
How to Use
* Trend Confirmation: Use the Swing Structure labels to determine the higher timeframe bias.
* Entry Trigger: Wait for a CHoCH on the Internal Structure within a higher timeframe Order Block or FVG.
* Targeting: Use the Equal Highs/Lows (Liquidity) or opposing Order Blocks as take-profit zones.
Credits
* Author: Hitesh Nimje
* Source: Thought Magic Trading (TMT)
TRADING DISCLAIMER
RISK WARNING
Trading involves substantial risk of loss and is not suitable for all investors. Past performance is not indicative of future results. You should carefully consider whether trading is suitable for you in light of your circumstances, knowledge, and financial resources.
NO FINANCIAL ADVICE
This indicator is provided for educational and informational purposes only. It does not constitute:
* Financial advice or investment recommendations
* Buy/sell signals or trading signals
* Professional investment advice
* Legal, tax, or accounting guidance
LIMITATIONS AND DISCLAIMERS
Technical Analysis Limitations
* Pivot points are mathematical calculations based on historical price data
* No guarantee of accuracy of price levels or calculations
* Markets can and do behave irrationally for extended periods
* Past performance does not guarantee future results
* Technical analysis should be used in conjunction with fundamental analysis
Data and Calculation Disclaimers
* Calculations are based on available price data at the time of calculation
* Data quality and availability may affect accuracy
* Pivot levels may differ when calculated on different timeframes
* Gaps and irregular market conditions may cause level failures
* Extended hours trading may affect intraday pivot calculations
Market Risks
* Extreme market volatility can invalidate all technical levels
* News events, economic announcements, and market manipulation can cause gaps
* Liquidity issues may prevent execution at calculated levels
* Currency fluctuations, inflation, and interest rate changes affect all levels
* Black swan events and market crashes cannot be predicted by technical analysis
USER RESPONSIBILITIES
Due Diligence
* You are solely responsible for your trading decisions
* Conduct your own research before using this indicator
* Verify calculations with multiple sources before trading
* Consider multiple timeframes and confirm levels with other technical tools
* Never rely solely on one indicator for trading decisions
Risk Management
* Always use proper risk management and position sizing
* Set appropriate stop-losses for all positions
* Never risk more than you can afford to lose
* Consider the inherent risks of leverage and margin trading
* Diversify your portfolio and trading strategies
Professional Consultation
* Consult with qualified financial advisors before trading
* Consider your tax obligations and legal requirements
* Understand the regulations in your jurisdiction
* Seek professional advice for complex trading strategies
LIMITATION OF LIABILITY
Indemnification
The creator and distributor of this indicator shall not be liable for:
* Any trading losses, whether direct or indirect
* Inaccurate or delayed price data
* System failures or technical malfunctions
* Loss of data or profits
* Interruption of service or connectivity issues
No Warranty
This indicator is provided "as is" without warranties of any kind:
* No guarantee of accuracy or completeness
* No warranty of uninterrupted or error-free operation
* No warranty of merchantability or fitness for a particular purpose
* The software may contain bugs or errors
Maximum Liability
In no event shall the liability exceed the purchase price (if any) paid for this indicator. This limitation applies regardless of the theory of liability, whether contract, tort, negligence, or otherwise.
REGULATORY COMPLIANCE
Jurisdiction-Specific Risks
* Regulations vary by country and region
* Some jurisdictions prohibit or restrict certain trading strategies
* Tax implications differ based on your location and trading frequency
* Commodity futures and options trading may have additional requirements
* Currency trading may be regulated differently than stock trading
Professional Trading
* If you are a professional trader, ensure compliance with all applicable regulations
* Adhere to fiduciary duties and best execution requirements
* Maintain required records and reporting
* Follow market abuse regulations and insider trading laws
TECHNICAL SPECIFICATIONS
Data Sources
* Calculations based on TradingView data feeds
* Data accuracy depends on broker and exchange reporting
* Historical data may be subject to adjustments and corrections
* Real-time data may have delays depending on data providers
Software Limitations
* Internet connectivity required for proper operation
* Software updates may change calculations or functionality
* TradingView platform dependencies may affect performance
* Third-party integrations may introduce additional risks
MONEY MANAGEMENT RECOMMENDATIONS
Conservative Approach
* Risk only 1-2% of capital per trade
* Use position sizing based on volatility
* Maintain adequate cash reserves
* Avoid over-leveraging accounts
Portfolio Management
* Diversify across multiple strategies
* Don't put all capital into one approach
* Regularly review and adjust trading strategies
* Maintain detailed trading records
FINAL LEGAL NOTICES
Acceptance of Terms
* By using this indicator, you acknowledge that you have read and understood this disclaimer
* You agree to assume all risks associated with trading
* You confirm that you are legally permitted to trade in your jurisdiction
Updates and Changes
* This disclaimer may be updated without notice
* Continued use constitutes acceptance of any changes
* It is your responsibility to stay informed of updates
Governing Law
* This disclaimer shall be governed by the laws of the jurisdiction where the indicator was created
* Any disputes shall be resolved in the appropriate courts
* Severability clause: If any part of this disclaimer is invalid, the remainder remains enforceable
REMEMBER: THERE ARE NO GUARANTEES IN TRADING. THE MAJORITY OF RETAIL TRADERS LOSE MONEY. TRADE AT YOUR OWN RISK.
Contact Information:
* Creator: Hitesh_Nimje
* Phone: Contact@8087192915
* Source: Thought Magic Trading
© HiteshNimje - All Rights Reserved
This disclaimer should be prominently displayed whenever the indicator is shared, sold, or distributed to ensure users are fully aware of the risks and limitations involved in trading.
VWAP + EMA9/21/50 + Ichimoku + RSI (M5) - Strict + TPSL//@version=5
indicator("VWAP + EMA9/21/50 + Ichimoku + RSI (M5) - Strict + TPSL", overlay=true, shorttitle="VWAP_EMA_ICH_RSI_TPSL")
// === Inputs ===
emaFastLen = input.int(9, "EMA Fast (9)")
emaMidLen = input.int(21, "EMA Mid (21)")
emaSlowLen = input.int(50, "EMA Slow (50)")
// Ichimoku inputs
tenkanLen = input.int(9, "Tenkan Sen Length")
kijunLen = input.int(26, "Kijun Sen Length")
senkouBLen = input.int(52, "Senkou B Length")
displacement = input.int(26, "Displacement")
// RSI
rsiLen = input.int(14, "RSI Length")
rsiThreshold = input.int(50, "RSI Threshold")
// VWAP option
useSessionVWAP = input.bool(true, "Use Session VWAP (true) / Daily VWAP (false)")
// Volume filter
useVolumeFilter = input.bool(true, "Enable Volume Filter")
volAvgLen = input.int(20, "Volume Avg Length")
volMultiplier = input.float(1.2, "Min Volume > avg *", step=0.1)
// Higher timeframe trend check
useHTF = input.bool(true, "Enable Higher-Timeframe Trend Check")
htfTF = input.string("60", "HTF timeframe (e.g. 60, 240, D)")
// Alerts / webhook
alertOn = input.bool(true, "Enable Alerts")
useWebhook = input.bool(true, "Send webhook on alerts")
webhookURL = input.string("", "Webhook URL (leave blank to set in alert)")
// TP/SL & Trailing inputs
useTP = input.bool(true, "Enable Take Profit (TP)")
tpTypeRR = input.bool(true, "TP as Risk-Reward ratio (true) / Fixed points (false)")
tpRR = input.float(1.5, "TP RR (e.g. 1.5)", step=0.1)
fixedTPpts = input.float(40.0, "Fixed TP (ticks/pips) if not RR")
useSL = input.bool(true, "Enable Stop Loss (SL)")
slTypeATR = input.bool(true, "SL as ATR-based (true) / Fixed points (false)")
atrLen = input.int(14, "ATR Length")
atrMult = input.float(1.5, "ATR Multiplier for SL", step=0.1)
fixedSLpts = input.float(20.0, "Fixed SL (ticks/pips) if not ATR")
useTrailing = input.bool(true, "Enable Trailing Stop")
trailType = input.string("ATR", "Trailing type: ATR or EMA", options= ) // "ATR" or "EMA"
trailATRmult = input.float(1.0, "Trailing ATR Multiplier", step=0.1)
trailEMAlen = input.int(9, "Trailing EMA Length (if EMA chosen)")
trailLockInPts = input.float(5.0, "Trail lock-in (min profit before trail active, pts)")
// Other
showArrows = input.bool(true, "Show Entry Arrows")
// === Calculations ===
ema9 = ta.ema(close, emaFastLen)
ema21 = ta.ema(close, emaMidLen)
ema50 = ta.ema(close, emaSlowLen)
// VWAP
vwapVal = ta.vwap
// Ichimoku
highestHighTenkan = ta.highest(high, tenkanLen)
lowestLowTenkan = ta.lowest(low, tenkanLen)
tenkan = (highestHighTenkan + lowestLowTenkan) / 2
highestHighKijun = ta.highest(high, kijunLen)
lowestLowKijun = ta.lowest(low, kijunLen)
kijun = (highestHighKijun + lowestLowKijun) / 2
highestHighSenkouB = ta.highest(high, senkouBLen)
lowestLowSenkouB = ta.lowest(low, senkouBLen)
senkouB = (highestHighSenkouB + lowestLowSenkouB) / 2
senkouA = (tenkan + kijun) / 2
// RSI
rsi = ta.rsi(close, rsiLen)
// Volume
volAvg = ta.sma(volume, volAvgLen)
volOk = not useVolumeFilter or (volume > volAvg * volMultiplier)
// Higher timeframe trend values
htf_close = request.security(syminfo.tickerid, htfTF, close)
htf_ema50 = request.security(syminfo.tickerid, htfTF, ta.ema(close, emaSlowLen))
htf_rsi = request.security(syminfo.tickerid, htfTF, ta.rsi(close, rsiLen))
htf_bull = htf_close > htf_ema50
htf_bear = htf_close < htf_ema50
htf_ok = not useHTF or (htf_bull and close > ema50) or (htf_bear and close < ema50)
// Trend filters (on current timeframe)
priceAboveVWAP = close > vwapVal
priceAboveEMA50 = close > ema50
priceAboveCloud = close > senkouA and close > senkouB
bullTrend = priceAboveVWAP and priceAboveEMA50 and priceAboveCloud
bearTrend = not priceAboveVWAP and not priceAboveEMA50 and not priceAboveCloud
// Pullback detection (price near EMA21 within tolerance)
tolPerc = input.float(0.35, "Pullback tolerance (%)", step=0.05) / 100.0
nearEMA21 = math.abs(close - ema21) <= ema21 * tolPerc
// Entry conditions
emaCrossUp = ta.crossover(ema9, ema21)
emaCrossDown = ta.crossunder(ema9, ema21)
longConditionBasic = bullTrend and (nearEMA21 or close >= vwapVal) and emaCrossUp and rsi > rsiThreshold
shortConditionBasic = bearTrend and (nearEMA21 or close <= vwapVal) and emaCrossDown and rsi < rsiThreshold
longCondition = longConditionBasic and volOk and htf_ok and (not useHTF or htf_bull) and (rsi > rsiThreshold)
shortCondition = shortConditionBasic and volOk and htf_ok and (not useHTF or htf_bear) and (rsi < rsiThreshold)
// More strict: require Tenkan > Kijun for bull and Tenkan < Kijun for bear
ichimokuAlign = (tenkan > kijun) ? 1 : (tenkan < kijun ? -1 : 0)
longCondition := longCondition and (ichimokuAlign == 1)
shortCondition := shortCondition and (ichimokuAlign == -1)
// ATR for SL / trailing
atr = ta.atr(atrLen)
// --- Trade management state variables ---
var float activeLongEntry = na
var float activeShortEntry = na
var float activeLongSL = na
var float activeShortSL = na
var float activeLongTP = na
var float activeShortTP = na
var float activeLongTrail = na
var float activeShortTrail = na
// Function to convert fixed points to price (assumes chart in points as price units)
fixedToPriceLong(p) => p
fixedToPriceShort(p) => p
// On signal, set entry, SL and TP
if longCondition
activeLongEntry := close
// SL
if useSL
if slTypeATR
activeLongSL := close - atr * atrMult
else
activeLongSL := close - fixedToPriceLong(fixedSLpts)
else
activeLongSL := na
// TP
if useTP
if tpTypeRR and useSL and not na(activeLongSL)
risk = activeLongEntry - activeLongSL
activeLongTP := activeLongEntry + risk * tpRR
else
activeLongTP := activeLongEntry + fixedToPriceLong(fixedTPpts)
else
activeLongTP := na
// reset short
activeShortEntry := na
activeShortSL := na
activeShortTP := na
// init trailing
activeLongTrail := activeLongSL
if shortCondition
activeShortEntry := close
if useSL
if slTypeATR
activeShortSL := close + atr * atrMult
else
activeShortSL := close + fixedToPriceShort(fixedSLpts)
else
activeShortSL := na
if useTP
if tpTypeRR and useSL and not na(activeShortSL)
riskS = activeShortSL - activeShortEntry
activeShortTP := activeShortEntry - riskS * tpRR
else
activeShortTP := activeShortEntry - fixedToPriceShort(fixedTPpts)
else
activeShortTP := na
// reset long
activeLongEntry := na
activeLongSL := na
activeLongTP := na
// init trailing
activeShortTrail := activeShortSL
// Trailing logic (update only when in profit beyond 'lock-in')
if not na(activeLongEntry) and useTrailing
// current unrealized profit in points
currProfitPts = close - activeLongEntry
if currProfitPts >= trailLockInPts
// declare candidate before use to avoid undeclared identifier errors
float candidate = na
if trailType == "ATR"
candidate := close - atr * trailATRmult
else
candidate := close - ta.ema(close, trailEMAlen)
// move trail stop up but never below initial SL
activeLongTrail := math.max(nz(activeLongTrail, activeLongSL), candidate)
// ensure trail never goes below initial SL if SL exists
if useSL and not na(activeLongSL)
activeLongTrail := math.max(activeLongTrail, activeLongSL)
// update SL to trailing
activeLongSL := activeLongTrail
if not na(activeShortEntry) and useTrailing
currProfitPtsS = activeShortEntry - close
if currProfitPtsS >= trailLockInPts
// declare candidateS before use
float candidateS = na
if trailType == "ATR"
candidateS := close + atr * trailATRmult
else
candidateS := close + ta.ema(close, trailEMAlen)
activeShortTrail := math.min(nz(activeShortTrail, activeShortSL), candidateS)
if useSL and not na(activeShortSL)
activeShortTrail := math.min(activeShortTrail, activeShortSL)
activeShortSL := activeShortTrail
// Detect TP/SL hits (for plotting & alerts)
longTPHit = not na(activeLongTP) and close >= activeLongTP
longSLHit = not na(activeLongSL) and close <= activeLongSL
shortTPHit = not na(activeShortTP) and close <= activeShortTP
shortSLHit = not na(activeShortSL) and close >= activeShortSL
if longTPHit or longSLHit
// reset long state after hit
activeLongEntry := na
activeLongSL := na
activeLongTP := na
activeLongTrail := na
if shortTPHit or shortSLHit
activeShortEntry := na
activeShortSL := na
activeShortTP := na
activeShortTrail := na
// Plot EMAs
p_ema9 = plot(ema9, title="EMA9", linewidth=1)
plot(ema21, title="EMA21", linewidth=1)
plot(ema50, title="EMA50", linewidth=2)
// Plot VWAP
plot(vwapVal, title="VWAP", linewidth=2, style=plot.style_line)
// Plot Ichimoku lines (Tenkan & Kijun)
plot(tenkan, title="Tenkan", linewidth=1)
plot(kijun, title="Kijun", linewidth=1)
// Plot cloud (senkouA & senkouB shifted forward)
plot(senkouA, title="Senkou A", offset=displacement, transp=60)
plot(senkouB, title="Senkou B", offset=displacement, transp=60)
fill(plot(senkouA, offset=displacement), plot(senkouB, offset=displacement), color = senkouA > senkouB ? color.new(color.green, 80) : color.new(color.red, 80))
// Plot active trade lines
plotshape(not na(activeLongEntry), title="Active Long", location=location.belowbar, color=color.new(color.green, 0), style=shape.circle, size=size.tiny)
plotshape(not na(activeShortEntry), title="Active Short", location=location.abovebar, color=color.new(color.red, 0), style=shape.circle, size=size.tiny)
plot(activeLongSL, title="Long SL", color=color.red, linewidth=2)
plot(activeLongTP, title="Long TP", color=color.green, linewidth=2)
plot(activeShortSL, title="Short SL", color=color.red, linewidth=2)
plot(activeShortTP, title="Short TP", color=color.green, linewidth=2)
// Arrows / labels
if showArrows
if longCondition
label.new(bar_index, low, "BUY", style=label.style_label_up, color=color.green, textcolor=color.white, size=size.small)
if shortCondition
label.new(bar_index, high, "SELL", style=label.style_label_down, color=color.red, textcolor=color.white, size=size.small)
// Alerts
// alertcondition must be declared in global scope so TradingView can create alerts from them
alertcondition(longCondition, "VWAP+EMA+Ichimoku+RSI — BUY (STRICT)", "BUY signal from VWAP+EMA+Ichimoku+RSI (STRICT)")
alertcondition(shortCondition, "VWAP+EMA+Ichimoku+RSI — SELL (STRICT)", "SELL signal from VWAP+EMA+Ichimoku+RSI (STRICT)")
// Runtime alerts (still use alert() to trigger immediate alerts; webhook is added in TradingView Alert dialog)
if alertOn
if longCondition
alert("VWAP+EMA+Ichimoku+RSI — BUY (STRICT)", alert.freq_once_per_bar_close)
if shortCondition
alert("VWAP+EMA+Ichimoku+RSI — SELL (STRICT)", alert.freq_once_per_bar_close)
// Alerts for TP/SL hits
if longTPHit
alert("LONG TP HIT", alert.freq_once_per_bar_close)
if longSLHit
alert("LONG SL HIT", alert.freq_once_per_bar_close)
if shortTPHit
alert("SHORT TP HIT", alert.freq_once_per_bar_close)
if shortSLHit
alert("SHORT SL HIT", alert.freq_once_per_bar_close)
// Info table
var table info = table.new(position.top_right, 1, 8)
if barstate.islast
table.cell(info, 0, 0, text = 'Trend: ' + (bullTrend ? 'Bull' : bearTrend ? 'Bear' : 'Neutral'))
table.cell(info, 0, 1, text = 'EMA9/21/50: ' + str.tostring(ema9, format.mintick) + ' / ' + str.tostring(ema21, format.mintick) + ' / ' + str.tostring(ema50, format.mintick))
table.cell(info, 0, 2, text = 'VWAP: ' + str.tostring(vwapVal, format.mintick))
table.cell(info, 0, 3, text = 'RSI: ' + str.tostring(rsi, format.mintick))
table.cell(info, 0, 4, text = 'Vol OK: ' + (volOk ? 'Yes' : 'No'))
table.cell(info, 0, 5, text = 'HTF: ' + htfTF + ' ' + (htf_bull ? 'Bull' : htf_bear ? 'Bear' : 'Neutral'))
table.cell(info, 0, 6, text = 'ActiveLong: ' + (not na(activeLongEntry) ? 'Yes' : 'No'))
table.cell(info, 0, 7, text = 'ActiveShort: ' + (not na(activeShortEntry) ? 'Yes' : 'No'))
// End of script
Momentum Permission + VWAP + RelVol (Clean)//@version=5
indicator("Momentum Permission + VWAP + RelVol (Clean)", overlay=true)
// ──────────────────────────────────────────────
// Inputs
// ──────────────────────────────────────────────
smaLength = input.int(50, "SMA Length")
relVolThresh = input.float(1.3, "Relative Volume Threshold")
// ──────────────────────────────────────────────
// Core Calculations
// ──────────────────────────────────────────────
sma50 = ta.sma(close, smaLength)
vwap = ta.vwap(close)
relVol = volume / ta.sma(volume, 10)
crossUp = ta.crossover(close, sma50)
// Trend conditions
aboveSMA = close > sma50
aboveVWAP = close > vwap
relStrong = relVol > relVolThresh
// ──────────────────────────────────────────────
// One-Time Daily Trend Permission Logic
// ──────────────────────────────────────────────
var bool permission = false
// Reset permission at start of each session
if ta.change(time("D"))
permission := false
trendStart = crossUp and aboveVWAP and relStrong and not permission
if trendStart
permission := true
// ──────────────────────────────────────────────
// Entry Trigger Logic (Breakout Continuation)
// ──────────────────────────────────────────────
entryTrigger = (
permission and
aboveSMA and
aboveVWAP and
relStrong and
close > high // breakout of prior candle high
)
// ──────────────────────────────────────────────
// Plots
// ──────────────────────────────────────────────
// Trend filters
plot(sma50, title="SMA50", color=color.orange, linewidth=2)
plot(vwap, title="VWAP", color=color.new(color.blue, 0), linewidth=2)
// Permission (one-time trend start)
plotshape(
trendStart,
title="Trend Permission",
style=shape.triangleup,
location=location.belowbar,
color=color.new(color.green, 0),
size=size.large,
text="PERMIT"
)
// Entry trigger (continuation entry)
plotshape(
entryTrigger,
title="Entry Trigger",
style=shape.triangleup,
location=location.abovebar,
color=color.new(color.aqua, 0),
size=size.normal,
text="ENTRY"
)
Donchian 20/10 Screener + Alerts Donchian 20/10 Screener + Alerts identifies stocks breaking their 20-day high.
Includes ADX trend filter to confirm strong momentum.
Plots Donchian high/low lines and marks BUY/SELL signals on chart.
Screener output shows “PASS” for stocks meeting entry criteria.
Supports alerts for entry, exit, and screener signals for easy monitoring.
Мой скриптinputs:
window(1),
type(0), // 0: close, 1: high low, 2: fractals up down, 3: new fractals
persistent(False),
exittype(1),
nbars(160),
adxthres(40),
nstop(3000);
vars:
currentSwingLow(0),
currentSwingHigh(0),
trailStructureValid(false),
downFractal(0),
upFractal(0),
breakStructureHigh(0),
breakStructureLow(0),
BoS_H(0),
BoS_L(0),
Regime(0),
Last_BoS_L(0),
Last_BoS_H(0),
PeakfilterX(false);
BoS(window,persistent,type,Bos_H,BoS_L,upFractal,downFractal,breakStructureHigh,breakStructureLow);
//BOS Regime
If BoS_H <> 0 then begin
Regime = 1; // Bullish
Last_BoS_H = BoS_H ;
end;
If BoS_L <> 0 Then begin
Regime = -1; // Bearish
Last_BoS_L = BoS_L ;
end;
//Entry Logic: if we are in BoS regime then wait for break swing to entry
if ADX(5) of data2 < adxthres then begin
if time>900 and Regime = 1 and EntriesToday(date)= 0 and Last_BoS_H upFractal then buy next bar at market;
end;
if time>900 and EntriesToday(date)= 0 and Regime = -1 and Last_BoS_L>downFractal then
begin
if close < downFractal then sellshort next bar at market;
end;
end;
// Exits: nbars or stoploss or at the end of the day
if marketposition <> 0 and barssinceentry >nbars then begin
sell next bar at market;
buytocover next bar at market;
end;
setstoploss(nstop);
setexitonclose;
Мой скриптinputs:
window(1),
type(0), // 0: close, 1: high low, 2: fractals up down, 3: new fractals
persistent(False),
exittype(1),
nbars(160),
adxthres(40),
nstop(3000);
vars:
currentSwingLow(0),
currentSwingHigh(0),
trailStructureValid(false),
downFractal(0),
upFractal(0),
breakStructureHigh(0),
breakStructureLow(0),
BoS_H(0),
BoS_L(0),
Regime(0),
Last_BoS_L(0),
Last_BoS_H(0),
PeakfilterX(false);
BoS(window,persistent,type,Bos_H,BoS_L,upFractal,downFractal,breakStructureHigh,breakStructureLow);
//BOS Regime
If BoS_H <> 0 then begin
Regime = 1; // Bullish
Last_BoS_H = BoS_H ;
end;
If BoS_L <> 0 Then begin
Regime = -1; // Bearish
Last_BoS_L = BoS_L ;
end;
//Entry Logic: if we are in BoS regime then wait for break swing to entry
if ADX(5) of data2 < adxthres then begin
if time>900 and Regime = 1 and EntriesToday(date)= 0 and Last_BoS_H upFractal then buy next bar at market;
end;
if time>900 and EntriesToday(date)= 0 and Regime = -1 and Last_BoS_L>downFractal then
begin
if close < downFractal then sellshort next bar at market;
end;
end;
// Exits: nbars or stoploss or at the end of the day
if marketposition <> 0 and barssinceentry >nbars then begin
sell next bar at market;
buytocover next bar at market;
end;
setstoploss(nstop);
setexitonclose;















