G-FRAMA | QuantEdgeBIntroducing G-FRAMA by QuantEdgeB
Overview
The Gaussian FRAMA (G-FRAMA) is an adaptive trend-following indicator that leverages the power of Fractal Adaptive Moving Averages (FRAMA), enhanced with a Gaussian filter for noise reduction and an ATR-based dynamic band for trade signal confirmation. This combination results in a highly responsive moving average that adapts to market volatility while filtering out insignificant price movements.
_____
1. Key Features
- 📈 Gaussian Smoothing – Utilizes a Gaussian filter to refine price input, reducing short-term noise while maintaining responsiveness.
- 📊 Fractal Adaptive Moving Average (FRAMA) – A self-adjusting moving average that adapts its sensitivity to market trends.
- 📉 ATR-Based Volatility Bands – Dynamic upper and lower bands based on the Average True Range (ATR), improving signal reliability.
- ⚡ Adaptive Trend Signals – Automatically detects shifts in market structure by evaluating price in relation to FRAMA and its ATR bands.
_____
2. How It Works
- Gaussian Filtering
The Gaussian function preprocesses the price data, giving more weight to recent values and smoothing fluctuations. This reduces whipsaws and allows the FRAMA calculation to focus on meaningful trend developments.
- Fractal Adaptive Moving Average (FRAMA)
Unlike traditional moving averages, FRAMA uses fractal dimension calculations to adjust its smoothing factor dynamically. In trending markets, it reacts faster, while in sideways conditions, it reduces sensitivity, filtering out noise.
- ATR-Based Volatility Bands
ATR is applied to determine upper and lower thresholds around FRAMA:
- 🔹 Long Condition: Price closes above FRAMA + ATR*Multiplier
- 🔻 Short Condition: Price closes below FRAMA - ATR
This setup ensures entries are volatility-adjusted, preventing premature exits or false signals in choppy conditions.
_____
3. Use Cases
✔ Adaptive Trend Trading – Automatically adjusts to different market conditions, making it ideal for both short-term and long-term traders.
✔ Noise-Filtered Entries – Gaussian smoothing prevents false breakouts, allowing for cleaner entries.
✔ Breakout & Volatility Strategies – The ATR bands confirm valid price movements, reducing false signals.
✔ Smooth but Aggressive Shorts – While the indicator is smooth in overall trend detection, it reacts aggressively to downside moves, making it well-suited for traders focusing on short opportunities.
_____
4. Customization Options
- Gaussian Filter Settings – Adjust length & sigma to fine-tune the smoothness of the input price. (Default: Gaussian length = 4, Gaussian sigma = 2.0, Gaussian source = close)
- FRAMA Length & Limits – Modify how quickly FRAMA reacts to price changes.(Default: Base FRAMA = 20, Upper FRAMA Limit = 8, Lower FRAMA Limit = 40)
- ATR Multiplier – Control how wide the volatility bands are for long/short entries.(Default: ATR Length = 14, ATR Multiplier = 1.9)
- Color Themes – Multiple visual styles to match different trading environments.
_____
Conclusion
The G-FRAMA is an intelligent trend-following tool that combines the adaptability of FRAMA with the precision of Gaussian filtering and volatility-based confirmation. It is versatile across different timeframes and asset classes, offering traders an edge in trend detection and trade execution.
____
🔹 Disclaimer: Past performance is not indicative of future results. No trading strategy can guarantee success in financial markets.
🔹 Strategic Advice: Always backtest, optimize, and align parameters with your trading objectives and risk tolerance before live trading.
移動平均線
Gelişmiş Supertrend + EMA StratejiBu strateji, üç temel göstergenin kombinasyonunu kullanarak alım-satım sinyalleri üreten bir sistemdir:
Ana Göstergeler:
EMA 5 (Hızlı Hareketli Ortalama)
EMA 20 (Yavaş Hareketli Ortalama)
Supertrend (ATR tabanlı trend göstergesi)
Alış Sinyali Koşulları:
Şu iki koşul aynı anda gerçekleştiğinde alış sinyali üretilir:
EMA 5, EMA 20'yi yukarı kesiyor (emaCrossUp)
Supertrend yukarı trend gösteriyor (stUp)
Satış Sinyali Koşulları:
Şu iki koşul aynı anda gerçekleştiğinde satış sinyali üretilir:
EMA 5, EMA 20'yi aşağı kesiyor (emaCrossDown)
Supertrend aşağı trend gösteriyor (stDown)
Stratejinin Çalışma Mantığı:
Trend Teyidi: Supertrend, genel trend yönünü belirler
Momentum Teyidi: EMA kesişimleri, momentumu gösterir
Çift Onay: Her iki göstergenin de aynı yönü işaret etmesi gerekir
Görsel Göstergeler:
Yeşil "AL" etiketi: Alış noktalarını gösterir (mum altında)
Kırmızı "SAT" etiketi: Satış noktalarını gösterir (mum üstünde)
Mavi çizgi: EMA 5
Kırmızı çizgi: EMA 20
Yeşil/Kırmızı çizgi: Supertrend
Bilgi Tablosu İçeriği:
Mevcut Sinyal: Son üretilen sinyal
EMA Trend: EMA'ların gösterdiği trend
Supertrend: Supertrend'in gösterdiği yön
Son İşlem: En son gerçekleşen alım veya satım
Stratejinin Avantajları:
Trend takibi sağlar
Yanlış sinyalleri azaltır
Görsel olarak anlaşılması kolaydır
Çift onay sistemi ile güvenilirlik artar
Kullanım Önerileri:
Günlük veya 4 saatlik grafiklerde daha etkilidir
Güçlü trend dönemlerinde daha iyi çalışır
Yatay piyasalarda dikkatli kullanılmalıdır
Stop loss ve take profit seviyeleri eklenmelidir
Parametre Optimizasyonu:
- EMA periyotları piyasa volatilitesine göre ayarlanabilir
Supertrend parametreleri trend hassasiyetini belirler
Risk Yönetimi Önerileri:
Her işlemde sabit risk oranı kullanın
Trend yönünde işlem yapın
Piyasa volatilitesine göre stop loss belirleyin
Pozisyon büyüklüğünü risk yönetimine göre ayarlayın
11. En İyi Kullanım Senaryoları:
Trend başlangıçlarını yakalamak için
Trend dönüşlerini tespit etmek için
Momentum değişimlerini takip etmek için
Orta-uzun vadeli pozisyonlar için
Bu strateji, trend takibi ve momentum stratejilerinin bir kombinasyonudur. Özellikle trendli piyasalarda etkili olabilir, ancak her strateji gibi risk yönetimi ile birlikte kullanılmalıdır.
Crossing of MA VariantsThis indicator provides crossovers for various Moving Average variants and their input parameters. The Moving Average variants are:
- Simple Moving Average (SMA)
- Exponential Moving Average (EMA)
- Weighted Moving Average (WMA)
- Symmetrically Weighted Moving Average (SWMA)
- Hull Moving Average (HMA)
- Volume-Weighted Moving Average (VWMA)
- Double Exponential Moving Average (DEMA)
- Triple Exponential Moving Average (TEMA)
- Fractal Adaptive Moving Average (FRAMA)
- Arnaud Legoux Moving Average (ALMA)
- Least Squares Moving Average (LSMA)
This indicator also comes with various customizations, backgrounds, plots and alerts.
200MA x3 Investor Tool with Undervaluation LineThis indicator gives a very simple 200 period moving average along with a 3x overvalued line and a -2x undervalued line. These lines have been good predictors of times where crypto will retrace back to its mean.
10 EMA HTF LTF10 EMA HTF LTF – Exponential Moving Averages Indicator
📌 Indikator haqida
Ushbu indikator joriy vaqt oralig‘ida (LTF – Lower Timeframe) va yuqori vaqt oralig‘ida (HTF – Higher Timeframe) trendni tahlil qilish uchun 10 ta Exponential Moving Average (EMA) chizadi. Har bir EMA o‘zining uzunligiga qarab, harakatlanish tezligiga ega bo‘lib, trendlardagi o‘zgarishlarni kuzatish va trend davomiyligini aniqlash imkonini beradi.
📊 Xususiyatlar
✅ 10 ta EMA: (10, 15, 20, 25, 30, 35, 40, 45, 50, 55)
✅ Trendlardagi o‘zgarishlarni kuzatish uchun mos
✅ Rangli va aniq grafik tasvir
✅ Qisqa va uzoq muddatli trendlarni aniqlashga yordam beradi
📈 Foydalanish usuli
EMA’lar fanning shakliga kirsa, bu kuchli trend mavjudligini bildiradi.
Narx EMA’lardan yuqorida bo‘lsa – bullish trend (o‘sish), pastda bo‘lsa – bearish trend (pasayish).
EMA’lar bir-biriga yaqinlashsa – konsolidatsiya yoki trend o‘zgarishi ehtimoli bor.
🔔 Qaysi treyderlar uchun mos?
✔ Skalperlar va intraday treyderlar – qisqa muddatli trendlarni kuzatish uchun.
✔ Swing treyderlar – uzoq muddatli trendlarga asoslangan strategiyalar uchun.
✔ Yangi boshlovchilar – asosiy trend tahlil qilishni o‘rganish uchun oddiy va tushunarli indikator.
💡 Qo‘shimcha fikrlar
Bu indikator har qanday aktiv (forex, aksiyalar, kriptovalyuta) uchun ishlaydi va boshqa indikatorlar bilan birga qo‘llash mumkin.
Tractor-Trend V5Description of the indicator and the principle of its operation
This indicator is a multifunctional tool for analyzing trends and determining entry and exit points in the market. It uses a combination of moving averages, linear regression, volatility levels, and Fibonacci levels to build channels, identify trends, and generate signals. The indicator also includes visualization of overbought and oversold zones, as well as target levels for long and short positions.
The main components of the indicator
The Base Line:
The baseline is calculated based on a moving average (SMA or EMA) or linear regression.
The user can select the data source (for example, hl2 is the average value between high and low), the length of the moving average, and the length of the linear regression.
The baseline is used as a reference level to determine the trend.
Trend Channel:
The channel is built around a baseline using volatility (the difference between high and low).
The user can set the distance between the channel boundaries and the baseline.
The channel includes upper and lower bounds, as well as extended levels (extreme levels).
Golden Pocket:
This is the zone between the baseline and the 0.618 Fibonacci level.
The zone is used to identify potential reversal points or trend continuation.
Input signals (Long/Short):
Entry signals are generated when the price closes above or below the baseline and channel boundaries.
The indicator tracks the beginning and end of trends to avoid false signals.
Target Levels:
For long and short positions, target levels are calculated based on Fibonacci extensions.
The user can set up a multiplier for the target levels.
Overbought and Oversold zones (Overbought/Oversold):
The indicator determines the overbought and oversold zones based on the price crossing the channel boundaries.
There are also extreme zones that show stronger overbought/oversold levels.
Alerts:
The indicator generates alerts when the price breaks through the upper or lower boundary of the channel.
Advantages of the indicator
Flexibility of settings: the user can adapt the indicator to his preferences.
Multifunctional: the indicator combines elements of trend analysis, Fibonacci levels and volatility.
Visualization: clear representation of key levels and zones.
Recommendations
Use the indicator in combination with other technical analysis tools to confirm the signals.
Test the settings on historical data before using them in real trading.
Take into account market conditions (volatility, trend, sideways movement) when interpreting signals.
This indicator is suitable for traders who prefer to work with trend strategies and use Fibonacci levels to identify targets and pivot points.
// Base Line Inputs
Base_Show = input(defval = true, title = "Show Base line?", group = "Base line Settings")
Base_src = input(hl2, title = "Source", group = "Base line Settings")
Base_length = input.int(title = 'Length', minval = 1, maxval = 1000, defval = 50, group = "Base line Settings")
Base_linreg_length = input.int(title = 'Linear Regression Length', minval = 1, maxval = 1000, defval = 50, group = "Base line Settings")
Base_sma_or_ema = input(title = 'Use Simple MA?', defval = false, group = "Base line Settings")
Base_lin_reg = input(title = 'Use Linear Regression?', defval = false, group = "Base line Settings")
// Calculation Base Line
Base_bclose = Base_lin_reg ? ta.linreg(Base_src, Base_linreg_length, 0) : Base_src
Base_signal = Base_sma_or_ema ? ta.sma(Base_bclose, Base_length) : ta.ema(Base_bclose, Base_length)
//Trend Channel
float distance = input.float (2, "Bands Distance", step = 0.1, minval = 0.3, group = "Trend Channel Settings") // Distance for channel bands
Ex_Show = input(defval = false, title = "Show Extension?", group = "Trend Channel Settings")
series float volatility = ta.sma(high - low, Base_length) // Calculate volatility using the average true range
var bool is_long_trend_started = false
var bool is_short_trend_started = false
var bool is_trend_change = false
var bool is_long_trend = false
var bool is_short_trend = false
var bool can_long = false
var bool can_short = false
// Trend Channel Inputs
up_can = Base_signal + volatility * distance
up_can_Tar = up_can + volatility * distance * 2.5
up_can_Ex = up_can_Tar + volatility * distance
lo_can = Base_signal - volatility * distance
lo_can_Tar = lo_can - volatility * distance * 1.5
lo_can_Ex = lo_can_Tar - volatility * distance
// Golden Pocket Inputs
channel_range = up_can - lo_can
fib_618 = up_can - channel_range * 0.618
// CAN LONG/SHORT
//if time >= start_date_input
can_long := close >= Base_signal and close >= up_can and not is_long_trend
can_short := close <= Base_signal and close <= lo_can and not is_short_trend
if can_long
is_long_trend := true
is_short_trend := false
is_long_trend_started := is_long_trend_started ? false : true
else if can_short
is_short_trend := true
is_long_trend := false
is_short_trend_started := is_short_trend_started ? false : true
else
is_trend_change := false
can_long := false
can_short := false
is_short_trend_started := false
is_long_trend_started := false
is_trend_change := is_short_trend_started or is_long_trend_started
// Plot Base Line
GP_05 = plot(Base_Show ? Base_signal : na, color = is_long_trend ? color.rgb(6, 247, 14) : color.rgb(225, 190, 231), linewidth = 1, title = "Base line")
GP_0_618 = plot(fib_618, title = "Lower Border Golden Pocket (Fib 0.618)", color = is_long_trend ? color.rgb(6, 247, 14) : color.rgb(247, 9, 9), display = display.none)
fill(GP_05, GP_0_618, title = "Golden Pocket Background", color = is_long_trend ? color.rgb(245, 123, 0, 60) : color.rgb(255, 167, 38, 60))
// Plot Trend Channel
plotshape(is_long_trend and is_long_trend_started ? Base_signal : na, title="Long Label", style=shape.triangleup, location=location.belowbar, color=color.rgb(8, 153, 129), size=size.small)
plotshape(is_short_trend and is_short_trend_started ? Base_signal : na, title="Short Label", style=shape.triangledown, location=location.abovebar, color=color.rgb(233, 30, 99), size=size.small)
// Plot Channel Boundary
Range_Zone1 = plot(up_can, color = is_long_trend ? color.rgb(38, 198, 218) : color.rgb(156, 39, 176), title = "Channel Upper Boundary")
Range_Zone2 = plot(lo_can, color = is_long_trend ? color.rgb(38, 198, 218) : color.rgb(156, 39, 176), title = "Channel Lower Boundary")
fill(Range_Zone1, Range_Zone2, color = is_long_trend ? color.rgb(38, 197, 218, 80) : color.rgb(155, 39, 176, 80), title = "Channel Background")
// Plot Extension
plot(Ex_Show ? up_can_Ex : na, title = "Extreme Level Extension Upper Boundary Channel", color = color.rgb(95, 250, 224, 30))
plot(Ex_Show ? up_can_Tar : na, title = "First Level Extension Upper Boundary Channel", color = color.rgb(95, 250, 224, 50))
plot(Ex_Show ? lo_can_Tar : na, title = "First Level Extension Lower Boundary Channel", color = color.rgb(247, 116, 120, 50))
plot(Ex_Show ? lo_can_Ex : na, title = "Extreme Level Extension Lower Boundary Channel", color = color.rgb(247, 116, 120, 0))
// Overbought and Oversold Zones
show_OBOS_zones = input.bool(defval = true, title = "Show Overbought and Oversold Zones?", group = "Trend Channel Settings")
show_Ex_zones = input.bool(defval = true, title = "Show Extreme Overbought and Oversold Zones?", group = "Trend Channel Settings")
is_overbought = ta.crossunder(close, up_can_Tar)
is_oversold = ta.crossover(close, lo_can_Tar)
is_overboughtEx = ta.crossunder(close, up_can_Ex)
is_oversoldEx = ta.crossover(close, lo_can_Ex)
// Plot Overbought and Oversold
plotshape(is_overbought and show_OBOS_zones ? high : na, title = "Overbought", color = color.rgb(255, 245, 157), style = shape.circle, size = size.tiny, location = location.abovebar)
plotshape(is_oversold and show_OBOS_zones ? low : na, title = "Oversold", color = color.rgb(3, 249, 208), style = shape.circle, size = size.tiny, location = location.belowbar)
// Plot Extreme Overbought and Oversold
plotshape(is_overboughtEx and show_Ex_zones ? high : na, title = "Extreme Overbought", color = color.rgb(255, 152, 0), style = shape.diamond, size = size.tiny, location = location.abovebar)
plotshape(is_oversoldEx and show_Ex_zones ? low : na, title = "Extreme Oversold", color = color.rgb(3, 249, 3), style = shape.diamond, size = size.tiny, location = location.belowbar)
// Target Levels
mult_tar_input = input.float(title = "Multiplier for Target Levels", step = 0.1, defval = 1.5, minval = 0.1, group = "Target Levels Settings")
// Цвета для целевых уровней
color_long = input.color(color.rgb(8, 153, 129), title = "Color Targets for Long Positions", group = "Colors for Target Levels Setting")
color_short = input.color(color.rgb(233, 30, 99), title = "Color Targets for Short Positions", group = "Colors for Target Levels Setting")
// DC Calculation Extension (Targets Lines for Long)
long_1 = up_can - channel_range * -0.382 * mult_tar_input
long_2 = up_can - channel_range * -1 * mult_tar_input
long_3 = up_can - channel_range * -1.618 * mult_tar_input
long_4 = up_can - channel_range * -2.236 * mult_tar_input
long_5 = up_can - channel_range * -3 * mult_tar_input
// DC Calculation Extension (Targets Lines for Short)
short_1 = lo_can - channel_range * 0.382 * mult_tar_input
short_2 = lo_can - channel_range * 1 * mult_tar_input
short_3 = lo_can - channel_range * 1.618 * mult_tar_input
short_4 = lo_can - channel_range * 2.236 * mult_tar_input
short_5 = lo_can - channel_range * 3 * mult_tar_input
// Draw lines from triangles
var line long_line = na
var line short_line = na
var line long_line_reverse = na
var line short_line_reverse = na
if is_long_trend and is_long_trend_started
long_line := line.new(bar_index, Base_signal, bar_index, long_5, color = color_long, style = line.style_dotted, width = 2)
long_line_reverse := line.new(bar_index, Base_signal, bar_index, short_5, color = color.rgb(8, 153, 129, 100), style = line.style_dotted, width = 2)
if is_short_trend and is_short_trend_started
short_line := line.new(bar_index, Base_signal, bar_index, short_5, color = color_short, style = line.style_dotted, width = 2)
short_line_reverse := line.new(bar_index, Base_signal, bar_index, long_5, color = color.rgb(233, 30, 99, 100), style = line.style_dotted, width = 2)
//
// Функция для поиска точки пересечения линии тренда и горизонтального уровня
f_find_intersection(line_start, line_end, level) =>
if (line_start <= level and line_end >= level) or (line_start >= level and line_end <= level)
true
else
false
// Объявление массивов для хранения лучей-целей для длинных позиций
var line target_rays_long_1 = array.new_line(0)
var line target_rays_long_2 = array.new_line(0)
var line target_rays_long_3 = array.new_line(0)
var line target_rays_long_4 = array.new_line(0)
var line target_rays_long_5 = array.new_line(0)
// Отрисовка лучей-целей для long_1
if is_long_trend and is_long_trend_started
if f_find_intersection(Base_signal, long_5, long_1)
var line target_ray = na
target_ray := line.new(bar_index, long_1, bar_index + 1, long_1, color = color_long, style = line.style_dotted, width = 2, extend = extend.right)
array.push(target_rays_long_1, target_ray)
// Отрисовка лучей-целей для long_2
if is_long_trend and is_long_trend_started
if f_find_intersection(Base_signal, long_5, long_2)
var line target_ray = na
target_ray := line.new(bar_index, long_2, bar_index + 1, long_2, color = color_long, style = line.style_dotted, width = 2, extend = extend.right)
array.push(target_rays_long_2, target_ray)
// Отрисовка лучей-целей для long_3
if is_long_trend and is_long_trend_started
if f_find_intersection(Base_signal, long_5, long_3)
var line target_ray = na
target_ray := line.new(bar_index, long_3, bar_index + 1, long_3, color = color_long, style = line.style_dotted, width = 2, extend = extend.right)
array.push(target_rays_long_3, target_ray)
// Отрисовка лучей-целей для long_4
if is_long_trend and is_long_trend_started
if f_find_intersection(Base_signal, long_5, long_4)
var line target_ray = na
target_ray := line.new(bar_index, long_4, bar_index + 1, long_4, color = color_long, style = line.style_dotted, width = 2, extend = extend.right)
array.push(target_rays_long_4, target_ray)
// Отрисовка лучей-целей для long_5
if is_long_trend and is_long_trend_started
if f_find_intersection(Base_signal, long_5, long_5)
var line target_ray = na
target_ray := line.new(bar_index, long_5, bar_index + 1, long_5, color = color_long, style = line.style_dotted, width = 2, extend = extend.right)
array.push(target_rays_long_5, target_ray)
// Удаление лучей при изменении тренда
if is_short_trend and is_short_trend_started
if array.size(target_rays_long_1) > 0
for i = 0 to array.size(target_rays_long_1) - 1
line.delete(array.get(target_rays_long_1, i))
array.clear(target_rays_long_1)
if array.size(target_rays_long_2) > 0
for i = 0 to array.size(target_rays_long_2) - 1
line.delete(array.get(target_rays_long_2, i))
array.clear(target_rays_long_2)
if array.size(target_rays_long_3) > 0
for i = 0 to array.size(target_rays_long_3) - 1
line.delete(array.get(target_rays_long_3, i))
array.clear(target_rays_long_3)
if array.size(target_rays_long_4) > 0
for i = 0 to array.size(target_rays_long_4) - 1
line.delete(array.get(target_rays_long_4, i))
array.clear(target_rays_long_4)
if array.size(target_rays_long_5) > 0
for i = 0 to array.size(target_rays_long_5) - 1
line.delete(array.get(target_rays_long_5, i))
array.clear(target_rays_long_5)
// Объявление массивов для хранения лучей-целей для коротких позиций
var line target_rays_short_1 = array.new_line(0)
var line target_rays_short_2 = array.new_line(0)
var line target_rays_short_3 = array.new_line(0)
var line target_rays_short_4 = array.new_line(0)
var line target_rays_short_5 = array.new_line(0)
// Отрисовка лучей-целей для short_1
if is_short_trend and is_short_trend_started
if f_find_intersection(Base_signal, short_5, short_1)
var line target_ray = na
target_ray := line.new(bar_index, short_1, bar_index + 1, short_1, color = color_short, style = line.style_dotted, width = 2, extend = extend.right)
array.push(target_rays_short_1, target_ray)
// Отрисовка лучей-целей для short_2
if is_short_trend and is_short_trend_started
if f_find_intersection(Base_signal, short_5, short_2)
var line target_ray = na
target_ray := line.new(bar_index, short_2, bar_index + 1, short_2, color = color_short, style = line.style_dotted, width = 2, extend = extend.right)
array.push(target_rays_short_2, target_ray)
// Отрисовка лучей-целей для short_3
if is_short_trend and is_short_trend_started
if f_find_intersection(Base_signal, short_5, short_3)
var line target_ray = na
target_ray := line.new(bar_index, short_3, bar_index + 1, short_3, color = color_short, style = line.style_dotted, width = 2, extend = extend.right)
array.push(target_rays_short_3, target_ray)
// Отрисовка лучей-целей для short_4
if is_short_trend and is_short_trend_started
if f_find_intersection(Base_signal, short_5, short_4)
var line target_ray = na
target_ray := line.new(bar_index, short_4, bar_index + 1, short_4, color = color_short, style = line.style_dotted, width = 2, extend = extend.right)
array.push(target_rays_short_4, target_ray)
// Отрисовка лучей-целей для short_5
if is_short_trend and is_short_trend_started
if f_find_intersection(Base_signal, short_5, short_5)
var line target_ray = na
target_ray := line.new(bar_index, short_5, bar_index + 1, short_5, color = color_short, style = line.style_dotted, width = 2, extend = extend.right)
array.push(target_rays_short_5, target_ray)
// Удаление лучей при изменении тренда
if is_long_trend and is_long_trend_started
if array.size(target_rays_short_1) > 0
for i = 0 to array.size(target_rays_short_1) - 1
line.delete(array.get(target_rays_short_1, i))
array.clear(target_rays_short_1)
if array.size(target_rays_short_2) > 0
for i = 0 to array.size(target_rays_short_2) - 1
line.delete(array.get(target_rays_short_2, i))
array.clear(target_rays_short_2)
if array.size(target_rays_short_3) > 0
for i = 0 to array.size(target_rays_short_3) - 1
line.delete(array.get(target_rays_short_3, i))
array.clear(target_rays_short_3)
if array.size(target_rays_short_4) > 0
for i = 0 to array.size(target_rays_short_4) - 1
line.delete(array.get(target_rays_short_4, i))
array.clear(target_rays_short_4)
if array.size(target_rays_short_5) > 0
for i = 0 to array.size(target_rays_short_5) - 1
line.delete(array.get(target_rays_short_5, i))
array.clear(target_rays_short_5)
//
// Alerts
buy_alert_disp = input.bool(title = "TT Show Long", defval = true, tooltip = "Appears, if the price breaks through the upper limit channel", group = "Alerts")
sell_alert_disp = input.bool(title = "TT Show Short", defval = true, tooltip = "Appears, if the price breaks through the lower limit channel", group = "Alerts")
buy_alert = is_long_trend and is_long_trend_started
sell_alert = is_short_trend and is_short_trend_started
if buy_alert_disp and buy_alert
alert("TT Show Long", alert.freq_once_per_bar_close)
if sell_alert_disp and sell_alert
alert("TT Show Short", alert.freq_once_per_bar_close)
Smooth Candles (Less Noise)smoothed candles for great and fast entry with tight stops, use with rsi and macd to confirm the entries to be more high probablity trades.
"Multi-MA Trend Ribbon" 21+36,50,100,200,300 EMA
Below is a detailed description of the "Moving Average Explorer" indicator based on the provided Pine Script code. This description covers its purpose, features, and functionality, suitable for documentation or sharing with users:
Moving Average Explorer Indicator
Version: 5
License: Mozilla Public License 2.0
Author: traderview2
Last Updated: 12/19/24
Overview
The Moving Average Explorer is a versatile technical analysis indicator designed for TradingView that allows users to visualize and analyze multiple moving averages (MAs) on a price chart. It provides customizable MA lengths and types, visual ribbon coloring for trend identification, cross alerts, and an optional value table for quick reference. This indicator is ideal for traders who use multiple moving averages to identify trends, support/resistance levels, and potential entry/exit points.
Key Features
Customizable Moving Averages:
Supports up to 6 moving averages with user-defined lengths and types.
Default lengths: 21 EMA, 36 EMA, 50 MA, 100 MA, 200 MA, and 300 MA.
MA types include EMA (Exponential), SMA (Simple), HMA (Hull), WMA (Weighted), DEMA (Double Exponential), VWMA (Volume Weighted), and VWAP (Volume Weighted Average Price).
Option to disable individual MAs or set a global MA type for all lines.
Trend Visualization:
Displays MAs as colored lines on the chart, with customizable colors for each MA.
Optional ribbon mode fills the space between MAs with bullish (green) or bearish (red) colors based on trend direction.
Trend detection based on the relationship between the 21 EMA (MA #1) and 200 MA (MA #5), with alerts for bullish and bearish crosses.
Cross Detection:
Identifies bullish (21 EMA > 200 MA) and bearish (200 MA > 21 EMA) crosses.
Optional plotting of cross signals using green (bullish) and red (bearish) cross markers.
Alerts triggered on cross events (once per bar close) for timely notifications.
Value Table:
Optional table displaying current MA values, ATR (Average True Range), and trend status.
Customizable table location (Top Right, Top Left, Bottom Left, Bottom Right).
Table colors adapt to ribbon mode for better visibility.
Displays the length, type, and current value of each MA, along with the 14-period ATR.
User Customization:
Toggle individual MAs on/off for cleaner visualization.
Choose between line plots or colored ribbon fills.
Customize bullish and bearish ribbon colors (default: semi-transparent green and red).
Adjust MA lengths in increments of 10 for quick tuning.
How It Works
Moving Averages: The indicator calculates up to 6 MAs based on user inputs. The default setup includes:
21 EMA (fast)
36 EMA (fast-medium)
50 MA (medium)
100 MA (medium-long)
200 MA (long)
300 MA (very long)
Trend Detection: The indicator compares the 21 EMA (MA #1) and 200 MA (MA #5) to determine the trend:
Bullish trend: 21 EMA > 200 MA
Bearish trend: 200 MA > 21 EMA
Ribbon Mode: When enabled, the space between MAs is filled with colors to visually represent the trend direction.
Cross Alerts: Alerts are triggered when the 21 EMA crosses above (bullish) or below (bearish) the 200 MA.
ATR Display: The 14-period ATR is included in the table for volatility reference.
Inputs and Settings
Accessibility Settings:
Enable/disable ribbon mode for trend visualization.
Customize bullish and bearish ribbon colors.
Toggle cross markers and the value table.
Choose table location on the chart.
MA Settings:
Enable/disable individual MAs.
Set custom lengths for each MA (minimum 1, adjustable in steps of 10).
Choose MA type for each line or set a global type for all MAs.
Default MA types are EMA, but users can switch to other types as needed.
Usage Examples
Trend Following: Use the 21 EMA and 36 EMA for short-term trend confirmation, and longer MAs (200, 300) for major trend direction.
Cross Strategy: Trade bullish/bearish crosses between the 21 EMA and 200 MA, with alerts for timely entries.
Ribbon Analysis: Enable ribbon mode to visually identify trend strength based on the alignment of MAs.
Volatility Context: Use the ATR value in the table to gauge market volatility and adjust position sizing.
Visual Elements
MA Lines: Each MA is plotted with a distinct color (red, orange, yellow, green, blue, purple) for easy identification.
Ribbon Fills: Semi-transparent fills between MAs in ribbon mode, colored based on trend direction.
Cross Markers: Green (bullish) and red (bearish) cross symbols at crossing points.
Value Table: Displays trend status, MA values, and ATR in a customizable location.
Notes
The indicator is overlay-based and works best on price charts.
Performance may vary depending on the number of MAs enabled and the chart's timeframe.
For optimal visibility, adjust colors and table location based on your chart background (light/dark mode).
Changelog
03/23/23: Added ribbon functionality and value table.
04/02/23: Improved user inputs and added interactive MA length display in the table.
04/06/23: Added on/off toggle for each MA and customizable table location.
12/19/24: Added color customization for ribbon bands.
License
This indicator is released under the Mozilla Public License 2.0. See mozilla.org for details.
This description provides a comprehensive overview of the indicator's functionality and usage, making it suitable for sharing with other traders or including in documentation. Let me know if you'd like to refine any specific section!
SwingTrade_IshSimple indicator keeps on the right side of the market and follow the trend.
Fill color suggest to stay long or short
When SHORTMA, crosses LONGMA from down enter the long position, shown with triangle arrow up
When SHORTMA, crosses LONGMA from up enter the long position, shown with triangle arrow down
Trail the stop with yellow square shape
Note: enter above or below the close of the candle only
higher time frame fill color rules the market
use multi timeframe for better judgement
Trade the context and enjoy the profit
9 & 15 EMA Crossover Indicator [Educational Purposes]Disclaimer:
Educational Tool Only: The signals generated by this indicator are intended for educational and informational purposes only. They are not a recommendation to buy or sell any security.
No Financial Advice: I am not a licensed financial advisor, and this indicator should not be construed as financial advice.
Risk Warning: Trading in financial markets involves a high level of risk and may not be suitable for all investors. Always conduct your own research and consider your financial situation before making any decisions.
No Guarantees: While every effort has been made to ensure the reliability of this script, no guarantees are made regarding its accuracy or its ability to predict market movements.
CBC Strategy with Trend Confirmation & Separate Stop LossCBC Flip Strategy with Trend Confirmation and ATR-Based Targets
This strategy is based on the CBC Flip concept taught by MapleStax and inspired by the original CBC Flip indicator by AsiaRoo. It focuses on identifying potential reversals or trend continuation points using a combination of candlestick patterns (CBC Flips), trend filters, and a time-based entry window. This approach helps traders avoid false signals and increase trade accuracy.
What is a CBC Flip?
The CBC Flip is a candlestick-based pattern that identifies moments when the market is likely to change direction or strengthen its trend. It checks for a shift in price behavior between consecutive candles, signaling a bullish (upward) or bearish (downward) move.
However, not all flips are created equal! This strategy differentiates between Strong Flips and All Flips, allowing traders to choose between a more conservative or aggressive approach.
Strong Flips vs. All Flips
Strong Flips
A Strong Flip is a high-probability setup that occurs only after liquidity is swept from the previous candle’s high or low.
What is a liquidity sweep? This happens when the price briefly moves beyond the high or low of the previous candle, triggering stop-losses and trapping traders in the wrong direction. These sweeps often create fuel for the next move, making them powerful reversal signals.
Examples:
Long Setup: The price dips below the previous candle’s low (sweeping liquidity) and then closes higher, signaling a potential bullish move.
Short Setup: The price moves above the previous candle’s high and then closes lower, signaling a potential bearish move.
Why Use Strong Flips?
They provide fewer signals, but the accuracy is generally higher.
Ideal for trending markets where liquidity sweeps often mark key turning points.
All Flips
All Flips are less selective, offering both Strong Flips and additional signals without requiring a liquidity sweep.
This approach gives traders more frequent opportunities but comes with a higher risk of false signals, especially in sideways markets.
Examples:
Long Setup: A CBC flip occurs without sweeping the previous low, but the trend direction is confirmed (slow EMA is still above VWAP).
Short Setup: A CBC flip occurs without sweeping the previous high, but the trend is still bearish (slow EMA below VWAP).
Why Use All Flips?
Provides more frequent entries for active or aggressive traders.
Works well in trending markets but requires caution during consolidation periods.
How This Strategy Works
The strategy combines CBC Flips with multiple filters to ensure better trade quality:
Trend Confirmation: The slow EMA (20-period) must be positioned relative to the VWAP to confirm the overall trend direction.
Long Trades: Slow EMA must be above VWAP (upward trend).
Short Trades: Slow EMA must be below VWAP (downward trend).
Time-Based Filter: Traders can specify trading hours to limit entries to a particular time window, helping avoid low-volume or high-volatility periods.
Profit Target and Stop-Loss:
Profit Target: Defined as a multiple of the 14-period ATR (Average True Range). For example, if the ATR is 10 points and the profit target multiplier is set to 1.5, the strategy aims for a 15-point profit.
Stop-Loss: Uses a dynamic, candle-based stop-loss:
Long Trades: The trade closes if the market closes below the low of two candles ago.
Short Trades: The trade closes if the market closes above the high of two candles ago.
This approach adapts to recent price behavior and protects against unexpected reversals.
Customizable Settings
Strong Flips vs. All Flips: Choose between a more selective or aggressive entry style.
Profit Target Multiplier: Adjust the ATR multiplier to control the distance for profit targets.
Entry Time Range: Define specific trading hours for the strategy.
Indicators and Visuals
Fast EMA (10-Period) – Black Line
Slow EMA (20-Period) – Red Line
VWAP (Volume-Weighted Average Price) – Orange Line
Visual Labels:
▵ (Triangle Up) – Marks long entries (buy signals).
▿ (Triangle Down) – Marks short entries (sell signals).
Credits
CBC Flip Concept: Inspired by MapleStax, who teaches this concept.
Original Indicator: Developed by AsiaRoo, this strategy builds on the CBC Flip framework with additional features for improved trade management.
Risks and Disclaimer
This strategy is for educational purposes only and does not constitute financial advice.
Trading involves significant risk and may result in the loss of capital. Past performance does not guarantee future results. Use this strategy in a simulated environment before applying it to live trading.
SIOVERSE CTC 5MIndicator: EMA 50 Candle Color & Signal
This indicator combines EMA 10 and EMA 50 to generate buy/sell signals and visually highlight market trends using candle colors.
Key Features:
Candle Coloring:
Candles turn green when the price is above the EMA 50.
Candles turn red when the price is below the EMA 50.
Buy/Sell Signals:
Buy Signal: Triggered when the price closes above EMA 10 High and above EMA 50.
Sell Signal: Triggered when the price closes below EMA 10 Low and below EMA 50.
EMA 50 Line:
The EMA 50 is plotted as an orange line for trend confirmation.
Alerts:
Alerts are generated for buy and sell signals.
How It Works:
The indicator uses EMA 10 Low and EMA 10 High for signal generation but does not display them on the chart.
The EMA 50 acts as a trend filter:
Only buy signals are shown when the price is above the EMA 50.
Only sell signals are shown when the price is below the EMA 50.
Visuals:
Green candles indicate bullish conditions (price above EMA 50).
Red candles indicate bearish conditions (price below EMA 50).
Buy/sell signals are marked with labels ("BUY" or "SELL") on the chart.
ORB-5Min + Adaptive 12/48 EMA + PDH/PDLThis script integrates three powerful elements into a handy all-in-one tool for intraday trading: a 5-minute opening range (ORB) to highlight potential early support/resistance, color-coded EMAs (9, 12, 48, and 200) to gauge short- and long-term momentum, and the previous day’s high/low to mark key pivot points.
By visually emphasizing the ORB zone, adapting EMA colors based on price action, and displaying PDH/PDL, it helps day traders quickly spot breakout opportunities, momentum shifts, and critical support/resistance levels.
For the best results, use it on intraday charts and combine its insights with your broader market analysis or price action strategies.
Be sure to customize the settings—such as toggling the ORB lines, adjusting fill opacity, or choosing EMA colors—to match your trading style. This all-in-one solution saves chart space while providing essential reference points in one convenient script.
MTF- Standard Deviation ChannelWhat Is Standard Deviation?
Standard deviation is a statistical measurement that looks at how far individual points in a dataset are dispersed from the mean of that set. If data points are further from the mean, there is a higher deviation within the data set. It is calculated as the square root of the variance.
Key Takeaways:
Standard deviation measures the dispersion of a dataset relative to its mean.
It is calculated as the square root of the variance.
Standard deviation, in finance, is often used as a measure of the relative riskiness of an asset.
A volatile stock has a high standard deviation, while the deviation of a stable blue-chip stock is usually rather low.
Standard deviation is also used by businesses to assess risk, manage business operations, and plan cash flows based on seasonal changes and volatility.
Source: Investopedia
--------------- UPDATE ---------------
The deviation is calculated automatically. (via stdev function).
--
The targeted timeframe is available in the options (recalculation cycle).
--
If the selected security is a contract the number of days before expiration is automatically managed, otherwise it will use the 'default' options.
---------------------------------------
SIOVERSE Signals With TP/SLFractal Support/Resistance with EMA 100, Buy/Sell Signals, and TP/SL
This indicator identifies fractal-based support and resistance levels while incorporating EMA 100 as a trend filter. It generates buy and sell signals based on price crossing EMA 20 high/low, ensuring alignment with the overall trend.
Key Features:
Fractal Support & Resistance: Plots dashed lines at key levels.
EMA 100 Filter: Helps identify the primary trend.
Buy/Sell Signals: Based on price breaking EMA 20 with trend confirmation.
Take Profit & Stop Loss Levels: Automatically calculates TP1 (1:1.5), TP2 (1:3), and TP3 (1:5) based on risk-reward ratios.
Break Detection: Removes signals if price hits SL and marks "Break" on the chart.
Ideal for traders looking to combine trend-following strategies with fractal-based support/resistance levels for better trade management.
スイングハイ/ローの水平線(EMAトリガー)//@version=5
indicator("スイングハイ/ローの水平線(EMAトリガー)", overlay=true, max_lines_count=500)
//─────────────────────────────
//【入力パラメータ】
//─────────────────────────────
pivotPeriod = input.int(title="Pivot期間(左右バー数)", defval=10, minval=1)
emaPeriod = input.int(title="EMA期間", defval=20, minval=1)
lineColorHigh = input.color(title="スイングハイ水平線の色", defval=color.red)
lineColorLow = input.color(title="スイングロー水平線の色", defval=color.green)
lineWidth = input.int(title="水平線の太さ", defval=2, minval=1, maxval=10)
displayBars = input.int(title="表示する過去ローソク足数", defval=200, minval=1)
//─────────────────────────────
//【EMAの計算&プロット】
//─────────────────────────────
emaValue = ta.ema(close, emaPeriod)
plot(emaValue, color=color.orange, title="EMA")
//─────────────────────────────
//【Pivot(スイングハイ/ロー)の検出&マーカー表示】
//─────────────────────────────
pivotHighVal = ta.pivothigh(high, pivotPeriod, pivotPeriod)
pivotLowVal = ta.pivotlow(low, pivotPeriod, pivotPeriod)
plotshape(pivotHighVal, title="スイングハイ", style=shape.triangledown, location=location.abovebar, color=lineColorHigh, size=size.tiny, offset=-pivotPeriod)
plotshape(pivotLowVal, title="スイングロー", style=shape.triangleup, location=location.belowbar, color=lineColorLow, size=size.tiny, offset=-pivotPeriod)
//─────────────────────────────
//【水平線(pivotライン)管理用の配列定義】
//─────────────────────────────
// 各ピボットに対して、作成した水平線オブジェクト、開始バー、ピボット価格、ピボット種類、確定フラグを保持
var line pivotLines = array.new_line()
var int pivotLineBars = array.new_int()
var float pivotLinePrices = array.new_float()
var int pivotLineTypes = array.new_int() // 1: スイングハイ, -1: スイングロー
var bool pivotLineFinaled = array.new_bool() // EMA条件で確定済みかどうか
//─────────────────────────────
//【新たなPivot発生時に水平線を作成】
//─────────────────────────────
if not na(pivotHighVal)
pivotBar = bar_index - pivotPeriod
newLine = line.new(pivotBar, pivotHighVal, pivotBar, pivotHighVal, extend=extend.none, color=lineColorHigh, width=lineWidth)
array.push(pivotLines, newLine)
array.push(pivotLineBars, pivotBar)
array.push(pivotLinePrices, pivotHighVal)
array.push(pivotLineTypes, 1) // 1:スイングハイ
array.push(pivotLineFinaled, false)
if not na(pivotLowVal)
pivotBar = bar_index - pivotPeriod
newLine = line.new(pivotBar, pivotLowVal, pivotBar, pivotLowVal, extend=extend.none, color=lineColorLow, width=lineWidth)
array.push(pivotLines, newLine)
array.push(pivotLineBars, pivotBar)
array.push(pivotLinePrices, pivotLowVal)
array.push(pivotLineTypes, -1) // -1:スイングロー
array.push(pivotLineFinaled, false)
//─────────────────────────────
//【古い水平線の削除:指定過去ローソク足数より前のラインを削除】
//─────────────────────────────
if array.size(pivotLines) > 0
while array.size(pivotLines) > 0 and (bar_index - array.get(pivotLineBars, 0) > displayBars)
line.delete(array.get(pivotLines, 0))
array.remove(pivotLines, 0)
array.remove(pivotLineBars, 0)
array.remove(pivotLinePrices, 0)
array.remove(pivotLineTypes, 0)
array.remove(pivotLineFinaled, 0)
//─────────────────────────────
//【各バーで、未確定の水平線を更新】
//─────────────────────────────
if array.size(pivotLines) > 0
for i = 0 to array.size(pivotLines) - 1
if not array.get(pivotLineFinaled, i)
pivotPrice = array.get(pivotLinePrices, i)
pivotType = array.get(pivotLineTypes, i)
startBar = array.get(pivotLineBars, i)
if bar_index >= startBar
lineObj = array.get(pivotLines, i)
line.set_x2(lineObj, bar_index)
// スイングハイの場合:EMAがピボット価格を上回ったら確定
if pivotType == 1 and emaValue > pivotPrice
line.set_x2(lineObj, bar_index)
array.set(pivotLineFinaled, i, true)
// スイングローの場合:EMAがピボット価格を下回ったら確定
if pivotType == -1 and emaValue < pivotPrice
line.set_x2(lineObj, bar_index)
array.set(pivotLineFinaled, i, true)
Combined EMA & Real Price IndicatorCombined EMA & Real Price Indicator
i needed this done for myself so I used chat gpt to assist me with the script.
WaridTR15 Dakika ve Üzeri Periyotlar İçin Önerilen Ayarlar:
EMA Uzunlukları:
Kısa EMA: 9 yerine 12 veya 14 kullanılabilir.
Uzun EMA: 21 yerine 26 veya 50 kullanılabilir.
Golden Cross için 50 EMA ve 200 EMA zaten uzun vadeli trendleri yakalar, bu nedenle değiştirmeye gerek yok.
RSI Uzunluğu:
RSI uzunluğu 14 yerine 21 veya 28 yapılabilir. Bu, daha uzun vadeli aşırı alım/aşırı satım bölgelerini daha doğru tespit eder.
Volume Filtresi:
Volume ortalaması için 20 periyot yerine 50 veya 100 periyot kullanılabilir. Bu, daha uzun vadeli hacim eğilimlerini yakalar.
Ichimoku Parametreleri:
Ichimoku, varsayılan olarak 9-26-52 periyotlarıyla çalışır. Bu, zaten uzun vadeli trendleri yakalamak için uygundur. Ancak, daha uzun periyotlar için:
Tenkan-Sen: 9 yerine 14.
Kijun-Sen: 26 yerine 52.
Senkou Span B: 52 yerine 104.
EMA ON/OFF labels {By McAi}EMA ON/OFF Labels {By McAi}
This EMA ON/OFF Labels script provides a set of customizable Exponential Moving Averages (EMAs) to help traders analyze trends effectively.
Features:
✅ Adjustable EMA Lengths – Modify the length of each EMA to fit your trading strategy.
✅ Customizable Visibility – Hide or show individual EMAs to keep your chart clean and focused.
✅ Dynamic Labeling – Enable or disable EMA labels for a quick overview of their positions.
✅ Custom Colors:
Blue: EMA 20
Orange: EMA 50
Yellow: EMA 200
Gray: Other EMAs
This EMA ON/OFF Labels {By McAi} script is perfect for traders who want flexibility in their moving average setup while maintaining a clean and organized chart.
Arbitrage SpreadThis indicator was originally published by I_Leo_I
The moving average was modified from EMA to SMA. EMA responds more quickly to recent price changes. It captures short price movements. If you are a day trader or using quick scalping strategies, the EMA tends to be more effective as it provides faster signals.
This indicator helps to find spreads between cryptocurrencies, assess their correlation, spread, z score and atr z score.
The graphs are plotted as a percentage. Because of the limitation in pine tradingview for 5000 bars a period was introduced (after which a new starting point of the graph construction will be started), if you want it can be disabled
The multiplier parameter affects only the construction of the joint diagram on which z score and atr z score are calculated (construction of the diagram is done by dividing one pair by another and multiplying by the multiplier parameter) is shown with a red line
To create a notification you have to specify the data for parameters other than zero which you want to monitor. For parameters z score and atr z score data are counted in both directions
The data can be tracked via the data window
Link to image of the data window prnt.sc/93fKELKSQOhB
CSR Ultimate (Final)This indicator calculates and displays a "Candle Strength Ratio" (CSR) to help you gauge bullish versus bearish momentum on a given timeframe. Here’s what it does:
*Multiple Calculation Methods:*
*You can choose among three different methods:*
-Classic CSR: Compares the difference between the upper and lower parts of the candle relative to its total range.
-Weighted Body CSR: Gives more weight to the candle’s body relative to its wicks.
-Close-Focused CSR: Focuses on the net movement from open to close relative to the full range.
*Optional Enhancements:*
The indicator allows you to enable additional features to refine it:
-Volume Weighting: Adjusts the CSR based on the ratio of current volume to a moving average of volume, so a candle on higher-than-average volume might carry more weight.
-ATR Normalization: Normalizes the CSR using the Average True Range (ATR) to account for market volatility.
-Multi-Bar Averaging: Averages the CSR over a specified number of bars to smooth out noise.
-RSI Filter: Optionally checks an RSI condition (bullish if RSI > 50 or bearish if RSI < 50) to help filter out signals that might not be supported by overall momentum.
*Visual and Alert Features:*
The indicator plots the CSR line with color coding (green for bullish, red for bearish) and draws horizontal threshold lines. It also adjusts the chart background color when the CSR exceeds defined bullish or bearish levels and provides alerts when these thresholds are crossed.
Stasha Dudukovic IBIT MA Multi Crossover StrategyThe strategy is simple and works ONLY when IBIT's ADX is under 30, so not in one way trendy price actions.
Rules :
1) BUY IBIT WHEN IT'S PRICE IS BELOW BOTH THE 10d MA and 20d MA, AND THE 10d MA IS BELOW THE 20d MA.
2) SELL IBIT WHEN IT'S PRICE IS ABOVE BOTH THE 10d MA and 20d MA, AND THE 10d MA IS ABOVE THE 20d MA
HFT Liquidity Hunter]Indicator Name: HFT Liquidity Hunter
Category: Institutional Liquidity & Momentum Analysis Tool
Purpose: Identify high-probability trading zones by combining liquidity gaps, volume anomalies, and momentum extremes.
Core Components & Functionality
1. Liquidity Gap Detection
What It Does:
Tracks price "gaps" from the previous trading session where liquidity clustered.
Plots static horizontal lines at the most significant gap levels:
Red Line: Resistance zone (highest high of prior gaps).
Teal Line: Support zone (lowest low of prior gaps).
Highlights background green/red when price is above/below these zones.
2. Volume Spike Identification
Key Feature:
Detects abnormal trading volume (>1.5x 20-period average).
Critical for confirming institutional participation at key levels.
3. Momentum Extremes
Tools Included:
RSI (14-period): Flags overbought (>65) and oversold (<35) conditions.
Stochastic Oscillator (14,3,3): Measures momentum velocity via %K line.
4. Volatility Boundaries
Dynamic Bands:
Upper Band (Orange): 2 standard deviations above 20-period SMA.
Lower Band (Blue): 2 standard deviations below 20-period SMA.
Price tends to revert toward the mean (basis line) after touching bands.
5. Volume-Weighted Average Price (VWAP)
Role: Serves as a dynamic support/resistance level for the trading session.
6. Real-Time Debug Table
Function:
Tracks 6 critical conditions for trade setups (top-right corner).
✅/❌ system shows whether each criterion is met.
Key Parameters (Customizable)
Gap Lookback Bars: Number of bars analyzed to detect liquidity gaps (default: 5).
Volume Multiplier: Sensitivity for volume spikes (1.5x = 150% of average volume).
RSI/Stochastic Thresholds: Adjust overbought/oversold levels.
Zone Resolution: Timeframe for gap validity (default: 15 minutes).
How to Interpret the Indicator
Visual Elements
Green/Red Background:
Green: Price trading above prior gap high (bullish bias).
Red: Price below prior gap low (bearish bias).
Horizontal Lines:
Teal Line: Static support (demand zone) from prior gaps.
Red Line: Static resistance (supply zone) from prior gaps.
Volatility Bands:
Price at upper band = overextended rally (potential reversal).
Price at lower band = oversold drop (potential bounce).
Purple VWAP Line:
Bullish setups favored above VWAP, bearish below.
Strategic Insights
Bullish Scenario Setup
Ideal Conditions:
Price touches Lower Band (blue line).
RSI < 35 (oversold).
Stochastic %K < 20 (momentum low).
Volume Spike (blue triangle).
Price holds Above VWAP.
Near Teal Demand Zone (gap low).
Bearish Scenario Setup
Ideal Conditions:
Price tests Upper Band (orange line).
RSI > 65 (overbought).
Stochastic %K > 80 (overextended).
Volume Spike (blue triangle).
Price below VWAP.
Near Red Supply Zone (gap high).
Pro Usage Tips
Confluence Trading: Only act when ≥5/6 debug table conditions are ✅.
Time Sensitivity: Most effective during first 2 hours of market opens.
Risk Management:
Stop Loss: 1% beyond static zones (teal/red lines).
Take Profit: Opposite volatility band or gap zone.
Asset-Specific Adjustments:
High Volatility (e.g., Crypto): Increase Volume Multiplier to 2.0x.
Range-Bound Markets: Tighten RSI thresholds to 30/70.
Why Traders Use This
Institutional Edge: Maps liquidity pools where large orders cluster.
False Signal Filter: Requires volume + momentum + volatility alignment.
Multi-Timeframe Valid: Zones auto-adjust to higher timeframe flows.
This tool is designed for traders who want to align with institutional order flow while avoiding retail market noise. Always confirm with the debug table and practice disciplined risk management.