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? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.