Prices / RSI divergences detectorPrices / RSI divergences detector.
Display both hidden and regular divergences.
I used it with my own RSI indicator. You can find the script here:
Cari dalam skrip untuk "股价在8元左右净利润为正市值小于80亿的热门股票有哪些"
RSI|The Wave PrincipleThe Wave Principle | Modified RSI
30 green | 70 red = Strong Movement (Possible Impulse)
20 cyan | 80 Yellow = Strongest Movement
Support and Resistance Level (Trend Continuation)
Uptrend= 40
Downtrend = 60
Break+Retest = BR
Div = Divergence (Change in trend)
--------------------------------------------
This indicator has been modified from original RSI to fit Wave Principle characteristics:
Uptrend Impulsive Wave over 70 RSI it changes color to red, and > 80 yellow stronger impulse | Usually means continuation, at least once more.
Downtrend Impulsive Wave under 30 RSI it changes color to green, and < 20 cyan stronger impulse | Usually means continuation, at least once more.
Once RSI reached these levels, it doesn't mean trend reversal but a correction is expected. If it shows divergence along with an Ending Diagonal, it's a confirmation for trend reversal.
In a corrective wave, levels 40-60 represents support and resistance levels where price won't go further. Indicating Corrective Waves, not as strong as Impulsives.
Prices can breakout RSI trend lines and retest from the other side before continue the new trend as also described in the Wave Principle.
--------------------------------------------
RSI / Stoch / SRSI / MFI / Aroon Overlay [SigmaDraconis]Combines 4 popular indicators (RSI, Stoch, SRSI, MFI) and 1 peculiar one (Aroon) in 1 for those who want to save indicators but not only.
This is an evolution of my (simpler) "RSI / Stoch / Stoch RSI (SRSI) Overlay " that you can find on my scripts.
Added bands for oversold/overbought areas (70/30 common for RSI and 80/20 for SRSI and MFI), as well as a middle 50 horizontal line.
Neutral bands around 55-45 added as well that can be hidden for less clutter. I also recommend a more transparent coloring for these since Pine script doesn't allow default transparency for horizontal lines.
By default only RSI and Stoch are activated, you can activate Aroon, MFI and SRSI on the inputs window.
Some extra notes:
* RSI, Stoch and MFI can help to strengthen one's decision as well as Aroon to predict a possible trend reversal, SRSI can show when RSI has high probability of being topped or bottomed when oversold/overbought but don't forget to look at volume and how the trend progresses that can keep SRSI above 80 or below 20 while RSI and price continues to trend, divergences are most helpful here to find possible reversal areas.
* This chart depicts some interesting divergences, as well as Stoch tops and bottoms and confluences between RSI/MFI and Stoch on some over-extended tops and bottoms that shown being good reversal zones.
RSI resistances are shown as well, failing to break above 60 or the neutral zone (this is a bearish BTC trend chart after all) or failing to gain support to break up certain levels (RSI notes a more bullish trend when consistently above 60 and more bearish below 40).
If you like it and use it to profit, please tip me below :)
Tip jars:
BTC: 15nMBiEGVrdGcu9C1h6QRcTNRvugHkqrMQ
ETH: 0xC33845946c48B61fBCbEA0367ec2238CaF2b73bc
BTS: sigma-draconis
MACZVWAP modifiedThis is lazy bear script . I just modify little so we can produce better signals
buy is cross above -80 ..
sell is cross down bellow 80
RSI Swing SignalThis indicator is a tool designed to be used with Steven Hart's RSI Exhaustion strategy. For more information google TheTradingChannel or look him up on YouTube :)
The default RSI settings for this strategy are:
RSI Overbought: 80
RSI Oversold: 20
Length: 7
When the RSI gets above 80, the line will turn red and the script will begin looking for a specific type of engulfing candle to go short. The same is true when the RSI gets below 20, but the line will turn green and look for longs. It is best used as a back-testing aid, but it can also be used to send emails or SMS alerts whenever the conditions are met. It can also be used as an alternative colored RSI indicator by removing the signals in the settings menu and changing the RSI parameters to whatever you normally use. This can aid in RSI divergence and overbought/sold strategies.
Entries:
The bright green and bright red lines represent the first type of engulfing candle.
The dark green and red lines represent the second type of engulfing candle.
Some pairs perform best with only one of these entries, while others work fine with both.
This is a counter-trend or consolidation strategy, and is best used in combination with trend-continuation or trend-following strategies. As always, make sure you back-test it before you use it to trade as it works better on some pairs than others.
Bull Bear Stoch RSIStandard Stoch RSI with some color modification. 0 - 20 = Really Bearish (Dark Red Zone) 20 - 50 = Bearish (Light Red Zone) 50 - 80 = Bullish (Light Blue Zone) and 80 - 100 = Really Bullish (Strong Blue Zone). Thick lines at top and bottom to easily see 100 and 0.
Rainbow Oscillator Backtest Ever since the people concluded that stock market price movements are not
random or chaotic, but follow specific trends that can be forecasted, they
tried to develop different tools or procedures that could help them identify
those trends. And one of those financial indicators is the Rainbow Oscillator
Indicator. The Rainbow Oscillator Indicator is relatively new, originally
introduced in 1997, and it is used to forecast the changes of trend direction.
As market prices go up and down, the oscillator appears as a direction of the
trend, but also as the safety of the market and the depth of that trend. As
the rainbow grows in width, the current trend gives signs of continuity, and
if the value of the oscillator goes beyond 80, the market becomes more and more
unstable, being prone to a sudden reversal. When prices move towards the rainbow
and the oscillator becomes more and more flat, the market tends to remain more
stable and the bandwidth decreases. Still, if the oscillator value goes below 20,
the market is again, prone to sudden reversals. The safest bandwidth value where
the market is stable is between 20 and 80, in the Rainbow Oscillator indicator value.
The depth a certain price has on a chart and into the rainbow can be used to judge
the strength of the move.
You can change long to short in the Input Settings
WARNING:
- For purpose educate only
- This script to change bars colors.
Rainbow Oscillator Strategy Ever since the people concluded that stock market price movements are not
random or chaotic, but follow specific trends that can be forecasted, they
tried to develop different tools or procedures that could help them identify
those trends. And one of those financial indicators is the Rainbow Oscillator
Indicator. The Rainbow Oscillator Indicator is relatively new, originally
introduced in 1997, and it is used to forecast the changes of trend direction.
As market prices go up and down, the oscillator appears as a direction of the
trend, but also as the safety of the market and the depth of that trend. As
the rainbow grows in width, the current trend gives signs of continuity, and
if the value of the oscillator goes beyond 80, the market becomes more and more
unstable, being prone to a sudden reversal. When prices move towards the rainbow
and the oscillator becomes more and more flat, the market tends to remain more
stable and the bandwidth decreases. Still, if the oscillator value goes below 20,
the market is again, prone to sudden reversals. The safest bandwidth value where
the market is stable is between 20 and 80, in the Rainbow Oscillator indicator value.
The depth a certain price has on a chart and into the rainbow can be used to judge
the strength of the move.
WARNING:
- This script to change bars colors.
Rainbow Oscillator Ever since the people concluded that stock market price movements are not
random or chaotic, but follow specific trends that can be forecasted, they
tried to develop different tools or procedures that could help them identify
those trends. And one of those financial indicators is the Rainbow Oscillator
Indicator. The Rainbow Oscillator Indicator is relatively new, originally
introduced in 1997, and it is used to forecast the changes of trend direction.
As market prices go up and down, the oscillator appears as a direction of the
trend, but also as the safety of the market and the depth of that trend. As
the rainbow grows in width, the current trend gives signs of continuity, and
if the value of the oscillator goes beyond 80, the market becomes more and more
unstable, being prone to a sudden reversal. When prices move towards the rainbow
and the oscillator becomes more and more flat, the market tends to remain more
stable and the bandwidth decreases. Still, if the oscillator value goes below 20,
the market is again, prone to sudden reversals. The safest bandwidth value where
the market is stable is between 20 and 80, in the Rainbow Oscillator indicator value.
The depth a certain price has on a chart and into the rainbow can be used to judge
the strength of the move.
[M] StochasticNormal Stochastic has, painted in color when coming out of the zone of 80-20, remains in the gray zone. It makes for convenience.
-------------------
Обычный Stochastic, окрашивается в цвета когда выходит из зоны 80-20 , в зоне остается серым. Делался для удобства.
Sniper Stochastics Sniper Stochastics is a triple stochastic system.
Basically, watch the 20 and 80 crossovers. However, the settings of the three stochastics correspond to Fibonacci numbers 55, 89, and 144.
Since we have a fast, medium and slow speed stochastics; we can also watch the crossovers.
I have found that When the Red (144) is on top, it usually signals a turn upwards; conversely, a blue (89) on top of the others means that the market is going to go down.
So red on top = bullish and blue on top= bearish.
You can also think of them in terms of efficiency. If they all display the same and are overlapping in a single line; crossing an 80 or 20 line, this is a strong signal - bullish or bearish.
If on the other hand, you see them splayed out and moving away from eachother but the same direction; it signals a more inefficient process and thus a weaker signal.
I really enjoy using these and I hope you will too.
On the settings, I have turned off the %D so that they display only %K's. The Default is 55, 89 ,144.
: Volume Zone Oscillator & Price Zone Oscillator LB Update JRMThis is a simple update of Lazy Bear's " Indicators: Volume Zone Indicator & Price Zone Indicator" Script. PZO plots on the same indicator. The horizontal plot lines are taken primarily from two articles by Wahalil and Steckler "In The Volume Zone" May 2011, Stocks and Commodities and "Entering The Price Zone"June 2011, Stocks and Commodities. With both indicators on the same plot it is easier to see divergences between the indicators. I did add a plot line at 80 and -80 as well because that is getting into truly extreme price/volume territory where one might contemplate a close your eyes and sell or cover particularly if confirmed at a higher time frame with the expectation of some type of corrective move..
The inputs and plot lines can be edited as per Lazy Bear's original script and follows the original format. Many thanks to Lazy Bear.
DT-FNO Screener//@version=5
indicator("DT-FNO Screener", overlay=true)
// === INPUTS ===
lengthEMA1 = 20
lengthEMA2 = 50
lengthEMA3 = 200
lengthEMA4 = 10
rsiLength = 14
// === PRICE DATA ===
closePrice = close
highPrev = high
lowPrev = low
openToday = open
closeToday = close
// === EMA CALCULATIONS ===
ema20D = ta.ema(close, 20)
ema50D = ta.ema(close, 50)
ema200D = ta.ema(close, 200)
ema10D = ta.ema(close, 10)
ema20W = ta.ema(request.security(syminfo.tickerid, "W", close), 20)
ema50W = ta.ema(request.security(syminfo.tickerid, "W", close), 50)
// === RSI ===
rsiVal = ta.rsi(close, rsiLength)
// === % CHANGE STATS ===
percentChange = 100 * (close - close ) / close
min7Change = ta.lowest(percentChange, 7)
max5Change = ta.highest(percentChange, 5)
// === CONDITIONS (from screener) ===
// Futures Segment
cond1 = ema20W < ema50W
cond2 = ema20D < ema50D
cond3 = ema50D < ema200D
cond4 = close > ema20D
// Cash Segment
cond5 = closeToday < highPrev
cond6 = closeToday > lowPrev
cond7 = openToday > lowPrev
cond8 = openToday < highPrev
cond9 = ((ema10D - close) / close) <= 0.02
cond10 = rsiVal <= 60
// % Change Conditions
cond11 = min7Change <= -1.5
cond12 = max5Change <= 1.2
// === FINAL COMBINED CONDITION ===
all_conditions = cond1 and cond2 and cond3 and cond4 and cond5 and cond6 and cond7 and cond8 and cond9 and cond10 and cond11 and cond12
// === PLOT SIGNAL ===
bgcolor(all_conditions ? color.new(color.green, 80) : na)
plotshape(all_conditions, title="DT-FNO Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="DT")
Momentum & stoch rsimomentum and stochastic rsi indicator ideal for day trading. momenum is set to 80 for a smooth and safe analysis.
Ultra BUY SELL//@version=5
indicator("Ultra BUY SELL", overlay = false)
// Inputs
src = input(close, "Source", group = "Main settings")
p = input.int(180, "Trend period", group = "Main settings", tooltip = "Changes STRONG signals' sensitivity.", minval = 1)
atr_p = input.int(155, "ATR Period", group = "Main settings", minval = 1)
mult = input.float(2.1, "ATR Multiplier", step = 0.1, group = "Main settings", tooltip = "Changes sensitivity: higher period = higher sensitivty.")
mode = input.string("Type A", "Signal mode", options = , group = "Mode")
use_ema_smoother = input.string("No", "Smooth source with EMA?", options = , group = "Source")
src_ema_period = input(3, "EMA Smoother period", group = "Source")
color_bars = input(true, "Color bars?", group = "Addons")
signals_view = input.string("All", "Signals to show", options = , group = "Signal's Addon")
signals_shape = input.string("Labels", "Signal's shape", options = , group = "Signal's Addon")
buy_col = input(color.rgb(0, 255, 8), "Buy colour", group = "Signal's Addon", inline = "BS")
sell_col = input(color.rgb(255, 0, 0), "Sell colour", group = "Signal's Addon", inline = "BS")
// Calculations
src := use_ema_smoother == "Yes" ? ta.ema(src, src_ema_period) : src
// Source;
h = ta.highest(src, p)
// Highest of src p-bars back;
l = ta.lowest(src, p)
// Lowest of src p-bars back.
d = h - l
ls = ""
// Tracker of last signal
m = (h + l) / 2
// Initial trend line;
m := bar_index > p ? m : m
atr = ta.atr(atr_p)
// ATR;
epsilon = mult * atr
// Epsilon is a mathematical variable used in many different theorems in order to simplify work with mathematical object. Here it used as sensitivity measure.
change_up = (mode == "Type B" ? ta.cross(src, m + epsilon) : ta.crossover(src, m + epsilon)) or src > m + epsilon
// If price breaks trend line + epsilon (so called higher band), then it is time to update the value of a trend line;
change_down = (mode == "Type B" ? ta.cross(src, m - epsilon) : ta.crossunder(src, m - epsilon)) or src < m - epsilon
// If price breaks trend line - epsilon (so called higher band), then it is time to update the value of a trend line.
sb = open < l + d / 8 and open >= l
ss = open > h - d / 8 and open <= h
strong_buy = sb or sb or sb or sb or sb
strong_sell = ss or ss or ss or ss or ss
m := (change_up or change_down) and m != m ? m : change_up ? m + epsilon : change_down ? m - epsilon : nz(m , m)
// Updating the trend line.
ls := change_up ? "B" : change_down ? "S" : ls
// Last signal. Helps avoid multiple labels in a row with the same signal;
colour = ls == "B" ? buy_col : sell_col
// Colour of the trend line.
buy_shape = signals_shape == "Labels" ? shape.labelup : shape.triangleup
sell_shape = signals_shape == "Labels" ? shape.labeldown : shape.triangledown
// Plottings
// Signals with label shape
plotshape(signals_shape == "Labels" and (signals_view == "All" or signals_view == "Buy/Sell") and change_up and ls != "B" and not strong_buy, "Buy signal" , color = colour, style = buy_shape , location = location.belowbar, size = size.normal, text = "BUY", textcolor = color.white, force_overlay=true)
// Plotting the BUY signal;
plotshape(signals_shape == "Labels" and (signals_view == "All" or signals_view == "Buy/Sell") and change_down and ls != "S" and not strong_sell, "Sell signal" , color = colour, style = sell_shape, size = size.normal, text = "SELL", textcolor = color.white, force_overlay=true)
// Plotting the SELL signal.
plotshape(signals_shape == "Labels" and (signals_view == "All" or signals_view == "Strong") and change_up and ls != "B" and strong_buy, "Strong Buy signal" , color = colour, style = buy_shape , location = location.belowbar, size = size.normal, text = "STRONG", textcolor = color.white, force_overlay=true)
// Plotting the STRONG BUY signal;
plotshape(signals_shape == "Labels" and (signals_view == "All" or signals_view == "Strong") and change_down and ls != "S" and strong_sell, "Strong Sell signal" , color = colour, style = sell_shape, size = size.normal, text = "STRONG", textcolor = color.white, force_overlay=true)
// Plotting the STRONG SELL signal.
// Signal with arrow shape
plotshape(signals_shape == "Arrows" and (signals_view == "All" or signals_view == "Buy/Sell") and change_up and ls != "B" and not strong_buy, "Buy signal" , color = colour, style = buy_shape , location = location.belowbar, size = size.tiny, force_overlay=true)
// Plotting the BUY signal;
plotshape(signals_shape == "Arrows" and (signals_view == "All" or signals_view == "Buy/Sell") and change_down and ls != "S" and not strong_sell, "Sell signal" , color = colour, style = sell_shape, size = size.tiny, force_overlay=true)
// Plotting the SELL signal.
plotshape(signals_shape == "Arrows" and (signals_view == "All" or signals_view == "Strong") and change_up and ls != "B" and strong_buy, "Strong Buy signal" , color = colour, style = buy_shape , location = location.belowbar, size = size.tiny, force_overlay=true)
// Plotting the STRONG BUY signal;
plotshape(signals_shape == "Arrows" and (signals_view == "All" or signals_view == "Strong") and change_down and ls != "S" and strong_sell, "Strong Sell signal" , color = colour, style = sell_shape, size = size.tiny, force_overlay=true)
// Plotting the STRONG SELL signal.
barcolor(color_bars ? colour : na)
// Bar coloring
// Alerts
matype = input.string(title='MA Type', defval='EMA', options= )
ma_len1 = input(title='Short EMA1 Length', defval=5)
ma_len2 = input(title='Long EMA1 Length', defval=7)
ma_len3 = input(title='Short EMA2 Length', defval=5)
ma_len4 = input(title='Long EMA2 Length', defval=34)
ma_len5 = input(title='Short EMA3 Length', defval=98)
ma_len6 = input(title='Long EMA3 Length', defval=45)
ma_len7 = input(title='Short EMA4 Length', defval=7)
ma_len8 = input(title='Long EMA4 Length', defval=11)
ma_len9 = input(title='Short EMA5 Length', defval=11)
ma_len10 = input(title='Long EMA5 Length', defval=15)
ma_offset = input(title='Offset', defval=0)
//res = input(title="Resolution", type=resolution, defval="240")
f_ma(malen) =>
float result = 0
if matype == 'EMA'
result := ta.ema(src, malen)
result
if matype == 'SMA'
result := ta.sma(src, malen)
result
result
htf_ma1 = f_ma(ma_len1)
htf_ma2 = f_ma(ma_len2)
htf_ma3 = f_ma(ma_len3)
htf_ma4 = f_ma(ma_len4)
htf_ma5 = f_ma(ma_len5)
htf_ma6 = f_ma(ma_len6)
htf_ma7 = f_ma(ma_len7)
htf_ma8 = f_ma(ma_len8)
htf_ma9 = f_ma(ma_len9)
htf_ma10 = f_ma(ma_len10)
//plot(out1, color=green, offset=ma_offset)
//plot(out2, color=red, offset=ma_offset)
//lengthshort = input(8, minval = 1, title = "Short EMA Length")
//lengthlong = input(200, minval = 2, title = "Long EMA Length")
//emacloudleading = input(50, minval = 0, title = "Leading Period For EMA Cloud")
//src = input(hl2, title = "Source")
showlong = input(false, title='Show Long Alerts')
showshort = input(false, title='Show Short Alerts')
showLine = input(false, title='Display EMA Line')
ema1 = input(true, title='Show EMA Cloud-1')
ema2 = input(true, title='Show EMA Cloud-2')
ema3 = input(true, title='Show EMA Cloud-3')
ema4 = input(true, title='Show EMA Cloud-4')
ema5 = input(true, title='Show EMA Cloud-5')
emacloudleading = input.int(0, minval=0, title='Leading Period For EMA Cloud')
mashort1 = htf_ma1
malong1 = htf_ma2
mashort2 = htf_ma3
malong2 = htf_ma4
mashort3 = htf_ma5
malong3 = htf_ma6
mashort4 = htf_ma7
malong4 = htf_ma8
mashort5 = htf_ma9
malong5 = htf_ma10
cloudcolour1 = mashort1 >= malong1 ? color.rgb(0, 255, 0) : color.rgb(255, 0, 0)
cloudcolour2 = mashort2 >= malong2 ? #4caf4f47 : #ff110047
cloudcolour4 = mashort4 >= malong4 ? #4caf4f52 : #f2364652
cloudcolour5 = mashort5 >= malong5 ? #33ff0026 : #ff000026
//03abc1
mashortcolor1 = mashort1 >= mashort1 ? color.olive : color.maroon
mashortcolor2 = mashort2 >= mashort2 ? color.olive : color.maroon
mashortcolor3 = mashort3 >= mashort3 ? color.olive : color.maroon
mashortcolor4 = mashort4 >= mashort4 ? color.olive : color.maroon
mashortcolor5 = mashort5 >= mashort5 ? color.olive : color.maroon
mashortline1 = plot(ema1 ? mashort1 : na, color=showLine ? mashortcolor1 : na, linewidth=1, offset=emacloudleading, title='Short Leading EMA1', force_overlay=true)
mashortline2 = plot(ema2 ? mashort2 : na, color=showLine ? mashortcolor2 : na, linewidth=1, offset=emacloudleading, title='Short Leading EMA2', force_overlay=true)
mashortline3 = plot(ema3 ? mashort3 : na, color=showLine ? mashortcolor3 : na, linewidth=1, offset=emacloudleading, title='Short Leading EMA3', force_overlay=true)
mashortline4 = plot(ema4 ? mashort4 : na, color=showLine ? mashortcolor4 : na, linewidth=1, offset=emacloudleading, title='Short Leading EMA4', force_overlay=true)
mashortline5 = plot(ema5 ? mashort5 : na, color=showLine ? mashortcolor5 : na, linewidth=1, offset=emacloudleading, title='Short Leading EMA5', force_overlay=true)
malongcolor1 = malong1 >= malong1 ? color.green : color.red
malongcolor2 = malong2 >= malong2 ? color.green : color.red
malongcolor3 = malong3 >= malong3 ? color.green : color.red
malongcolor4 = malong4 >= malong4 ? color.green : color.red
malongcolor5 = malong5 >= malong5 ? color.green : color.red
malongline1 = plot(ema1 ? malong1 : na, color=showLine ? malongcolor1 : na, linewidth=3, offset=emacloudleading, title='Long Leading EMA1', force_overlay=true)
malongline2 = plot(ema2 ? malong2 : na, color=showLine ? malongcolor2 : na, linewidth=3, offset=emacloudleading, title='Long Leading EMA2', force_overlay=true)
malongline3 = plot(ema3 ? malong3 : na, color=showLine ? malongcolor3 : na, linewidth=3, offset=emacloudleading, title='Long Leading EMA3', force_overlay=true)
malongline4 = plot(ema4 ? malong4 : na, color=showLine ? malongcolor4 : na, linewidth=3, offset=emacloudleading, title='Long Leading EMA4', force_overlay=true)
malongline5 = plot(ema5 ? malong5 : na, color=showLine ? malongcolor5 : na, linewidth=3, offset=emacloudleading, title='Long Leading EMA5', force_overlay=true)
fill(mashortline1, malongline1, color=cloudcolour1, title='MA Cloud1', transp=45)
fill(mashortline2, malongline2, color=cloudcolour2, title='MA Cloud2', transp=65)
fill(mashortline4, malongline4, color=cloudcolour4, title='MA Cloud4', transp=65)
fill(mashortline5, malongline5, color=cloudcolour5, title='MA Cloud5', transp=65)
leftBars = input(15, title='Left Bars ')
rightBars = input(15, title='Right Bars')
volumeThresh = input(20, title='Volume Threshold')
//
highUsePivot = fixnan(ta.pivothigh(leftBars, rightBars) )
lowUsePivot = fixnan(ta.pivotlow(leftBars, rightBars) )
r1 = plot(highUsePivot, color=ta.change(highUsePivot) ? na : #FF0000, linewidth=3, offset=-(rightBars + 1), title='Resistance', force_overlay=true)
s1 = plot(lowUsePivot, color=ta.change(lowUsePivot) ? na : #00ff0d, linewidth=3, offset=-(rightBars + 1), title='Support', force_overlay=true)
//Volume %
short = ta.ema(volume, 5)
long = ta.ema(volume, 10)
osc = 100 * (short - long) / long
//For bull / bear wicks
// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at mozilla.org
// © divudivu600
// Developer By ALCON ALGO
//telegram : @harmonicryptosignals
//@version = 5
//indicator(shorttitle='Oscillator Vision', title='Alcon Oscillator Vision', overlay=false)
n1 = input(10, 'Channel length')
n2 = input(21, 'Average length')
reaction_wt = input.int(defval=1, title='Reaction in change of direction', minval=1)
nsc = input.float(53, 'Levels About Buys', minval=0.0)
nsv = input.float(-53, 'Levels About Sells', maxval=-0.0)
Buy_sales = input(true, title='Only Smart Buy Reversal')
Sell_sales = input(true, title='Only Smart Sell Reversal')
Histogram = input(true, title='Show Histogarm')
//Trendx = input(false, title='Show Trendx')
barras = input(true, title='Divergence on chart(Bars)')
divregbull = input(true, title='Regular Divergence Bullish')
divregbear = input(true, title='Regular Divergence Bearish')
divhidbull = input(true, title='Show Divergence Hidden Bullish')
divhidbear = input(true, title='Show Divergence Hidden Bearish')
Tags = input(true, title='Show Divergence Lable')
amme = input(false, title='Activar media movil Extra para WT')
White = #FDFEFE
Black = #000000
Bearish = #e91e62
Bullish = #18e0ff
Strong_Bullish = #2962ff
Bullish2 = #00bedc
Blue1 = #00D4FF
Blue2 = #009BBA
orange = #FF8B00
yellow = #FFFB00
LEZ = #0066FF
purp = #FF33CC
// Colouring
tf(_res, _exp, gaps_on) =>
gaps_on == 0 ? request.security(syminfo.tickerid, _res, _exp) : gaps_on == true ? request.security(syminfo.tickerid, _res, _exp, barmerge.gaps_on, barmerge.lookahead_off) : request.security(syminfo.tickerid, _res, _exp, barmerge.gaps_off, barmerge.lookahead_off)
ha_htf = ''
show_ha = input.bool(true, "Show HA Plot/ Market Bias", group="HA Market Bias")
ha_len = input(7, 'Period', group="HA Market Bias")
ha_len2 = input(10, 'Smoothing', group="HA Market Bias")
// Calculations {
o = ta.ema(open, ha_len)
c = ta.ema(close, ha_len)
h1 = ta.ema(high, ha_len)
l1 = ta.ema(low, ha_len)
haclose = tf(ha_htf, (o + h1 + l1 + c) / 4, 0)
xhaopen = tf(ha_htf, (o + c) / 2, 0)
haopen = na(xhaopen ) ? (o + c) / 2 : (xhaopen + haclose ) / 2
hahigh = math.max(h1, math.max(haopen, haclose))
halow = math.min(l1, math.min(haopen, haclose))
o2 = tf(ha_htf, ta.ema(haopen, ha_len2), 0)
c2 = tf(ha_htf, ta.ema(haclose, ha_len2), 0)
h2 = tf(ha_htf, ta.ema(hahigh, ha_len2), 0)
l2 = tf(ha_htf, ta.ema(halow, ha_len2), 0)
ha_avg = (h2 + l2) / 2
// }
osc_len = 8
osc_bias = 100 *(c2 - o2)
osc_smooth = ta.ema(osc_bias, osc_len)
sigcolor =
(osc_bias > 0) and (osc_bias >= osc_smooth) ? color.new(Bullish, 35) :
(osc_bias > 0) and (osc_bias < osc_smooth) ? color.new(Bullish2, 75) :
(osc_bias < 0) and (osc_bias <= osc_smooth) ? color.new(Bearish, 35) :
(osc_bias < 0) and (osc_bias > osc_smooth) ? color.new(Bearish, 75) :
na
// }
nsc1 = nsc
nsc2 = nsc + 5
nsc3 = nsc + 10
nsc4 = nsc + 15
nsc5 = nsc + 20
nsc6 = nsc + 25
nsc7 = nsc + 30
nsc8 = nsc + 35
nsv1 = nsv - 5
nsv2 = nsv - 10
nsv3 = nsv - 15
nsv4 = nsv - 20
nsv5 = nsv - 25
nsv6 = nsv - 30
nsv7 = nsv - 35
nsv8 = nsv - 40
ap = hlc3
esa = ta.ema(ap, n1)
di = ta.ema(math.abs(ap - esa), n1)
ci = (ap - esa) / (0.015 * di)
tci = ta.ema(ci, n2)
wt1 = tci
wt2 = ta.sma(wt1, 4)
direction = 0
direction := ta.rising(wt1, reaction_wt) ? 1 : ta.falling(wt1, reaction_wt) ? -1 : nz(direction )
Change_of_direction = ta.change(direction, 1)
pcol = direction > 0 ? Strong_Bullish : direction < 0 ? Bearish : na
obLevel1 = input(60, 'Over Bought Level 1')
obLevel2 = input(53, 'Over Bought Level 2')
osLevel1 = input(-60, 'Over Sold Level 1')
osLevel2 = input(-53, 'Over Sold Level 2')
rsi = ta.rsi(close,14)
color greengrad = color.from_gradient(rsi, 10, 90, #00ddff, #007d91)
color redgrad = color.from_gradient(rsi, 10, 90, #8b002e, #e91e62)
ob1 = plot(obLevel1, color=#e91e6301)
os1 = plot(osLevel1, color=#00dbff01)
ob2 = plot(obLevel2, color=#e91e6301)
os2 = plot(osLevel2, color=#00dbff01)
p1 = plot(wt1, color=#00dbff01)
p2 = plot(wt2, color=#e91e6301)
plot(wt1 - wt2, color=wt2 - wt1 > 0 ? redgrad : greengrad, style=plot.style_columns)
// fill(p1,p2,color = wt2 - wt1 > 0 ? redgrad: greengrad) // old
fill(p1,p2,color = sigcolor)
// new
fill(ob1,ob2,color = #e91e6350)
fill(os1,os2,color = #00dbff50)
midpoint = (nsc + nsv) / 2
ploff = (nsc - midpoint) / 8
BullSale = ta.crossunder(wt1, wt2) and wt1 >= nsc and Buy_sales == true
BearSale = ta.crossunder(wt1, wt2) and Buy_sales == false
Bullishh = ta.crossover(wt1, wt2) and wt1 <= nsv and Sell_sales == true
Bearishh = ta.crossover(wt1, wt2) and Sell_sales == false
plot(BullSale ? wt2 + ploff : na, style=plot.style_circles, color=color.new(Bearish, 0), linewidth=6, title='BuysG')
plot(BearSale ? wt2 + ploff : na, style=plot.style_circles, color=color.new(Bearish, 0), linewidth=6, title='SellsG')
plot(Bullishh ? wt2 - ploff : na, style=plot.style_circles, color=color.new(Strong_Bullish, 0), linewidth=6, title='Buys On Sale')
plot(Bearishh ? wt2 - ploff : na, style=plot.style_circles, color=color.new(Strong_Bullish, 0), linewidth=6, title='Sells on Sale')
//plot(Histogram ? wt1 - wt2 : na, style=plot.style_area, color=color.new(Blue2, 80), linewidth=1, title='Histograma')
//barcolor(barras == true and Bullishh == true or barras == true and Bearishh == true ? Bullish2 : na)
//barcolor(barras == true and BullSale == true or barras == true and BearSale == true ? Bearish : na)
/////// Divergence ///////
f_top_fractal(_src) =>
_src < _src and _src < _src and _src > _src and _src > _src
f_bot_fractal(_src) =>
_src > _src and _src > _src and _src < _src and _src < _src
f_fractalize(_src) =>
f_top_fractal(_src) ? 1 : f_bot_fractal(_src) ? -1 : 0
fractal_top1 = f_fractalize(wt1) > 0 ? wt1 : na
fractal_bot1 = f_fractalize(wt1) < 0 ? wt1 : na
high_prev1 = ta.valuewhen(fractal_top1, wt1 , 0)
high_price1 = ta.valuewhen(fractal_top1, high , 0)
low_prev1 = ta.valuewhen(fractal_bot1, wt1 , 0)
low_price1 = ta.valuewhen(fractal_bot1, low , 0)
regular_bearish_div1 = fractal_top1 and high > high_price1 and wt1 < high_prev1 and divregbear == true
hidden_bearish_div1 = fractal_top1 and high < high_price1 and wt1 > high_prev1 and divhidbear == true
regular_bullish_div1 = fractal_bot1 and low < low_price1 and wt1 > low_prev1 and divregbull == true
hidden_bullish_div1 = fractal_bot1 and low > low_price1 and wt1 < low_prev1 and divhidbull == true
col1 = regular_bearish_div1 ? Bearish : hidden_bearish_div1 ? Bearish : na
col2 = regular_bullish_div1 ? Strong_Bullish : hidden_bullish_div1 ? Strong_Bullish : na
//plot(title='Divergence Bearish', series=fractal_top1 ? wt1 : na, color=col1, linewidth=2, transp=0)
//plot(title='Divergence Bullish', series=fractal_bot1 ? wt1 : na, color=col2, linewidth=2, transp=0)
plotshape(regular_bearish_div1 and divregbear and Tags ? wt1 + ploff * 1 : na, title='Divergence Regular Bearish', text='Bear', location=location.absolute, style=shape.labeldown, size=size.tiny, color=color.new(Bearish, 0), textcolor=color.new(White, 0))
plotshape(hidden_bearish_div1 and divhidbear and Tags ? wt1 + ploff * 1 : na, title='Divergence Hidden Bearish', text='H Bear', location=location.absolute, style=shape.labeldown, size=size.tiny, color=color.new(Bearish, 0), textcolor=color.new(White, 0))
plotshape(regular_bullish_div1 and divregbull and Tags ? wt1 - ploff * 1 : na, title='Divergence Regular Bullish', text='Bull', location=location.absolute, style=shape.labelup, size=size.tiny, color=color.new(Strong_Bullish, 0), textcolor=color.new(White, 0))
plotshape(hidden_bullish_div1 and divhidbull and Tags ? wt1 - ploff * 1 : na, title='Divergence Hidden Bullish', text='H Bull', location=location.absolute, style=shape.labelup, size=size.tiny, color=color.new(Strong_Bullish, 0), textcolor=color.new(White, 0))
/////// Unfazed Alerts //////
////////////////////////////////////////////////-MISTERMOTA MOMENTUM-/////////////////////////////////////
source = input(close)
responsiveness = math.max(0.00001, input.float(0.9, minval=0.0, maxval=1.0))
periodd = input(50)
sd = ta.stdev(source, 50) * responsiveness
var worm = source
diff = source - worm
delta = math.abs(diff) > sd ? math.sign(diff) * sd : diff
worm += delta
ma = ta.sma(source, periodd)
raw_momentum = (worm - ma) / worm
current_med = raw_momentum
min_med = ta.lowest(current_med, periodd)
max_med = ta.highest(current_med, periodd)
temp = (current_med - min_med) / (max_med - min_med)
value = 0.5 * 2
value *= (temp - .5 + .5 * nz(value ))
value := value > .9999 ? .9999 : value
value := value < -0.9999 ? -0.9999 : value
temp2 = (1 + value) / (1 - value)
momentum = .25 * math.log(temp2)
momentum += .5 * nz(momentum )
//momentum := raw_momentum
signal = nz(momentum )
trend = math.abs(momentum) <= math.abs(momentum )
////////////////////////////////////////////////-GROWING/FAILING-//////////////////////////////////////////
length = input.int(title="MOM Period", minval=1, defval=14, group="MOM Settings")
srcc = input(title="MOM Source", defval=hlc3, group="MOM Settings")
txtcol_grow_above = input(#1a7b24, "Above Grow", group="MOM Settings", inline="Above")
txtcol_fall_above = input(#672ec5, "Fall", group="MOM Settings", inline="Above")
txtcol_grow_below = input(#F37121, "Below Grow", group="MOM Settings", inline="Below")
txtcol_fall_below = input(#be0606, "Fall", group="MOM Settings", inline="Below")
ma(source, length, type) =>
switch type
"SMA" => ta.sma(source, length)
"EMA" => ta.ema(source, length)
"SMMA (RMA)" => ta.rma(source, length)
"WMA" => ta.wma(source, length)
"VWMA" => ta.vwma(source, length)
typeMA = input.string(title = "Method", defval = "SMA", options= , group="MA Settings")
smoothingLength = input.int(title = "Length", defval = 5, minval = 1, maxval = 100, group="MA Settings")
smoothingLine = ma(delta, smoothingLength, typeMA)
deltaText=(delta > 0 ? (delta > delta ? " MOM > 0 and ▲ Growing, MOM = " + str.tostring(delta , "#.##") :" MOM > 0 and ▼ Falling, MOM = " + str.tostring(delta , "#.##") ) : (delta > delta ? "MOM < 0 and ▲ Growing, MOM = " + str.tostring(delta , "#.##"): " MOM < 0 and ▼ Falling, MOM = " + str.tostring(delta , "#.##")))
oneDay = 24 * 60 * 60 * 1000
barsAhead = 3
tmf = if timeframe.ismonthly
barsAhead * oneDay * 30
else if timeframe.isweekly
barsAhead * oneDay * 7
else if timeframe.isdaily
barsAhead * oneDay
else if timeframe.isminutes
barsAhead * oneDay * timeframe.multiplier / 1440
else if timeframe.isseconds
barsAhead * oneDay * timeframe.multiplier / 86400
else
0
angle(_src) =>
rad2degree = 180 / 3.14159265359
//pi
ang = rad2degree * math.atan((_src - _src ) / ta.atr(14))
ang
emae = angle(smoothingLine)
emaanglestat = emae > emae ? "▲ Growing": "▼ Falling"
deltaTextxxx = "MOM MA/ATR angle value is " + str.tostring(emae, "#.##") + "° and is " + emaanglestat
deltacolorxxx = emae >0 and emae >=emae ? txtcol_grow_above : txtcol_fall_below
// Label
label lpt1 = label.new(time, -30, text=deltaTextxxx , color=deltacolorxxx, xloc=xloc.bar_time, style=label.style_label_left, textcolor=color.white, textalign=text.align_left, size=size.normal)
label.set_x(lpt1, label.get_x(lpt1) + tmf)
label.delete(lpt1 )
txtdeltaColors = (delta > 50 ? (delta < delta ? txtcol_grow_above : txtcol_fall_above) : (delta < delta ? txtcol_grow_below : txtcol_fall_below))
label ldelta1 = label.new(time, 30, text=deltaText , color=txtdeltaColors, xloc=xloc.bar_time, style=label.style_label_left, textcolor=color.white, textalign=text.align_left, size=size.normal)
label.set_x(ldelta1, label.get_x(ldelta1) + tmf)
label.delete(ldelta1 )
Hacim Patlaması Alarmı (3 Bar Ortalaması)//@version=5
indicator("Hacim Patlaması Alarmı (3 Bar Ortalaması)", overlay=false)
hacim = volume
hacimOrtalama = ta.sma(volume, 3)
limit = hacimOrtalama * 1.5
hacimPatladiMi = hacim > limit
plot(hacim, title="Hacim", color=color.new(color.blue, 0), style=plot.style_columns)
plot(hacimOrtalama, title="3 Bar Ortalaması", color=color.gray, linewidth=1)
bgcolor(hacimPatladiMi ? color.new(color.red, 80) : na)
alertcondition(hacimPatladiMi, title="Hacim Patladı", message="⚠ Hacim patlaması tespit edildi!")
Trend Confluence Indicator identify potential trend reversals by combining signals from three popular technical indicators: MACD, Stochastic Oscillator, and ADX.
Here's a breakdown of its components and how it defines confluence:
MACD (Moving Average Convergence Divergence):
Purpose: This indicator helps to spot changes in the strength, direction, momentum, and duration of a trend.
Signals:
A bullish MACD signal is generated when the MACD line crosses above its signal line, indicating increasing bullish momentum.
A bearish MACD signal is generated when the MACD line crosses below its signal line, indicating increasing bearish momentum.
Stochastic Oscillator:
Purpose: This momentum indicator compares a security's closing price to its price range over a given period, identifying overbought and oversold conditions. It also shows momentum shifts.
Signals:
A bullish Stochastic signal is typically a crossover of the %K line above the %D line.
A bearish Stochastic signal is a crossover of the %K line below the %D line.
ADX (Average Directional Index):
Purpose: The ADX measures the strength of a trend, not its direction. Higher ADX values indicate a stronger trend, while lower values suggest a weak or ranging market.
Role in Confluence: For reversal signals, the indicator looks for the ADX to be below a specified threshold (defaulting to 25). The idea is that reversals are more likely to occur when the existing trend is weak or the market is consolidating, rather than when a strong trend is in full force.
How Confluence is Currently Defined (Simplified for Debugging):
In its current state (with the debugging simplification active in the Canvas), a signal is generated when:
Bullish Reversal (Trend Up): The MACD line crosses above its signal line AND the Stochastic %K line crosses above its %D line.
Bearish Reversal (Trend Down): The MACD line crosses below its signal line AND the Stochastic %K line crosses below its %D line.
When these simplified conditions are met, the indicator plots "Reversal Up" (▲) or "Reversal Down" (▼) labels directly on your chart. It also plots the individual MACD, Stochastic, and ADX lines on separate sub-panes to help you visualize the underlying indicator movements.
Original (More Comprehensive) Confluence (Commented Out):
The Canvas also contains commented-out code for the original, more stringent confluence conditions. These would have added further filters:
For Bullish Reversal: The Stochastic %K and %D lines would also need to be below the stochOversold level (e.g., 20) when the crossover occurred, and the ADX would need to be below the adxThreshold.
For Bearish Reversal: The Stochastic %K and %D lines would also need to be above the stochOverbought level (e.g., 80) when the crossover occurred, and the ADX would need to be below the adxThreshold.
Once you confirm the indicator is showing signals with the simplified logic, you can uncomment these original lines in the Canvas to activate the more precise confluence criteria, or adjust the input parameters to fine-tune its sensitivity.
Inflection PointInflection Point - The Adaptive Confluence Reversal Engine
This is not just another peak and valley indicator; it is a complete and total reimagining of how market turning points are detected, qualified, and acted upon. Born from the foundational concepts explored in systems like my earlier creation, DAFE - Turning Point, Inflection Point is a ground-up engineering feat designed for the modern trader. It moves beyond static rules and simple pattern recognition into the realm of dynamic, multi-factor confluence analysis and adaptive machine learning.
Where other indicators provide a guess, Inflection Point provides a probability. It meticulously analyzes the market's deepest currents—momentum, exhaustion, and reversal velocity—and fuses them into a single, unified "Confluence Score." This is not a simple combination of indicators; it is an intelligent, weighted system where each component works in concert, creating an analytical engine that is orders of magnitude more sophisticated and reliable than any standard reversal tool.
Furthermore, Inflection Point learns. Through its advanced Adaptive Learning Engine, it constantly monitors its own performance, adjusting its confidence and selectivity in real-time based on its recent success rate. This allows it to adapt its behavior to any security, on any timeframe, with remarkable success.
Theoretical Foundation - Confluence Core
Inflection Point's predictive power does not come from a single, magical formula. It comes from the intelligent synthesis of three critical market phenomena, weighted and scored in real-time to generate a single, high-conviction probability rating.
1. Factor One: Pre-Reversal Momentum State (RSI Analysis)
Instead of reacting to a simple RSI cross, Inflection Point proactively scans for the build-up of momentum that precedes a reversal.
• Formulaic Concept: It measures the highest RSI value over a lookback period for peaks and the lowest RSI for valleys. A signal is only considered valid if significant momentum has been established before the turn, indicating a stretched market condition ripe for reversal.
• Asymmetric Sophistication: The engine uses different, optimized thresholds for bull and bear momentum, recognizing that markets often fall faster than they rise.
2. Factor Two: Volatility Exhaustion (Bollinger Band Analysis)
A true reversal often occurs when price makes a final, exhaustive push into unsustainable territory.
• Formulaic Concept: The engine detects when price has significantly pierced the outer Bollinger Bands. This is not just a touch, but a statistical deviation from the mean that signals volatility exhaustion, where the energy for the current move is likely depleted.
3. Factor Three: Reversal Strength (Rate of Change Analysis)
The character of a reversal matters. A sharp, decisive turn is more significant than a slow, meandering one.
• Formulaic Concept: Using a short-term Rate of Change (ROC), the engine measures the velocity of the reversal itself. A higher ROC score adds significant weight to the final probability, confirming that the new direction has conviction.
4. The Final Calculation: The Adaptive Learning Engine
This is the system's "brain." It maintains a history of its past signals and calculates its real-time win rate. This hitRate is then used to generate an adaptiveMultiplier.
• Self-Correction: In "Quality Control" mode, a high win rate makes the indicator more selective, demanding a higher probability score to issue a signal, thereby protecting streaks. A lower win rate makes it slightly less selective to ensure it continues learning from new market conditions.
• The result is a system that is not static, but a living, breathing tool that adapts its personality to the unique rhythm of any chart.
Why Inflection Point is a Paradigm Shift
Inflection Point is fundamentally different from other reversal indicators for three key reasons:
Confluence Over Isolation: Standard indicators look at one thing (e.g., RSI > 70). Inflection Point simultaneously analyzes momentum, volatility, and velocity, understanding that true reversals are a product of multiple converging factors. It answers not just "if," but "why" a reversal is likely.
Probabilistic Over Binary: Other tools give you a simple "yes" or "no." Inflection Point provides a probability score from 0-100, allowing you to gauge the conviction of every potential signal. This empowers you to differentiate between a weak setup and an A+ opportunity.
Adaptive Over Static: Every other indicator uses the same rules forever. Inflection Point's Adaptive Engine means it is constantly refining its own logic based on what is actually working in the current market, on the specific asset you are trading. It is tailored to the now.
The Inputs Menu - Your Command Center
Every setting is a lever of control, allowing you to tune the engine to your precise trading style and market focus.
🧠 Neural Core Engine
Analysis Depth: This is the primary lookback for the Bollinger Band and other core calculations. A shorter depth makes the indicator faster and more sensitive, ideal for scalping. A longer depth makes it slower and more stable, ideal for swing trading.
Minimum Probability %: This is your master signal filter. It sets the minimum Confluence Score required to plot a signal. Higher values (85-95) will give you only the highest-conviction A+ setups. Lower values (70-80) will show more potential opportunities.
🤖 Adaptive Neural Learning
Enable Adaptive Learning Engine: Toggles the entire learning system. Disabling it will make the indicator's logic static.
Peak/Valley Success Threshold (ATR): This defines what constitutes a "successful" trade for the learning engine. A value of 1.5 means price must move 1.5x the ATR in your favor for the signal to be marked as a win. Adjust this to match your personal take-profit strategy.
Adaptive Mode: This dictates how the engine uses its hitRate. "Quality Control" is recommended for its intelligent filtering. "Aggressive" will always boost signal scores, useful for finding more setups in a known, trending environment.
Asymmetric Balance: Allows you to apply a "boost" to either peak (short) or valley (long) signals. If you find the market you're trading has stronger long reversals, you can increase the "Valley Signal Boost" to catch them more effectively.
🛡️ Elite Filters
Market Noise Filter: An exceptional tool for avoiding choppy markets. It counts the number of directional changes in the last 5 bars. If the market is whipping back and forth too much, it will block the signal. Lower the "Max Direction Changes" to be extremely selective.
Volume Filter: Requires signal confirmation from a significant volume spike. The "Volume Multiplier" dictates how large this spike must be (e.g., 1.2 = 20% above average volume). This is invaluable for filtering out low-conviction moves in stocks and crypto.
The Dashboard - Your Analytical Co-Pilot
The dashboard is not just a set of numbers; it is a holistic overview of the market's health and the engine's current state.
Unified AI Score: This section provides the most critical, at-a-glance information. "Total Score" is the current probability reading, while "Quality" gives you a human-readable interpretation. "Win Rate" shows the real-time performance of the Adaptive Engine.
Order Flow (OFPI): This measures the "weight" of money behind recent price moves by analyzing price change relative to volume. A high positive OFPI suggests strong buying pressure, while a high negative value suggests strong selling pressure. It gives you a peek into the market's underlying flow.
Component Analysis: This allows you to see the individual "Peak" and "Valley" confidence scores before they are filtered, giving you insight into building momentum before a signal forms.
Market Structure: This panel assesses the broader environment. "HTF Trend" tells you the direction of the larger trend (based on EMAs), while "Vol Regime" tells you if the market is in a high, medium, or low volatility state. Use this to align your signals with the broader market context.
Filter & Engine Statistics: Available on the "Large" dashboard, this provides deep insight into how many signals are being blocked by your filters and the current status of the Adaptive Engine's multiplier.
The Visual Interface - A Symphony of Data
Every visual element on the chart is designed for instant interpretation and insight.
Signal Markers: Simple, clean triangles mark the exact bar of a valid signal. A box is drawn around the high/low of the signal bar to highlight the precise point of inflection.
Dynamic Support/Resistance Zones: These are the glowing lines on your chart. They are not static lines; they are dynamic levels that represent the current battlefield between buyers and sellers.
Cyber Cyan (Valley Blue): This is the current Support Zone. This is the price level the market is currently trying to defend.
Neural Pink (Peak Red): This is the current Resistance Zone. This is the price level the market is currently trying to break through.
Grey (Next Level): This line is a projection, based on the current momentum and the size of the S/R range, of where the next major level of conflict will likely be. It acts as a potential price target.
Development & Philosophy
Inflection Point was not assembled; it was engineered. It represents hundreds of hours of research into market dynamics, statistical analysis, and machine learning principles. The goal was to create a tool that moves beyond the limitations of traditional technical analysis, which often fails in modern, algorithm-driven markets. By building a system based on multi-factor confluence and self-adaptive logic, Inflection Point provides a quantifiable, statistical edge that is simply unattainable with simpler tools. This is the result of a relentless pursuit of a better, more intelligent way to trade.
Universal Applicability
The principles of momentum, exhaustion, and velocity are universal to all freely traded markets. Because of its adaptive core and robust filtering options, Inflection Point has proven to be exceptionally effective on any security (stocks, crypto, forex, indices, futures) and on any timeframe (from 1-minute scalping charts to daily swing trading charts).
" Markets are constantly in a state of uncertainty and flux and money is made by discounting the obvious and betting on the unexpected. "
— George Soros
Trade with insight. Trade with anticipation.
— Dskyz, for DAFE Trading Systems
Stochastic Trend Signal with MultiTF FilterIndicator Overview – Multi-Timeframe Stochastic Signal
This custom TradingView indicator combines multi-timeframe Stochastic analysis to generate high-probability, trend-following trading signals. It integrates:
Stochastic on the current timeframe to identify potential entry zones (overbought/oversold).
Stochastic on the 1D (daily) timeframe to confirm short-term trend direction.
Stochastic on the 1W (weekly) timeframe to filter out signals that go against the broader market trend.
🔔 Buy signals are triggered only when:
1D Stochastic > 50 (bullish bias),
Current timeframe Stochastic ≤ 20 (oversold),
After the first bullish candle,
And 1W Stochastic does not contradict the direction (must not be bearish).
🔻 Sell signals are triggered only when:
1D Stochastic < 50 (bearish bias),
Current timeframe Stochastic ≥ 80 (overbought),
After the first bearish candle,
And 1W Stochastic does not contradict the direction (must not be bullish).
The indicator also includes visual highlights:
✅ Green or red background when 1D and 1W trends align clearly.
⚠️ Gray background when 1D and 1W trends conflict — a warning to avoid low-probability setups.
📌 This indicator works best on the 4-hour (H4) timeframe, offering a balanced view between short-term signals and higher timeframe trend filters.
StratNinjaTableThe StratNinjaTable is a comprehensive technical analysis tool for TradingView designed to provide traders with a multi-timeframe overview of a security's performance and key metrics in a single, customizable table.
This indicator is built around "The Strat" candlestick methodology, which focuses on inside bars (1), trending bars (2U for up, 2D for down), and outside bars (3). It displays this information across multiple, user-selected timeframes simultaneously, from minutes to yearly charts.
Key Features
Multi-Timeframe "Strat" Analysis: The core of the indicator is a table that shows the current "Strat" number (1, 2U, 2D, or 3) and the directional bias (▲ for up, ▼ for down) for each selected timeframe. This allows for a quick assessment of market structure and potential setups across different chart periods.
Customizable Timeframe Selection: Users can easily select which timeframes they want to monitor, including standard intervals like 5-minute, 15-minute, hourly, daily, weekly, and monthly charts.
Comprehensive Data Table: Beyond the "Strat" analysis, the indicator populates a detailed table with essential market data:
Ticker Information: Displays the current ticker and the chart's timeframe.
Money Flow Index (MFI): Shows the MFI value, with color-coded backgrounds to highlight overbought (>80) and oversold (<20) conditions.
Average True Range (ATR): Provides the ATR value and its percentage relative to the closing price, with color signals for low or high volatility.
Market Cap: Calculates and displays the security's market capitalization.
Sector Information: Shows the sector the security belongs to.
Moving Average Data: Includes the distance of the current price from the 20-day Simple Moving Average (SMA), expressed as a percentage.
Volume: Displays the 30-day average trading volume.
Strat Pattern Prediction: Shows a historical sequence of the last two Strat patterns and a potential future pattern based on the current bar's direction.
Timeframe Countdown: A timer for each timeframe shows how much time is left until the current candle closes.
Customizable Appearance: The indicator offers extensive customization options for the table's position on the screen and the colors used for different "Strat" bar types, allowing users to tailor the visual presentation to their preferences.
In essence, the StratNinjaTable serves as an all-in-one dashboard, enabling traders to quickly gauge market sentiment, identify confluence across timeframes, and access key technical data without cluttering their charts with multiple separate indicators.
High Selling Point Reversal V6.0Criteria combined for a "High Selling Point" signal: Best used for exiting long positions or entering shorts
Overbought Condition (RSI):
Purpose: Ensures the asset has had a significant run-up and is potentially exhausted.
Criteria: RSI (Relative Strength Index) is above a certain threshold (e.g., 70 or 80).
Bearish Candlestick Reversal Pattern:
Purpose: Identifies specific price action that indicates a shift from buying to selling pressure.
Criteria: We can implement detection for one or more strong bearish patterns. A good starting point would be:
Bearish Engulfing: A bearish candle whose real body completely covers the previous bullish candle's real body. This is a very strong two-candle reversal signal.
Shooting Star: A candle with a small real body at the lower end of the range, a long upper shadow, and little to no lower shadow. It signifies rejection of higher prices.
Evening Star: A three-candle pattern: a large bullish candle, followed by a small-bodied candle (the "star"), and then a large bearish candle. This is a powerful top reversal.
Negative Divergence (Optional but powerful):
Purpose: Indicates weakening momentum despite price continuing to rise, suggesting underlying weakness.
Criteria: Price makes a higher high, but a momentum oscillator (like RSI or MACD) makes a lower high.
Combine with other indicators for confluence
Rifle UnifiedThis script is designed for use on 30-second charts of Dow Jones-related symbols (YM, MYM, US30). It provides automated buy and sell signals using a combination of price action, RSI (Relative Strength Index), and volume analysis. The script is intended for both live trading signals and backtesting, with configurable risk management and debugging features.
Core Functionality
1. Signal Generation Logic
Trigger: The algorithm looks for a sharp price move (drop or rise) of a user-defined threshold (default: 80 points) within a specified lookback window (default: 20 minutes).
Levels: It monitors for price drops below specific numerical levels ending in 23, 43, or 73 (e.g., 42223, 42273).
RSI Condition: When price falls below one of these levels and the RSI is below 30, the setup is considered active.
Buy Signal: A buy is triggered if, after setup:
Price rises back above the level,
The RSI rate of change (ROC) indicates exhaustion of the drop,
The current bar shows positive momentum.
2. Trade Management
Stop Loss & Take Profit: Configurable fixed or trailing stop loss and take profit levels are plotted and managed automatically.
Exit Signals: The script signals exit based on price action relative to these risk management levels.
3. Filters & Enhancements
Parabolic Move Filter: Prevents entries during extreme price moves.
Dead Cat Bounce Filter: Avoids false signals after sharp reversals.
Volume Filter: Optionally requires volume conditions for trade entries (especially for shorts).
Multiple Confirmation Layers : Includes checks for 5-minute RSI, momentum, and price retracement.
User Inputs & Customization
Trade Direction: Toggle between LONG and SHORT signal generation.
Trigger Settings: Adjust thresholds for price moves, lookback windows, RSI ROC, and volume requirements.
Trade Settings: Set take profit, stop loss, and trailing stop behavior.
Debug & Visualization: Enable or disable various plots, labels, and debug tables for in-depth analysis.
Backtesting: Integrated backtester with summary and detailed statistics tables.
Technical Features
Uses External Libraries: Relies on RifleShooterLib for core logic and BackTestLib for backtesting and statistics.
Multi-timeframe Analysis: Incorporates both 30-second and 5-minute RSI calculations.
Chart Annotations: Plots entry/exit points, risk levels, and debug information directly on the chart.
Alert Conditions: Built-in alert triggers for key events (initial move, stall, entry).
Intended Use
Markets: Dow Jones symbols (YM, MYM, US30, or US30 CFD).
Timeframe: 30-second chart.
Purpose: Automated signal generation for discretionary or algorithmic trading, with robust risk management and backtesting support.
Notable Customization & Extension Points
Momentum Calculation: Plans to replace the current momentum measure with "sqz momentum".
Displacement Logic: Future update to use "FVG concept" for displacement.
High-Contrast RSI: Optional visual enhancements for RSI extremes.
Time-based Stop: Consideration for adding a time-based stop mechanism.
This script is highly modular, with extensive user controls, and is suitable for both live trading and historical analysis of Dow Jones index movements
Range Breakout [sgbpulse]Range Breakout
1. Overview
The "Range Breakout " indicator is a powerful tool designed to identify and visually display price ranges on your chart using pivot points. It dynamically draws two distinct boxes – an External Range and an Internal Range – helping traders pinpoint potential support and resistance zones. Beyond its visual representation, the indicator offers a comprehensive set of 12 unique breakout alerts, providing real-time notifications for significant price movements outside these defined ranges. Additionally, it integrates RSI and MFI metrics for momentum confirmation.
2. How It Works
The indicator operates by identifying pivot points based on user-defined "left" and "right" bar lengths. A high pivot is a bar with a specified number of lower highs both to its left and right, and similarly for a low pivot.
External Range: Calculated using longer pivot lengths (default: 15 bars left, 6 bars right). This range represents broader, more significant price consolidation areas.
Internal Range: Calculated using shorter pivot lengths (default: 4 bars left, 3 bars right). This range captures tighter, more immediate price consolidations within the broader trend.
The External Range will always be greater than or equal to the Internal Range, as it's based on a wider historical context. Both ranges are displayed as transparent boxes on your chart, dynamically adjusting as new pivots are formed.
3. Key Features and Settings
Customizable Pivot Lengths:
External Range (Left/Right Bars): Adjust sensitivity for identifying the broader price range. Longer lengths lead to more stable, but less frequent, range updates.
Internal Range (Left/Right Bars): Adjust sensitivity for the tighter, more immediate price range.
Tool Tips: Minimum 6 bars for the External Range, and minimum 2 bars for the Internal Range.
Customizable Range Colors: Easily change the background colors of the External and Internal Range boxes to match your chart's aesthetic.
Dynamic Range Display: The indicator automatically updates the range boxes as new pivot highs and lows are formed, always presenting the most current valid ranges.
RSI / MFI Settings:
Timeframe Source: Select the timeframe for RSI and MFI calculation.
- Chart: Calculation based on the current chart timeframe.
- Daily: Always calculated based on the daily ("D") timeframe, even if the chart is on a lower timeframe.
RSI Length: Period length for RSI calculation (default: 14).
RSI Overbought Level: Overbought level for RSI (default: 70.0).
RSI Oversold Level: Oversold level for RSI (default: 30.0).
MFI Length: Period length for MFI calculation (default: 14).
MFI Overbought Level: Overbought level for MFI (default: 80.0).
MFI Oversold Level: Oversold level for MFI (default: 20.0).
4. Synergy of Ranges & Breakout Strength
The interaction between the External and Internal Ranges provides deep insights into price movement and breakout strength:
Immediate Direction: The movement of the Internal Range (up or down) indicates the short-term directional bias within the broader framework of the External Range.
Strength Confirmation: A breakout of the External Range, followed by a breakout of the Internal Range, confirms the strength of the move and increases confidence in the breakout.
Strong Momentum ("Leaving" Ranges Behind): When price breaks out with exceptionally strong momentum, it continues to move aggressively and does not immediately form new pivots. In such situations, the existing ranges (External and Internal) remain in place while the candles "leave them behind." A "Full Candle" breakout, where the entire candle moves past both ranges, indicates a particularly powerful and decisive move.
Momentum (RSI / MFI) as Confirmation:
- RSI (Relative Strength Index): Measures the speed and change of price movements. Extreme values (above 70 or below 30) indicate overbought/oversold conditions respectively, confirming strong momentum in a breakout.
- MFI (Money Flow Index): Similar to RSI but incorporates volume. Extreme values (above 80 or below 20) indicate strong money flow in/out, reinforcing breakout confirmation.
- Importance of Confirmation: If a breakout occurs but momentum indicators do not confirm it (for example, an upside breakout while RSI is declining), this could signal weakness in the move and the risk of a false breakout (Fakeout).
5. Visuals
The indicator provides clear visual representations on the chart:
Range Boxes:
Two dynamic boxes are drawn on the chart: one for the External Range and one for the Internal Range.
These boxes update continuously, displaying the current range boundaries based on the latest pivots. They provide an immediate visual indication of support and resistance levels.
RSI/MFI Status Labels:
Small text labels appear to the right of the current bar, vertically centered.
They display the status of RSI and MFI: RSI OB (Overbought), RSI OS (Oversold), MFI OB, MFI OS, along with the exact value.
Important: The labels remain on the chart as long as the condition holds (indicator is above/below the level), unlike alerts which mark a singular crossover event.
Plotting of Key Values:
The indicator plots six invisible series on the chart, primarily to allow the user to view the exact numerical values of:
- The upper and lower bounds of the External Range (External High, External Low).
- The upper and lower bounds of the Internal Range (Internal High, Internal Low).
- The calculated RSI and MFI values (RSI, MFI).
These values are accessible for viewing through TradingView's Data Window and also via the Status Line when hovering over the relevant candle. This enables more precise quantitative analysis of range levels and momentum.
6. Comprehensive Breakout Alerts
The "Range Breakout " indicator provides 12 distinct alert conditions for breakouts, allowing you to select the required level of confirmation for each alert. All alerts are triggered only upon a fully confirmed bar close (barstate.isconfirmed) to minimize false signals and ensure reliability.
All breakout alerts are configured to detect a Crossover/Crossunder of the levels, meaning a specific event where the price moves from one side of the range to the other.
External Range Breakout UP
- Close: Price closes above the External Range.
- Real Body: The entire "real body" of the candle (min of open/close prices) closes above the External Range.
- Full Candle: The entire candle (the lowest point of the candle) closes above the External Range.
External Range Breakout DOWN
- Close: Price closes below the External Range.
- Real Body: The entire "real body" of the candle (max of open/close prices) closes below the External Range.
- Full Candle: The entire candle (the highest point of the candle) closes below the External Range.
Internal Range Breakout UP
- Close: Price closes above the Internal Range.
- Real Body: The "real body" of the candle closes above the Internal Range.
- Full Candle: The entire candle closes above the Internal Range.
Internal Range Breakout DOWN
- Close: Price closes below the Internal Range.
- Real Body: The "real body" of the candle closes below the Internal Range.
- Full Candle: The entire candle closes below the Internal Range.
7. Ideal Use Cases
This indicator is ideal for traders who:
Want to clearly identify and monitor price consolidation zones.
Seek confirmation for breakout strategies across various timeframes.
Require reliable and automated alerts for potential entry or exit points based on range expansion.
8. Complementary Indicator
For even more comprehensive market analysis, we highly recommend using this indicator in conjunction with Market Structure Support & Resistance External/Internal & BoS .
This powerful complementary indicator automatically and accurately identifies significant support and resistance levels by locating high and low pivot points, as well as key Pre-Market High/Low levels. Its strength lies in its dynamic adaptability to any timeframe and asset, providing precise and relevant real-time levels while maintaining a clean chart. It also identifies Break of Structure (BoS) to signal potential trend changes or continuations.
Using both indicators together provides a robust framework for identifying defined ranges and potential trend shifts, enabling more informed trading decisions.
View Market Structure Support & Resistance External/Internal & BoS Indicator
9. Important Note: Trading Risk
This indicator is intended for educational and informational purposes only and does not constitute investment advice or a recommendation for trading in any form whatsoever.
Trading in financial markets involves significant risk of capital loss. It is important to remember that past performance is not indicative of future results. All trading decisions are your sole responsibility. Never trade with money you cannot afford to lose.