← К каталогу
Исходный код · ID 4119

Advanced Market Structure

indicator advanced market structure for tradingview.pine
Вы автор или правообладатель?

Сообщите нам, если считаете, что материал размещён без разрешения.

Краткий обзор

О программе

Данный индикатор предназначен для анализа рыночной структуры на графиках TradingView. Он отображает на графике несколько типов структурных уровней и зон, помогая визуально оценивать текущую динамику цены. Индикатор рисуется прямо на графике (overlay).

Основные элементы включают линии нарушения и смены структуры (BOS/CHoCH), метки ключевых структурных точек, светящуюся волновую линию с заливкой, зоны повышенной вероятности, а также линии предыдущего дня и уровень баланса. Все элементы управляются через настройки.

Индикатор также содержит информационную панель, отображающую текущее направление тренда, фазу рынка и активный ключевой уровень. Данные других таймфреймов получают автоматически для определения уровней предыдущего торгового дня.

Встроенные технические расчёты включают скользящие средние, средние истинные диапазоны, pivot-точки и средние гармонические. Пользователь может настраивать чувствительность, цвета и видимость каждого компонента.

Настройки программы

НастройкаОписание
glow_sens Количество баров для расчёта импульса тренда и определения консолидации.
cons_threshold Множитель для определения фазы консолидации на основе диапазона цены и ATR.
show_smc Отображение линий нарушения и смены структуры (BOS/CHoCH) на графике.
smc_len Количество баров для поиска pivot-точек при построении линий структуры.
c_bull_smc Цвет линий нарушения и смены структуры при бычьем направлении.
c_bear_smc Цвет линий нарушения и смены структуры при медвежьем направлении.
show_ith_itl Отображение меток ITH и ITL на графике.
major_pivot_len Количество баров для поиска крупных pivot-точек при отображении ITH/ITL.
c_ith Цвет метки промежуточного максимума (ITH).
c_itl Цвет метки промежуточного минимума (ITL).
show_wave Отображение светящейся волновой линии с фоновой заливкой.
wave_len Период расчёта волновой линии.
fill_opacity Прозрачность фоновой заливки волновой линии (0–100).
show_boxes Отображение светящейся зоны высокой вероятности на графике.
box_len Количество баров назад для определения диапазона высокой вероятности при построении зон.
box_opacity Прозрачность заливки зоны высокой вероятности (0–100).
show_pdh_pdl Отображение линий предыдущего торгового дня (PDH/PDL) с автоматическим исчезновением при пробое.
c_pdh Цвет линии предыдущего дня — максимум (PDH).
c_pdl Цвет линии предыдущего дня — минимум (PDL).
show_eq Отображение линии уровня баланса 0.5 на графике.
eq_len Количество баров назад для определения диапазона расчёта уровня баланса.
c_eq Цвет линии уровня баланса 0.5.
show_swings Отображение линий недавних swing high и swing low на графике.
swing_len Количество баров для поиска недавних swing high и swing low.
show_panel Отображение информационной панели с данными о тренде и фазе рынка.
panel_pos Положение информационной панели на графике.
Получить полный код

Поиск по коду файла

indicator("Advanced Market Structure", "Advanced Market Structure", overlay = true, max_lines_count = 500, max_boxes_count = 100, max_labels_count = 500)

g_glow   = "===== CANDLE GLOW & CONSOLIDATION ====="
glow_sens      = input.int(14, "Trend Momentum Lookback", minval=1, group=g_glow)
cons_threshold = input.float(0.5, "Consolidation Range ATR Multiplier", minval=0.1, step=0.1, group=g_glow)

g_smc    = "===== MARKET STRUCTURE (BOS & CHOCH) ====="
show_smc       = input.bool(true, "Show BOS & CHoCH Lines", group=g_smc)
smc_len        = input.int(10, "Structure Sensitivity (Pivot Length)", minval=3, group=g_smc)
c_bull_smc     = input.color(#00e676, "Bullish Structure Color", group=g_smc)
c_bear_smc     = input.color(#ff1744, "Bearish Structure Color", group=g_smc)

g_ith    = "===== MAJOR STRUCTURE LABELS (ITH & ITL) ====="
show_ith_itl   = input.bool(true, "Show ITH / ITL Labels", group=g_ith)
major_pivot_len= input.int(15, "Major Pivot Lookback (ITH/ITL)", minval=5, maxval=100, group=g_ith)
c_ith          = input.color(#ff1744, "ITH Label Color (High)", group=g_ith)
c_itl          = input.color(#00e676, "ITL Label Color (Low)", group=g_ith)

g_wave   = "===== GLOWING WAVE LINE & FILL ====="
show_wave      = input.bool(true, "Show Glowing Wave Line", group=g_wave)
wave_len       = input.int(14, "Wave Length", minval=1, maxval=200, group=g_wave)
fill_opacity   = input.int(85, "Wave Background Fill Opacity (0-100)", minval=0, maxval=100, group=g_wave)

g_prob   = "===== HIGH PROBABILITY ZONES ====="
show_boxes     = input.bool(true, "Show Glowing High Prob Zone", group=g_prob)
box_len        = input.int(30, "High Prob Lookback Bars", minval=10, group=g_prob)
box_opacity    = input.int(85, "Zone Glow Opacity (0-100)", minval=0, maxval=100, group=g_prob)

g_pdh    = "===== PREVIOUS DAY HIGH / LOW (AUTO-DISAPPEAR) ====="
show_pdh_pdl   = input.bool(true, "Show Active PDH / PDL", group=g_pdh)
c_pdh          = input.color(#00e5ff, "PDH Line Color", group=g_pdh)
c_pdl          = input.color(#ffea00, "PDL Line Color", group=g_pdh)

g_eq     = "===== FIBONACCI 0.5 EQUILIBRIUM LEVEL ====="
show_eq        = input.bool(true, "Show 0.5 Equilibrium Line", group=g_eq)
eq_len         = input.int(30, "Equilibrium Range Lookback", minval=10, group=g_eq)
c_eq           = input.color(#e040fb, "EQ Line Color", group=g_eq)

g_swings = "===== RECENT SWING LINES ====="
show_swings    = input.bool(true, "Show Recent Swing High / Low Lines", group=g_swings)
swing_len      = input.int(15, "Recent Swing Sensitivity", minval=3, group=g_swings)

g_panel  = "===== INFO DASHBOARD PANEL ====="
show_panel     = input.bool(true, "Show Info Panel", group=g_panel)
panel_pos      = input.string("Top Right", "Panel Position", options=["Top Right", "Bottom Right", "Top Left", "Bottom Left"], group=g_panel)

pos_choice = panel_pos == "Bottom Right" ? position.bottom_right : panel_pos == "Top Left" ? position.top_left : panel_pos == "Bottom Left" ? position.bottom_left : position.top_right

atrVal = ta.atr(glow_sens)
priceRange = ta.highest(high, glow_sens) - ta.lowest(low, glow_sens)
isConsolidating = priceRange < (atrVal * cons_threshold * glow_sens * 0.15)

emaFast = ta.ema(close, 9)
emaSlow = ta.ema(close, 21)

color glowColor = na
if isConsolidating
    glowColor := color.rgb(180, 185, 195, 30)
else if emaFast > emaSlow and close > open
    glowColor := color.rgb(0, 230, 118, 20)
else if emaFast < emaSlow and close < open
    glowColor := color.rgb(255, 23, 68, 20)
else
    glowColor := color.rgb(120, 144, 156, 40)

barcolor(glowColor)

ph = ta.pivothigh(high, smc_len, smc_len)
pl = ta.pivotlow(low, smc_len, smc_len)

var float last_ph = na
var int last_ph_idx = na
var float last_pl = na
var int last_pl_idx = na
var int trend_dir = 0

if not na(ph)
    last_ph := ph
    last_ph_idx := bar_index - smc_len

if not na(pl)
    last_pl := pl
    last_pl_idx := bar_index - smc_len

if show_smc and not na(last_ph) and ta.crossover(close, last_ph)
    string tag = trend_dir == -1 ? "CHoCH" : "BOS"
    line.new(last_ph_idx, last_ph, bar_index, last_ph, color=c_bull_smc, style=line.style_dashed, width=1)
    label.new(math.floor((last_ph_idx + bar_index) / 2), last_ph, tag, color=color.new(#000000, 100), textcolor=c_bull_smc, style=label.style_label_down, size=size.small)
    trend_dir := 1
    last_ph := na

if show_smc and not na(last_pl) and ta.crossunder(close, last_pl)
    string tag = trend_dir == 1 ? "CHoCH" : "BOS"
    line.new(last_pl_idx, last_pl, bar_index, last_pl, color=c_bear_smc, style=line.style_dashed, width=1)
    label.new(math.floor((last_pl_idx + bar_index) / 2), last_pl, tag, color=color.new(#000000, 100), textcolor=c_bear_smc, style=label.style_label_up, size=size.small)
    trend_dir := -1
    last_pl := na

major_ph = ta.pivothigh(high, major_pivot_len, major_pivot_len)
major_pl = ta.pivotlow(low, major_pivot_len, major_pivot_len)

bool isITH = not na(major_ph)
bool isITL = not na(major_pl)

sig_offset = atrVal * 0.35
ith_pos = high[major_pivot_len] + sig_offset
itl_pos = low[major_pivot_len] - sig_offset

plotshape(show_ith_itl and isITH ? ith_pos : na, title="Intermediate Term High (ITH)", style=shape.labeldown, location=location.absolute, color=c_ith, text="ITH", textcolor=color.white, size=size.normal, offset=-major_pivot_len)
plotshape(show_ith_itl and isITL ? itl_pos : na, title="Intermediate Term Low (ITL)", style=shape.labelup, location=location.absolute, color=c_itl, text="ITL", textcolor=color.black, size=size.normal, offset=-major_pivot_len)

float wave_line_val = ta.hma(close, wave_len)
color wave_color = close >= wave_line_val ? #00e676 : #ff1744
color fill_color = close >= wave_line_val ? color.new(#00e676, fill_opacity) : color.new(#ff1744, fil

Показано первые 50% кода (символов: 9652)

Открыть по тарифу

Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.

Разовая покупка файла

На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.

Чтобы оформить заказ, введите email и перейдите к оплате.

Стоимость полного кода
965,20₽ ≈ $11.80