Liquidations Aggregated (Lite)Liquidations Aggregated (Lite)
The Liquidations Aggregated (Lite) script provides a unified cross-exchange visualization of short and long liquidation volumes, allowing traders to identify high-impact market events and sentiment reversals driven by forced position closures. It aggregates normalized liquidation data from Binance, Bybit, and OKX into a single coherent output, offering a consolidated perspective of derivative market stress across major venues.
Core Concept
Liquidations are involuntary closures of leveraged positions when margin requirements are breached. They represent points of structural orderflow imbalance, often triggering localized volatility spikes and price pivots. This indicator isolates and aggregates those liquidation volumes by direction (short vs. long), allowing traders to map where leveraged traders are being forced out and whether current market movement is driven by short covering or long capitulation.
Underlying Methodology
Each connected exchange provides liquidation feeds via standardized symbols (e.g., BTCUSDT.P_LQBUY or BTCUSD.P_LQSELL).
The script differentiates between:
Short Liquidations → Buy Volume: Forced covering of shorts, representing upward pressure.
Long Liquidations → Sell Volume: Forced selling of longs, representing downward pressure.
Bybit’s inverse data is normalized to align directional logic with Binance and OKX. Data is drawn through the request.security() function per symbol and per exchange, with per-exchange scaling adjustments applied to compensate for differences in reported nominal sizes (USD vs. coin-margined). The script is meant to match the calculation methods of professional-grade data sources (e.g., Velodata, Coinalyze). The value is denominated in the base currency at all times.
Computation Logic
Liquidation volumes are fetched separately for USD- and USDT-margined pairs on each exchange.
Exchange-specific magnitude adjustments are applied to account for nominal denomination differences.
Normalized liquidation buy and sell volumes are summed into two global aggregates:
combinedBuyVolumeLiquidationsShort → aggregated buy volume from forced short positions closes (Short Liquidations)
combinedSellVolumeLiquidationsLong → aggregated sell pressure from forced long position closes (Long Liquidations)
Final series are plotted as mirrored column charts around a zero baseline for direct comparison.
How to Use
Apply the script to any crypto perpetual futures symbol (e.g., BTCUSDT, ETHUSDT).
Observe teal bars (Buy Volume from Short Liquidations) for short squeezes and red bars (Sell Volume from Long Liquidations) for long wipes.
Strong teal spikes during downtrends often indicate aggressive short liquidations leading to short-term bounces.
Strong red spikes during uptrends often mark long unwinds that can trigger sharp retracements.
Sustained asymmetry in either direction suggests systemic imbalance across leveraged positioning.
Indicadores e estratégias
RSI// This source code is subject to the terms of the Mozilla Public License 2.0 at mozilla.org
// © xdecow
//@version=5
indicator("RSI", overlay=true)
g_panel = 'Panel Options'
i_orientation = input.string('Vertical', 'Orientation', options = , group = g_panel)
i_position = input.string('Bottom Right', 'Position', options = , group = g_panel)
i_border_width = input.int(1, 'Border Width', minval = 0, maxval = 10, group = g_panel, inline = 'border')
i_color_border = input.color(#000000, '', group = g_panel, inline = 'border')
i_showHeaders = input.bool(true, 'Show Headers', group = g_panel)
i_color_header_bg = input.color(#5d606b, 'Headers Background', group = g_panel, inline = 'header')
i_color_header_text = input.color(color.white, 'Text', group = g_panel, inline = 'header')
i_color_tf_bg = input.color(#2a2e39, 'Timeframe Background', group = g_panel, inline = 'tf')
i_color_tf_text = input.color(color.white, 'Text', group = g_panel, inline = 'tf')
i_debug = input.bool(false, 'Display colors palette (debug)', group = g_panel)
// rsi bg colors
g_rsi = 'RSI Colors'
i_threshold_ob = input.int(70, 'Overbought Threshold', minval=51, maxval=100, group = g_rsi)
i_color_ob = input.color(#128416, 'Overbought Background', inline = 'ob', group = g_rsi)
i_tcolor_ob = input.color(color.white, 'Text', inline = 'ob', group = g_rsi)
i_threshold_uptrend = input.int(60, 'Uptrend Threshold', minval=51, maxval=100, group = g_rsi)
i_color_uptrend = input.color(#2d472e, 'Uptrend Background', inline = 'up', group = g_rsi)
i_tcolor_uptrend = input.color(color.white, 'Text', inline = 'up', group = g_rsi)
i_color_mid = input.color(#131722, 'No Trend Background', group = g_rsi, inline = 'mid')
i_tcolor_mid = input.color(#b2b5be, 'Text', group = g_rsi, inline = 'mid')
i_threshold_downtrend = input.int(40, 'Downtrend Threshold', group = g_rsi, minval=0, maxval=49)
i_color_downtrend = input.color(#5b2e2e, 'Downtrend Background', group = g_rsi, inline = 'down')
i_tcolor_downtrend = input.color(color.white, 'Text', group = g_rsi, inline = 'down')
i_threshold_os = input.int(30, 'Oversold Threshold', minval=0, maxval=49, group = g_rsi)
i_color_os = input.color(#db3240, 'Oversold Background', group = g_rsi, inline = 'os')
i_tcolor_os = input.color(color.white, 'Text', group = g_rsi, inline = 'os')
g_rsi1 = 'RSI #1'
i_rsi1_enabled = input.bool(true, title = 'Enabled', group = g_rsi1)
i_rsi1_tf = input.timeframe('5', 'Timeframe', group = g_rsi1)
i_rsi1_len = input.int(14, 'Length', minval = 1, group = g_rsi1)
i_rsi1_src = input.source(close, 'Source', group = g_rsi1) * 10000
v_rsi1 = i_rsi1_enabled ? request.security(syminfo.tickerid, i_rsi1_tf, ta.rsi(i_rsi1_src, i_rsi1_len)) : na
g_rsi2 = 'RSI #2'
i_rsi2_enabled = input.bool(true, title = 'Enabled', group = g_rsi2)
i_rsi2_tf = input.timeframe('15', 'Timeframe', group = g_rsi2)
i_rsi2_len = input.int(14, 'Length', minval = 1, group = g_rsi2)
i_rsi2_src = input.source(close, 'Source', group = g_rsi2) * 10000
v_rsi2 = i_rsi2_enabled ? request.security(syminfo.tickerid, i_rsi2_tf, ta.rsi(i_rsi2_src, i_rsi2_len)) : na
g_rsi3 = 'RSI #3'
i_rsi3_enabled = input.bool(true, title = 'Enabled', group = g_rsi3)
i_rsi3_tf = input.timeframe('60', 'Timeframe', group = g_rsi3)
i_rsi3_len = input.int(14, 'Length', minval = 1, group = g_rsi3)
i_rsi3_src = input.source(close, 'Source', group = g_rsi3) * 10000
v_rsi3 = i_rsi3_enabled ? request.security(syminfo.tickerid, i_rsi3_tf, ta.rsi(i_rsi3_src, i_rsi3_len)) : na
g_rsi4 = 'RSI #4'
i_rsi4_enabled = input.bool(true, title = 'Enabled', group = g_rsi4)
i_rsi4_tf = input.timeframe('240', 'Timeframe', group = g_rsi4)
i_rsi4_len = input.int(14, 'Length', minval = 1, group = g_rsi4)
i_rsi4_src = input.source(close, 'Source', group = g_rsi4) * 10000
v_rsi4 = i_rsi4_enabled ? request.security(syminfo.tickerid, i_rsi4_tf, ta.rsi(i_rsi4_src, i_rsi4_len)) : na
g_rsi5 = 'RSI #5'
i_rsi5_enabled = input.bool(true, title = 'Enabled', group = g_rsi5)
i_rsi5_tf = input.timeframe('D', 'Timeframe', group = g_rsi5)
i_rsi5_len = input.int(14, 'Length', minval = 1, group = g_rsi5)
i_rsi5_src = input.source(close, 'Source', group = g_rsi5) * 10000
v_rsi5 = i_rsi5_enabled ? request.security(syminfo.tickerid, i_rsi5_tf, ta.rsi(i_rsi5_src, i_rsi5_len)) : na
g_rsi6 = 'RSI #6'
i_rsi6_enabled = input.bool(true, title = 'Enabled', group = g_rsi6)
i_rsi6_tf = input.timeframe('W', 'Timeframe', group = g_rsi6)
i_rsi6_len = input.int(14, 'Length', minval = 1, group = g_rsi6)
i_rsi6_src = input.source(close, 'Source', group = g_rsi6) * 10000
v_rsi6 = i_rsi6_enabled ? request.security(syminfo.tickerid, i_rsi6_tf, ta.rsi(i_rsi6_src, i_rsi6_len)) : na
g_rsi7 = 'RSI #7'
i_rsi7_enabled = input.bool(false, title = 'Enabled', group = g_rsi7)
i_rsi7_tf = input.timeframe('W', 'Timeframe', group = g_rsi7)
i_rsi7_len = input.int(14, 'Length', minval = 1, group = g_rsi7)
i_rsi7_src = input.source(close, 'Source', group = g_rsi7) * 10000
v_rsi7 = i_rsi7_enabled ? request.security(syminfo.tickerid, i_rsi7_tf, ta.rsi(i_rsi7_src, i_rsi7_len)) : na
g_rsi8 = 'RSI #8'
i_rsi8_enabled = input.bool(false, title = 'Enabled', group = g_rsi8)
i_rsi8_tf = input.timeframe('W', 'Timeframe', group = g_rsi8)
i_rsi8_len = input.int(14, 'Length', minval = 1, group = g_rsi8)
i_rsi8_src = input.source(close, 'Source', group = g_rsi8) * 10000
v_rsi8 = i_rsi8_enabled ? request.security(syminfo.tickerid, i_rsi8_tf, ta.rsi(i_rsi8_src, i_rsi8_len)) : na
g_rsi9 = 'RSI #9'
i_rsi9_enabled = input.bool(false, title = 'Enabled', group = g_rsi9)
i_rsi9_tf = input.timeframe('W', 'Timeframe', group = g_rsi9)
i_rsi9_len = input.int(14, 'Length', minval = 1, group = g_rsi9)
i_rsi9_src = input.source(close, 'Source', group = g_rsi9) * 10000
v_rsi9 = i_rsi9_enabled ? request.security(syminfo.tickerid, i_rsi9_tf, ta.rsi(i_rsi9_src, i_rsi9_len)) : na
g_rsi10 = 'RSI #10'
i_rsi10_enabled = input.bool(false, title = 'Enabled', group = g_rsi10)
i_rsi10_tf = input.timeframe('W', 'Timeframe', group = g_rsi10)
i_rsi10_len = input.int(14, 'Length', minval = 1, group = g_rsi10)
i_rsi10_src = input.source(close, 'Source', group = g_rsi10) * 10000
v_rsi10 = i_rsi10_enabled ? request.security(syminfo.tickerid, i_rsi10_tf, ta.rsi(i_rsi10_src, i_rsi10_len)) : na
f_StrPositionToConst(_p) =>
switch _p
'Top Left' => position.top_left
'Top Right' => position.top_right
'Top Center' => position.top_center
'Middle Left' => position.middle_left
'Middle Right' => position.middle_right
'Middle Center' => position.middle_center
'Bottom Left' => position.bottom_left
'Bottom Right' => position.bottom_right
'Bottom Center' => position.bottom_center
=> position.bottom_right
f_timeframeToHuman(_tf) =>
seconds = timeframe.in_seconds(_tf)
if seconds < 60
_tf
else if seconds < 3600
str.tostring(seconds / 60) + 'm'
else if seconds < 86400
str.tostring(seconds / 60 / 60) + 'h'
else
switch _tf
"1D" => "D"
"1W" => "W"
"1M" => "M"
=> str.tostring(_tf)
type TPanel
table src = na
bool vertical_orientation = true
int row = 0
int col = 0
method incCol(TPanel _panel) =>
if _panel.vertical_orientation
_panel.col += 1
else
_panel.row += 1
method incRow(TPanel _panel) =>
if not _panel.vertical_orientation
_panel.col += 1
_panel.row := 0
else
_panel.row += 1
_panel.col := 0
method add(TPanel _panel, string _v1, color _bg1, color _ctext1, string _v2, color _bg2, color _ctext2) =>
table.cell(_panel.src, _panel.col, _panel.row, _v1, text_color = _ctext1, bgcolor = _bg1)
_panel.incCol()
table.cell(_panel.src, _panel.col, _panel.row, _v2, text_color = _ctext2, bgcolor = _bg2)
_panel.incRow()
f_bg(_rsi) =>
c_line = na(_rsi) ? i_color_mid :
_rsi >= i_threshold_ob ? i_color_ob :
_rsi >= i_threshold_uptrend ? i_color_uptrend :
_rsi <= i_threshold_os ? i_color_os :
_rsi <= i_threshold_downtrend ? i_color_downtrend :
i_color_mid
f_rsi_text_color(_rsi) =>
c_line = na(_rsi) ? i_tcolor_mid :
_rsi >= i_threshold_ob ? i_tcolor_ob :
_rsi >= i_threshold_uptrend ? i_tcolor_uptrend :
_rsi <= i_threshold_os ? i_tcolor_os :
_rsi <= i_threshold_downtrend ? i_tcolor_downtrend :
i_tcolor_mid
f_formatRsi(_rsi) => na(_rsi) ? 'N/A' : str.tostring(_rsi, '0.00')
if barstate.islast
v_panel = TPanel.new(vertical_orientation = i_orientation == 'Vertical')
v_max_rows = 20
v_panel.src := table.new(f_StrPositionToConst(i_position), v_max_rows, v_max_rows, border_width = i_border_width, border_color = i_color_border)
if i_showHeaders
v_panel.add('TF', i_color_header_bg, i_color_header_text, 'RSI', i_color_header_bg, i_color_header_text)
if i_rsi1_enabled
v_panel.add(f_timeframeToHuman(i_rsi1_tf), i_color_tf_bg, i_color_tf_text, f_formatRsi(v_rsi1), f_bg(v_rsi1), f_rsi_text_color(v_rsi1))
if i_rsi2_enabled
v_panel.add(f_timeframeToHuman(i_rsi2_tf), i_color_tf_bg, i_color_tf_text, f_formatRsi(v_rsi2), f_bg(v_rsi2), f_rsi_text_color(v_rsi2))
if i_rsi3_enabled
v_panel.add(f_timeframeToHuman(i_rsi3_tf), i_color_tf_bg, i_color_tf_text, f_formatRsi(v_rsi3), f_bg(v_rsi3), f_rsi_text_color(v_rsi3))
if i_rsi4_enabled
v_panel.add(f_timeframeToHuman(i_rsi4_tf), i_color_tf_bg, i_color_tf_text, f_formatRsi(v_rsi4), f_bg(v_rsi4), f_rsi_text_color(v_rsi4))
if i_rsi5_enabled
v_panel.add(f_timeframeToHuman(i_rsi5_tf), i_color_tf_bg, i_color_tf_text, f_formatRsi(v_rsi5), f_bg(v_rsi5), f_rsi_text_color(v_rsi5))
if i_rsi6_enabled
v_panel.add(f_timeframeToHuman(i_rsi6_tf), i_color_tf_bg, i_color_tf_text, f_formatRsi(v_rsi6), f_bg(v_rsi6), f_rsi_text_color(v_rsi6))
if i_rsi7_enabled
v_panel.add(f_timeframeToHuman(i_rsi7_tf), i_color_tf_bg, i_color_tf_text, f_formatRsi(v_rsi7), f_bg(v_rsi7), f_rsi_text_color(v_rsi7))
if i_rsi8_enabled
v_panel.add(f_timeframeToHuman(i_rsi8_tf), i_color_tf_bg, i_color_tf_text, f_formatRsi(v_rsi8), f_bg(v_rsi8), f_rsi_text_color(v_rsi8))
if i_rsi9_enabled
v_panel.add(f_timeframeToHuman(i_rsi9_tf), i_color_tf_bg, i_color_tf_text, f_formatRsi(v_rsi9), f_bg(v_rsi9), f_rsi_text_color(v_rsi9))
if i_rsi10_enabled
v_panel.add(f_timeframeToHuman(i_rsi10_tf), i_color_tf_bg, i_color_tf_text, f_formatRsi(v_rsi10), f_bg(v_rsi10), f_rsi_text_color(v_rsi10))
if i_debug
t = table.new(position.middle_center, 21, 20, border_width = i_border_width, border_color = i_color_border)
v_panel2 = TPanel.new(t, vertical_orientation = i_orientation == 'Vertical')
v_panel2.add('Debug', i_color_header_bg, i_color_header_text, 'Colors', i_color_header_bg, i_color_header_text)
demo = map.new()
map.put(demo, 'Overbought', i_threshold_ob)
map.put(demo, 'Uptrend', i_threshold_uptrend)
map.put(demo, 'No Trend', 50)
map.put(demo, 'Downtrend', i_threshold_downtrend)
map.put(demo, 'Oversold', i_threshold_os)
demoKeys = map.keys(demo)
for key in demoKeys
tf = key
rsi = map.get(demo, key)
v_panel2.add(tf, i_color_tf_bg, i_color_tf_text, f_formatRsi(rsi), f_bg(rsi), f_rsi_text_color(rsi))
Custom MTF EMA CloudsVisualize market structure and trend alignment across multiple timeframes with six layered EMA clouds — from short-term momentum to macro trend anchors.
Each pair of EMAs forms a dynamic cloud that adapts to your selected timeframe.
Colors, lengths, and visibility are fully customizable, allowing you to tailor the setup for any trading style.
⚙️ Default Configuration
EMA Short Long Purpose
1 8 13 🔸 Intraday momentum cloud (scalping layer)
2 21 24 🟩 Short-term trend confirmation
3 50 55 🔵 Medium-term swing structure
4 120 144 🔴 Long-term support/resistance band
5 200 238 🟠 Institutional trend foundation
6 400 460 🟣 Macro directional anchor
🧩 Features
✅ Up to 6 independent EMA clouds
✅ Fully customizable short & long lengths
✅ Individual line and cloud colors
✅ Toggle each layer on/off
✅ Works with any timeframe via the Resolution input
✅ Automatic cloud transparency for better chart clarity
📈 How to Use
Use EMA 1–2 (8/13, 21/24) for momentum shifts and intraday entries.
Use EMA 3–4 (50/55, 120/144) for swing confirmation and trend continuation.
Use EMA 5–6 (200/238, 400/460) as long-term anchors to stay aligned with institutional flow.
Watch for crossovers or price breaking in/out of clouds — they often precede strong directional moves.
Previous Day High-LowIt will show Previous Day High-Low. This will create two horizontal lines automatically updated each day, marking yesterday’s high and low levels clearly on any intraday chart.
X 4H ORThis indicator plots the 30-second opening range (high/low) for six New-York–time anchors—2am, 6am, 10am, 2pm, 6pm, and 10pm—and extends each box to a fixed end time (e.g., 2am→9am, 6am→1pm, etc.). It samples true 30-second data regardless of the chart timeframe, so the captured highs/lows are precise.
What it does
Builds the first 30s OR for each selected anchor and draws a time-anchored box for that session.
Archives every day’s boxes (up to a cap) so you can study how price interacts with past ranges.
Adds per-anchor show toggles to display the latest box for that anchor.
Adds a global History toggle to show/hide all archived boxes without deleting them (clean view vs. context view).
Uses borderless, color-coded fills per anchor to avoid edge distortion while keeping levels easy to read.
Why it’s useful
Quickly spot session inflection zones where liquidity, breakouts, or reversals cluster.
Compare how current price trades relative to recent session ranges for bias and risk framing.
Perform lightweight post-session review/backtesting on OR breaks, retests, and range rotations.
Keep charts decluttered on demand (latest only), or flip on history for deeper context.
黄金专用LPPL特征检测(Log-Periodic Power Law Singularity)专门用于黄金走势的LPPL检测,在技术分析中,LPPL 奇点指的是对数周期幂律奇异性(Log-Periodic Power Law Singularity),它是对数周期幂律模型(LPPL)中的一个关键概念。以下是关于它的详细介绍:
提出者及背景:LPPL 模型是由研究市场泡沫的先驱者、物理学家迪迪埃・索尔内特(Didier Sornette)等人提出的。该模型结合了理性预期泡沫的经济理论、投资者的模仿和羊群行为的行为金融学以及分岔和相变的数学统计物理学,用于检测金融市场中的泡沫和预测市场转折点。
模型原理:LPPL 模型假设当市场出现泡沫时,资产价格会呈现出一种特殊的波动模式,这种模式由正反馈机制驱动。在泡沫形成过程中,投资者的模仿和跟风行为导致市场参与者的一致性和协同性急剧上升,价格出现 “快于指数” 的增长,同时伴随着加速的对数周期振荡。而 LPPL 奇点就是价格增长和振荡达到极限的那个有限时间点,在这个点之前,价格增长越来越快,振荡频率也越来越高,当到达奇点时,泡沫破裂,市场往往会出现急剧的反转和崩盘。
数学表达:LPPL 模型的数学公式较为复杂,其原始形式提出了一个由 3 个线性参数和 4 个非线性参数组成的函数。通过将这个函数与对数价格时间序列进行拟合,可以估计出模型的参数,进而确定奇点的时间位置等信息。
在金融市场中的应用:LPPL 模型及其中的奇点概念主要用于检测金融市场中的泡沫和预测市场的崩溃点。例如,在 2008 年石油价格泡沫和 2009 年上海股市泡沫等事件中,该模型都被用于分析和预测市场的转折点。不过,该模型也存在一定的局限性,比如对奇点具体点位的预测误差较大,而且市场情况复杂多变,可能会有强大的外力干扰等因素影响模型的准确性。
The LPPL model was proposed by physicist Didier Sornette, a pioneer in the study of market bubbles, and others. The model combines the economic theory of rational expectations bubbles, behavioral finance on investor imitation and herding behavior, and the mathematical statistical physics of bifurcations and phase transitions to detect bubbles in financial markets and predict market turning points.
Model Principle: The LPPL model posits that when a market bubble forms, asset prices exhibit a distinctive pattern of fluctuation driven by a positive feedback mechanism. During the bubble's formation, investors' imitation and bandwagon-following behavior lead to a sharp increase in consistency and coordination among market participants, resulting in "faster-than-exponential" price growth accompanied by accelerating logarithmic-periodic oscillations. The LPPL singularity is the finite point in time where price growth and oscillation reach their limits. Prior to this point, prices grow increasingly faster, and the frequency of oscillations increases. When the singularity is reached, the bubble bursts, and the market often experiences a sharp reversal and crash.
Previous Candle 50% line The intention of this is to mark the 50% mark of the previous candle. My use is to set stops and to spot reversals coming from the STRAT to see in real time 2's going 3
Continuation Gauge - ES 3m (v1.1)Continuation Gauge - ES 3m (v1.1)
wave trend analysis between bull and bear imbalance trends
MILLION MEN - Capitulation Hunter What it is
MILLION MEN – Capitulation Hunter detects potential capitulation buy-limits using a confluence of momentum, volatility, and liquidity cues. It combines a 5-oscillator sentiment (RSI / Stoch / CCI / MFI / MACD histogram) with EMA200 trend context, Bollinger lower band proximity, volume climax, and an optional liquidity sweep check. When all filters align, the tool paints a BUY-LIMIT zone and proposes SL/TP levels.
How it works (high-level)
Oscillator sentiment (0–100%): counts how many of the five oscillators are bullish; capitulation candidate = 0%.
Trend & location: price below EMA200 and at/through BB lower band (basis ± mult×σ).
Selling climax: current volume ≥ X × volume SMA.
Liquidity sweep (optional): current low sweeps the prior N-bar low but closes back above it.
Confirmation: optional 0–2 extra bars (close > low and bullish bodies) before validating.
On validation, the script draws: BUY-LIMIT zone, dotted SL = zone bottom − ATR×mult, TP by R:R, and a mini sentiment table.
How to use
Look for zones after fast, extended selloffs into BB-L with volume spike and oscillators at 0%.
Place pending BUY-LIMIT inside the painted zone; use the plotted SL/TP as a starting point.
Works across timeframes; adjust volume multiplier, sweep length, confirmation bars, and ATR×SL to your market.
For added confluence: HTF structure, session/flow, or order-book/liquidity context.
Originality & value
Instead of a generic mashup, this tool enforces a strict confluence: (1) five-oscillator capitulation, (2) location at BB-L under EMA200, (3) volume climax, (4) optional sweep/recapture, and (5) bar-based confirmation—then auto-renders a practical trade plan (zone + SL/TP) and a readable sentiment table. All calculations are manual (no lookahead) and designed for clarity and execution.
Limitations & transparency
Capitulation can persist during strong downtrends; always use structure and risk management.
SL/TP visuals are hints, not orders; adapt to instrument volatility and liquidity.
Non-standard chart types aren’t supported for signals. No future data is used.
This is not financial advice; past performance does not guarantee future results.
(ملخص عربي )
مؤشر يلتقط سيناريوهات الاستسلام البيعي (Capitulation) عبر شروط متشددة: مزاج مؤشرات الزخم = 0%، السعر تحت EMA200 وعند/أسفل BB-L، ذروة فوليوم، واختياري سويب قيعان ثم ارتداد. عند التأكيد يرسم منطقة BUY-LIMIT ويقترح SL/TP. استخدمه مع هيكل السوق وإدارة المخاطر.
Logit RSI [AdaptiveRSI]The traditional 0–100 RSI scale makes statistical overlays, such as Bollinger Bands or even moving averages, technically invalid. This script solves this issue by placing RSI on an unbounded, continuous scale, enabling these tools to work as intended.
The Logit function takes bounded data, such as RSI values ranging from 0 to 100, and maps them onto an unbounded scale ranging from negative infinity (−∞) to positive infinity (+∞).
An RSI reading of 50 becomes 0 on the Logit scale, indicating a balanced market. Readings above 50 map to positive Logit values (price above Wilder’s EMA / RSI above 50), while readings below 50 map to negative values (price below Wilder’s EMA / RSI below 50).
For the detailed formula, which calculates RSI as a scaled distance from Wilder’s EMA, check the RSI
: alternative derivation script.
The main issue with the 0–100 RSI scale is that different lookback periods produce very different distributions of RSI values. The histograms below illustrate how often RSIs of various lengths spend time within each 5-point range.
On RSI(2), the tallest bars appear at the edges (0–5 and 95–100), meaning short-term RSI spends most of its time at the extremes. For longer lookbacks, the bars cluster around the center and rarely reach 70 or 30.
This behavior makes it difficult to generalize the two most common RSI techniques:
Fixed 70/30 thresholds: These overbought and oversold levels only make sense for short- or mid-range lookbacks (around the low teens). For very short periods, RSI spends most of its time above or below these levels, while for long-term lookbacks, RSI rarely reaches them.
Bollinger Bands (±2 standard deviations): When applied directly to RSI, the bands often extend beyond the 0–100 limits (especially for short-term lookbacks) making them mathematically invalid. While the issue is less visible on longer settings, it remains conceptually incorrect.
To address this, we apply the Logit Transform :
Logit RSI = LN(RSI / (100 − RSI))
The transformed data fits a smooth bell-shaped curve, allowing statistical tools like Bollinger Bands to function properly for the first time.
Why Logit RSI Matters:
Makes RSI statistically consistent across all lookback periods.
Greatly improves the visual clarity of short-term RSIs
Allows proper use of volatility tools (like Bollinger Bands) on RSI.
Replaces arbitrary 70/30 levels with data-driven thresholds.
Simplifies RSI interpretation for both short- and long-term analysis.
INPUTS:
RSI Length — set the RSI lookback period used in calculations.
RSI Type — choose between Regular RSI or Logit RSI .
Plot Bollinger Bands — ON/OFF toggle to overlay statistical envelopes around RSI or Logit RSI.
SMA and Standard Deviation Length — defines the lookback period for both the SMA (Bollinger Bands midline) and Standard Deviation calculations.
Standard Deviation Multiplier — controls the width of the Bollinger Bands (e.g., 2.0 for ±2σ).
While simple, the Logit transformation represents an unexplored yet powerful mathematically grounded improvement to the classic RSI.
It offers traders a structured, intuitive, and statistically consistent way to use RSI across all timeframes.
I welcome your feedback, suggestions, and code improvements—especially regarding performance and efficiency. Your insights are greatly appreciated.
CMF, RSI, CCI, MACD, OBV, Fisher, Stoch RSI, ADX (+DI/-DI)Eight normalized indicators are used in conjunction with the CMF, CCI, MACD, and Stoch RSI indicators. You can track buy and sell decisions by tracking swings. The zero line is for reversal tracking at -20, +20, +50, and +80. You can use any of the nine indicators individually or in combination.
Timebender – 369 PivotsTimebender – 369 Pivots is a clean visual study that marks swing highs and lows with numeric “369-sequence” digits derived from time.
Each digit is automatically color-coded into Accumulation (1 – 3), Manipulation (4 – 6), and Distribution (7 – 9) phases, helping traders identify rhythm and symmetry in market structure.
Labels float above or below bars for clear visibility and never overlap price, allowing smooth zoom and multi-timeframe use.
This base model focuses on clarity, precision, and efficient plotting — no toggles, no clutter — a stable foundation for future Timebender builds.
TREND (Type II) | Hamster-CoderTREND (Type II) — Smart Trend Reversal Indicator Based on RCI & MACD
TREND (Type II) is a powerful tool for traders who want to spot not just where the market is now, but where it might be heading next.
It combines the analytical strength of RSI and MACD to identify potential trend reversal points before they become obvious on the chart.
🚀 Key Advantages
Early trend detection. TREND can anticipate possible reversals even before the actual crossover occurs.
Flexible visualization. Displayed in a separate panel while showing buy/sell signals directly on the main chart.
Multi-timeframe support. Analyze signals from higher or lower timeframes without switching charts.
Intuitive color background. The background automatically turns red during bearish conditions for instant market sentiment recognition.
🎯 Signal Types
Primary Signal. When RCI and MACD lines actually cross, confirming a trend shift.
Preliminary Signal. When a crossover is projected to occur on the next bar.
Overheat Signal. When the market reaches a defined threshold (e.g. ±90) and starts showing signs of cooling down.
🧠 Unique Features
Extra Filters (experimental). Filters out weak or false signals, showing only those confirmed by additional criteria.
RCI–MACD Difference Mode. Visualize the distance between RCI and MACD as a histogram to assess divergence strength.
Custom Thresholds. Define your own overbought/oversold zones to fine-tune signal sensitivity.
🔍 Who It’s For
TREND (Type II) is ideal for traders who:
seek dynamic entry and exit points without lagging indicators;
want visual and statistical confirmation of trend changes;
build multi-layered strategies requiring signal validation.
💬 Use TREND (Type II) to see the market one step ahead.
This isn’t just another indicator — it’s an early warning system for potential trend reversals .
Buy & Sell Liquidity Swings (v5)cette indicateur permets de buy ou sell selon la tendance du marcher
Gold and Bitcoin: The Evolution of Value!The Eternal Luster of Gold
In the dawn of time, when the earth was young and rivers whispered secrets to the stones, a wanderer named Elara found a gleam in the silt of a sun-kissed stream. It was pure gold, radiant like a captured star fallen from the heavens. She held it in her palm, feeling its warmth pulse like a heartbeat, and in that moment, humanity’s soul awakened to the allure of eternity.
As seasons turned to centuries, gold wove itself into the story of empires. In ancient Egypt, pharaohs crowned themselves with its glow, believing it to be the flesh of gods. It built pyramids that reached for the sky and tombs that guarded kings forever. Across the sands in Mesopotamia, merchants traded it for spices and silks, its weight a promise of power and trust.
Translation moment: Gold became the first universal symbol of value. People trusted it more than words or promises because it did not rust, fade, or vanish.
The Greeks saw in gold not only wealth but wisdom, the symbol of the sun’s eternal fire. Alexander the Great carried it across the continent, forging an empire of golden threads. Rome rose on its back, minting coins whose clink echoed through history.
Through the ages, gold endured the rush of California’s dreamers, the halls of Versailles, and the quiet vaults of modern fortunes. It has been both a curse and a blessing, the fuel of wars and the gift of love, whispering of beauty’s fragility and the human desire for something that lasts beyond the grave. In its shine, we see ourselves fragile yet forever chasing light.
The Digital Dawn of Bitcoin
Centuries later, under the glow of computer screens, a visionary named Satoshi dreamed of a new gold born not from the earth but from the ether of ideas. Bitcoin appeared in 2009 amid a world weary of banks and broken trust.
Like gold’s ancient gleam, Bitcoin was mined not with picks but with puzzles solved by machines. It promised freedom, a currency without kings, flowing from person to person, unbound by borders or empires.
Translation moment: Bitcoin works like digital gold. Instead of digging the ground, miners use computers to solve problems and unlock new coins. No one controls it, and that is what makes it powerful.
Through doubt and frenzy, it rose as a beacon for those seeking sovereignty in a digital world. Its volatility became its soul, a reminder that true value is built on belief. Bitcoin speaks to ingenuity and rebellion, a star of code guiding us toward a future where wealth is weightless yet profoundly honest.
Gold’s Cycles: Echoes of War and Crisis
In the early 20th century, gold was held under fixed prices until the Great Depression of 1929 shattered these illusions. The 1934 dollar devaluation lifted it from 20.67 to 35, restoring faith amid despair. When World War II erupted in 1939, gold’s role as a refuge was muted by controls, yet it quietly held its place as the world’s silent guardian.
The 1970s awakened its wild spirit. The Nixon Shock of 1971 freed gold from 35, sparking a bull run during the 1973 Oil Crisis. The 1979 Iranian Revolution led to a 1980 peak of 850, a leap of more than 2,000 percent, as investors sought safety from the chaos.
Translation moment: When fear rises, people rush to gold. Every major war or economic crisis has sent gold upward because it feels safe when paper money loses trust.
The 1987 stock crash caused brief dips, but the 1990 Gulf War reignited its glow. Around 2000, after the Dot-com Bust, gold found new life, climbing from $ 270 to over $1,900 during the 2008 Financial Crisis. It dipped to 1050 in 2015, then surged again past 2000 during the 2020 pandemic.
The 2022 Ukraine War added another chapter with prices climbing above 2700 by 2025. Across a century of crises, gold has risen whenever fear tested humanity’s resolve, teaching patience and fortitude through its quiet endurance.
Bitcoin’s Cycles: Echoes of Innovation and Crisis
Born from the ashes of the 2008 Financial Crisis, Bitcoin began its story at mere cents. It traded below $1 until 2011, when it reached $30 before crashing by 90 percent following the MTGOX collapse.
In 2013, it soared to 1242 only to fall again to 200 in 2015 as regulations tightened. The 2017 bull run lifted it to nearly 20000 before another long winter brought it to 3200 in 2018. Each fall taught resilience, each rise renewed belief.
During the 2020 pandemic, it fell below 5000 before rallying to 69000 in 2021. The Ukraine War and the FTX collapse of 2022 brought it down to 16000, but also proved its role in humanitarian aid. By 2024, the halving and ETF approvals helped it break 100000, marking Bitcoin’s rise as digital gold.
Translation moment: Bitcoin’s rhythm follows four-year halving cycles when mining rewards are cut in half. This keeps supply limited, which often triggers new bull runs as demand returns.
Every four years, it's halving cycles 2012, 2016, 2020, 2024, fueling new waves of adoption and correction. Bitcoin grows strongest in times of uncertainty, echoing humanity’s drive to evolve beyond limits.
The Harmony of Gold and Bitcoin Modern Parallels
In today’s markets, gold’s ancient glow meets Bitcoin’s electric pulse. As of October 17, 2025, their correlation stands near 0.85, close to its historic high of 0.9. Both rise as guardians against inflation and the erosion of trust in the dollar.
Gold trades near 4310 per ounce a record high while Bitcoin hovers around 104700 showing brief fractures in their unity. Gold offers the comfort of touch while Bitcoin provides the thrill of code. Together, they reflect fear and hope, the twin emotions that drive every market.
Translation moment: A correlation of 0.85 means they often move in the same direction. When fear or inflation rises, both gold and Bitcoin tend to rise in tandem.
Analysts warn of bubbles in stocks, gold, and crypto, yet optimism remains for Bitcoin’s growth through 2026, while gold holds its defensive strength.
Gold carries risks of storage cost and theft, but steadiness in chaos. Bitcoin carries volatility and regulatory challenges, but it also offers unmatched innovation and reach. One is the anchor, the other the dream, and both reward those who hold conviction through uncertainty.
Epilogue: The Timeless Balance
Gold and Bitcoin form a bridge between the ancient and the future. Gold, the earth’s eternal treasure, stands as a symbol of stability and truth. Bitcoin, the digital heir, shines with the spark of innovation and freedom.
Experts view gold as the ultimate inflation hedge, forged in fire and tested over centuries. They see Bitcoin as its digital counterpart, scarce by code and limitless in reach.
Gold’s weight grounds us in reality while Bitcoin’s light expands our imagination. In 2025, as gold surpasses $4,346 and Bitcoin hovers near $105,000, the wise investor sees not rivals but reflections.
Translation moment: Gold reminds us to protect what we have. Bitcoin reminds us to dream of what could be. Together, they balance caution and courage, the two forces every generation must master.
One whispers of legacy, the other of evolution, yet together they tell humanity’s oldest story, our unending quest to preserve value against time and to chase the light that never fades.
🙏 I ask (Allah) for guidance and success. 🤲
USCBBS-WDTGAL-RRPONTSYDThis is the U.S. Financial Market Net Liquidity.
The calculation method is to subtract the U.S. Treasury General Account balance (WDTGAL) and then the Overnight Reverse Repo balance (RRPONTSYD) from the Federal Reserve's balance sheet total (USCBBS).
Aggregated Long Short Ratio (Binance + Bybit)This indicator displays the Long/Short Ratio (LSR) from Binance and Bybit exchanges, plus an aggregated average. LSR shows the ratio between traders holding long positions vs short positions.
Settings AvailableExchanges Group:
☑️Show Binance - Display Binance LSR line
☑️ Show Bybit - Display Bybit LSR line
☑️ Show Aggregated LSR - Display combined average
Timeframe - Choose data timeframe (leave empty for chart timeframe)
Visualization Group:
🎨 Binance Color - Default: Yellow
🎨 Bybit Color - Default: Orange
🎨 Aggregated Color - Default: White
📖 How to Read the Indicator
⚠️ CRITICAL: Always analyze LSR together with Open Interest (OI)
Key Levels:
LSR = 1.0 (gray dashed line) = Balance - Equal longs and shorts
LSR > 1.0 = More longs than shorts (bullish sentiment)
LSR < 1.0 = More shorts than longs (bearish sentiment)
Extreme Zones:
LSR > 1.5 (green zone) = Very bullish - Possible market top
LSR < 0.5 (red zone) = Very bearish - Possible market bottom
Why Open Interest Matters:
LSR alone doesn't tell the full story. You MUST check Open Interest:
Rising OI + High LSR (>1.5) = New longs opening → Strong momentum OR potential trap
Rising OI + Low LSR (<0.5) = New shorts opening → Strong momentum OR potential trap
Falling OI + Extreme LSR = Positions closing → Weak signal, avoid trading
Stable OI + Extreme LSR = No new positions → Less reliable signal
💡 Trading Interpretation
⚠️ ALWAYS combine LSR with Open Interest analysis!
Contrarian Strategy (High Leverage Zones):
High LSR (>1.5) + Rising OI → Many new longs → Potential short squeeze OR reversal down
Low LSR (<0.5) + Rising OI → Many new shorts → Potential long squeeze OR reversal up
Trend Confirmation:
Rising LSR + Rising price + Rising OI = Strong bullish trend with new positions
Falling LSR + Falling price + Rising OI = Strong bearish trend with new positions
Weak Signals (Avoid):
Extreme LSR + Falling OI = Positions closing → Low conviction
Extreme LSR + Stable OI = No new money → Wait for confirmation
Divergences:
Price higher highs but LSR falling + Rising OI = Bearish divergence (shorts accumulating)
Price lower lows but LSR rising + Rising OI = Bullish divergence (longs accumulating)
Best Setups:
Reversal: Extreme LSR (>1.5 or <0.5) + Rising OI + Price rejection
Trend: LSR trending with price + Steadily rising OI
Caution: Extreme LSR + Falling OI = Ignore signal
Built-in Alerts
The indicator includes 4 preset alerts:
LSR Crossed Above 1.0 - Market turned bullish
LSR Crossed Below 1.0 - Market turned bearish
LSR Very High - Above 1.5 (possible top)
LSR Very Low - Below 0.5 (possible bottom)
To Set Up Alerts:
Click the "..." on the indicator
Select "Add Alert"
Choose the condition you want
Configure notification method
Best Practices
MANDATORY: Always add Open Interest indicator to your chart alongside LSR
To add OI: Click Indicators → Search "Open Interest" → Add official TradingView OI
Use on perpetual futures charts (symbols ending in .P)
Works best on USDT pairs (BTCUSDT, ETHUSDT, etc.)
Combine LSR + OI + price action + support/resistance levels
Higher timeframes (4h, 1D) give more reliable signals
Don't trade LSR extremes without confirming OI direction
Golden Rule: Rising OI = Strong signal | Falling OI = Weak signal
⚠️ Important Notes
Indicator requires TradingView Premium or above (uses Request library)
Only works on crypto perpetual futures
Data availability depends on exchange API
NA values mean data is not available for that exchange/symbol
Never use LSR without Open Interest context
Open Interest + Continuation/Discontinuation Patterns📈 Open Interest + Continuation/Discontinuation Patterns
This indicator analyzes Open Interest data to detect four key convergence/divergence patterns that signal potential trend continuation or reversal:
Buyer Continuation
Seller Continuation
Buyer Discontinuation
Seller Discontinuation
Each pattern is identified by comparing price action with Open Interest behavior, using pivot-based logic and ATR filtering for precision. When a valid pattern is detected, the indicator draws visual lines on the chart and triggers custom alert conditions for each type, enabling timely decision-making.
The Open Interest data is plotted as a candle-style oscillator, offering a clear view of momentum shifts. The detection logic is fully configurable, allowing users to adjust pivot sensitivity, lookback ranges, and ATR filters to suit different market conditions.
Key features:
🔍 Detects continuation and discontinuation patterns via convergence/divergence logic
🔔 Alerts for all four pattern types
🕯️ Candle-style visualization of Open Interest
⚙️ ATR-based filtering and pivot customization
Perfect for traders seeking to enhance their market timing using Open Interest dynamics and divergence-based signals.
UTM 共感覺 식스센스 차트UTM chart PropKorea chart done by UTM aming to identify where the pirce is now compared to market.
Delta Volume ReversalThis script displays Delta Volume-based reversal arrows by analyzing buying vs. selling volume from a lower timeframe. An up arrow appears when a red candle closes with dominant buying volume (bullish delta), while a down arrow appears on green candles with dominant selling volume (bearish delta). This highlights potential hidden strength or weakness in price action.
Credits:
Original from Delta Volume by SiddWolf — adapted and enhanced with reversal arrow visualization.
ADX Scanner with IndicatorsA screener that will allow you to enter up to 10 stocks. The goal is to see clearly in front of you what stocks are moving and the momentum leveraging the ADX and RSI. The return for the day shows the growth or loss of those moves.
ADX Scanner with IndicatorsA screener that will allow you to enter up to 10 stocks. The goal is to see clearly in front of you what stocks are moving and the momentum leveraging the ADX and RSI. The return for the day shows the growth or loss of those moves.
Gold Market Cap vs BTC Market Cap Ratio
What the script calculates
Gold market cap: XAUUSD spot price × total above-ground stock (converted to troy ounces) in trillions USD.
BTC market cap: Live data from TradingView's CRYPTOCAP:BTC symbol, which provides Bitcoin's circulating market cap (already in USD, converted to trillions here).
Ratio: Gold market cap ÷ BTC market cap (e.g., 1.0 means gold market cap equals BTC; 2.0 means gold is twice BTC's market cap)