Liquidity Zones DetectorIdentifies high-probability liquidity zones by scanning for price levels repeatedly touched by candle wicks within a lookback period. Highlights potential buy- and sell-side liquidity areas as shaded boxes on the chart.
Indicators and strategies
BTC Buy/Sell SignalUse in higher time frames (weekly works best)
Condition Interpretation:
Red Shading: Indicates a scenario where Copper/Gold is strong (above zero), Copper/Bitcoin is weak (below zero), and the difference between them is pronounced (Smoothed MA Difference above Copper/Gold Z-Score).
Green Shading: Indicates the opposite, where Copper/Gold is weak, Copper/Bitcoin is strong, and the difference is below the Copper/Gold Z-Score.
The zones only indicate that the trader should consider buying or selling. Use with another indicator to confirm.
Initial Balance (London Session) - UTC+1 (Box Only)Initial balance for the new day
first two hours of the London session for UTC+1
30min to 1min Entry RefinerA multi-timeframe entry confirmation tool that aligns 30-minute RSI signals with 1-minute RSI crossovers and volume spikes. Ideal for precise intraday entries in trending markets, with optional support/resistance overlays from higher-timeframe pivots.
RSI Distance & BB Width OnlyThis indicator shows the Relative Strength Index Distance Bollinger Bands Width
Copper to Gold Ratioratio = copper / gold: Calculates the ratio by dividing copper price by gold price.
plot(ratio): Plots the ratio as a blue line.
ma = ta.sma(ratio, 20): Adds a 20-period simple moving average (optional) to smooth the ratio, plotted as a red line.
A rising Copper/Gold ratio often signals economic expansion (strong copper demand relative to gold), while a falling ratio may indicate economic uncertainty or recession fears, as gold outperforms copper.
The ratio is also used as a leading indicator for 10-year U.S. Treasury yields, with a rising ratio often correlating with higher yields.
Boring Candles by The School of Dalal StreetThis indicator highlights the "boring" candles. These are candles where the body is less than 50% in length as compared to the high and low length. This allows us to quickly find the lower timeframe demand/supply without switching the chart timeframe. The use case is to quickly find our targets based on lower time frames.
log regression forex and altcoin dom (caN)(0-100 Range)NO REPAİNTİNG
Stablecoin Dominance Indicator
The Stablecoin Dominance Indicator is a powerful tool designed to analyze the relative dominance of stablecoins within the cryptocurrency market. It utilizes a combination of regression analysis and standard deviation to provide valuable insights into market sentiment and potential turning points. This indicator is particularly useful for traders and investors looking to make informed decisions in the dynamic world of cryptocurrencies.
How to Read the Indicator:
The Stablecoin Dominance Indicator comprises three key lines, each serving a specific purpose:
Middle Line (Regression Line):
The middle line represents the Regression Line of stablecoin dominance, acting as a baseline showing the average or mean dominance of stablecoins in the market.
When the stablecoin dominance hovers around this middle line, it suggests a relatively stable market sentiment with no extreme overbought or oversold conditions.
Upper Line (2 Standard Deviations Above Mean):
The upper line, positioned 2 standard deviations above the Regression Line, indicates a significant deviation from the mean.
When stablecoin dominance approaches or surpasses this upper line, it may imply that the cryptocurrency market is experiencing oversold conditions, potentially signaling a market bottom. This is an opportune time for traders to consider increasing their exposure to cryptocurrencies.
Lower Line (2 Standard Deviations Below Mean):
The lower line, positioned 2 standard deviations below the Regression Line, shows a significant deviation in the opposite direction, indicating overbought conditions.
When stablecoin dominance approaches or falls below this lower line, it suggests overbought conditions in the market, possibly indicating a market top. Traders may consider reducing their cryptocurrency holdings or taking profits during this phase.
It's important to note that the Stablecoin Dominance Indicator should be used in conjunction with other analysis tools and strategies.
By understanding and applying the insights provided by this indicator, traders and investors can make more informed decisions in the ever-changing cryptocurrency landscape, potentially enhancing their trading strategies and risk management practices.
Log Regression Oscillator (caN)fi(ki)=>'ra'
// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at mozilla.org
// © fikira
//@version=6
indicator('Log Regression Oscillator', max_bars_back=5000, max_labels_count=500, max_lines_count=500, overlay=false)
________________________________________________________________________________________________________________________ ='
⎞ Settings ⎛
(__--------__) '
cGREEN = #089981, cRED = #F23645, cGRAY = #757a79
threshold = input.int (300 , minval=150)
proactive = input.bool (false )
GRE = input.color(cGREEN , 'Bull' , group='Style' )
RED = input.color(cRED , 'Bear' , group='Style' )
GRY = input.color(cGRAY , 'Unconfirmed Bull/Bear' , group='Style' )
showDsh = input.bool ( true , 'Show Dashboard' , group='Dashboard' )
dshLoc = str.replace(str.lower(input.string('Top Right', 'Location', group='Dashboard', options= )), ' ', '_')
txtSize = str.lower(input.string('Normal' , 'Size' , group='Dashboard', options= ) )
________________________________________________________________________________________________________________________ :='
⎞ Constants and general variables ⎛
(__-------------------------------__) '
INV = color(na)
n = bar_index
________________________________________________________________________________________________________________________ :='
⎞ Functions ⎛
(__---------__) '
dot(x, y)=>
if x.size() > 1 and y.size() > 1
m1 = matrix.new()
m2 = matrix.new()
m1.add_col(m1.columns(), y)
m2.add_row(m2.rows (), x)
m1.mult (m2)
.eigenvalues()
.sum()
//Closed form solution to best fit log function
log_reg(log_x, log_x2, log_y) =>
sum_log_x = log_x . sum()
sum_y = log_y . sum()
sum_log_x_y = dot(log_x ,log_y)
sum_log_x_sq = log_x2 . sum()
n_ = log_x .size()
//Closed-form solutions for a and b
a = (n_ * sum_log_x_y - sum_log_x * sum_y)
/ (n_ * sum_log_x_sq - math.pow(sum_log_x , 2))
b = ( sum_y - a * sum_log_x ) / n_
//Variables declared for draw()
var arrayarr = array.new(4, na)
proActH = false, proActL = false
var lastHi = 0., var lastLi = 0.
draw(aTop_x, aTop_x2, aTop_y, aBot_x, aBot_x2, aBot_y, top_points, prc_points, btm_points, refit) =>
var label labH = na, var label labL = na
vTop = 0.
vBtm = 0.
if refit
top_points.clear(), prc_points.clear(), btm_points.clear()
= log_reg(aTop_x, aTop_x2, aTop_y), arr.set(0, a_top), arr.set(1, b_top)
= log_reg(aBot_x, aBot_x2, aBot_y), arr.set(2, a_btm), arr.set(3, b_btm)
for i = 0 to n
top = math.exp(a_top * math.log(i) + b_top)
btm = math.exp(a_btm * math.log(i) + b_btm)
avg = math.avg(top, btm)
if i == n
vTop := top
vBtm := btm
ix = n - i
if ix < 4999
hi = high
lo = low
cl = close
getC = hi > avg ? hi : lo < avg ? lo : cl
prc_points.push(chart.point.from_index(i, 100 * math.max(-1.5, math.min(1.5, (getC - btm) / (top - btm)))))
for lab in label.all
lab.delete()
firstH = proactive ? true : false
firstL = proactive ? true : false
color colH = na, color colL = na
sz = prc_points.size()
if aTop_x.size() > 0
for i = aTop_x.size() -1 to 0
idx = int(math.exp(aTop_x.get(i)))
if idx < sz and idx > n - 5000 and idx >= 0
if firstH
if aTop_x.last() != lastHi
colH := GRY
firstH := false
else
colH := RED
else
colH := RED
top = math.exp(a_top * math.log(idx) + b_top)
btm = math.exp(a_btm * math.log(idx) + b_btm)
label.new(idx , 100 *
math.max(-1.5, math.min(1.5, (high - btm)
/ (top - btm)
) ), '●', textcolor = colH, color=INV, size=8)
if aBot_x.size() > 0
for i = aBot_x.size() -1 to 0
idx = int(math.exp(aBot_x.get(i)))
if idx < sz and idx > n - 5000 and idx >= 0
if firstL
if aBot_x.last() != lastLi
colL := GRY
firstL := false
else
colL := GRE
else
colL := GRE
top = math.exp(a_top * math.log(idx) + b_top)
btm = math.exp(a_btm * math.log(idx) + b_btm)
label.new(idx , 100 *
math.max(-1.5, math.min(1.5, (low - btm)
/ (top - btm)
) ), '●', textcolor = colL, color=INV, size=8
, style = label.style_label_up)
else
top = math.exp(arr.get(0) * math.log(n) + arr.get(1))
btm = math.exp(arr.get(2) * math.log(n) + arr.get(3))
avg = math.avg(top, btm)
vTop := top
vBtm := btm
hi = high, lo = low, cl = close
getC = hi > avg ? hi : lo < avg ? lo : cl
prc_points.push(chart.point.from_index(n, 100 * math.max(-1.5, math.min(1.5, (getC - btm) / (top - btm)))))
for poly in polyline.all
poly.delete()
if barstate.islast
labH.delete(), labH := label.new(n, 100, str.tostring(vTop, format.mintick), color=color.new(chart.fg_color, 85), textcolor=RED, style=label.style_label_lower_left, size=12)
labL.delete(), labL := label.new(n, 0, str.tostring(vBtm, format.mintick), color=color.new(chart.fg_color, 85), textcolor=GRE, style=label.style_label_upper_left, size=12)
polyline.new(prc_points.size() >= 5000 ? prc_points.slice(prc_points.size()-4999, prc_points.size()-1) : prc_points, line_color=chart.fg_color)
________________________________________________________________________________________________________________________ :='
⎞ Variables ⎛
(__---------__) '
//bool trigerring fit
refit = false
var top_points = array.new(0)
var prc_points = array.new(0)
var btm_points = array.new(0)
//Variables arrays
var peaks_y = array.new(0)
var peaks_x = array.new(0)
var peaks_x2 = array.new(0)
var btms_y = array.new(0)
var btms_x = array.new(0)
var btms_x2 = array.new(0)
var tb = table.new(dshLoc, 4, 8
, bgcolor = #1e222d
, border_color = #373a46
, border_width = 1
, frame_color = #373a46
, frame_width = 1)
________________________________________________________________________________________________________________________ :='
⎞ Exec ⎛
(__----__) '
//Top Bottom detection
max = ta.max(high)
var min = low
min := max == high ? low
: math.min(low , min)
barsmax = ta.barssince(high == max)
barsmin = ta.barssince(low == min)
if barsmax == threshold
nmax = n-barsmax
if peaks_x .size() > 0 and peaks_x.last() != lastHi
peaks_y .set(-1, math.log( max) )
peaks_x .set(-1, math.log(nmax) )
peaks_x2.set(-1, math.pow(math.log(nmax), 2))
else
peaks_y .push( math.log(max) )
peaks_x .push( math.log(nmax) )
peaks_x2.push( math.pow(math.log(nmax), 2))
lastHi := math.log(nmax)
refit := true
else
min := math.min(low , min)
if barsmin == threshold
nmin = n-barsmin
if btms_x .size() > 0 and btms_x.last() != lastLi
btms_y .set(-1, math.log(min) )
btms_x .set(-1, math.log(nmin) )
btms_x2 .set(-1, math.pow(math.log(nmin), 2))
else
btms_y .push( math.log( min) )
btms_x .push( math.log(nmin) )
btms_x2.push( math.pow(math.log(nmin), 2))
lastLi := math.log(nmin)
refit := true
chMax = ta.change(max) , chMin = ta.change(min)
if (chMax != 0 or chMin != 0) and proactive and not refit and n > threshold
= log_reg(peaks_x, peaks_x2, peaks_y)
= log_reg( btms_x, btms_x2, btms_y)
top = math.exp(a_top * math.log(n) + b_top)
btm = math.exp(a_btm * math.log(n) + b_btm)
if 100 * ((high - btm) / (top - btm)) > 90
if peaks_x.last() == lastHi
peaks_y .push(math.log(max))
peaks_x .push(math.log(n))
peaks_x2.push(math.log(n)
*math.log(n))
else
peaks_y .set(-1, math.log(max))
peaks_x .set(-1, math.log(n))
peaks_x2.set(-1, math.log(n)
* math.log(n))
arr.set(0, a_top), arr.set(1, b_top)
arr.set(2, a_btm), arr.set(3, b_btm)
refit := true
proActH := true
if 100 * ((low - btm) / (top - btm)) < 10
if btms_x.last() == lastLi
btms_y .push(math.log(min))
btms_x .push(math.log(n))
btms_x2.push(math.log(n)
*math.log(n))
else
btms_y .set(-1, math.log(min))
btms_x .set(-1, math.log(n))
btms_x2.set(-1, math.log(n)
* math.log(n))
arr.set(0, a_top), arr.set(1, b_top)
arr.set(2, a_btm), arr.set(3, b_btm)
refit := true
proActL := true
enough = peaks_x.size() > 1 and btms_x.size() > 1
if enough
draw(peaks_x, peaks_x2, peaks_y, btms_x, btms_x2, btms_y, top_points, prc_points, btm_points, refit)
else
if barstate.islast
txt = ''
if peaks_x.size() < 2
txt += str.format('{0} Top Swing', peaks_x.size())
if btms_x .size() < 2
if txt != ''
txt += ', '
txt += str.format('{0} Bottom Swing', btms_x .size())
txt += ' Change "Threshold" or timeframe for more Swings'
tb.cell(0, 0, txt, text_color=chart.fg_color, text_size=txtSize)
________________________________________________________________________________________________________________________ :='
⎞ Plot ⎛
(__----__) '
plot(n%2==0? 30 : na,'30' , color=color.new(chart.fg_color, 50), style=plot.style_linebr, display=display.pane)
plot(n%2==0? 70 : na,'70' , color=color.new(chart.fg_color, 50), style=plot.style_linebr, display=display.pane)
_100 = plot(100, 'na(100)', display=display.none)
_70 = plot( 70, 'na(70)' , display=display.none)
_60 = plot( 60, 'na(60)' , display=display.none)
_50 = plot( 50, 'na(50)' , display=display.none)
_40 = plot( 40, 'na(40)' , display=display.none)
_30 = plot( 30, 'na(30)' , display=display.none)
_00 = plot( 0, 'na(0)' , display=display.none)
fill(_100, _70, 100, 70, color.new(RED, 50), INV)
fill( _60, _50, 60, 50, INV, color.new(chart.fg_color, 85))
fill( _50, _40, 50, 40, color.new(chart.fg_color, 85), INV)
fill( _30, _00, 30, 0, INV, color.new(GRE, 75))
________________________________________________________________________________________________________________________ :='
⎞ End ⎛
(__---__) '
Luma DCA Tracker (BTC)Luma DCA Tracker (BTC) – User Guide
Function
This indicator simulates a regular Bitcoin investment strategy (Dollar Cost Averaging). It calculates and visualizes:
Accumulated BTC amount
Average entry price
Total amount invested
Current portfolio value
Profit/loss in absolute and percentage terms
Settings
Investment per interval
Fixed amount to be invested at each interval (e.g., 100 USD)
Start date
The date when DCA simulation begins
Investment interval
Choose between:
daily, weekly, every 14 days, or monthly
Show investment data
Displays additional chart lines (total invested, value, profit, etc.)
Chart Elements
Orange line: Average DCA entry price
Grey dots: Entry points based on selected interval
Info box (bottom left): Live summary of all key values
Notes
Purchases are simulated at the closing price of each interval
No fees, slippage, or taxes are included
The indicator is a simulation only and not linked to an actual portfolio
Copper to Bitcoin RatioRatio: Divides copper price by Bitcoin price (copper / bitcoin). Since copper is in USD per pound and Bitcoin is in USD, the ratio is unitless but reflects copper’s value relative to Bitcoin.
Plotting: The ratio is plotted as a blue line, with an optional 20-period simple moving average (red line) for smoothing.
This can reflect market sentiment (e.g., industrial demand vs. crypto speculation).
Touch 30 EMA & 150 EMA - Candle Signal//@version=5
indicator("Touch 30 EMA & 150 EMA - Candle Signal", overlay=true)
// Calculate EMAs
ema30 = ta.ema(close, 30)
ema150 = ta.ema(close, 150)
// Candle types
isGreen = close > open
isRed = close < open
// Candle touches both EMAs (either open-high-low-close range includes both)
touchesBothEMAs = low <= ema30 and high >= ema30 and low <= ema150 and high >= ema150
// Signals
greenArrow = isGreen and touchesBothEMAs
redArrow = isRed and touchesBothEMAs
// Plot arrows
plotshape(greenArrow, title="Green Candle Touch", location=location.belowbar, color=color.green, style=shape.arrowup, size=size.small)
plotshape(redArrow, title="Red Candle Touch", location=location.abovebar, color=color.red, style=shape.arrowdown, size=size.small)
// Plot EMAs for reference
plot(ema30, color=color.orange, title="EMA 30")
plot(ema150, color=color.blue, title="EMA 150")
RSX OBV & VWAP Weighted+This indicator combines RSX (Relative Strength eXtra), OBV (On-Balance Volume), and VWAP (Volume-Weighted Average Price) into a powerful momentum oscillator. It helps traders identify overbought/oversold conditions, accumulation/distribution zones, and trend strength with volume confirmation.
Key Features:
RSX Fast & Slow Lines: Smoothed momentum oscillator with adjustable lengths.
Volume Weighting: Option to weight price action using OBV or VWAP for better trend confirmation.
Custom Moving Average: Choose between SMA, EMA, WMA, or DEMA applied to RSX values.
Accumulation/Distribution Zones: Visual thresholds for extreme momentum conditions.
Volume Histogram: Displays OBV/VWAP impact on momentum (optional).
How to Use It?
Trend Identification:
Fast RSX > Slow RSX → Bullish momentum.
Fast RSX < Slow RSX → Bearish momentum.
Overbought/Oversold Levels:
Above 71 (Upper Level) → Overbought (potential reversal/sell signal).
Below 29 (Lower Level) → Oversold (potential reversal/buy signal).
Volume Confirmation:
OBV/VWAP Histogram shows if volume supports the trend.
Custom MA:
Use the moving average as a dynamic support/resistance level.
Best Settings:
Intraday Trading: Fast RSX (7), Slow RSX (14).
Swing Trading: Fast RSX (14), Slow RSX (21).
Volume Weighting: Enable for stronger trend confirmation.
Что такое индикатор RSX OBV & VWAP Weighted+?
Этот индикатор объединяет RSX (Relative Strength eXtra), OBV (On-Balance Volume) и VWAP (Volume-Weighted Average Price) в мощный осциллятор. Он помогает определять перекупленность/перепроданность, зоны накопления/распределения и силу тренда с учетом объема.
Основные функции:
RSX Fast & Slow Lines: Сглаженный осциллятор с настраиваемыми периодами.
Взвешивание по объему: Возможность учитывать OBV или VWAP для усиления сигналов.
Скользящая средняя: На выбор SMA, EMA, WMA или DEMA, применяемая к значениям RSX.
Зоны накопления/распределения: Визуальные уровни для экстремальных состояний.
Гистограмма объема: Показывает влияние OBV/VWAP на импульс (опционально).
Как использовать?
Определение тренда:
Fast RSX > Slow RSX → Бычий импульс.
Fast RSX < Slow RSX → Медвежий импульс.
Уровни перекупленности/перепроданности:
Выше 71 (верхний уровень) → Перекупленность (сигнал к продаже).
Ниже 29 (нижний уровень) → Перепроданность (сигнал к покупке).
Подтверждение объемом:
Гистограмма OBV/VWAP показывает, поддерживает ли объем движение.
Скользящая средняя:
Используйте как динамический уровень поддержки/сопротивления.
Рекомендуемые настройки:
Внутридневная торговля: Fast RSX (7), Slow RSX (14).
Свинг-трейдинг: Fast RSX (14), Slow RSX (21).
Взвешивание по объему: Включите для более сильных сигналов.
Moving Average Exponential//@version=4
study(title="主图常用指标@小何", shorttitle="主图常用指标@小何",overlay=true)
emaSystem1 = input(false,title = "均线系统@斐波那契")//5,21,55,144
vegas = input(false,title = "Vegas双隧道")//144,169,576,676,12
emaSystem2 = input(false,title = "均线系统@常规时间周期")//10,20,30
boll = input(false, title = "布林带")
fastEma1 = emaSystem1?ema(close,5):na
midEma1 = emaSystem1?ema(close,21):na
slowEma1 = emaSystem1?ema(close,55):na
VIPslowEma1 = emaSystem1?ema(close,144):na
//输出均线系统1
plot(fastEma1,color = color.yellow,linewidth =2,title = "快线-5ema")
plot(midEma1,color = color.red,linewidth = 2,title = "中线-21ema")
plot(slowEma1,color = color.blue,linewidth = 2,title = "慢线-55ema")
plot(VIPslowEma1,color = color.white,linewidth = 2,title = "巨慢线-144ema")
fil1 = vegas?ema(close,12):na
fast4Ema = vegas?ema(close,576):na
slow4Ema = vegas?ema(close,676):na
fast1Ema = vegas?ema(close,144):na
slow1Ema = vegas?ema(close,169):na
//输出Vegas隧道
plot (fil1,color = color.green,linewidth = 2,title= "过滤线")
plot (fast4Ema,color = color.blue,linewidth = 2,title = "慢隧道快线")
plot (slow4Ema,color = color.blue,linewidth = 2,title = "慢隧道慢线")
plot (fast1Ema,color = color.yellow,linewidth = 2,title = "快隧道快线")
plot (slow1Ema,color = color.yellow,linewidth= 2,title = "快隧道慢线")
fastEma2 = emaSystem2?ema(close,10):na
midEma2 = emaSystem2?ema(close,20):na
slowEma2 = emaSystem2?ema(close,30):na
//输出均线系统2
plot(fastEma2,color = color.yellow,linewidth =2,title = "快线-5ema")
plot(midEma2,color = color.red,linewidth = 2,title = "中线-21ema")plot(slowEma2,color = color.blue,linewidth = 2,title = "慢线-55ema")
basis = boll?sma(close, 20):na
dev = 2 * stdev(close,20)//标准差
upper = boll?(basis + dev):na
lower = boll?(basis - dev):na
plot(basis, "中轨", color=#872323)
p1 = plot(upper, "上轨", color=color.teal)
p2 = plot(lower, "下轨", color=color.teal)
fill(p1, p2, title = "背景", color=#198787, transp=95)
PDH/PDL + OVN-H/L (Right-Aligned Labels + Alerts)Automatically plots the PDH/L (Prior Day High/Low) and OVN-H/L (Overnight High/Low) of the current session.
✅ What it does:
Plots PDH/PDL each day — they appear freshly after 9:30 AM EST, for the entire regular session.
Does NOT extend lines overnight — breaks the line between 16:00 and the next 9:30.
Plots OVN-H / OVN-L as dashed lines, after 9:30 AM EST each day, from 9:30 to 16:00 only.
Clean lines that reset daily
Right-aligned labels showing the level names and price values
🔔 Alerts Included:
Cross Above PDH
Cross Below PDL
Cross Above OVN-H
Cross Below OVN-L
5 EMAs 200, 55, 50, 21, 9This indicator combines 5 EMAs
200 EMA => shows larger trend
9 EMA => fast
21 => medium, Fibonacci number
50 => Slow, Fibonacci number
55 => Slow, frequently used in the market
when the 9 crossed 21 to the upside, signals uptrend
when 21 crosses 55 => stronger uptrend
when the 9 crossed 21 to the downside, signals downtrend
when 21 crosses 55 => stronger downtrend
FXMC Breakout with Strict Single SignalIt's designed to help traders identify and act on breakouts from the first candle of the trading day, with sophisticated options for managing trades and booking profits.
Understanding the "FXMC Breakout with Strict Single Signal" Indicator
This indicator, aptly named "FXMC Breakout with Strict Single Signal," is a powerful tool for day traders. It focuses on a popular strategy: trading the high and low of the first X-minute candle of the trading session. What makes this version particularly useful is its emphasis on clean, non-repetitive signals and its integration of multiple advanced exit strategies.
Core Concept: First Candle Breakout
The fundamental idea is simple: the first candle of the trading day (often the 5-minute or 15-minute candle) sets an important range. A breakout above its high suggests bullish momentum, while a break below its low suggests bearish momentum.
Here's how the script establishes this:
Adjustable First Candle: You can select the duration of this "first candle" directly from the indicator's settings (e.g., 1-minute, 5-minute, 15-minute, etc.). This makes it versatile for different markets and strategies.
Session Time: You define your trading session (e.g., "0915-1530" for Indian markets). The script will capture the high and low of the selected first candle only at the start of this session each day.
Daily Reset: At the beginning of each new day, all previous signals and trade states are reset, preparing the indicator for a fresh set of opportunities.
Visualizing the Range: Once identified, the high (green line) and low (red line) of this first candle are plotted as horizontal lines that extend throughout the trading day, clearly marking your breakout levels.
Entry Signals: Once per Direction, Per Day
The script generates clear entry signals:
Buy Entry (Green Up-Triangle): Appears when the price closes above the first candle's high.
Sell Entry (Orange Down-Triangle): Appears when the price closes below the first candle's low.
Strict Single Signal: A key feature is that you'll only see one Buy Entry and one Sell Entry signal per day. If a buy signal triggers, the script won't generate another buy signal until the trade is exited and a new opportunity arises (which would be the next day, as this strategy is typically intraday). Similarly for sell signals.
Advanced Exit Strategies: Multiple Options, Single Signal
This is where the indicator truly shines, offering robust ways to manage your trades once an entry has occurred. You can enable or disable these methods in the indicator settings:
Price Cross Back (Default Exit):
Long Trade Exit: If you're in a long position and the price closes back below the first candle's high, it signals an exit.
Short Trade Exit: If you're in a short position and the price closes back above the first candle's low, it signals an exit.
ATR Trailing Stop:
Volatility-Adjusted: This stop loss automatically adjusts to market volatility. When you enter a trade, a trailing stop is set a certain multiple of the Average True Range (ATR) away from the entry price.
Protects Profits: As the price moves in your favor, the stop trails behind it, locking in profits while still allowing room for normal market fluctuations. It never moves against your position.
Exit Trigger: An exit signal is generated if the price closes back beyond this trailing stop level.
RSI Exit (Overbought/Oversold):
Momentum Based: Uses the Relative Strength Index (RSI) to identify extreme momentum conditions.
Long Trade Exit: If you're long and the RSI moves above a user-defined "overbought" level (e.g., 70 or 80), it suggests the upward move might be exhausted, prompting an exit.
Short Trade Exit: If you're short and the RSI moves below a user-defined "oversold" level (e.g., 30 or 20), it suggests the downward move might be overdone, prompting an exit.
EMA Crossover Exit:
Trend Reversal: This uses two Exponential Moving Averages (EMAs) – a fast one and a slow one.
Long Trade Exit: If you're long and the fast EMA crosses below the slow EMA, it indicates a potential shift to a bearish trend, signaling an exit.
Short Trade Exit: If you're short and the fast EMA crosses above the slow EMA, it indicates a potential shift to a bullish trend, signaling an exit.
Single Exit Signal (Crucial Improvement): Just like entries, you'll only see one exit signal (an "X" mark) per trade. The script tracks your implied position (long, short, or flat). Once you're in a trade, it continually checks all enabled exit conditions. The first condition met will trigger the single exit signal, flatten your implied position, and reset for the next trading day.
Visual Aids and Alerts
Background Colors: The chart background changes color to indicate if the indicator is currently in a simulated Long position (light green) or Short position (light orange). This gives you a quick visual overview of the trade's duration.
Plotting Trailing Stop (Optional): You can see the ATR trailing stop line dynamically adjust on your chart when a position is active, providing clear visualization of your protective stop.
Alerts: The indicator is equipped with alerts for both entries and exits, so you can be notified in real-time when signals occur without constantly watching the chart.
How to Use It
Add to Chart: Apply the indicator to any intraday chart (e.g., 1-minute, 5-minute, 15-minute).
Adjust Settings: Open the indicator's settings (Inputs tab) to:
Set your desired "First Candle Timeframe."
Define your "Session Time."
Enable or disable each of the "Exit Conditions" (ATR, RSI, EMA) and customize their parameters to fit your trading style and the asset you're analyzing.
Analyze Signals: Observe the entry and exit signals, along with the background colors, to understand the indicator's proposed trades.
This robust indicator provides a comprehensive framework for a first-candle breakout strategy, offering clear signals and dynamic trade management, all with a focus on a clean, uncluttered chart.
N8's Money makercalculates ideal buy and sell prices and put's in ideal TP and SL prices for short and long positions
Position Size Calculator v206/17/2025 - Updated to add MGC to list of instruments
Position Size Calculator for Futures Trading
A professional position sizing tool designed specifically for futures traders who want to maintain disciplined risk management. This indicator calculates the optimal number of contracts based on your predefined risk amount and provides instant visual feedback.
Key Features:
• Interactive price selection - simply click on the chart to set entry, stop loss, and take profit levels
• Supports all major futures contracts: ES, NQ, GC, RTY, YM, MNQ, MES with accurate contract specifications
• Customizable risk amount (defaults to $500 but fully adjustable)
• Real-time position size calculations that never exceed your risk tolerance
• Visual risk validation with color-coded header (green = valid risk, red = excessive risk)
• Automatic 2:1 risk/reward ratio calculations
• Compact, non-intrusive table display in top-right corner
• Clean interface with no chart clutter
How to Use:
Select your futures instrument from the dropdown
Set your maximum risk amount (default $500)
Click on the chart to set your Entry Price
Click on the chart to set your Stop Loss Price
Optionally click to set your Take Profit Price
The calculator instantly shows maximum contracts, actual risk, expected profit, and R/R ratio
Risk Management:
The indicator enforces strict risk management by calculating the maximum number of contracts you can trade while staying within your specified risk limit. The header turns green when your trade is within acceptable risk parameters and red when the risk is too high, providing instant visual feedback.
Perfect for day traders, swing traders, and anyone trading futures who wants to maintain consistent position sizing and risk management discipline.
SMA & EMA Combo (10/20/50/200)How This Works
Inputs: Four separate input fields let you adjust each moving average’s period from the indicator’s settings panel.
Calculation: Uses ta.sma for SMAs and ta.ema for EMAs, both calculated on the close price.
Plotting: Each moving average is plotted with a distinct color and label for clarity.
How to Use
Open TradingView, go to the Pine Script editor.
Paste the code above.
Add the script to your chart.
You’ll see four lines: 10 SMA (purple), 20 SMA (green), 50 EMA (red), 200 EMA (blue). You can adjust the periods in the indicator’s settings.
RSI Rangebound AreaRSI Rangebound Area is a Pine Script v6 indicator that automatically detects consolidation zones where both price and RSI stay within user-defined thresholds. During a rangebound period it:
Shades the background to highlight consolidation
Places “Range Start” and “Range End” labels at the beginning and end
Displays an info table (RSI value, price range %, RSI range, current state: Rangebound/Trending)
Key Inputs
RSI Length
Overbought / Oversold Levels
Range Detection Period
Max Price Range (%)
Max RSI Range
Toggle for “Please add RSI(14) indicator” reminder
Ideal for spotting flat markets and refining breakout or mean-reversion entries. Free and open-source—feel free to customize and contribute!
CHN TAB# CHN TAB - Technical Analysis Bot
## Overview
The TAB (Technical Analysis Bot) indicator is a comprehensive trading signal system that combines Simple Moving Average (SMA) crossovers with MACD momentum analysis to identify high-probability entry and exit points. This indicator provides both immediate and delayed signal detection with built-in risk management through automatic Take Profit (TP) and Stop Loss (SL) calculations.
## Key Features
- **Dual Signal Detection**: Combines SMA(50) price action with MACD momentum
- **Smart Signal Timing**: Offers both immediate and delayed signal recognition
- **Automatic Risk Management**: Calculates TP and SL levels using ATR (Average True Range)
- **Visual Feedback**: Color-coded candles and filled zones for easy identification
- **Comprehensive Alerts**: Three distinct alert conditions for different trading needs
## How It Works
### Buy Signals
**Immediate Buy Signal:**
- Price crosses above SMA(50) (open < SMA50 and close > SMA50)
- MACD crosses above zero line simultaneously
**Delayed Buy Signal:**
- Previous candle crossed above SMA(50)
- Previous MACD was ≤ 0, current MACD > 0
- Current candle remains above SMA(50)
### Sell Signals
**Immediate Sell Signal:**
- Price crosses below SMA(50) (open > SMA50 and close < SMA50)
- MACD crosses below zero line simultaneously
**Delayed Sell Signal:**
- Previous candle crossed below SMA(50)
- Previous MACD was ≥ 0, current MACD < 0
- Current candle remains below SMA(50)
### Risk Management
- **Take Profit**: Entry price ± 1.0 × ATR(14)
- **Stop Loss**: Entry price ± 1.5 × ATR(14)
- **Risk-Reward Ratio**: Automatic 1:1.5 setup
## Visual Elements
- **Green Candles**: Buy signal triggered
- **Red Candles**: Sell signal triggered
- **Orange Line**: Entry price level (displayed for 10 bars)
- **Green Fill**: Take profit zone
- **Red Fill**: Stop loss zone
## Alert System
1. **TAB Buy Signal**: Triggers only on buy signals
2. **TAB Sell Signal**: Triggers only on sell signals
3. **TAB Buy & Sell Signal**: Triggers on any signal (buy or sell)
## Best Practices
- Use on trending markets for better signal quality
- Combine with higher timeframe analysis for confirmation
- Consider market volatility when interpreting ATR-based levels
- Backtest on your preferred timeframes before live trading
## Technical Parameters
- **SMA Period**: 50
- **MACD Settings**: 12, 26, 9 (Fast, Slow, Signal)
- **ATR Period**: 14
- **Signal Display**: 10 bars duration
## Timeframe Recommendations
- Works on all timeframes
- Best performance on 15M, 1H, and 4H charts
- Higher timeframes provide more reliable signals
## Risk Disclaimer
This indicator is for educational and informational purposes only. Trading involves substantial risk of loss and is not suitable for all investors. Past performance does not guarantee future results. Always conduct your own analysis and consider your risk tolerance before making trading decisions.
---
**Version**: 6.0
**Overlay**: Yes
**Category**: Trend Following, Momentum
**Suitable For**: Forex, Stocks, Crypto, Commodities