Enhanced Crypto Master Indicator v6//@version=5
indicator("Enhanced Crypto Master Indicator v6", overlay=true, max_labels_count=500)
// ———— 1. Trend Filter (EMA Cross + ADX Trend Strength) ————
emaFast = ta.ema(close, 50)
emaSlow = ta.ema(close, 200)
emaBullish = ta.crossover(emaFast, emaSlow)
emaBearish = ta.crossunder(emaFast, emaSlow)
// ADX Trend Strength (Fixed DMI Parameters)
adxLength = input(14, "ADX Length")
adxSmoothing = input(14, "ADX Smoothing") // Added missing parameter
= ta.dmi(adxLength, adxSmoothing) // Corrected DMI syntax
strongTrend = adx > 25
// ———— 2. Momentum Filter (RSI Hidden Divergence) ————
rsiLength = input(14, "RSI Length")
rsi = ta.rsi(close, rsiLength)
// Bullish Divergence: Price Lower Low + RSI Higher Low
priceLL = ta.lowest(low, 5) < ta.lowest(low, 5)
rsiHL = ta.lowest(rsi, 5) > ta.lowest(rsi, 5)
bullishDivergence = priceLL and rsiHL
// Bearish Divergence: Price Higher High + RSI Lower High
priceHH = ta.highest(high, 5) > ta.highest(high, 5)
rsiLH = ta.highest(rsi, 5) < ta.highest(rsi, 5)
bearishDivergence = priceHH and rsiLH
// ———— 3. Volume Surge (2x Average) ————
volumeAvg = ta.sma(volume, 20)
volumeSpike = volume > volumeAvg * 2
// ———— 4. Volatility Filter (Bollinger Squeeze) ————
bbLength = input(20, "BB Length")
bbMult = input(2.0, "BB Multiplier")
= ta.bb(close, bbLength, bbMult)
kcLength = input(20, "KC Length")
kcMult = input(1.5, "KC Multiplier")
kcUpper = ta.ema(close, kcLength) + ta.atr(kcLength) * kcMult
kcLower = ta.ema(close, kcLength) - ta.atr(kcLength) * kcMult
squeeze = bbUpper < kcUpper and bbLower > kcLower
// ———— 5. Time-Based Confirmation ————
bullishConfirmation = close > emaFast and close > emaFast
bearishConfirmation = close < emaFast and close < emaFast
// ———— Final Signals ————
buySignal = emaBullish and bullishDivergence and volumeSpike and squeeze and bullishConfirmation and strongTrend
sellSignal = emaBearish and bearishDivergence and volumeSpike and squeeze and bearishConfirmation and strongTrend
// ———— Plots ————
plotshape(buySignal, style=shape.triangleup, location=location.belowbar, color=color.new(color.green, 0), size=size.small)
plotshape(sellSignal, style=shape.triangledown, location=location.abovebar, color=color.new(color.red, 0), size=size.small)
plot(emaFast, color=color.blue)
plot(emaSlow, color=color.red)
頻帶和通道
Tight Consolidation With Contracting Volume1. Price is above EMA20 by 0-3%
2. EMA20 is above EMA50 by 1%-3%
3. Latest close is positive
4. Latest volume is lower than 20 day average by at least 30%
5. Show signal as an arrow below the candle
SMAs (14,21,50,100) by ShabiDefinition
This is the Simple moving average of 14, 21, 50, 100) . Simple Moving Average (SMA) is a price based, lagging (or reactive) indicator that displays the average price of a security over a set period of time. A Moving Average is a good way to gauge momentum as well as to confirm trends, and define areas of support and resistance. Essentially, Moving Averages smooth out the “noise” when trying to interpret charts. Noise is made up of fluctuations of both price and volume. Because a Moving Average is a lagging indicator and reacts to events that have already happened, it is not used as a predictive indicator but rather an interpretive one, used for confirmations and analysis.
Simple Moving Average is an unweighted Moving Average. This means that each day in the data set has equal importance and is weighted equally. As each new day ends, the oldest data point is dropped and the newest one is added to the beginning.
It must be taken into account that, while SMA helps filter out the noise and see the general direction in which the symbol has been moving, it is also slow to react to newer changes. The higher the SMA length is, the longer it will take for a major price change to be notably reflected in it.
CALCULATION
A Simple Moving Average with the length of X is a sum of last X values divided by X. Here is an example calculation of an SMA with the length of 3:
Sum of Period Values / Number of Periods
Closing Prices to be used: 5, 6, 7, 8, 9
First Day of 3 Period SMA: (5 + 6 + 7) / 3 = 6
Second Day of 3 Period SMA: (6 + 7 + 8) / 3 = 7
Third Day of 3 Period SMA: (7 + 8 + 9) /3 = 8
Nadaraya-Watson Envelope [MirsaRemix] + 2 EMAsNombre del indicador: Nadaraya-Watson Envelope + 2 EMAs
Descripción:
Este script combina el cálculo avanzado del indicador Nadaraya-Watson Envelope (NWE) con la inclusión de dos medias móviles exponenciales (EMAs) configurables, proporcionando a los traders una herramienta poderosa para el análisis técnico.
Características principales:
Nadaraya-Watson Envelope (NWE):
Utiliza un modelo de suavizado basado en la ventana gaussiana, permitiendo detectar puntos clave de soporte y resistencia dinámica.
Incluye un modo opcional de "repainting" para obtener un suavizado en tiempo real.
Indicaciones visuales de posibles puntos de cruce (flechas hacia arriba y abajo) cuando el precio cruza los límites del envelope.
Medias Móviles Exponenciales (EMAs):
Dos EMAs configurables para ayudar a identificar tendencias y zonas de entrada/salida.
Colores y longitudes personalizables:
EMA 1: Azul (por defecto con una longitud de 20).
EMA 2: Naranja (por defecto con una longitud de 50).
Interfaz intuitiva:
Opciones para ajustar parámetros como el ancho de banda, el factor de multiplicación, y las longitudes de las EMAs.
Indicador compatible con gráficos de TradingView y diseñado para ser utilizado en cualquier marco temporal.
Usos del indicador:
Identificar tendencias generales del mercado con las EMAs.
Detectar posibles niveles de soporte y resistencia dinámicos con la envolvente Nadaraya-Watson.
Encontrar oportunidades de trading con las señales visuales de cruces de límites.
Este indicador es ideal para traders que buscan combinar estrategias basadas en medias móviles con análisis dinámico de precios. Su versatilidad lo hace útil tanto para estrategias de scalping como de swing trading.
MA on OBV OscillatorSMA
OBV
shows the trend of the market
will assist in showing the direction of the market
SQZMOM_LB StrategyUtiliza el indicador sqzmom, abriendo operaciones cuando el indicador cambia al color 3 y cerrandolas cuando cambia al color 1
Camarilla Pivots + EMA'sMy Script with Camarilla Pivot Points Plus the ability to add 5 EMA's to the chart all built into one
RSI + Auto Support + SMC + MA 20/50+volumCombining Smart Money Concepts (SMC), volume analysis, moving averages, automatic support/resistance detection, and RSI high signals can create a powerful TradingView script for technical analysis and decision-making. Here's an outline of how you can integrate these elements into a Pine Script strategy or indicator:
Smart Money Concepts (SMC):
Identify market structure: Higher highs (HH), higher lows (HL), lower highs (LH), and lower lows (LL).
Highlight key order blocks and liquidity zones.
Volume Analysis:
Use volume as a confirmation tool for breakouts or reversals.
Display relative volume levels to spot unusual activity.
Moving Averages:
Include popular moving averages (e.g., SMA, EMA) for trend detection.
Use crossovers for entry/exit signals.
Auto Support/Resistance:
Automatically plot support and resistance zones based on pivot highs/lows.
Highlight areas of confluence with SMC or volume zones.
RSI High Signals:
Identify overbought/oversold levels on the RSI.
Mark divergence areas for potential reversals.
Here’s a simplified Pine Script to start with:
This script integrates SMC (HH/LL), volume, moving averages, RSI, and auto support/resistance into a single indicator. You can modify it to suit your trading style by adjusting lengths or adding alerts for specific conditions. Let me know if you’d like to refine or expand any part!
Gaussian Channel Strategy v3.0 - CAFGaussian channel strategy using stochastic RSI to mark buy and sell
Range Oscillation Detector / Owl of ProfitRange Oscillation Detector
The Range Oscillation Detector is designed to identify periods where price movements consistently stay within a defined range over a specified lookback period.
Features
Range Detection
Monitors the price range between a specified low ($10) and high ($15).
Evaluates if all days within the lookback period are confined to the specified range.
Default lookback period: 30 days.
Visual Indicator
Highlights the chart's background in green when the range condition is met.
Alert System
Sends an alert when the price has been oscillating between the defined range for the entire lookback period.
Use Case
This tool is ideal for range-bound trading strategies, allowing traders to identify assets with consistent price oscillation between defined levels, potentially indicating sideways markets or consolidation zones.
Visit my website for more tools and strategies: bybitindicators.com
Happy trading!
XAUKILLERThis indicator is structured as follows:
1- The SMA 8-18-50-200 averages are used.
2- The term "FOP" is used to refere to the opening of the Frankfurt Stock Exchange at 9:00 AM.
3- The Asian session is marked, starting at 1:00 AM and ending at 7:00 AM.
4- Restricted Liquidity levels are indicated, corresponding to +127% and -127% of the Asian range.
Cyril//@version=6
indicator("Signaux BB (Réintégration) avec RSI", overlay=true)
// Paramètres des Bandes de Bollinger
bb_length = 20 // Période des Bandes de Bollinger
bb_dev = 1.6 // Déviation standard
// Calcul des Bandes de Bollinger
basis = ta.sma(close, bb_length) // Moyenne mobile simple
dev = bb_dev * ta.stdev(close, bb_length) // Déviation standard
upper_bb = basis + dev // Bande supérieure
lower_bb = basis - dev // Bande inférieure
// Tracer les Bandes de Bollinger
plot(upper_bb, color=color.orange, linewidth=1, title="Bande Supérieure")
plot(basis, color=color.blue, linewidth=1, title="Moyenne Mobile")
plot(lower_bb, color=color.orange, linewidth=1, title="Bande Inférieure")
// Paramètres du RSI
rsi_length = 14 // Période du RSI
rsi_overbought = 60 // Niveau RSI pour les ventes
rsi_oversold = 35 // Niveau RSI pour les achats
// Calcul du RSI
rsi = ta.rsi(close, rsi_length)
// Conditions pour les signaux d'achat et de vente
buy_signal = (open < lower_bb and close < lower_bb and close > lower_bb and rsi < rsi_oversold)
sell_signal = (open > upper_bb and close > upper_bb and close < upper_bb and rsi > rsi_overbought)
// Afficher les signaux UNIQUEMENT si la condition RSI est respectée
plotshape(buy_signal, style=shape.triangleup, location=location.belowbar, color=color.green, size=size.small, title="Achat")
plotshape(sell_signal, style=shape.triangledown, location=location.abovebar, color=color.red, size=size.small, title="Vente")
8888325335/@version=5
indicator("Bit Bite ht",shorttitle = "Bit Bite hindi technical", overlay = true)
src = input(hl2, title="Source",group = "Trend Continuation Signals with TP & SL")
Multiplier = input.float(2,title="Sensitivity (0.5 - 5)", step=0.1, defval=2, minval=0.5, maxval=5,group = "Trend Continuation Signals with TP & SL")
atrPeriods = input.int(14,title="ATR Length", defval=10,group = "Trend Continuation Signals with TP & SL")
atrCalcMethod= input.string("Method 1",title = "ATR Calculation Methods",options = ,group = "Trend Continuation Signals with TP & SL")
cloud_val = input.int(10,title = "Cloud Moving Average Length", defval = 10, minval = 5, maxval = 500,group = "Trend Continuation Signals with TP & SL")
stopLossVal = input.float(2.0, title="Stop Loss Percent (0 for Disabling)", minval=0,group = "Trend Continuation Signals with TP & SL")
showBuySellSignals = input.bool(true,title="Show Buy/Sell Signals", defval=true,group = "Trend Continuation Signals with TP & SL")
showMovingAverageCloud = input.bool(true, title="Show Cloud MA",group = "Trend Continuation Signals with TP & SL")
percent(nom, div) =>
100 * nom / div
src1 = ta.hma(open, 5)
src2 = ta.hma(close, 12)
momm1 = ta.change(src1)
momm2 = ta.change(src2)
f1(m, n) => m >= n ? m : 0.0
f2(m, n) => m >= n ? 0.0 : -m
m1 = f1(momm1, momm2)
m2 = f2(momm1, momm2)
sm1 = math.sum(m1, 1)
sm2 = math.sum(m2, 1)
cmoCalc = percent(sm1-sm2, sm1+sm2)
hh = ta.highest(2)
h1 = ta.dev(hh, 2) ? na : hh
hpivot = fixnan(h1)
ll = ta.lowest(2)
l1 = ta.dev(ll, 2) ? na : ll
lpivot = fixnan(l1)
rsiCalc = ta.rsi(close,9)
lowPivot = lpivot
highPivot = hpivot
sup = rsiCalc < 25 and cmoCalc > 50 and lowPivot
res = rsiCalc > 75 and cmoCalc < -50 and highPivot
atr2 = ta.sma(ta.tr, atrPeriods)
atr= atrCalcMethod == "Method 1" ? ta.atr(atrPeriods) : atr2
up=src-(Multiplier*atr)
up1 = nz(up ,up)
up := close > up1 ? math.max(up,up1) : up
dn=src+(Multiplier*atr)
dn1 = nz(dn , dn)
dn := close < dn1 ? math.min(dn, dn1) : dn
trend = 1
trend := nz(trend , trend)
trend := trend == -1 and close > dn1 ? 1 : trend == 1 and close < up1 ? -1 : trend
buySignal = trend == 1 and trend == -1
sellSignal = trend == -1 and trend == 1
pos = 0.0
pos:= buySignal? 1 : sellSignal ? -1 : pos
longCond = buySignal and pos != 1
shortCond = sellSignal and pos !=-1
entryOfLongPosition = ta.valuewhen(longCond , close, 0)
entryOfShortPosition = ta.valuewhen(shortCond, close, 0)
sl = stopLossVal > 0 ? stopLossVal / 262 : 99999
stopLossForLong = entryOfLongPosition * (1 - sl)
stopLossForShort = entryOfShortPosition * (1 + sl)
takeProfitForLong1R = entryOfLongPosition * (1 + sl)
takeProfitForShort1R = entryOfShortPosition * (1 - sl)
takeProfitForLong2R = entryOfLongPosition * (1 + sl*2)
takeProfitForShort2R = entryOfShortPosition * (1 - sl*2)
takeProfitForLong3R = entryOfLongPosition * (1 + sl*3)
takeProfitForShort3R = entryOfShortPosition * (1 - sl*3)
long_sl = low < stopLossForLong and pos ==1
short_sl = high> stopLossForShort and pos ==-1
takeProfitForLongFinal = high>takeProfitForLong3R and pos ==1
takeProfitForShortFinal = low 0?entryOfLongPosition :entryOfShortPosition , pos>0?lindex:sindex, pos>0?entryOfLongPosition :entryOfShortPosition , color=entryColor )
line.delete(lineEntry )
stopLine = line.new(bar_index, pos>0?stopLossForLong :stopLossForShort , pos>0?lindex:sindex, pos>0?stopLossForLong :stopLossForShort , color=color.red )
tpLine1 = line.new(bar_index, pos>0?takeProfitForLong1R:takeProfitForShort1R, pos>0?lindex:sindex, pos>0?takeProfitForLong1R:takeProfitForShort1R, color=color.green)
tpLine2 = line.new(bar_index, pos>0?takeProfitForLong2R:takeProfitForShort2R, pos>0?lindex:sindex, pos>0?takeProfitForLong2R:takeProfitForShort2R, color=color.green)
tpLine3 = line.new(bar_index, pos>0?takeProfitForLong3R:takeProfitForShort3R, pos>0?lindex:sindex, pos>0?takeProfitForLong3R:takeProfitForShort3R, color=color.green)
line.delete(stopLine )
line.delete(tpLine1 )
line.delete(tpLine2 )
line.delete(tpLine3 )
labelEntry = label.new(bar_index, pos>0?entryOfLongPosition :entryOfShortPosition , color=entryColor , textcolor=#000000, style=label.style_label_left, text="Entry Price: " + str.tostring(pos>0?entryOfLongPosition :entryOfShortPosition ))
label.delete(labelEntry )
labelStop = label.new(bar_index, pos>0?stopLossForLong :stopLossForShort , color=color.red , textcolor=#000000, style=label.style_label_left, text="Stop Loss Price: " + str.tostring(math.round((pos>0?stopLossForLong :stopLossForShort) *100)/100))
labelTp1 = label.new(bar_index, pos>0?takeProfitForLong1R:takeProfitForShort1R, color=color.green, textcolor=#000000, style=label.style_label_left, text="(1-1) Take Profit: " +str.tostring(math.round((pos>0?takeProfitForLong1R:takeProfitForShort1R) * 100)/100))
labelTp2 = label.new(bar_index, pos>0?takeProfitForLong2R:takeProfitForShort2R, color=color.green, textcolor=#000000, style=label.style_label_left, text="(2-1) Take Profit: " + str.tostring(math.round((pos>0?takeProfitForLong2R:takeProfitForShort2R) * 100)/100))
labelTp3 = label.new(bar_index, pos>0?takeProfitForLong3R:takeProfitForShort3R, color=color.green, textcolor=#000000, style=label.style_label_left, text="(3-1) Take Profit: " + str.tostring(math.round((pos>0?takeProfitForLong3R:takeProfitForShort3R) * 100)/100))
label.delete(labelStop )
label.delete(labelTp1 )
label.delete(labelTp2 )
label.delete(labelTp3 )
changeCond = trend != trend
smaSrcHigh = ta.ema(high,cloud_val)
smaSrcLow = ta.ema(low, cloud_val)
= ta.macd(close, 12, 26, 9)
plot_high = plot(showMovingAverageCloud? smaSrcHigh : na, color = na, transp = 1, editable = false)
plot_low = plot(showMovingAverageCloud? smaSrcLow : na, color = na, transp = 1, editable = false)
plotshape(longCond ? up : na, title="UpTrend Begins", location=location.belowbar, style=shape.circle, size=size.tiny, color=color.new(color.teal,transp = 50) )
plotshape(longCond and showBuySellSignals ? up : na, title="Buy kar lo", text="Buy kar lo", location=location.belowbar, style=shape.labelup, size=size.tiny, color=color.new(color.teal,transp = 50), textcolor=color.white )
plotshape(shortCond ? dn : na, title="DownTrend Begins", location=location.abovebar, style=shape.circle, size=size.tiny, color=color.new(color.red,transp = 50) )
plotshape(shortCond and showBuySellSignals ? dn : na, title="Sell kar do", text="Sell kar do", location=location.abovebar, style=shape.labeldown, size=size.tiny, color=color.new(color.red,transp = 50), textcolor=color.white)
fill(plot_high, plot_low, color = (macdLine > 0) and (macdLine > macdLine ) ? color.new(color.aqua,transp = 85) : na, title = "Positive Cloud Uptrend")
fill(plot_high, plot_low, color = macdLine > 0 and macdLine < macdLine ? color.new(color.aqua,transp = 85) : na, title = "Positive Cloud Downtrend")
fill(plot_high, plot_low, color = macdLine < 0 and macdLine < macdLine ? color.new(color.red,transp = 85) : na, title = "Negative Cloud Uptrend")
fill(plot_high, plot_low, color = macdLine < 0 and macdLine > macdLine ? color.new(color.red,transp = 85) : na, title = "Negative Cloud Downtrend")
mPlot = plot(ohlc4, title="", style=plot.style_circles, linewidth=0)
alertcondition(changeCond, title="Trend Direction Change ", message="Trend direction has changed ! ")
alertLongText = str.tostring(syminfo.ticker) + " BUY ALERT! " +
"Entry Price: " + str.tostring(entryOfLongPosition) +
", Take Profit 1: " + str.tostring(takeProfitForLong1R) +
", Take Profit 2: " + str.tostring(takeProfitForLong2R) +
", Take Profit 3: " + str.tostring(takeProfitForLong3R) +
", Stop Loss Price: " + str.tostring(stopLossForLong)
alertShortText = str.tostring(syminfo.ticker) + " SELL ALERT!" +
", Entry Price: " + str.tostring(entryOfShortPosition) +
", Take Profit 1: " + str.tostring(takeProfitForShort1R) +
", Take Profit 2: " + str.tostring(takeProfitForShort2R) +
", Take Profit 3: " + str.tostring(takeProfitForShort3R) +
", Stop Loss Price: " + str.tostring(stopLossForShort)
longJson = '{"content": "' + alertLongText + '"}'
shortJson = '{"content": "' + alertShortText + '"}'
if longCond
alert(longJson, alert.freq_once_per_bar_close)
if shortCond
alert(shortJson, alert.freq_once_per_bar_close)
TRP İndikatörü - Ömer Faruk ŞenBu kod, TRP indikatörüne göre düşüş ve yükseliş sinyalleri üretir.
- Düşüş sinyali: 8. ve 9. mumlar kırmızı ve 7. mumun altında kapanır.
- Yükseliş sinyali: M9 mumu yeşil ve 13 mum sonra yükseliş beklenir.
Sinyaller, grafik üzerinde işaretlenir.
TRP İndikatör SinyalleriTRP İndikatörü Sinyal Üretici:
- Düşüş sinyali: 8. ve 9. mumlar kırmızı ve 7. mumun altında kapanır.
- Yükseliş sinyali: M9 mumu yeşil ve 13 mum sonra yükseliş beklenir.
Bu kod, TradingView grafiklerinde otomatik olarak sinyalleri işaretler.
Combined Open, Last Candle Close, Midpointgives previos and cuurent trading session open close levels clearly
Keltner Channels with EMAs/sf/lsa;lgf;oa fluqwep9n vliwequtrl9uwet9o34qwo8uw3p9 uto9qw3475o9bb uto9q34w bno9qu32onqyo9
Best Buy/Sell Predictor with Labels//@version=5
indicator("Best Buy/Sell Predictor with Labels", overlay=true)
// Inputs
atrLength = input.int(10, title="ATR Length")
atrMultiplier = input.float(3.0, title="ATR Multiplier")
rsiPeriod = input.int(14, title="RSI Period")
rsiOverbought = input.int(70, title="RSI Overbought Level")
rsiOversold = input.int(30, title="RSI Oversold Level")
// Supertrend Calculation
atr = ta.atr(atrLength)
upTrend = close - (atrMultiplier * atr)
downTrend = close + (atrMultiplier * atr)
trendUp = ta.valuewhen(ta.crossover(close, upTrend), upTrend, 0)
trendDown = ta.valuewhen(ta.crossunder(close, downTrend), downTrend, 0)
supertrend = close > trendUp ? trendUp : close < trendDown ? trendDown : na
supertrendDirection = close > supertrend ? 1 : close < supertrend ? -1 : na
// RSI Calculation
rsi = ta.rsi(close, rsiPeriod)
// Buy/Sell Conditions
buySignal = supertrendDirection == 1 and rsi < rsiOversold
sellSignal = supertrendDirection == -1 and rsi > rsiOverbought
// Plot Supertrend
plot(supertrendDirection == 1 ? trendUp : na, title="Supertrend Up", color=color.green, linewidth=2)
plot(supertrendDirection == -1 ? trendDown : na, title="Supertrend Down", color=color.red, linewidth=2)
// Plot Buy/Sell Shapes with Labels
plotshape(series=buySignal, location=location.belowbar, color=color.green, style=shape.labelup, text="BUY", title="Buy Signal")
plotshape(series=sellSignal, location=location.abovebar, color=color.red, style=shape.labeldown, text="SELL", title="Sell Signal")
// Alert Conditions
alertcondition(buySignal, title="Buy Alert", message="BUY Signal: Supertrend is bullish and RSI is oversold")
alertcondition(sellSignal, title="Sell Alert", message="SELL Signal: Supertrend is bearish and RSI is overbought")
Keltner Channels with EMAsKeltner Channels with two Ema 13and 26
This is the mixture of Dr. Elders indicators combinations