Candlestick analysis
TRADER IMMU LEVAL CONCEPTWe are forever drawing key levels on our charts with saved drawing templates, but finding the levels, adding the labels, is all tedious stuff. We have indicators, but we have multiple different ones at a time.
What if you could just tick a box on/off?
Well now you can.
This all in one 'levels' indicator is designed to show all the key highs and lows from previous weeks, Monday, the current week, as well as an option to highlight the market sessions and their highs and lows.
There are lots of options available for extending lines and choosing their colors, so once you have set it up how you want, don't forget to save YOUR defaults.
Oorah
Candle Patterns & Price Action Highlighter 3(v6)Candle Patterns & Price Action Highlighter (v6) is a comprehensive tool designed to identify and highlight common candlestick patterns and price action formations directly on the chart. It provides real-time visual cues, confirmation signals, and probability estimates for bullish or bearish moves.
🔑 Key Functions & Features:
Pattern Detection
Engulfing Candles (Bullish & Bearish)
Pin Bars (Hammer & Shooting Star)
Doji (Indecision candles)
Inside Bars (consolidation signals)
Outside Bars (volatility expansion)
Morning Star & Evening Star (3-candle reversal patterns)
Confirmation Candle Logic
Each detected pattern is validated by the next candle’s close to avoid false signals.
Example: A Bullish Engulfing is only confirmed if the next candle closes higher.
Expected Move with Probabilities
Above or below the confirmation candle, a short label is displayed showing:
Direction: Bullish or Bearish
Expected Probability % (e.g., “Bullish 65%”)
Probabilities are based on common trading literature and can be adjusted for backtesting strategies.
Visual Highlights
Labels appear above or below candles with short text (BE, Doji, Pin, etc.).
Bars are color-coded lightly when strong bullish or bearish setups are confirmed.
A legend table is displayed for quick reference.
Alerts
Alerts can be set for all major patterns (Engulfing, Pin Bars, Morning/Evening Stars, etc.).
Traders can receive notifications when a confirmed price action pattern appears.
🎯 Purpose
This indicator helps traders quickly spot high-probability candlestick setups with confirmation, making it easier to anticipate short-term price movements. It is ideal for traders who rely on price action strategies and want clear, real-time visual assistance without manually scanning every candle.
After-hours candle filterLet's you filter candles by the time of the day. Very helpful to see extended hours only moves.
EitanRotem Screener Conditions10-day moving average above the 20-day moving average
Last closing price is above both the 10-day and 20-day moving averages
Closing price is also above the 30-week moving average (approximated by the 150-day and 50-day moving averages)
Stock price is above $5
Average trading volume is above 1 million shares
Pattern condition (1 out of 2):
Current closing price is above the high of the previous candle, OR
Current closing price is above the high of the candle from two periods ago
MACD Classic MT5 Style (2 Lines + Histogram)MACD เหมือน MT5 นะจ๊ะ
MACD Line (Green) = Difference between Fast EMA and Slow EMA
Signal Line (Red) = EMA of the MACD Line
Histogram = Distance between MACD Line and Signal Line (or in MT5 style, just MACD Line itself)
High Volume Candles - RVolInspired by Key bars from Option Stalker Pro.
This one is meant to be used on charts where the interval is >=1D.
Highlights candles where RVol is > 1.2.
Helps to not accidentally miss that a candle move happened on high volume (or that it did not happen on high volume...), like potential reversals or resistance/support breaks.
Make sure to move this indicator above the ticker in the Object Tree, so that it is drawn on top of the ticker's candles.
More infos: www.reddit.com
High Volume CandlesInspired by Key bars from Option Stalker Pro.
This one is meant to be used on charts where the interval is <1D.
Highlights candles in chart with Volume > 1.4 * last 30 candles average volume.
Helps to not accidentally miss that a candle move happened on high volume (or that it did not happen on high volume...), like potential reversals or resistance/support breaks.
Make sure to move this indicator above the ticker in the Object Tree, so that it is drawn on top of the ticker's candles.
More infos: www.reddit.com
MTF CRT Setup Finder (Raids + BOS linked)//@version=6
indicator("MTF CRT Setup Finder (Raids + BOS linked)", overlay=true, max_lines_count=500)
// === INPUTS ===
lookback = input.int(5, "Swing Lookback Bars", minval=2)
// === Function: Detect swing highs/lows ===
swingHigh(src, lb) => ta.pivothigh(src, lb, lb)
swingLow(src, lb) => ta.pivotlow(src, lb, lb)
// === Function: Detect CRT with memory ===
f_crt(tf) =>
hi = request.security(syminfo.tickerid, tf, high)
lo = request.security(syminfo.tickerid, tf, low)
cl = request.security(syminfo.tickerid, tf, close)
sh = request.security(syminfo.tickerid, tf, swingHigh(high, lookback))
sl = request.security(syminfo.tickerid, tf, swingLow(low, lookback))
raidHigh = not na(sh) and hi > sh and cl < sh
raidLow = not na(sl) and lo < sl and cl > sl
// store last raid state
var bool hadRaidHigh = false
var bool hadRaidLow = false
if raidHigh
hadRaidHigh := true
if raidLow
hadRaidLow := true
bosDown = hadRaidHigh and cl < sl
bosUp = hadRaidLow and cl > sh
// reset after BOS
if bosDown
hadRaidHigh := false
if bosUp
hadRaidLow := false
// === Apply on H1 only first (test) ===
= f_crt("60")
// === Plot ===
plotshape(raidHigh, title="Raid High", style=shape.diamond, color=color.red, size=size.small, text="Raid High")
plotshape(raidLow, title="Raid Low", style=shape.diamond, color=color.green, size=size.small, text="Raid Low")
plotshape(bosDown, title="Bearish CRT", style=shape.triangledown, color=color.red, size=size.large, text="CRT↓")
plotshape(bosUp, title="Bullish CRT", style=shape.triangleup, color=color.green, size=size.large, text="CRT↑")
Pullback Confirma**📈 Pullback Strategy with Candle Confirmation**
**🎯 Objective:**
Identify ideal entry points during pullbacks in trends, using the simultaneous crossover of two moving averages with candle confirmation.
**📊 Indicators Used:**
- **Hull Moving Average (HMA):** Period 27 - fast and smoothed average that reduces lag
- **Simple Moving Average (SMA):** Period 11 - short-term average for additional confirmation
**⚡ Strategy Logic:**
**🔹 Conditions for BUY SIGNAL:**
1. **Double Crossover:** Price crosses above both HMA 27 and SMA 11 simultaneously
2. **Pullback:** Price must be near or touching HMA 27 (return-to-average condition)
3. **Confirmation:** On the next candle, it must be a BULLISH candle closing above both averages
**🔸 Conditions for SELL SIGNAL:**
1. **Double Crossover:** Price crosses below both HMA 27 and SMA 11 simultaneously
2. **Pullback:** Price must be near or touching HMA 27
3. **Confirmation:** On the next candle, it must be a BEARISH candle closing below both averages
**🎨 Chart Visualization:**
- **● Blue Circle:** Upward crossover detected (awaiting confirmation)
- **● Orange Circle:** Downward crossover detected (awaiting confirmation)
- **▲ Green Arrow:** Confirmed buy (after confirmation candle)
- **▼ Red Arrow:** Confirmed sell (after confirmation candle)
- **Colored Lines:** HMA (blue) and SMA (orange) plotted on the chart
**⚙️ Customization:**
- Adjustable average periods
- Customizable arrow colors
- Configurable alerts for each confirmed signal
**✅ Advantages:**
- **Double Filter:** Two different averages for confirmation
- **Candle Confirmation:** Eliminates premature signals
- **Intuitive Visual:** Only shows arrows after valid confirmation
- **Controlled Pullback:** Operates only on return-to-average movements
**⏰ Recommended Timeframe:**
Works on multiple timeframes, but particularly effective on M15, H1, and H4 to capture more significant movements.
This strategy is ideal for traders looking for precise entries in consolidated trends, minimizing false signals through candle confirmation! 🚀
RSI Price overlay on chartThie Indicator plots buy and sell signals on the chart using the 28 period RSI with overbought areas at 65 and oversold at 35
Smart Multi-Confirm Reversal DetectorHow the Smart Multi-Confirm Reversal Detector Works
The indicator works by analyzing candlestick patterns, trend, and technical confirmations and then scoring each bar to determine the strength of a potential reversal. Here’s the step-by-step logic:
Step 1: Analyze Candlestick Patterns
For each new candle, the indicator checks if any of the selected patterns occur:
Wick Reversal (Long Lower Wick):
Looks for candles with a small body and a long lower shadow.
Indicates buying pressure (potential bullish reversal).
Inverted Wick (Long Upper Wick):
Looks for candles with a small body and a long upper shadow.
Indicates selling pressure (potential bearish reversal).
Body Engulf:
The current candle completely “engulfs” the previous candle.
Signals a strong change in momentum.
Tweezer Patterns:
Two consecutive candles with almost identical highs or lows.
Suggests a potential reversal zone.
3-Bar Pattern:
Three consecutive bullish or bearish candles in a row.
Shows strong momentum continuation or exhaustion, used to confirm reversal.
Each pattern can be turned on/off by the user. If a pattern is detected, it contributes points to the overall signal score.
Step 2: Confirm Trend Direction
The indicator checks EMA trend alignment:
Fast EMA vs Slow EMA:
Fast EMA above Slow EMA → bullish trend.
Fast EMA below Slow EMA → bearish trend.
Optional Higher Timeframe EMA (HTF) Alignment:
Checks if the trend on a higher timeframe matches the current trend.
Adds extra weight to the signal if alignment is true.
This ensures the signal goes in the direction of the prevailing trend, reducing false signals.
Step 3: Check Technical Confirmations
Optional filters increase reliability:
ADX (Average Directional Index):
Measures the strength of the current trend.
Only strong trends contribute to the score.
RSI (Relative Strength Index):
Bullish confirmation: RSI is oversold.
Bearish confirmation: RSI is overbought.
Volume Spike:
Compares current volume to the average volume.
High volume validates the signal’s momentum.
Body Momentum:
Compares current candle’s body size to its average.
Larger than average body indicates stronger momentum.
Each of these confirmations can be enabled/disabled and has a weight in the scoring system.
Step 4: Calculate Score
Each pattern and confirmation has a user-defined weight (0–100).
The indicator sums the active weights that pass conditions and normalizes to 100.
Example:
Wick Reversal detected → 30 points
Trend EMA confirmed → 15 points
ADX confirmed → 10 points
Score = 55/100 → may or may not trigger a signal depending on threshold.
Score Threshold:
Only bars above the user-defined threshold are considered a confirmed signal.
Bars above a lower “label threshold” still show a label, even if not strong enough for alerts.
Step 5: Visualize Signals
Bullish Signals: Green triangle below the candle.
Bearish Signals: Red triangle above the candle.
Labels: Show the type of pattern and the score.
Purpose: Quickly identify potential reversals and assess their strength visually.
Step 6: Optional Alerts
Fixed alert messages can be enabled for confirmed bullish or bearish signals.
Alerts do not recommend trades; they just notify you of pattern confirmations.
Complies with TradingView’s policy for safe alert use.
Step 7: Weighted Decision
The final decision is not binary.
Instead, the indicator combines multiple signals into a score, so stronger signals are more reliable.
This reduces false positives and gives traders a professional, multi-confirmation approach to detect potential reversals.
Distance from 50 SMA in ADR TermsIndicator produces a multiple of ADR% from the 50-day simple moving average to determine is a stock or etf is extended.
gfg//@version=5
indicator("Lux Gainz Style Algo", overlay=true)
// User Inputs
fastLen = input.int(12, "Fast MA Length", minval=1)
slowLen = input.int(26, "Slow MA Length", minval=1)
rsiLen = input.int(14, "RSI Length", minval=1)
rsiOverbought = input.float(70, "RSI Overbought Level")
rsiOversold = input.float(30, "RSI Oversold Level")
sensitivity = input.float(1.5, "Signal Sensitivity", minval=0.1, step=0.1)
// Moving Averages for Trend
fastMA = ta.ema(close, fastLen)
slowMA = ta.ema(close, slowLen)
// RSI for Momentum
rsi = ta.rsi(close, rsiLen)
// Trend Conditions
bullTrend = fastMA > slowMA
bearTrend = fastMA < slowMA
// Confirmation Signals
longSignal = ta.crossover(fastMA, slowMA) and rsi < rsiOversold * sensitivity
shortSignal = ta.crossunder(fastMA, slowMA) and rsi > rsiOverbought / sensitivity
// Plot Moving Averages
plot(fastMA, color=color.new(color.green, 0), title="Fast EMA")
plot(slowMA, color=color.new(color.red, 0), title="Slow EMA")
// Candle Coloring for Trend Strength
barcolor(bullTrend ? color.new(color.green, 70) : bearTrend ? color.new(color.red, 70) : color.gray)
// Plot Buy/Sell Signals
plotshape(longSignal, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup, size=size.small)
plotshape(shortSignal, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.labeldown, size=size.small)
// Alerts
alertcondition(longSignal, title="Long Entry", message="Lux Gainz Algo: Long Entry Signal")
alertcondition(shortSignal, title="Short Entry", message="Lux Gainz Algo: Short Entry Signal")
EMA20 Entry with Lei Teacher Strategy_Trend_Follow_RuleEMA20 Entry with Lei Teacher Strategy Trend Follow Entry Alert
Block-Based Trend Breakout (YTK/DTK) – v1📌 Overview
Block Trend Breakout (YTK/DTK) is a lightweight, rule-based indicator that detects potential trend reversals or volatility bursts by tracking breakouts of key structural support/resistance levels — derived from block-wise trend patterns.
The logic is simple yet effective: if a trend has been confirmed across multiple blocks (custom-length bar groups), and the price breaks its own structural boundary, a potential reversal or volatility signal is triggered.
🟥 YTK (Uptrend Breakdown) → Price breaks below the lowest low of the most recent block in an uptrend.
🟩 DTK (Downtrend Breakout) → Price breaks above the highest high of the most recent block in a downtrend.
🔍 How It Works
Block Construction: User-defined bar groups (e.g., 6 bars on a 4H chart = 24H blocks).
Trend Validation: At least N consecutive blocks must show higher highs/lows (uptrend) or lower highs/lows (downtrend).
Breakout Test: If the current bar violates the structural limit (MR block high/low), the corresponding signal is plotted.
📉 This logic identifies weakening trends or failed momentum, often preceding reversals or volatility expansions.
⚙️ Features
Adjustable block size and trend confirmation count
Option to use only closed bars (to reduce repaint risk)
Inclusive mode for “<= / >=” logic
Visual signals:
MR Block high/low levels
Trend-colored bars
Arrows for YTK (🔻) and DTK (🔺)
Built-in alerts for automated strategies
🎯 Use Cases
Spotting fakeouts and false breakouts
Identifying trend exhaustion before reversal
Confirming structural support/resistance breaks
Visual tool for discretionary traders
Signal generator for automated systems
💬 Feedback & Contributions
This script is open-source and community-driven. We actively welcome feedback, ideas, improvements, forks, and questions.
📩 Contact for collaboration or discussion:
📧 senbrke@gmail.com
FVG SuiteSupercharge your charts with FVG Suite! Detect Smart Money structures, Fair Value Gaps, and key Multi-Timeframe levels—all in one powerful indicator. Perfect for both intraday and swing traders.
⚡ Highlights:
📈 Smart Money Structure: BoS & CHoCH signals with customizable colors and sensitivity.
💎 Fair Value Gaps: Bullish & Bearish FVGs with filters, max extension, and automatic cleanup.
🕒 Multi-Timeframe Levels: Daily, Weekly, and Monthly Highs & Lows with solid/dashed/dotted lines.
📊 Volume Activity: Real-time 4H & 24H volume analysis in a neat table.
🎨 Fully Customizable: Colors, transparency, and labels for a clean, easy-to-read chart.
Make smarter trade decisions with clear market structure insights and gap detection! 🚀
Volume Heat ZoneVolume Zones Indicator
This Pine Script creates a volume-based zone analysis tool for TradingView.
Function:
Divides the price range (high to low) into 20 levels over a 100-candle lookback period
Measures volume activity at each price level
Draws boxes at levels with above-average volume (1.5x threshold)
Key Settings:
Lookback Period (100): Number of candles analyzed
Price Levels (20): Price range subdivisions
Volume Threshold (1.5): Minimum volume multiplier for zones
Candle Offset (1): Excludes current candle from analysis
Projection Bars (10): Extends boxes 10 bars into the future
How it works:
The indicator identifies price levels where significant trading volume occurred historically, highlighting potential support/resistance zones. Boxes are redrawn on each confirmed candle, showing dynamic volume concentration areas that traders can use for entry/exit decisions.
Daily Vertical Lines (UTC-4)puts verical line for setup asian
🔎 How this works:
The script uses timestamp() with America/New_York (which corresponds to UTC-4 in summer and UTC-5 in winter — TradingView auto-adjusts with DST).
When the bar’s opening time equals 3:30 PM or 8:00 PM, it draws a vertical dotted line across the chart.
One line will be red (3:30 PM), the other blue (8:00 PM).
Advanced Pattern Detection System [50+ Patterns]【Advanced Pattern Detection System - Auto-detects 50+ Chart Patterns】
Introducing the most powerful pattern detection indicator for TradingView!
◆ What is this?
An automated tool that finds and displays over 50 chart patterns on your charts. It detects all the patterns professional traders use - Double Tops, Triangles, Head & Shoulders, and more - all in ONE indicator.
◆ Main Features
・Detects 50+ patterns in real-time
・Shows visual explanation of WHY each pattern was identified
・Automatically calculates theoretical target prices
・Displays confidence levels in % (60-95%)
・Choose panel position from 9 locations
・Works on all timeframes (1min to Monthly)
◆ Detectable Patterns
1. Classic Patterns (Double Top/Bottom, Head & Shoulders, etc.)
2. Triangle Patterns (Ascending, Descending, Symmetrical, Expanding)
3. Continuation Patterns (Flags, Pennants, Wedges, etc.)
4. Harmonic Patterns (Gartley, Butterfly, Bat, etc.)
5. Price Action (Pin Bar, Engulfing, Hammer, etc.)
6. Special Patterns (Cup & Handle, V-formations, etc.)
◆ What Makes It Different
・Not just detection - shows the reasoning behind it
・Auto-draws pivot points and necklines
・Displays target prices with % gain/loss from current price
・Detects multiple patterns simultaneously, sorted by confidence
・Available in both Japanese and English versions
◆ Perfect For
✓ Anyone tired of using multiple indicators
✓ Beginners wanting to learn pattern trading
✓ Traders who don't want to miss entry points
✓ Those looking to improve discretionary trading accuracy
◆ How to Use (Easy 3 Steps)
1. Open TradingView and paste code in Pine Editor
2. Click "Add to Chart"
3. Enable only the patterns you need in settings
◆ Color Meanings
Green → Bullish potential (Buy signal)
Red → Bearish potential (Sell signal)
Yellow → Neutral direction (Wait and see)
◆ Recommended Settings
Scalping: Detection period 20, Sensitivity 0.0025
Day Trading: Detection period 50, Sensitivity 0.002
Swing Trading: Detection period 100, Sensitivity 0.0015
◆ Real Trading Example
"Detects Double Bottom → 85% confidence → Enter on neckline break → Take profit at displayed target price"
This is how you can use it in practice.
◆ Important Notes
・This is an analysis tool, not investment advice
・Always combine with other indicators
・Always set stop losses
・Practice on demo account before live trading
◆ Performance
If running slow, turn OFF unused pattern categories. Reducing max display count to 3 also helps.
◆ Summary
This single tool provides functionality that would normally require multiple paid indicators (worth $100-200 total). It's the ultimate pattern detection system recommended for all traders, from beginners to professionals.
Give it a try if interested! Feel free to ask questions in the comments.
Ai Golden Support and Resistance Adaptive Support & Resistance (ADR-scaled ABCD + Breakout/Retest Zones)
What it does
This indicator detects actionable support/resistance zones from swing structure and breakout events, then keeps each zone active until it’s invalidated by price. It adapts zone sensitivity using Average Daily Range (ADR) so the same rules scale across symbols and vol regimes.
Core Logic (high level)
Swing & ABCD pattern seed
Detects alternating pivots (high–low–high–low or low–high–low–high) using a user-selected lookback.
Validates basic AB–BC–CD proportions: BC must retrace a portion of AB; CD must extend BC within a set range.
From a valid sequence, sets a candidate level (top for bearish, bottom for bullish).
Breakout confirmation
A level becomes confirmed when price closes beyond it (crossover/crossunder).
On confirmation, the script draws a dotted reference line and records how many bars elapsed from the seed pivot to breakout. That count defines the lookback window used for local extremes.
Zone construction
Supply (bearish): builds a box around the most recent local range near the bearish seed;
Demand (bullish): builds a box around the most recent local range near the bullish seed.
Each zone’s height is derived from nearby extremes and the seed swing, so boxes reflect local structure rather than fixed pip widths.
Volatility normalization (ADR%)
ADR is computed from daily candles.
The Risk Profile input (“High/Medium/Low”) scales required move sizes using ADR%, and adjusts pivot sensitivity (fewer/more bars).
Higher risk → more sensitive (smaller ADR %, tighter pivot lookback).
Lower risk → stricter filters (larger ADR %, wider pivot lookback).
Explosive-move filter (streak logic)
Searches the seeded lookback for consecutive same-color candles (config via the risk profile).
Requires the cumulative % move of that streak to exceed an ADR-scaled threshold.
When found, the zone is tagged as originating from an “explosive” move (potentially higher reaction probability).
Zone persistence & invalidation
Zones persist and auto-extend to the right until invalidated.
Invalidation occurs when price closes through a rule-based threshold derived from the seed structure (stored per zone).
Once invalidated, the zone is marked inactive and stops updating.
Inputs & Controls
Risk Profile: High / Medium / Low (sets pivot lookback, streak length, and ADR% thresholds).
Labels & Visuals: Toggle labels and level lines; set line width.
Colors/Boxes: Supply (red), Demand (green); dotted breakout references.
No broker/session settings are required; the script adapts per symbol via ADR.
On-Chart Elements
Dotted breakout lines at confirmed levels (with measured bars-to-breakout).
Supply/Demand boxes that extend until invalidation.
Optional labels for clarity; minimal clutter by default.
How to Use
Context: Use higher-TF context for bias; apply zones on your trading TF.
Confluence: Combine zones with your own triggers (structure breaks, rejection wicks, momentum shifts).
Invalidation: If price closes beyond a zone’s invalidation threshold, treat that zone as inactive.
Sensitivity: If too many zones appear, switch to Medium/Low Risk (stricter ADR% & pivots); if too few, use High Risk.
Notes & Limitations
Logic is rule-based; there is no machine learning.
Daily ADR is computed from D timeframe, so intraday charts inherit daily volatility context.
Results vary by symbol and timeframe; validate settings per market.
This is an indicator (no orders or P/L).
P/B Ratio (Per Share) vs Median + Bollinger Band- 📝 This indicator highlights potential buying opportunities by analyzing the Price-to-Book (P/B) ratio in relation to Bollinger Bands and its historical median.
- 🎯 The goal is to provide a visually intuitive signal for value-oriented entries, especially when valuation compression aligns with historical context.
- 💡 Vertical green shading is applied when the P/B ratio drops below the lower Bollinger Band, which is calculated directly from the P/B ratio itself — not price. This condition often signals the ticker may be oversold.
- 🟢 Lighter green appears when the ratio is below the lower band but above the median, suggesting a possible shorter-term entry with slightly more risk.
- 🟢 Darker green appears when the ratio is both below the lower band and below the median, pointing to a potentially stronger, longer-term value entry.
- ⚠️ This logic was tested using 1 and 2-day time frames. It may not be as helpful in longer time frames, as the financial data TradingView pulls in begins in Q4 2017.
- ⚠️ Note: This script relies on financial data availability through TradingView. It may not function properly with certain tickers — especially ETFs, IPOs, or thinly tracked assets — where P/S ratio data is missing or incomplete.
- ⚠️ This indicator will not guarantee successful results. Use in conjunction with other indicators and do your due diligence.
- 🤖 This script was iteratively refined with the help of AI to ensure clean logic, minimalist design, and actionable signal clarity.
- 📢 Idea is based on the script "Historical PE ratio vs median" by haribotagada
- 💬 Questions, feedback, or suggestions? Drop a comment — I’d love to hear how you’re using it or what you'd like to see changed.
J12Matic Builder by galgoomA flexible Renko/tick strategy that lets you choose between two entry engines (Multi-Source 3-way or QBand+Moneyball), with a unified trailing/TP exit engine, NY-time trading windows with auto-flatten, daily profit/loss and trade-count limits (HALT mode), and clean webhook routing using {{strategy.order.alert_message}}.
Highlights
Two entry engines
Multi-Source (3): up to three long/short sources with Single / Dual / Triple logic and optional lookback.
QBand + Moneyball: Gate → Trigger workflow with timing windows, OR/AND trigger modes, per-window caps, optional same-bar fire.
Unified exit engine: Trailing by Bricks or Ticks, plus optional static TP/SL.
Session control (NY time): Evening / Overnight / NY Session windows; auto-flatten at end of any enabled window.
Day controls: Profit/Loss (USD) and Trade-count limits. When hit, strategy HALTS new entries, shows an on-chart label/background.
Alert routing designed for webhooks: Every order sets alert_message= so you can run alerts with:
Condition: this strategy
Notify on: Order fills only
Message: {{strategy.order.alert_message}}
Default JSONs or Custom payloads: If a Custom field is blank, a sensible default JSON is sent. Fill a field to override.
How to set up alerts (the 15-second version)
Create a TradingView alert with this strategy as Condition.
Notify on: Order fills only.
Message: {{strategy.order.alert_message}} (exactly).
If you want your own payloads, paste them into Inputs → 08) Custom Alert Payloads.
Leave blank → the strategy sends a default JSON.
Fill in → your text is sent as-is.
Note: Anything you type into the alert dialog’s Message box is ignored except the {{strategy.order.alert_message}} token, which forwards the payload supplied by the strategy at order time.
Publishing notes / best practices
Renko users: Make sure “Renko Brick Size” in Inputs matches your chart’s brick size exactly.
Ticks vs Bricks: Exit distances switch instantly when you toggle Exit Units.
Same-bar flips: If enabled, a new opposite signal will first close the open trade (with its exit payload), then enter the new side.
HALT mode: When day profit/loss limit or trade-count limit triggers, new entries are blocked for the rest of the session day. You’ll see a label and a soft background tint.
Session end flatten: Auto-closes positions at window ends; these exits use the “End of Session Window Exit” payload.
Bar magnifier: Strategy is configured for on-close execution; you can enable Bar Magnifier in Properties if needed.
Default JSONs (used when a Custom field is empty)
Open: {"event":"open","side":"long|short","symbol":""}
Close: {"event":"close","side":"long|short|flat","reason":"tp|sl|flip|session|limit_profit|limit_loss","symbol":""}
You can paste any text/JSON into the Custom fields; it will be forwarded as-is when that event occurs.
Input sections — user guide
01) Entries & Signals
Entry Logic: Choose Multi-Source (3) or QBand + Moneyball (pick one).
Enable Long/Short Signals: Master on/off switches for entering long/short.
Flip on opposite signal: If enabled, a new opposite signal will close the current position first, then open the other side.
Signal Logic (Multi-Source):
Single: any 1 of the 3 sources > 0
Dual: Source1 AND Source2 > 0
Triple (default): 1 AND 2 AND 3 > 0
Long/Short Signal Sources 1–3: Provide up to three series (often indicators). A positive value (> 0) is treated as a “pulse”.
Use Lookback: Keeps a source “true” for N bars after it pulses (helps catch late triggers).
Long/Short Lookback (bars): How many bars to remember that pulse.
01b) QBands + Moneyball (Gate -> Trigger)
Allow same-bar Gate->Trigger: If ON, a trigger can fire on the same bar as the gate pulse.
Trigger must fire within N bars after Gate: Size of the gate window (in bars).
Max signals per window (0 = unlimited): Cap the number of entries allowed while a gate window is open.
Buy/Sell Source 1 – Gate: Gate pulse sources that open the buy/sell window (often a regime/zone, e.g., QBands bull/bear).
Trigger Pulse Mode (Buy/Sell): How to detect a trigger pulse from the trigger sources (Change / Appear / Rise>0 / Fall<0).
Trigger A/B sources + Extend Bars: Primary/secondary triggers plus optional extension to persist their pulse for N bars.
Trigger Mode: Pick S2 only, S3 only, S2 OR S3, or S2 AND S3. AND mode remembers both pulses inside the window before firing.
02) Exit Units (Trailing/TP)
Exit Units: Choose Bricks (Renko) or Ticks. All distances below switch accordingly.
03) Tick-based Trailing / Stops (active when Exit Units = Ticks)
Initial SL (ticks): Starting stop distance from entry.
Start Trailing After (ticks): Start trailing once price moves this far in your favor.
Trailing Distance (ticks): Offset of the trailing stop from peak/trough once trailing begins.
Take Profit (ticks): Optional static TP distance.
Stop Loss (ticks): Optional static SL distance (overrides trailing if enabled).
04) Brick-based Trailing / Stops (active when Exit Units = Bricks)
Renko Brick Size: Must match your chart’s brick size.
Initial SL / Start Trailing After / Trailing Distance (bricks): Same definitions as tick mode, measured in bricks.
Take Profit / Stop Loss (bricks): Optional static distances.
05) TP / SL Switch
Enable Static Take Profit: If ON, closes the trade at the fixed TP distance.
Enable Static Stop Loss (Overrides Trailing): If ON, trailing is disabled and a fixed SL is used.
06) Trading Windows (NY time)
Use Trading Windows: Master toggle for all windows.
Evening / Overnight / NY Session: Define each session in NY time.
Flatten at End of : Auto-close any open position when a window ends (sends the Session Exit payload).
07) Day Controls & Limits
Enable Profit Limits / Profit Limit (Dollars): When daily net PnL ≥ limit → auto-flatten and HALT.
Enable Loss Limits / Loss Limit (Dollars): When daily net PnL ≤ −limit → auto-flatten and HALT.
Enable Trade Count Limits / Number of Trades Allowed: After N entries, HALT new entries (does not auto-flatten).
On-chart HUD: A label and soft background tint appear when HALTED; a compact status table shows Day PnL, trade count, and mode.
08) Custom Alert Payloads (used as strategy.order.alert_message)
Long/Short Entry: Payload sent on entries (if blank, a default open JSON is sent).
Regular Long/Short Exit: Payload sent on closes from SL/TP/flip (if blank, a default close JSON is sent).
End of Session Window Exit: Payload sent when any enabled window ends and positions are flattened.
Profit/Loss/Trade Limit Close: Payload sent when daily profit/loss limit causes auto-flatten.
Tip: Any tokens you include here are forwarded “as is”. If your downstream expects variables, do the substitution on the receiver side.
Known limitations
No bracket orders from Pine: This strategy doesn’t create OCO/attached brackets on the broker; it simulates exits with strategy logic and forwards your payloads for external automation.
alert_message is per order only: Alerts fire on order events. General status pings aren’t sent unless you wire a separate indicator/alert.
Renko specifics: Backtests on synthetic Renko can differ from live execution. Always forward-test on your instrument and settings.
Quick checklist before you publish
✅ Brick size in Inputs matches your Renko chart
✅ Exit Units set to Bricks or Ticks as you intend
✅ Day limits/Windows toggled as you want
✅ Custom payloads filled (or leave blank to use defaults)
✅ Your alert uses Order fills only + {{strategy.order.alert_message}}