ATR Bands with SL and TPATR Bands with SL and TP (TanTechTrades™)
This indicator uses the Average True Range (ATR) to dynamically calculate stop-loss and take-profit levels around the current price.
🔹 Features
Adjustable ATR period for volatility sensitivity
Separate multipliers for stop-loss and take-profit
Plots long/short SL and TP levels simultaneously
Color-coded bands for quick visual reference (orange = SL, blue = TP)
🔹 How to Use
For long positions: SL is plotted below price, TP above price.
For short positions: SL is plotted above price, TP below price.
The wider the ATR, the further the levels adjust, reflecting higher volatility.
This tool helps traders set volatility-based exits instead of fixed pip/point levels, making risk management more adaptive to market conditions.
⚠️ Disclaimer: For educational purposes only. Not financial advice.
Indikator dan strategi
VWAP + Bollinger Bands VWAP + Bollinger Bands (TanTechTrades™)
This indicator combines VWAP (Volume Weighted Average Price) with Bollinger Bands to provide a hybrid view of price action, volume, and volatility.
🔹 VWAP Features
Customizable anchor period (Session, Week, Month, Quarter, Year, etc.)
Option to hide VWAP automatically on daily or higher timeframes
Up to 3 configurable VWAP bands with multipliers
Bands can be calculated using Standard Deviation or Percentage
🔹 Bollinger Bands Features
Adjustable period length and source
Multiple moving average types (SMA, EMA, RMA, WMA, VWMA)
Customizable standard deviation multiplier
Configurable offset for advanced alignment
🔹 Visuals
Central VWAP line with optional surrounding bands
Bollinger Bands with customizable fills
Color-coded regions to highlight volatility expansions and contractions
This tool is designed for traders who want to see how VWAP reacts alongside volatility envelopes, making it easier to identify areas of liquidity, support/resistance, and potential breakouts or reversals.
⚠️ Disclaimer: This script is for educational purposes only. It is not financial advice.
Trend River Pullback (Avramis-style) v1//@version=5
strategy("Trend River Pullback (Avramis-style) v1",
overlay=true, initial_capital=10000, commission_type=strategy.commission.percent, commission_value=0.02,
pyramiding=0, calc_on_order_fills=true, calc_on_every_tick=true, margin_long=1, margin_short=1)
// ===== Inputs
// EMA "река"
emaFastLen = input.int(8, "EMA1 (быстрая)")
ema2Len = input.int(13, "EMA2")
emaMidLen = input.int(21, "EMA3 (средняя)")
ema4Len = input.int(34, "EMA4")
emaSlowLen = input.int(55, "EMA5 (медленная)")
// Откат и импульс
rsiLen = input.int(14, "RSI длина")
rsiOB = input.int(60, "RSI порог тренда (лонг)")
rsiOS = input.int(40, "RSI порог тренда (шорт)")
pullbackPct = input.float(40.0, "Глубина отката в % ширины реки", minval=0, maxval=100)
// Риск-менеджмент
riskPct = input.float(1.0, "Риск на сделку, % от капитала", step=0.1, minval=0.1)
atrLen = input.int(14, "ATR длина (стоп/трейлинг)")
atrMultSL = input.float(2.0, "ATR множитель для стопа", step=0.1)
tpRR = input.float(2.0, "Тейк-профит R-множитель", step=0.1)
// Трейлинг-стоп
useTrail = input.bool(true, "Включить трейлинг-стоп (Chandelier)")
trailMult = input.float(3.0, "ATR множитель трейлинга", step=0.1)
// Торговые часы (по времени биржи TradingView символа)
useSession = input.bool(false, "Ограничить торговые часы")
sessInput = input.session("0900-1800", "Сессия (локальная для биржи)")
// ===== Calculations
ema1 = ta.ema(close, emaFastLen)
ema2 = ta.ema(close, ema2Len)
ema3 = ta.ema(close, emaMidLen)
ema4 = ta.ema(close, ema4Len)
ema5 = ta.ema(close, emaSlowLen)
// "Река": верх/низ как конверт по средним
riverTop = math.max(math.max(ema1, ema2), math.max(ema3, math.max(ema4, ema5)))
riverBot = math.min(math.min(ema1, ema2), math.min(ema3, math.min(ema4, ema5)))
riverMid = (riverTop + riverBot) / 2.0
riverWidth = riverTop - riverBot
// Трендовые условия: выстроенность EMAs
bullAligned = ema1 > ema2 and ema2 > ema3 and ema3 > ema4 and ema4 > ema5
bearAligned = ema1 < ema2 and ema2 < ema3 and ema3 < ema4 and ema4 < ema5
// Импульс
rsi = ta.rsi(close, rsiLen)
// Откат внутрь "реки"
pullbackLevelBull = riverTop - riverWidth * (pullbackPct/100.0) // чем больше %, тем глубже внутрь
pullbackLevelBear = riverBot + riverWidth * (pullbackPct/100.0)
pullbackOkBull = bullAligned and rsi >= rsiOB and low <= pullbackLevelBull
pullbackOkBear = bearAligned and rsi <= rsiOS and high >= pullbackLevelBear
// Триггер входа: возврат в импульс (пересечение быстрой EMA)
longTrig = pullbackOkBull and ta.crossover(close, ema1)
shortTrig = pullbackOkBear and ta.crossunder(close, ema1)
// Сессия
inSession = useSession ? time(timeframe.period, sessInput) : true
// ATR для стопов
atr = ta.atr(atrLen)
// ===== Position sizing по риску
// Расчет размера позиции: риск% от капитала / (стоп в деньгах)
capital = strategy.equity
riskMoney = capital * (riskPct/100.0)
// Предварительные уровни стопов
longSL = close - atrMultSL * atr
shortSL = close + atrMultSL * atr
// Цена тика и размер — приблизительно через syminfo.pointvalue (может отличаться на разных рынках)
tickValue = syminfo.pointvalue
// Избежать деления на 0
slDistLong = math.max(close - longSL, syminfo.mintick)
slDistShort = math.max(shortSL - close, syminfo.mintick)
// Кол-во контрактов/лотов
qtyLong = riskMoney / (slDistLong * tickValue)
qtyShort = riskMoney / (slDistShort * tickValue)
// Ограничение: не меньше 0
qtyLong := math.max(qtyLong, 0)
qtyShort := math.max(qtyShort, 0)
// ===== Entries
if inSession and longTrig and strategy.position_size <= 0
strategy.entry("Long", strategy.long, qty=qtyLong)
if inSession and shortTrig and strategy.position_size >= 0
strategy.entry("Short", strategy.short, qty=qtyShort)
// ===== Exits: фиксированный TP по R и стоп
// Храним цену входа
var float entryPrice = na
if strategy.position_size != 0 and na(entryPrice)
entryPrice := strategy.position_avg_price
if strategy.position_size == 0
entryPrice := na
// Цели
longTP = na(entryPrice) ? na : entryPrice + tpRR * (entryPrice - longSL)
shortTP = na(entryPrice) ? na : entryPrice - tpRR * (shortSL - entryPrice)
// Трейлинг: Chandelier
trailLong = close - trailMult * atr
trailShort = close + trailMult * atr
// Итоговые уровни выхода
useTrailLong = useTrail and strategy.position_size > 0
useTrailShort = useTrail and strategy.position_size < 0
// Для лонга
if strategy.position_size > 0
stopL = math.max(longSL, na) // базовый стоп
tStop = useTrailLong ? trailLong : longSL
// Выход по стопу/трейлу и ТП
strategy.exit("L-Exit", from_entry="Long", stop=tStop, limit=longTP)
// Для шорта
if strategy.position_size < 0
stopS = math.min(shortSL, na)
tStopS = useTrailShort ? trailShort : shortSL
strategy.exit("S-Exit", from_entry="Short", stop=tStopS, limit=shortTP)
// ===== Visuals
plot(ema1, "EMA1", display=display.all, linewidth=1)
plot(ema2, "EMA2", display=display.all, linewidth=1)
plot(ema3, "EMA3", display=display.all, linewidth=2)
plot(ema4, "EMA4", display=display.all, linewidth=1)
plot(ema5, "EMA5", display=display.all, linewidth=1)
plot(riverTop, "River Top", style=plot.style_linebr, linewidth=1)
plot(riverBot, "River Bot", style=plot.style_linebr, linewidth=1)
fill(plot1=plot(riverTop, display=display.none), plot2=plot(riverBot, display=display.none), title="River Fill", transp=80)
plot(longTP, "Long TP", style=plot.style_linebr)
plot(shortTP, "Short TP", style=plot.style_linebr)
plot(useTrailLong ? trailLong : na, "Trail Long", style=plot.style_linebr)
plot(useTrailShort ? trailShort : na, "Trail Short", style=plot.style_linebr)
// Маркеры сигналов
plotshape(longTrig, title="Long Trigger", style=shape.triangleup, location=location.belowbar, size=size.tiny, text="L")
plotshape(shortTrig, title="Short Trigger", style=shape.triangledown, location=location.abovebar, size=size.tiny, text="S")
// ===== Alerts
alertcondition(longTrig, title="Long Signal", message="Long signal: trend aligned + pullback + momentum")
alertcondition(shortTrig, title="Short Signal", message="Short signal: trend aligned + pullback + momentum")
Double Median ATR Bands | MisinkoMasterThe Double Median ATR Bands is a version of the SuperTrend that is designed to be smoother, more accurate while maintaining a good speed by combining the HMA smoothing technique and the median source.
How does it work?
Very simple!
1. Get user defined inputs:
=> Set them up however you want, for the result you want!
2. Calculate the Median of the source and the ATR
=> Very simple
3. Smooth the median with √length (for example if median length = 9, it would be smoothed over the length of 3 since 3x3 = 9)
4. Add ATR bands like so:
Upper = median + (atr*multiplier)
Lower = median - (atr*multiplier)
Trend Logic:
Source crossing over the upper band = uptrend
Source crossing below the lower band = downtrend
Enjoy G´s!
Futures Multi-Asset Open Distance Table## Multi-Asset Open Distance Table - Quick Description
This Pine Script indicator displays a **real-time table** that tracks how far **three user-selected assets** are from their key opening price levels.
**What it shows:**
- **Three customizable assets** (default: NQ!, ES!, YM!)
- **Distance from 3 key opens** for each asset:
- **1800 ET Open** (Electronic trading session start)
- **0930 ET Open** (Regular market hours start)
- **Weekly Open** (Beginning of trading week)
**Visual features:**
- **Percentage changes** from each open level
- **Color coding**: Green for gains above opens, red for losses below opens
- **Direction arrows**: ▲ (above), ▼ (below), ■ (unchanged)
- **Customizable table position** and size
**Perfect for:**
- **Intraday traders** monitoring key session levels
- **Multi-timeframe analysis** across different market opens
- **Quick reference** to see which assets are performing relative to major opening levels
- **Session-based trading strategies** using 6PM and 9:30AM opens
The table updates in real-time and provides an at-a-glance view of where your chosen assets stand relative to these critical price reference points throughout the trading day.
SESSIONS Golden Team SESSIONS — Multi-Session Forex Box & Range Analysis
This indicator displays the major Forex market sessions — London, New York, Tokyo, Sydney, and Frankfurt — directly on the chart. Each session is shown as a customizable colored box with optional Fibonacci levels and opening range markers.
It also calculates and displays the average pip range of each session over a user-defined number of past days, allowing traders to analyze volatility patterns for each trading period.
Key Features:
Configurable session times and time zones
Individual on/off toggle for each session
Custom colors, box transparency, and border styles
Optional Opening Range and Fibonacci retracement levels for each session
Average pip range table for quick volatility reference
Works on any intraday timeframe
How It Works:
The script identifies the start and end times of each session based on user settings.
A box is drawn around the high/low of the session period.
At the end of each session, the pip range is recorded, and an average is calculated over the last N sessions (default: 20).
The results are displayed in a statistics table showing average pips and whether the session is currently active.
Suggested Use:
Identify high-volatility sessions for breakout trading
Filter trades to active trading hours
Study historical volatility to refine entry timing
FX Market Sessions serkanMarket stock market opening and closing indicators
Opening and closing time ranges
Frankfurt
London
CM
New York opening and closing time ranges
Cardwell RSI by TQ📌 Cardwell RSI – Enhanced Relative Strength Index
This indicator is based on Andrew Cardwell’s RSI methodology , extending the classic RSI with tools to better identify bullish/bearish ranges and trend dynamics.
In uptrends, RSI tends to hold between 40–80 (Cardwell bullish range).
In downtrends, RSI tends to stay between 20–60 (Cardwell bearish range).
Key Features :
Standard RSI with configurable length & source
Fast (9) & Slow (45) RSI Moving Averages (toggleable)
Cardwell Core Levels (80 / 60 / 40 / 20) – enabled by default
Base Bands (70 / 50 / 30) in dotted style
Optional custom levels (up to 3)
Alerts for MA crosses and level crosses
Data Window metrics: RSI vs Fast/Slow MA differences
How to Use :
Monitor RSI behavior inside Cardwell’s bullish (40–80) and bearish (20–60) ranges
Watch RSI crossovers with Fast (9) and Slow (45) MAs to confirm momentum or trend shifts
Use levels and alerts as confluence with your trading strategy
Default Settings :
RSI Length: 14
MA Type: WMA
Fast MA: 9 (hidden by default)
Slow MA: 45 (hidden by default)
Cardwell Levels (80/60/40/20): ON
Base Bands (70/50/30): ON
EMA MACD - 5-20Based on Crossover and Big timeframe EMA Support and resistance this strategy is developed.
Adaptive Trend Following Suite [Alpha Extract]A sophisticated multi-filter trend analysis system that combines advanced noise reduction, adaptive moving averages, and intelligent market structure detection to deliver institutional-grade trend following signals. Utilizing cutting-edge mathematical algorithms and dynamic channel adaptation, this indicator provides crystal-clear directional guidance with real-time confidence scoring and market mode classification for professional trading execution.
🔶 Advanced Noise Reduction
Filter Eliminates market noise using sophisticated Gaussian filtering with configurable sigma values and period optimization. The system applies mathematical weight distribution across price data to ensure clean signal generation while preserving critical trend information, automatically adjusting filter strength based on volatility conditions.
advancedNoiseFilter(sourceData, filterLength, sigmaParam) =>
weightSum = 0.0
valueSum = 0.0
centerPoint = (filterLength - 1) / 2
for index = 0 to filterLength - 1
gaussianWeight = math.exp(-0.5 * math.pow((index - centerPoint) / sigmaParam, 2))
weightSum += gaussianWeight
valueSum += sourceData * gaussianWeight
valueSum / weightSum
🔶 Adaptive Moving Average Core Engine
Features revolutionary volatility-responsive averaging that automatically adjusts smoothing parameters based on real-time market conditions. The engine calculates adaptive power factors using logarithmic scaling and bandwidth optimization, ensuring optimal responsiveness during trending markets while maintaining stability during consolidation phases.
// Calculate adaptive parameters
adaptiveLength = (periodLength - 1) / 2
logFactor = math.max(math.log(math.sqrt(adaptiveLength)) / math.log(2) + 2, 0)
powerFactor = math.max(logFactor - 2, 0.5)
relativeVol = avgVolatility != 0 ? volatilityMeasure / avgVolatility : 0
adaptivePower = math.pow(relativeVol, powerFactor)
bandwidthFactor = math.sqrt(adaptiveLength) * logFactor
🔶 Intelligent Market Structure Analysis
Employs fractal dimension calculations to classify market conditions as trending or ranging with mathematical precision. The system analyzes price path complexity using normalized data arrays and geometric path length calculations, providing quantitative market mode identification with configurable threshold sensitivity.
🔶 Multi-Component Momentum Analysis
Integrates RSI and CCI oscillators with advanced Z-score normalization for statistical significance testing. Each momentum component receives independent analysis with customizable periods and significance levels, creating a robust consensus system that filters false signals while maintaining sensitivity to genuine momentum shifts.
// Z-score momentum analysis
rsiAverage = ta.sma(rsiComponent, zAnalysisPeriod)
rsiDeviation = ta.stdev(rsiComponent, zAnalysisPeriod)
rsiZScore = (rsiComponent - rsiAverage) / rsiDeviation
if math.abs(rsiZScore) > zSignificanceLevel
rsiMomentumSignal := rsiComponent > 50 ? 1 : rsiComponent < 50 ? -1 : rsiMomentumSignal
❓How It Works
🔶 Dynamic Channel Configuration
Calculates adaptive channel boundaries using three distinct methodologies: ATR-based volatility, Standard Deviation, and advanced Gaussian Deviation analysis. The system automatically adjusts channel multipliers based on market structure classification, applying tighter channels during trending conditions and wider boundaries during ranging markets for optimal signal accuracy.
dynamicChannelEngine(baselineData, channelLength, methodType) =>
switch methodType
"ATR" => ta.atr(channelLength)
"Standard Deviation" => ta.stdev(baselineData, channelLength)
"Gaussian Deviation" =>
weightArray = array.new_float()
totalWeight = 0.0
for i = 0 to channelLength - 1
gaussWeight = math.exp(-math.pow((i / channelLength) / 2, 2))
weightedVariance += math.pow(deviation, 2) * array.get(weightArray, i)
math.sqrt(weightedVariance / totalWeight)
🔶 Signal Processing Pipeline
Executes a sophisticated 10-step signal generation process including noise filtering, trend reference calculation, structure analysis, momentum component processing, channel boundary determination, trend direction assessment, consensus calculation, confidence scoring, and final signal generation with quality control validation.
🔶 Confidence Transformation System
Applies sigmoid transformation functions to raw confidence scores, providing 0-1 normalized confidence ratings with configurable threshold controls. The system uses steepness parameters and center point adjustments to fine-tune signal sensitivity while maintaining statistical robustness across different market conditions.
🔶 Enhanced Visual Presentation
Features dynamic color-coded trend lines with adaptive channel fills, enhanced candlestick visualization, and intelligent price-trend relationship mapping. The system provides real-time visual feedback through gradient fills and transparency adjustments that immediately communicate trend strength and direction changes.
🔶 Real-Time Information Dashboard
Displays critical trading metrics including market mode classification (Trending/Ranging), structure complexity values, confidence scores, and current signal status. The dashboard updates in real-time with color-coded indicators and numerical precision for instant market condition assessment.
🔶 Intelligent Alert System
Generates three distinct alert types: Bullish Signal alerts for uptrend confirmations, Bearish Signal alerts for downtrend confirmations, and Mode Change alerts for market structure transitions. Each alert includes detailed messaging and timestamp information for comprehensive trade management integration.
🔶 Performance Optimization
Utilizes efficient array management and conditional processing to maintain smooth operation across all timeframes. The system employs strategic variable caching, optimized loop structures, and intelligent update mechanisms to ensure consistent performance even during high-volatility market conditions.
This indicator delivers institutional-grade trend analysis through sophisticated mathematical modelling and multi-stage signal processing. By combining advanced noise reduction, adaptive averaging, intelligent structure analysis, and robust momentum confirmation with dynamic channel adaptation, it provides traders with unparalleled trend following precision. The comprehensive confidence scoring system and real-time market mode classification make it an essential tool for professional traders seeking consistent, high-probability trend following opportunities with mathematical certainty and visual clarity.
Chaikin Money Flow w/ FillA regular CMF indicator, just with a green/red filling when above/below the zero line.
Minute speciale universale (3,11,17,29,41,47,53,59)//@version=5
indicator("Minute speciale universale (3,11,17,29,41,47,53,59)", overlay=true, max_labels_count=500)
// lista de minute speciale
var int specials = array.from(3, 11, 17, 29, 41, 47, 53, 59)
// minutul de start al barei (0..59)
mStart = minute(time)
// durata barei (secunde) -> minute
secInBar = timeframe.in_seconds(timeframe.period)
isIntraday = timeframe.isintraday
minutesInBar = (isIntraday and not na(secInBar)) ? math.max(1, int(math.ceil(secInBar / 60.0))) : 0
// caută dacă vreo valoare din `specials` cade în intervalul barei
bool hit = false
var int first = na
if minutesInBar > 0
for i = 0 to array.size(specials) - 1
s = array.get(specials, i)
delta = (s - mStart + 60) % 60
if delta < minutesInBar
hit := true
if na(first)
first := s
// etichetă (o singură linie ca să evităm parse issues)
if hit
label.new(bar_index, high, str.tostring(first), xloc=xloc.bar_index, yloc=yloc.abovebar, style=label.style_label_up, color=color.black, textcolor=color.white, size=size.tiny)
ST Fractals With Percentage DifferenceThis indicator identifies Williams Fractals on your price chart, helping traders spot potential reversal points and short-term highs and lows. This changes default value to 1 and adds percentage difference similar to ST Fractals option on MT5
How It Works:
Up Fractals (▲): Plotted above a candle that is higher than its surrounding candles — a potential short-term top.
Down Fractals (▼): Plotted below a candle that is lower than its surrounding candles — a potential short-term bottom.
Fractals are only drawn if the price difference from the next candle exceeds a minimum percentage, to avoid signals caused by small fluctuations.
The script ensures that both up and down fractals never appear on the same candle, keeping your chart clear.
Settings:
Periods (n): Determines how many candles before and after are considered to find a fractal. Default: 2.
Min % Difference: Filters out insignificant fractals by requiring a minimum difference from the next candle. Default: 0.01%.
Usage Tips:
Can be used to identify support and resistance levels.
Often combined with trend indicators or moving averages to confirm reversals.
Works best in markets with clear trends or volatility, rather than very flat markets.
Visuals:
Green triangle ▲ → Up Fractal (potential top)
Red triangle ▼ → Down Fractal (potential bottom)
Deadband Hysteresis Filter [BackQuant]Deadband Hysteresis Filter
What this is
This tool builds a “debounced” price baseline that ignores small fluctuations and only reacts when price meaningfully departs from its recent path. It uses a deadband to define how much deviation matters and a hysteresis scheme to avoid rapid flip-flops around the decision boundary. The baseline’s slope provides a simple trend cue, used to color candles and to trigger up and down alerts.
Why deadband and hysteresis help
They filter micro noise so the baseline does not react to every tiny tick.
They stabilize state changes. Hysteresis means the rule to start moving is stricter than the rule to keep holding, which reduces whipsaw.
They produce a stepped, readable path that advances during sustained moves and stays flat during chop.
How it works (conceptual)
At each bar the script maintains a running baseline dbhf and compares it to the input price p .
Compute a base threshold baseTau using the selected mode (ATR, Percent, Ticks, or Points).
Build an enter band tauEnter = baseTau × Enter Mult and an exit band tauExit = baseTau × Exit Mult where typically Exit Mult < Enter Mult .
Let diff = p − dbhf .
If diff > +tauEnter , raise the baseline by response × (diff − tauEnter) .
If diff < −tauEnter , lower the baseline by response × (diff + tauEnter) .
Otherwise, hold the prior value.
Trend state is derived from slope: dbhf > dbhf → up trend, dbhf < dbhf → down trend.
Inputs and what they control
Threshold mode
ATR — baseTau = ATR(atrLen) × atrMult . Adapts to volatility. Useful when regimes change.
Percent — baseTau = |price| × pctThresh% . Scale-free across symbols of different prices.
Ticks — baseTau = syminfo.mintick × tickThresh . Good for futures where tick size matters.
Points — baseTau = ptsThresh . Fixed distance in price units.
Band multipliers and response
Enter Mult — outer band. Price must travel at least this far from the baseline before an update occurs. Larger values reject more noise but increase lag.
Exit Mult — inner band for hysteresis. Keep this smaller than Enter Mult to create a hold zone that resists small re-entries.
Response — step size when outside the enter band. Higher response tracks faster; lower response is smoother.
UI settings
Show Filtered Price — plots the baseline on price.
Paint candles — colors bars by the filtered slope using your long/short colors.
How it can be used
Trend qualifier — take entries only in the direction of the baseline slope and skip trades against it.
Debounced crossovers — use the baseline as a stabilized surrogate for price in moving-average or channel crossover rules.
Trailing logic — trail stops a small distance beyond the baseline so small pullbacks do not eject the trade.
Session aware filtering — widen Enter Mult or switch to ATR mode for volatile sessions; tighten in quiet sessions.
Parameter interactions and tuning
Enter Mult vs Response — both govern sensitivity. If you see too many flips, increase Enter Mult or reduce Response. If turns feel late, do the opposite.
Exit Mult — widening the gap between Enter and Exit expands the hold zone and reduces oscillation around the threshold.
Mode choice — ATR adapts automatically; Percent keeps behavior consistent across instruments; Ticks or Points are useful when you think in fixed increments.
Timeframe coupling — on higher timeframes you can often lower Enter Mult or raise Response because raw noise is already reduced.
Concrete starter recipes
General purpose — ATR mode, atrLen=14 , atrMult=1.0–1.5 , Enter=1.0 , Exit=0.5 , Response=0.20 . Balanced noise rejection and lag.
Choppy range filter — ATR mode, increase atrMult to 2.0, keep Response≈0.15 . Stronger suppression of micro-moves.
Fast intraday — Percent mode, pctThresh=0.1–0.3 , Enter=1.0 , Exit=0.4–0.6 , Response=0.30–0.40 . Quicker turns for scalping.
Futures ticks — Ticks mode, set tickThresh to a few spreads beyond typical noise; start with Enter=1.0 , Exit=0.5 , Response=0.25 .
Strengths
Clear, explainable logic with an explicit noise budget.
Multiple threshold modes so the same tool fits equities, futures, and crypto.
Built-in hysteresis that reduces flip-flop near the boundary.
Slope-based coloring and alerts that make state changes obvious in real time.
Limitations and notes
All filters add lag. Larger thresholds and smaller response trade faster reaction for fewer false turns.
Fixed Points or Ticks can under- or over-filter when volatility regime shifts. ATR adapts, but will also expand bands during spikes.
On extremely choppy symbols, even a well tuned band will step frequently. Widen Enter Mult or reduce Response if needed.
This is a chart study. It does not include commissions, slippage, funding, or gap risks.
Alerts
DBHF Up Slope — baseline turns from down to up on the latest bar.
DBHF Down Slope — baseline turns from up to down on the latest bar.
Implementation details worth knowing
Initialization sets the baseline to the first observed price to avoid a cold-start jump.
Slope is evaluated bar-to-bar. The up and down alerts check for a change of slope rather than raw price crossings.
Candle colors and the baseline plot share the same long/short palette with transparency applied to the line.
Practical workflow
Pick a mode that matches how you think about distance. ATR for volatility aware, Percent for scale-free, Ticks or Points for fixed increments.
Tune Enter Mult until the number of flips feels appropriate for your timeframe.
Set Exit Mult clearly below Enter Mult to create a real hold zone.
Adjust Response last to control “how fast” the baseline chases price once it decides to move.
Final thoughts
Deadband plus hysteresis gives you a principled way to “only care when it matters.” With a sensible threshold and response, the filter yields a stable, low-chop trend cue you can use directly for bias or plug into your own entries, exits, and risk rules.
SMA Crossover High/Low LinesSMA Crossover High/Low Lines (@version=5)
Purpose
This indicator plots horizontal lines and optional price labels on the high and low of candles where the price crosses a Simple Moving Average (SMA). It helps identify buy/sell signals visually on the chart.
Inputs
smaLength – Length of the SMA (default: 50).
showType – Which crossovers to show: "Both", "Buy Only", or "Sell Only".
lineLength – How many bars the horizontal line extends (default: 10).
showPriceLabels – Whether to show price labels at crossover points (true/false).
Logic
SMA Calculation – Computes a simple moving average of the closing price.
Crossover Detection:
crossUp → price crosses above SMA (buy signal).
crossDown → price crosses below SMA (sell signal).
Draw Horizontal Lines – At candle high and low of crossover:
Green for buy (crossUp)
Red for sell (crossDown)
Lines extend for lineLength bars
Optional Labels – Shows the high/low price at the end of the horizontal line if showPriceLabels is true.
Visualization
SMA line plotted in blue.
Buy crossovers → green horizontal lines and labels.
Sell crossovers → red horizontal lines and labels.
In short:
This indicator highlights buy/sell points where price crosses the SMA by marking candle highs/lows with colored lines and optional price labels for easy visual reference.
VWAP MTF Scalping ModuleThe VWAP MTF indicator allows you to visualize anchored VWAP across multiple timeframes, while maintaining a clean and responsive display.
Designed for intraday traders, scalpers, and swing traders, this module offers a clear view of volume-weighted average price zones across key timeframes (1m, 5m, 15m, 1h... customizable).
Shalev OB V2Indicator for OB for order blocks trade used to send an slert every time there is a new OB created or an old one is tuched
Rocket/Bomb PPO + SMI (confirmed, no repaint) — 1-liner labelsName: Rocket/Bomb PPO + SMI (confirmed, non-repaint)
What it does
Combines PPO (Percentage Price Oscillator) momentum with SMI (Stochastic Momentum Index) timing.
Prints a 🚀 “Rocket” buy label when PPO crosses up its signal and SMI crosses up its signal (momentum + timing agree).
Prints a 💣 “Bomb” sell label when PPO crosses down its signal and SMI crosses down its signal.
Labels are offset by ATR so they sit neatly above/below bars.
Why it’s clean (non-repaint)
Signals are gated by bar close confirmation (barstate.isconfirmed), so labels only appear after the bar closes—no flicker or back-filling.
Optional filter
“Strict SMI zone” filter: only allow buys when SMI < –Z and sells when SMI > +Z (default Z=20). This reduces noise in choppy markets.
Customization
PPO/SMI lengths, strict zone level, emoji vs arrows, label colors, icon size, and ATR offset are all configurable.
Alerts
Built-in alert conditions for Rocket (Long) and Bomb (Short) so you can automate notifications.
How to use (at a glance)
Trade in the direction of the Rocket/Bomb labels; the strict zone option helps avoid weak signals.
Best paired with basic trend or S/R context (e.g., higher-time-frame trend filter, recent swing levels) for entries/exits.
bygokcebey crt 1-5-9This script is designed to help you effortlessly track the 1 AM, 5 AM, and 9 AM timeframes, and monitor these levels across lower timeframes as well. It allows you to easily identify key price levels, such as the lowest, highest, and mid points during these crucial times, giving you a clear visual guide for trading decisions.
Key Features:
Defined Timeframes: The script specifically highlights the 1 AM, 5 AM, and 9 AM timeframes by drawing lines (representing the low, high, and mid levels) and adding labels (CRT Low, CRT High, and 50%) at these critical times.
Visibility of Time Levels: These key levels will appear only during the specified timeframes, ensuring a clean chart with relevant data at key moments.
Tracking in Lower Timeframes: These levels can also be followed in lower timeframes (e.g., 4-hour charts), allowing traders to monitor the important price levels continuously as they evolve.
Indicator Features:
The "bygokcebey crt 1-5-9" indicator will plot lines and labels only during the 1 AM, 5 AM, and 9 AM timeframes.
These levels can be tracked across lower timeframes, offering continuous reference points for your trades.
The lines and labels serve as visual markers, helping you track significant price points and providing a reliable guide to refine your trading strategy.
If you'd like to add more features or make any adjustments, feel free to let me know how I can assist further!
Renko RSI (Brick-Triggered, Red/Green Only) MODIFIEDhe Renko RSI (Brick-Triggered, Red/Green Only) Modified indicator is a specialized trading tool designed for use with Renko charts, which focus solely on price movements rather than time. This modified version enhances the traditional Renko RSI by triggering signals based on brick formations (price blocks) and uses only red and green colors to indicate trend direction—green for bullish (upward) trends and red for bearish (downward) trends. It integrates the Relative Strength Index (RSI) to identify potential reversals or continuations when Renko bricks change direction, filtering out market noise for clearer trend analysis. The indicator is tailored to highlight high-probability entry and exit points, making it suitable for traders seeking a simplified, visual approach to spotting trends and reversals, especially on assets like crypto on short timeframes such as 15-minute or 1-hour charts.
Prev Day Volume ProfileWhat the script does
Calculates yesterday’s Volume Profile from the bars on your chart (not tick data) and derives:
POC (Point of Control)
VAL (Value Area Low)
VAH (Value Area High)
Draws three horizontal lines for today:
POC in orange
VAL and VAH in purple
Adds labels on the right edge that show the level name and the exact price (e.g., POC 1.2345).
Why it’s bar-based (not tick-based)
Pine Script can’t fetch external tick/aggTrades data. The script approximates a volume profile by distributing each bar’s volume across the price bins that the bar’s high–low range covers. For “yesterday”, this produces a stable, TV-native approximation that’s usually sufficient for intraday trading.
Key inputs
Value Area %: Defaults to 0.70 (70%)—the typical value area range.
TZ Offset vs Exchange (hours): Shifts the day boundary to match your desired session (e.g., Europe/Berlin: +1 winter / +2 summer). This ensures “yesterday” means 00:00–24:00 in your target timezone.
Row Size: Manual? / Manual Row Size: If enabled, you can set the price bin size yourself. Otherwise, the script chooses a TV-like step from syminfo.mintick.
Colors & Line width: POC orange; VAL/VAH purple; configurable width.