Initial Balance SMC-V3
Initial Balance SMC-V3 – An Advanced Mean Reversion Indicator for Index Markets
The Initial Balance SMC-V3 indicator is the result of continuous refinement in mean reversion trading, with a specific focus on index markets (such as DAX, NASDAQ, S&P 500, etc.). Designed for high-liquidity environments with controlled volatility, it excels at precisely identifying value zones and statistical reversal points within market structure.
🔁 Mean Reversion at Its Core
At the heart of this indicator lies a robust mean reversion logic: rather than chasing extreme breakouts, it seeks returns toward equilibrium levels after impulsive moves. This makes it especially effective in ranging markets or corrective phases within broader trends—situations where many traders get caught in false breakouts.
🎯 Signals Require Breakout + Confirmation
Signals are never generated impulsively. Instead, they require a clear sequence of confirmations:
Break of a key level (e.g., Initial Balance high/low or an SMC zone);
Price re-entry into the range accompanied by a crossover of customizable moving averages (SMA, EMA, HULL, TEMA, etc.);
RSI filter to avoid entries in overbought/oversold extremes;
Volatility filter (ATR) to skip low-volatility, choppy conditions.
This multi-layered approach drastically reduces false signals and significantly improves trade quality.
📊 Built-in Multi-Timeframe Analysis
The indicator features native multi-timeframe logic:
H1 / 15-minute charts: for structural analysis and identification of Supply & Demand zones (SMC);
M1 / M5 charts: for precise trade execution, with targeted entries and dynamic risk management.
SMC zones are calculated on higher timeframes (e.g., 4H) to ensure structural reliability, while actual trade signals trigger on lower timeframes for maximum precision.
⚙️ Advanced Customization
Full choice of moving average type (SMA, EMA, WMA, RMA, VWMA, HULL, TEMA, ZLEMA, etc.);
Revenge Trading logic: after a stop loss is hit without reaching the 1:1 breakeven level, the indicator automatically prepares for a counter-trade;
Dynamic ATR-based stop loss with customizable multiplier;
Session filters to trade only during optimal liquidity windows (e.g., European session).
🧠 Who Is It For?
This indicator is ideal for traders who:
Primarily trade indices;
Prefer mean reversion strategies over pure trend-following;
Seek a disciplined, rule-based system with multiple confluence filters;
Use a multi-timeframe approach to separate analysis from execution.
In short: Initial Balance SMC-V3 is more than just an indicator—it’s a complete trading framework for mean reversion on index markets, where every signal emerges from a confluence of statistical, structural, and temporal factors.
Happy trading! 📈
Wskaźniki i strategie
JDB MA Breakout IndicatorAll credit goes to JDB_Trading . Follow on X.
This indicator visualises one of his strategies.
1. Detecting the dominant moving average.
2. Price is supposed to be at least 70 candles below it for buy signals/40 above for sells.
3. detects break on dominant MA + BB 20,2.
4. Used on W & M timeframes.
5. alerts possible.
Hosoda’s CloudsMany investors aim to develop trading systems with a high win rate, mistakenly associating it with substantial profits. In reality, high returns are typically achieved through greater exposure to market trends, which inevitably lowers the win rate due to increased risk and more volatile conditions.
The system I present, called “Hosoda’s Clouds” in honor of Goichi Hosoda , the creator of the Ichimoku Kinko Hyo indicator, is likely one of the first profitable systems many traders will encounter. Designed to capture trends, it performs best in markets with clear directional movements and is less suitable for range-bound markets like Forex, which often exhibit lateral price action.
This system is not recommended for low timeframes, such as minute charts, due to the random and emotionally driven nature of price movements in those periods. For a deeper exploration of this topic, I recommend reading my article “Timeframe is Everything”, which discusses the critical importance of selecting the appropriate timeframe.
I suggest testing and applying the “Hosoda’s Clouds” strategy on assets with a strong trending nature and a proven track record of performance. Ideal markets include Tesla (1-hour, 4-hour, and daily), BTC/USDT (daily), SPY (daily), and XAU/USD (daily), as these have consistently shown clear directional trends over time.
Commissions and Configuration
Commissions can be adjusted in the system’s settings to suit individual needs. For evaluating the effectiveness of “Hosoda’s Clouds,” I’ve used a standard commission of $1 per order as a baseline, though this can be modified in the code to accommodate different brokers or preferences.
The margin per trade is set to $1,000 by default, but users are encouraged to experiment with different margin settings in the configuration to match their trading style.
Rules of the “Hosoda’s Clouds” System (Bullish Strategy)
This strategy is designed to capture trending movements in bullish markets using the Ichimoku Kinko Hyo indicator. The rules are as follows:
Long Entry: A long position is triggered when the Tenkan-sen crosses above the Kijun-sen below the Ichimoku cloud, identifying potential reversals or bounces in a bearish context.
Stop Loss (SL): Placed at the low of the candle 12 bars prior to the entry candle. This setting has proven optimal in my tests, but it can be adjusted in the code based on risk tolerance.
Take Profit (TP): The position is closed when the Tenkan-sen crosses below the bottom of the Ichimoku cloud (the minimum of Senkou Span A and Senkou Span B).
Notes on the Code
margin_long=0: Ideal for strategies requiring a fixed position size, particularly useful for manual entries or testing with a constant capital allocation.
margin_long=100: Recommended for high-frequency systems where positions are closed quickly, simulating gradual growth based on realized profits and reflecting real-world broker constraints.
System Performance
The following performance metrics account for $1 per order commissions and were tested on the specified assets and timeframes:
Tesla (H1)
Trades: 148
Win Rate: 29.05%
Period: Jan 2, 2014 – Jan 6, 2020 (+172%)
Simple Annual Growth Rate: +34.3%
Trades: 130
Win Rate: 30.77%
Period: Jan 2, 2020 – Sep 24, 2025 (+858.90%)
Simple Annual Growth Rate: +150.7%
Tesla (H4)
Trades: 102
Win Rate: 32.35%
Period: Jun 29, 2010 – Sep 24, 2025 (+11,356.36%)
Simple Annual Growth Rate: +758.5%
Tesla (Daily)
Trades: 56
Win Rate: 35.71%
Period: Jun 29, 2010 – Sep 24, 2025 (+3,166.64%)
Simple Annual Growth Rate: +211.5%
BTC/USDT (Daily)
Trades: 44
Win Rate: 31.82%
Period: Sep 30, 2017 – Sep 24, 2025 (+2,592.23%)
Simple Annual Growth Rate: +324.8%
SPY (Daily)
Trades: 81
Win Rate: 37.04%
Period: Jan 23, 1993 – Sep 24, 2025 (+476.90%)
Simple Annual Growth Rate: +14.3%
XAU/USD (Daily)
Trades: 216
Win Rate: 32.87%
Period: Jan 6, 1833 – Sep 24, 2025 (+5,241.73%)
Simple Annual Growth Rate: +27.1%
SPX (Daily)
Trades: 217
Win Rate: 38.25%
Period: Feb 1, 1871 – Sep 24, 2025 (+16,791.02%)
Simple Annual Growth Rate: +108.1%
Conclusion
With the “ Hosoda’s Clouds ” strategy, I aim to showcase the potential of technical analysis to generate consistent profits in trending markets, challenging recent doubts about its effectiveness. My goal is for this system to serve as both a practical tool for traders and a source of inspiration for the trading community I deeply respect. I hope it encourages the creation of new strategies, fosters creativity in technical analysis, and empowers traders to approach the markets with confidence and discipline.
Consensio with colouringConsensio MA - Short MA with Colouring
This is a trend-following indicator based on the stacking order of three Simple Moving Averages (SMAs) to determine market consensus and visualize strength using a monochrome scale.
Key Features:
Three Customizable SMAs:
Fast MA (Default: 2)
Standard MA (Default: 7)
Slow MA (Default: 30)
Consensus Index:
The indicator assigns a score from +3 (Strongest Buy) to -3 (Strongest Sell) based on the MAs' vertical order (e.g., Fast > Standard > Slow is +3).
Monochrome Bar Colouring:
Bullish Consensus (+1 to +3): Bars are coloured in shades of White to Light Gray.
Bearish Consensus (-1 to -3): Bars are coloured in shades of Black to Dark Gray.
The intensity of the colour directly reflects the strength of the consensus.
Dynamic MA Line Colouring:
Fast MA: Changes colour upon crossing the Standard or Slow MA to signal short-term momentum shifts.
Standard MA: Changes to Green/Red when crossing the Slow MA.
Slow MA: Changes to Green/Red only when the strongest consensus (+3 or -3) is achieved.
How to Interpret:
Strong Bullish Trend (+3): MAs are perfectly aligned (Fast > Standard > Slow) and the bar is pure White.
Strong Bearish Trend (-3): MAs are perfectly reversed (Slow > Standard > Fast) and the bar is pure Black.
Contradictory Signals: Use the Fast MA's colour changes (Dark Green/Red) to spot immediate momentum changes even if the bar colour indicates a weaker trend.
Volume DMAO [DCAUT]█ Volume DMAO Indicator
📊 OVERVIEW
The Volume DMAO (Dual Moving Average Oscillator) applies PPO-style calculation to volume data rather than price. It measures the percentage difference between fast and slow moving averages of volume, providing insights into volume momentum and market participation trends.
🎯 CONCEPTS
Signal Interpretation
Positive Values : Current volume above historical average (expansion phase)
Negative Values : Current volume below historical average (contraction phase)
Rising Trend : Volume momentum accelerating (increasing participation)
Falling Trend : Volume momentum decelerating (decreasing participation)
Primary Applications
Volume Confirmation : Validate price movements with volume momentum analysis
Divergence Detection : Spot potential reversals when volume diverges from price
Trend Strength : Assess volume participation in price trends
Entry/Exit Signals : Time trades based on volume momentum shifts
📋 PARAMETER SETUP
Input Parameters
Fast Length : Period for fast moving average (default: 12)
Slow Length : Period for slow moving average (default: 50)
MA Type : Moving average algorithm (default: EMA)
📊 COLOR CODING
Histogram Colors
Dark Green : Positive and rising (strong volume expansion)
Light Green : Positive and falling (weakening volume expansion)
Light Red : Negative and rising (recovering from volume contraction)
Dark Red : Negative and falling (strong volume contraction)
💡 CORE VALUE
Unlike traditional volume indicators, Volume DMAO provides normalized percentage readings that:
- Enable comparison across different timeframes and instruments
- Reveal volume momentum changes before price movements
- Identify market phases through volume participation analysis
Volume-Price Divergence Indicator (OBV + VWAP, Multi-Timeframe)Description:
This indicator helps you identify volume-price divergences and potential trend weakness across any specified timeframe.
Features:
Volume bars with moving average – green for bullish, red for bearish, with orange SMA to detect low-volume situations.
Custom OBV calculation with divergence detection – highlights when price makes new highs/lows but OBV does not.
VWAP deviation alerts – signals when price moves far from VWAP while volume remains low, indicating potential fake breakouts.
Fully configurable – select any reference timeframe, adjust volume MA, OBV period, and VWAP deviation threshold.
Visual markers – easily spot bullish/bearish divergences and volume-price mismatches directly on your chart.
Use case:
Spot early trend exhaustion points.
Identify fake breakouts or weak rallies/drops.
Combine with your existing trading strategy for more informed entries and exits.
Volume-Weighted RSI & Multi-Normalized MACD### Description for Publishing: Volume-Weighted RSI & Multi-Normalized MACD
**Overview**
The "Volume-Weighted RSI & Multi-Normalized MACD" indicator is a powerful and versatile tool designed for traders seeking enhanced momentum and trend analysis. Combining a volume-weighted Relative Strength Index (VW-RSI) with a customizable Moving Average Convergence Divergence (MACD) featuring multiple normalization methods, this indicator provides deep insights into market dynamics. It supports multi-timeframe (MTF) analysis and includes an optional stepped plotting mode for discrete signal visualization, making it ideal for both trend-following and mean-reversion strategies across various markets (stocks, forex, crypto, etc.).
**Key Features**
1. **Volume-Weighted RSI (VW-RSI)**:
- A modified RSI that incorporates trading volume for greater sensitivity to market activity.
- Normalized to a user-defined range (default: -50 to +50) for consistent analysis.
- Optional smoothing with multiple moving average types (SMA, EMA, WMA, VWMA, SMMA, or SMA with Bollinger Bands) to reduce noise and highlight trends.
- Overbought (+20) and oversold (-20) levels for quick reference.
2. **Multi-Normalized MACD**:
- Offers six normalization methods for MACD, allowing traders to tailor the output to their strategy:
- Normalized Volume Weighted MACD (unbounded).
- Min-Max Normalization (bounded).
- Volatility Normalization (unbounded, volatility-adjusted).
- Volatility Normalization with Min-Max (bounded).
- Hyperbolic Tangent Normalization (bounded).
- Arctangent Normalization (bounded).
- Min-Max with Smoothing (bounded).
- All bounded methods scale to the user-defined range (default: -50 to +50), ensuring comparability with VW-RSI.
- Dynamic color changes for MACD line (lime/red) and histogram (aqua/blue/red/maroon) based on momentum and signal line crosses.
3. **Stepped Plotting Mode**:
- Optional mode to plot RSI and MACD as discrete, stepped lines, reducing noise by only updating when values change significantly (configurable thresholds).
- Ideal for traders focusing on clear, actionable signal changes.
4. **Multi-Timeframe Support**:
- Configurable timeframe input (default: chart timeframe) for analyzing RSI and MACD on higher or lower timeframes, enhancing cross-timeframe strategies.
5. **Customizable Display**:
- Toggle options to show/hide MACD line, signal line, histogram, and cross dots.
- Bollinger Bands for RSI smoothing (optional) with adjustable standard deviation multiplier.
- Clear visual cues with horizontal lines for overbought/oversold levels, midline, and MACD bounds.
**Usage Instructions**
1. **Add to Chart**: Apply the indicator to any symbol (e.g., BTCUSD, SPY) on any timeframe (1H, 1D, etc.).
2. **Configure Settings**:
- **General**: Adjust `Lower Bound` (-50 default) and `Upper Bound` (+50 default) for the output range. Set `Timeframe` for MTF analysis. Enable `Stepped?` for discrete plotting.
- **RSI**: Choose `Price Source` (default: ohlc4), `RSI Length` (default: 9), and smoothing options (e.g., EMA, Bollinger Bands). Adjust `RSI Diff Threshold` for stepped mode.
- **MACD**: Select `Price Source`, `Fast Length` (9), `Slow Length` (21), `Signal Length` (9), and a normalization method (default: Volatility Min-Max). Adjust `MACD Diff Threshold` for stepped mode.
- **Display Options**: Toggle MACD components and histogram colors for clarity.
3. **Interpretation**:
- **VW-RSI**: Watch for crosses above +20 (overbought) or below -20 (oversold) for potential reversals. Use smoothed RSI or Bollinger Bands for trend confirmation.
- **MACD**: Look for MACD/Signal line crosses (dots indicate crossings) and histogram changes for momentum shifts. Bounded normalizations align with RSI for unified analysis.
- **Stepped Mode**: Focus on significant changes in RSI/MACD for clearer signals.
4. **Companion Overlay**: For visualization on the main price chart, use the companion script "VW-RSI & MACD Price Overlay" (available separately, requires this script to be published). It plots RSI and MACD as price-scaled echo lines, with toggles to show/hide and customizable scaling (high/low or ATR).
**Who Is This For?**
- **Trend Traders**: Use MACD normalizations and MTF to identify momentum shifts across timeframes.
- **Mean-Reversion Traders**: Leverage VW-RSI’s overbought/oversold signals for entry/exit points.
- **Technical Analysts**: Customize normalization and smoothing to match specific market conditions.
- **All Markets**: Works on stocks, forex, cryptocurrencies, and more, with any timeframe.
**Notes**
- Unbounded MACD normalizations (`enable_nvw`, `enable_vol`) may produce values outside -50/+50, suitable for volatility-focused strategies.
- For price chart overlay, publish this script and use its ID in the companion script’s `request.security` call.
- Adjust scaling inputs in the companion script for optimal visualization on volatile or stable assets.
**Author’s Note**
Developed by NEPOLIX, this indicator combines volume-weighted precision with flexible normalization for robust technical analysis. Feedback and suggestions are welcome to enhance future versions!
MC WITH ALERTS DINESH SETHIYAManipulation Candle (MC): A candlestick that initially suggests price movement in one direction but then reverses, manipulating liquidity and closing in the opposite direction.
Types of MCs:
Bullish MC: Takes out the previous candle's low, reverses, takes out the previous candle's high, and closes above it.
Bearish MC: Takes out the previous candle's high, reverses, takes out the previous candle's low, and closes below it.
Ideal MC Characteristic: The rejection wick (bottom wick for bullish MC, top wick for bearish MC) should be larger than the directional wick.
Custom Candle Coloring (3% Drop / Breakout / Follow-through)Naveen's custom bars. It helps with custom color of the bars to see significant candle movements and their interpretations
UpDownBow + BullBear ZoneUpDownBow + BullBear UpDownBow + BullBear ZoneUpDoUpDownBow + BullBear ZoneUpDownBow + BullBear ZoneUpDownBow + BullBear ZoneUpDownBow + BullBear ZoneUpDownBow + BullBear ZonewnBow + BullBear ZoneUpDownBow + BullBear UpDownBow + BullBear ZoneUpDoUpDownBow + BullBear ZoneUpDownBow + BullBear ZoneUpDownBow + BullBear ZoneUpDownBow + BullBear ZoneUpDownBow + BullBear ZonewnBow + BullBear ZoneUpDownBow + BullBear UpDownBow + BullBear ZoneUpDoUpDownBow + BullBear ZoneUpDownBow + BullBear ZoneUpDownBow + BullBear ZoneUpDownBow + BullBear ZoneUpDownBow + BullBear ZonewnBow + BullBear ZoneUpDownBow + BullBear UpDownBow + BullBear ZoneUpDoUpDownBow + BullBear ZoneUpDownBow + BullBear ZoneUpDownBow + BullBear ZoneUpDownBow + BullBear ZoneUpDownBow + BullBear ZonewnBow + BullBear ZoneUpDownBow + BullBear UpDownBow + BullBear ZoneUpDoUpDownBow + BullBear ZoneUpDownBow + BullBear ZoneUpDownBow + BullBear ZoneUpDownBow + BullBear ZoneUpDownBow + BullBear ZonewnBow + BullBear ZoneUpDownBow + BullBear UpDownBow + BullBear ZoneUpDoUpDownBow + BullBear ZoneUpDownBow + BullBear ZoneUpDownBow + BullBear ZoneUpDownBow + BullBear ZoneUpDownBow + BullBear ZonewnBow + BullBear ZoneUpDownBow + BullBear UpDownBow + BullBear ZoneUpDoUpDownBow + BullBear ZoneUpDownBow + BullBear ZoneUpDownBow + BullBear ZoneUpDownBow + BullBear ZoneUpDownBow + BullBear ZonewnBow + BullBear ZoneUpDownBow + BullBear UpDownBow + BullBear ZoneUpDoUpDownBow + BullBear ZoneUpDownBow + BullBear ZoneUpDownBow + BullBear ZoneUpDownBow + BullBear ZoneUpDownBow + BullBear ZonewnBow + BullBear Zone
ATH Projection (2013, 2017, 2021 -> 2025)//@version=6
indicator(title="ATH Projection (2013, 2017, 2021 -> 2025)", overlay=true, max_labels_count=20, max_lines_count=20)
// ----------- Inputs (ATH manuels) -----------
t1 = input.time(defval=timestamp("2013-12-01T00:00:00"), title="Date ATH #1 (2013)")
p1 = input.float(defval=1100.0, title="Prix ATH #1 (2013)")
t2 = input.time(defval=timestamp("2017-12-01T00:00:00"), title="Date ATH #2 (2017)")
p2 = input.float(defval=20000.0, title="Prix ATH #2 (2017)")
t3 = input.time(defval=timestamp("2021-11-01T00:00:00"), title="Date ATH #3 (2021)")
p3 = input.float(defval=69000.0, title="Prix ATH #3 (2021)")
// Projection future (ex: fin 2025)
t_proj = input.time(defval=timestamp("2025-12-01T00:00:00"), title="Date cible (fin 2025)")
// ----------- Utilitaire -----------
f_days(t) => ((t - t1) / 86400000.0) + 1.0 // nb jours depuis t1 (+1 pour éviter log(0))
// ----------- Coordonnées X (jours) -----------
x1 = f_days(t1)
x2 = f_days(t2)
x3 = f_days(t3)
xP = f_days(t_proj)
// ----------- Régression power-law (3 points) -----------
X1 = math.log(x1), Y1 = math.log(p1)
X2 = math.log(x2), Y2 = math.log(p2)
X3 = math.log(x3), Y3 = math.log(p3)
n = 3.0
sumX = X1 + X2 + X3
sumY = Y1 + Y2 + Y3
sumX2 = X1*X1 + X2*X2 + X3*X3
sumXY = X1*Y1 + X2*Y2 + X3*Y3
denom = n*sumX2 - sumX*sumX
var float a = na
var float b = na
b := denom != 0 ? (n*sumXY - sumX*sumY) / denom : na
a := na(b) ? na : math.exp((sumY - b*sumX) / n)
// ----------- Courbe au fil des barres -----------
x_now = f_days(time)
curve = (not na(a) and not na(b) and x_now > 0) ? a * math.pow(x_now, b) : na
plot(series=curve, title="Courbe prévision (power-law)", color=color.fuchsia, linewidth=2)
// ----------- Projection fin 2025 -----------
proj2025 = (not na(a) and not na(b) and xP > 0) ? a * math.pow(xP, b) : na
bi_proj = ta.valuewhen(time >= t_proj, bar_index, 0)
x_for_label = na(bi_proj) ? bar_index : bi_proj
// Label affichant la projection
var label lbl = na
if barstate.islast and not na(proj2025)
txt = "Projection 2025 ≈ " + str.tostring(proj2025, format.price)
if na(lbl)
lbl := label.new(x=x_for_label, y=proj2025, text=txt, xloc=xloc.bar_index, style=label.style_label_up, color=color.green, textcolor=color.white, size=size.normal)
else
label.set_x(id=lbl, x=x_for_label)
label.set_y(id=lbl, y=proj2025)
label.set_text(id=lbl, text=txt)
Volume (Custom Timeframe & Color)This indicator displays volume data from a custom timeframe, regardless of the current chart resolution.
The bar color is determined by the price movement of the selected timeframe (green for bullish, red for bearish).
Features:
- Select any custom timeframe for volume (e.g., 5m, 15m, 1h, 1D).
- Volume bars are painted according to the candle direction of that timeframe.
- Useful for multi-timeframe analysis and detecting higher timeframe volume trends.
Inspired by TradingView’s built-in Volume indicator, but enhanced with custom timeframe and consistent coloring.
mohamed rebouh zigzag//
// mohamed rebouh
//@version=5
//
// THIS CODE IS BASED FROM THE MT4 ZIGZAG INDICATOR
// THE ZIGZAG SETTINGS FOR THE MAIN ONE ON TRADINGVIEW DO NOT WORK THE SAME AS MT4
// I HOPE U LOVE IT
//
indicator(' mohamed rebouh ', overlay=true)
// inputs
Depth = input(12, title='Depth') // Depth
Deviation = input(5, title='Deviation') // Deviation
// ZigZag
var lastlow = 0.0
var lasthigh = 0.0
data(x) =>
d = request.security(syminfo.tickerid, timeframe.period, x)
d
getLow(x, y, z, a) =>
lastlow1 = y
v = data(x)
m = v == lastlow1 or data(z) - v > a * syminfo.mintick
if v != lastlow1
lastlow1 := v
if m
v := 0.0
v
getHigh(x, y, z, a) =>
lasthigh1 = y
v = data(x)
m = v == lasthigh1 or v - data(z) > a * syminfo.mintick
if v != lasthigh1
lasthigh1 := v
if m
v := 0.0
v
= getLow(ta.lowest(Depth), lastlow, low, Deviation)
lastlow := e
zBB = v != 0.0
= getHigh(ta.highest(Depth), lasthigh, high, Deviation)
lasthigh := e1
zSS = v1 != 0.0
zigzagDirection = -1
zigzagHigh = 0
zigzagLow = 0
zigzagDirection := zBB ? 0 : zSS ? 1 : nz(zigzagDirection , -1)
virtualLow = zigzagLow + 1
if not zBB or zBB and zigzagDirection == zigzagDirection and low > low
zigzagLow := nz(zigzagLow ) + 1
zigzagLow
virtualHigh = zigzagHigh + 1
if not zSS or zSS and zigzagDirection == zigzagDirection and high < high
zigzagHigh := nz(zigzagHigh ) + 1
zigzagHigh
line zigzag = line.new(bar_index - zigzagLow, low , bar_index - zigzagHigh, high , color=color.red, style=line.style_solid, width=2)
if zigzagDirection == zigzagDirection
line.delete(zigzag )
Tristan's Star: 15m Shooting Star DetectorThis script is designed to be used on the 1-minute chart , but it analyzes the market as if you were watching the 15-minute candles.
Every cluster of 15 one-minute candles is grouped together and treated as a single 15-minute candle.
When that 15-minute “synthetic” candle looks like a shooting star pattern (small body near the low, long upper wick, short lower wick, bearish bias), the script triggers a signal.
At the close of that 15-minute cluster, the script will:
Plot a single “Sell” label on the last 1-minute bar of the group.
Draw a horizontal line across the 15 bars at the high, showing the level that created the shooting star.
Optionally display a table cell in the corner with the word “SELL.”
This lets you stay on the 1-minute timeframe for precision entries and exits, while still being alerted when the higher-timeframe (15-minute) shows a bearish reversal pattern.
BOS + Liquidity Sweep Entries//@version=5
indicator("BOS + Liquidity Sweep Entries (Both Directions) — Fixed", overlay=true, shorttitle="BOS+LS")
// ===== INPUTS =====
swingLen = input.int(5, "Swing lookback", minval=1)
sweepATRmult = input.float(0.5, "Sweep wick threshold (ATR multiplier)", minval=0.0, step=0.1)
maxBarsSinceBOS = input.int(50, "Max bars to wait for sweep after BOS", minval=1)
showLabels = input.bool(true, "Show labels", inline="lbl")
showShapes = input.bool(true, "Show shapes", inline="lbl")
atr = ta.atr(14)
// ===== PIVOTS =====
ph_val = ta.pivothigh(high, swingLen, swingLen)
pl_val = ta.pivotlow(low, swingLen, swingLen)
// persist last pivots and their bar indices
var float lastPH = na
var int lastPH_bar = na
var float lastPL = na
var int lastPL_bar = na
if not na(ph_val)
lastPH := ph_val
lastPH_bar := bar_index - swingLen
if not na(pl_val)
lastPL := pl_val
lastPL_bar := bar_index - swingLen
// ===== BOS DETECTION (record the bar where BOS first confirmed) =====
var int bull_bos_bar = na
bull_bos = not na(lastPH) and close > lastPH and bar_index > lastPH_bar
if bull_bos
// store first confirmation bar (overwrite only if new)
if na(bull_bos_bar) or bar_index > bull_bos_bar
bull_bos_bar := bar_index
var int bear_bos_bar = na
bear_bos = not na(lastPL) and close < lastPL and bar_index > lastPL_bar
if bear_bos
if na(bear_bos_bar) or bar_index > bear_bos_bar
bear_bos_bar := bar_index
// If pivots update to a more recent pivot, clear older BOS/sweep markers that predate the new pivot
if not na(lastPH_bar) and not na(bull_bos_bar)
if bull_bos_bar <= lastPH_bar
bull_bos_bar := na
// clear bull sweep when pivot updates
var int last_bull_sweep_bar = na
if not na(lastPL_bar) and not na(bear_bos_bar)
if bear_bos_bar <= lastPL_bar
bear_bos_bar := na
var int last_bear_sweep_bar = na
// ensure sweep tracking vars exist (declared outside so we can reference later)
var int last_bull_sweep_bar = na
var int last_bear_sweep_bar = na
// ===== SWEEP DETECTION =====
// Bullish sweep: wick above BOS (lastPH) by threshold, then close back below the BOS level
bull_sweep = false
if not na(bull_bos_bar) and not na(lastPH)
bars_since = bar_index - bull_bos_bar
if bars_since <= maxBarsSinceBOS
wick_above = high - lastPH
if (wick_above > sweepATRmult * atr) and (close < lastPH)
bull_sweep := true
last_bull_sweep_bar := bar_index
// Bearish sweep: wick below BOS (lastPL) by threshold, then close back above the BOS level
bear_sweep = false
if not na(bear_bos_bar) and not na(lastPL)
bars_since = bar_index - bear_bos_bar
if bars_since <= maxBarsSinceBOS
wick_below = lastPL - low
if (wick_below > sweepATRmult * atr) and (close > lastPL)
bear_sweep := true
last_bear_sweep_bar := bar_index
// ===== ENTRY RULES (only after sweep happened AFTER BOS) =====
long_entry = false
if not na(last_bull_sweep_bar) and not na(bull_bos_bar)
if (last_bull_sweep_bar > bull_bos_bar) and (bar_index > last_bull_sweep_bar) and (close > lastPH)
long_entry := true
// avoid duplicate triggers from the same sweep
last_bull_sweep_bar := na
short_entry = false
if not na(last_bear_sweep_bar) and not na(bear_bos_bar)
if (last_bear_sweep_bar > bear_bos_bar) and (bar_index > last_bear_sweep_bar) and (close < lastPL)
short_entry := true
// avoid duplicate triggers from the same sweep
last_bear_sweep_bar := na
// ===== PLOTTING LINES =====
plot(lastPH, title="Last Swing High", color=color.orange, linewidth=2, style=plot.style_linebr)
plot(lastPL, title="Last Swing Low", color=color.teal, linewidth=2, style=plot.style_linebr)
// ===== LABELS & SHAPES (managed to avoid label flooding) =====
var label lb_bull_bos = na
var label lb_bear_bos = na
var label lb_bull_sweep = na
var label lb_bear_sweep = na
var label lb_long_entry = na
var label lb_short_entry = na
if showLabels
if bull_bos
if not na(lb_bull_bos)
label.delete(lb_bull_bos)
lb_bull_bos := label.new(bar_index, high, "Bull BOS ✓", yloc=yloc.abovebar, style=label.style_label_up, color=color.green, textcolor=color.white)
if bear_bos
if not na(lb_bear_bos)
label.delete(lb_bear_bos)
lb_bear_bos := label.new(bar_index, low, "Bear BOS ✓", yloc=yloc.belowbar, style=label.style_label_down, color=color.red, textcolor=color.white)
if bull_sweep
if not na(lb_bull_sweep)
label.delete(lb_bull_sweep)
lb_bull_sweep := label.new(bar_index, high, "Bull Sweep", yloc=yloc.abovebar, style=label.style_label_down, color=color.purple, textcolor=color.white)
if bear_sweep
if not na(lb_bear_sweep)
label.delete(lb_bear_sweep)
lb_bear_sweep := label.new(bar_index, low, "Bear Sweep", yloc=yloc.belowbar, style=label.style_label_up, color=color.purple, textcolor=color.white)
if long_entry
if not na(lb_long_entry)
label.delete(lb_long_entry)
lb_long_entry := label.new(bar_index, low, "LONG ENTRY", yloc=yloc.belowbar, style=label.style_label_up, color=color.lime, textcolor=color.black)
if short_entry
if not na(lb_short_entry)
label.delete(lb_short_entry)
lb_short_entry := label.new(bar_index, high, "SHORT ENTRY", yloc=yloc.abovebar, style=label.style_label_down, color=color.red, textcolor=color.white)
// optional shapes (good for quick visual scanning)
if showShapes
plotshape(bull_sweep, title="Bull Sweep Shape", location=location.abovebar, color=color.purple, style=shape.triangledown, size=size.tiny)
plotshape(bear_sweep, title="Bear Sweep Shape", location=location.belowbar, color=color.purple, style=shape.triangleup, size=size.tiny)
plotshape(long_entry, title="Long Shape", location=location.belowbar, color=color.lime, style=shape.triangleup, size=size.small)
plotshape(short_entry, title="Short Shape", location=location.abovebar, color=color.red, style=shape.triangledown, size=size.small)
// ===== ALERTS =====
alertcondition(bull_bos, title="Bullish BOS", message="Bullish BOS confirmed above swing high")
alertcondition(bear_bos, title="Bearish BOS", message="Bearish BOS confirmed below swing low")
alertcondition(bull_sweep, title="Bullish Sweep", message="Liquidity sweep above swing high detected")
alertcondition(bear_sweep, title="Bearish Sweep", message="Liquidity sweep below swing low detected")
alertcondition(long_entry, title="LONG Entry", message="LONG Entry: BOS -> sweep -> reclaim")
alertcondition(short_entry, title="SHORT Entry", message="SHORT Entry: BOS -> sweep -> reclaim")
CDC Action Zone (TH) by MeowToolsThe CDC Action Zone indicator is like a stock market traffic light — it tells you when it’s green to go and when it’s red to stop. By combining just two EMAs (12 and 26), it highlights Buy and Sell zones clearly, cutting through market noise and keeping you on the right side of the trend. Think of it as a radar that spots the big moves before most people notice, giving you the confidence to ride the trend and exit before getting trapped. Meow 😺 give it a try and see how it can help your portfolio take off 🚀📈
Multi-Timeframe MACD Score (Customizable)this is a momentum based indicator to know the trend so we go with the trend.
EMA + MACD Entry Signals (Jason Wang)EMA9、20、200 + MACD(12、26、9) Entry Signals ,严格的设置出入场条件
1.做多的k棒:
• EMA9 > EMA200
• EMA20 > EMA200
• EMA9 > EMA20
• MACD DIF > 0 且 DIF > DEM
• 入场信号:
• DIF 上穿 DEM
• 或 EMA9 上穿 EMA20
2.做空的k棒:
• EMA9 < EMA200
• EMA20 < EMA200
• EMA9 < EMA20
• MACD DIF < 0 且 DIF < DEM
• 入场信号:
• DIF 下穿 DEM
• 或 EMA9 下穿 EMA20
HH/HL/LH/LLThe script works by detecting swing highs and swing lows with a simple pivot function (ta.pivothigh / ta.pivotlow) using a fixed 2-bar lookback and confirmation window. Each new pivot is compared against the previous confirmed pivot of the same type:
If a swing high is greater than the last swing high → it is labelled HH.
If a swing high is lower than the last swing high → it is labelled LH.
If a swing low is greater than the last swing low → it is labelled HL.
If a swing low is lower than the last swing low → it is labelled LL.
To keep the chart clean and readable, the indicator:
Plots only the two-letter labels (HH, HL, LH, LL) with no background box.
Uses red text for highs and green text for lows.
Places labels directly at the pivot bar (with the necessary confirmation offset).
Keeps labels small (size.tiny) to avoid clutter.
Stochastic 6TF by jjuiiStochastic 6TF by J is a Multi-Timeframe (MTF) Stochastic indicator
that displays %K values from up to 6 different timeframes
in a single window. This helps traders analyze momentum
across short, medium, and long-term perspectives simultaneously.
Features:
- Supports 6 customizable timeframes (e.g., 5m, 15m, 1h, 4h, 1D, 1W)
- Option to show/hide each timeframe line
- Standard reference levels (20 / 50 / 80) with background shading
- Smoothed %K for clearer visualization
Best for:
- Cross-timeframe momentum analysis
- Spotting aligned Overbought / Oversold signals
- Confirming market trends and timing entries/exits
-------------------------------------------------------------
Stochastic 6TF by J คืออินดิเคเตอร์ Stochastic Multi Timeframe (MTF)
ที่สามารถแสดงค่า %K จากหลายกรอบเวลา (สูงสุด 6 TF)
ไว้ในหน้าต่างเดียว ช่วยให้นักเทรดมองเห็นโมเมนตัมของราคา
ทั้งระยะสั้น กลาง และยาว พร้อมกัน
คุณสมบัติ:
- เลือกกรอบเวลาได้ 6 ชุด (เช่น 5m, 15m, 1h, 4h, 1D, 1W)
- สามารถเปิด/ปิดการแสดงผลแต่ละ TF ได้
- มีเส้นแนวรับ/แนวต้านมาตรฐาน (20 / 50 / 80)
- ใช้เส้น %K ที่ถูกปรับค่าเฉลี่ยให้เรียบขึ้นเพื่ออ่านง่าย
เหมาะสำหรับ:
- การดูโมเมนตัมข้ามกรอบเวลา
- หาจังหวะ Overbought / Oversold ที่สอดคล้องกันหลาย TF
- ใช้ยืนยันแนวโน้มและหาจังหวะเข้า-ออกอย่างแม่นยำมากขึ้น
Key Levels: Open & Midday🔹 Opening Candle (9:30 AM New York Time)
Plots the high and low of the first 5-minute candle after the market opens.
🔹 12:30 PM Candle (3 hours after open)
Plots the high and low of the candle formed exactly 3 hours after the market opens.
These levels are useful for:
Identifying support/resistance zones.
Creating breakout or reversal strategies.
Tracking intraday momentum shifts.
📌 Important Notes:
Designed for 5-minute charts.
Make sure your chart is set to New York time (exchange time) for accurate levels.
Happy Trading!
Positional Toolbox v6 (distinct colors)what the lines mean (colors)
EMA20 (green) = fast trend
EMA50 (orange) = intermediate trend
EMA200 (purple, thicker) = primary trend
when the chart is “bullish” vs “bearish”
Bullish bias (look for buys):
EMA20 > EMA50 > EMA200 and EMA200 sloping up.
Bearish bias (avoid longs / consider exits):
EMA20 < EMA50 < EMA200 or price closing under EMA50/EMA200.
the two buy signals the script gives you
Pullback Long (triangle up)
Prints when price dips to EMA20 (green) and closes back above it while trend is bullish and ADX is decent.
Entry: buy on the same close or on a break of that candle’s high next day.
Stop: below the pullback swing-low (or below EMA50 for simplicity).
Best for: adding on an existing uptrend after a shallow dip.
Breakout 55D (“BO55” label)
Prints when price closes above prior 55-day high with volume surge in a bullish trend.
Entry: on the close that triggers, or next day above the breakout candle’s high.
Stop: below the breakout candle’s low (conservative: below base low).
Best for: fresh trend legs from bases.
simple “sell / exit” rules
Trend exit (clean & mechanical): exit if daily close < EMA50 (orange).
More conservative: only exit if close < EMA200 (purple).
Momentum fade / weak breakout: if BO55 triggers but price re-closes back inside the base within 1–3 sessions on above-avg volume → exit or cut size.
Profit taking: book some at +1.5R to +2R, trail the rest (e.g., below prior swing lows or EMA20).
quick visual checklist (what to look for)
Are the EMAs stacked up (green over orange over purple)? → ok to buy setups.
Did a triangle print near EMA20? → pullback long candidate.
Did a BO55 label print with strong volume? → breakout candidate.
Any close under EMA50 after you’re in? → reduce/exit.
timeframe
Use Daily for positional signals.
If you want a tighter entry, drop to 30m/1h only to time the trigger—but keep decisions anchored to the daily trend.
alerts to set (so you don’t miss signals)
Add alert on Breakout 55D and Pullback Long (from the indicator’s alertconditions).
Optional price alerts at the breakout level or EMA20 touch.
risk guardrails (MTF friendly)
Risk ≤1% of capital per trade.
Avoid fresh entries within ~5 trading days of earnings unless you accept gap risk.
Prefer high-liquidity NSE F&O names (your CSV watchlist covers this).
TL;DR (super short):
Green > Orange > Purple = uptrend.
Triangle near green = buy the pullback; stop under swing low/EMA50.
BO55 label = buy the breakout; stop under breakout candle/base.
Exit on close below EMA50 (or below EMA200 if you’re giving more room).