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

BISI/SIBI (FVG) + Order Blocks + iFVG Candle Coloring — Auto Stretch & Auto Delete

indicator_bisi_sibi_fvg_+_order_blocks_+_ifvg_impulsive_candles.pine
Вы автор или правообладатель?

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

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

О программе

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

Прямоугольники поддерживают автоматическое растягивание до момента заполнения ценой, а также автоматическое удаление после заполнения — оба режима настраиваются пользователем. Отдельная функция раскрашивает свечи при определённом проникновении цены в предыдущие уровни FVG с настраиваемым минимальным порогом проникновения.

В верхней части графика отображается информационная панель с ссылкой на канал в Telegram. Все параметры (количество баров для анализа, цвета, прозрачность, отображение границ и т.д.) настраиваются через диалог настроек индикатора.

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

НастройкаОписание
lookbackBars Бары для анализа — Количество баров для анализа при определении FVG и ордер-блоков
maxBoxes Максимум прямоугольников — Максимальное количество хранимых прямоугольников FVG и ордер-блоков
showFvgs Показать FVG — Отображение прямоугольников FVG на графике
stretchFvgs Растягивание FVG до заполнения — Автоматическое растягивание прямоугольника FVG по правому краю до момента заполнения
autoDeleteFvgs Автоудаление при заполнении FVG — Автоматическое удаление прямоугольника FVG после его заполнения ценой
fvgBullText Метка бычьего FVG — Текстовая метка бычьего FVG (BISI)
fvgBullColor Цвет бычьего FVG — Цвет бычьего FVG (BISI)
fvgBearText Метка медвежьего FVG — Текстовая метка медвежьего FVG (SIBI)
fvgBearColor Цвет медвежьего FVG — Цвет медвежьего FVG (SIBI)
fvgBackgroundOpacity Прозрачность фона FVG — Прозрачность заливки прямоугольника FVG (0–100)
fvgTextOpacity Прозрачность текста FVG — Прозрачность текста внутри прямоугольника FVG (0–100)
showFvgBorders Показать границы FVG — Отображение границ прямоугольников FVG
showOBs Показать ордер-блоки — Отображение прямоугольников ордер-блоков на графике
stretchOBs Растягивание OB до заполнения — Автоматическое растягивание прямоугольника ордер-блока по правому краю до момента заполнения
autoDeleteOBs Автоудаление при заполнении OB — Автоматическое удаление прямоугольника ордер-блока после его заполнения ценой
obBullText Метка бычьего OB — Текстовая метка бычьего ордер-блока
obBullColor Цвет бычьего OB — Цвет бычьего ордер-блока
obBearText Метка медвежьего OB — Текстовая метка медвежьего ордер-блока
obBearColor Цвет медвежьего OB — Цвет медвежьего ордер-блока
obBackgroundOpacity Прозрачность фона OB — Прозрачность заливки прямоугольника ордер-блока (0–100)
obTextOpacity Прозрачность текста OB — Прозрачность текста внутри прямоугольника ордер-блока (0–100)
showObBorders Показать границы OB — Отображение границ прямоугольников ордер-блоков
enableBarColoring Включить подсветку свечей iFVG — Включение или отключение подсветки свечей при iFVG
minPenetration Минимальное проникновение для iFVG — Минимальное проникновение цены в предыдущий уровень FVG для подсветки свечи (0.0–1.0)
bullishBarColor Цвет бычьей свечи iFVG — Цвет свечи при бычьем iFVG
bearishBarColor Цвет медвежьей свечи iFVG — Цвет свечи при медвежьем iFVG
Получить полный код

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

indicator("BISI/SIBI (FVG) + Order Blocks + iFVG Candle Coloring — Auto Stretch & Auto Delete", overlay=true, max_bars_back=5000)

generalSettings = "═══════ GENERAL SETTINGS ═══════"
lookbackBars = input.int(group=generalSettings, defval=250, title="Lookback Bars", minval=5, maxval=5000)
maxBoxes = input.int(group=generalSettings, defval=500, title="Max PD Arrays", minval=50, maxval=1000)

fvgSettings = "═══════ FVG SETTINGS ═══════"
showFvgs = input.bool(group=fvgSettings, defval=true, title="Show FVGs?")
stretchFvgs = input.bool(group=fvgSettings, defval=true, title="???? Stretch FVGs until filled?")
autoDeleteFvgs = input.bool(group=fvgSettings, defval=true, title="????️ Auto-delete when filled?")

fvgBullText = input.string(group=fvgSettings, defval="+FVG", title="BISI ↑", inline="+FVG")
fvgBullColor = input.color(group=fvgSettings, defval=color.rgb(119, 193, 253), title="", inline="+FVG")

fvgBearText = input.string(group=fvgSettings, defval="-FVG", title="SIBI ↓", inline="-FVG")
fvgBearColor = input.color(group=fvgSettings, defval=color.rgb(252, 188, 94), title="", inline="-FVG")

fvgBackgroundOpacity = input.int(group=fvgSettings, defval=90, title="Background Opacity", minval=0, maxval=100)
fvgTextOpacity = input.int(group=fvgSettings, defval=0, title="Text Opacity", minval=0, maxval=100)
showFvgBorders = input.bool(group=fvgSettings, defval=true, title="Show FVG borders?")

obSettings = "═══════ ORDER BLOCK SETTINGS ═══════"
showOBs = input.bool(group=obSettings, defval=true, title="Show Order Blocks?")
stretchOBs = input.bool(group=obSettings, defval=true, title="???? Stretch OBs until filled?")
autoDeleteOBs = input.bool(group=obSettings, defval=true, title="????️ Auto-delete when filled?")

obBullText = input.string(group=obSettings, defval="+OB", title="Order Block ↑", inline="+OB")
obBullColor = input.color(group=obSettings, defval=color.green, title="", inline="+OB")

obBearText = input.string(group=obSettings, defval="-OB", title="Order Block ↓", inline="-OB")
obBearColor = input.color(group=obSettings, defval=color.orange, title="", inline="-OB")

obBackgroundOpacity = input.int(group=obSettings, defval=85, title="Background Opacity", minval=0, maxval=100)
obTextOpacity = input.int(group=obSettings, defval=0, title="Text Opacity", minval=0, maxval=100)
showObBorders = input.bool(group=obSettings, defval=true, title="Show OB borders?")

ifvgSettings = "═══════ iFVG BAR COLORING ═══════"
enableBarColoring = input.bool(group=ifvgSettings, defval=true, title="Enable iFVG bar coloring?")
minPenetration = input.float(group=ifvgSettings, defval=0.2, title="Min penetration for iFVG", minval=0.0, maxval=1.0)
bullishBarColor = input.color(group=ifvgSettings, defval=color.rgb(119, 193, 253), title="Bullish bar color")
bearishBarColor = input.color(group=ifvgSettings, defval=color.rgb(252, 188, 94), title="Bearish bar color")

type fvg
    box boxObject
    float top
    float bottom
    bool filled
    int startCheck
    bool bullish

type orderBlock
    box boxObject
    float top
    float bottom
    bool filled
    int startCheck
    bool bullish

var fvg[] fvgs = array.new<fvg>()
var orderBlock[] orderBlocks = array.new<orderBlock>()

isBarInRange() =>
    bar_index >= bar_index - lookbackBars

drawFVGBoxes(inRange) =>
    bullFVG = inRange and low > high[2]
    bearFVG = inRange and high < low[2]

    if bullFVG or bearFVG
        topVal = bullFVG ? low : low[2]
        bottomVal = bullFVG ? high[2] : high
        colorFVG = bullFVG ? fvgBullColor : fvgBearColor
        textFVG = bullFVG ? fvgBullText : fvgBearText

        borderColorFVG = showFvgBorders ? color.new(colorFVG, 0) : color.new(colorFVG, 100)

        b = box.new(
             left=bar_index - 2,
             right=bar_index,
             top=topVal,
             bottom=bottomVal,
             bgcolor=color.new(colorFVG, fvgBackgroundOpacity),
             border_color=borderColorFVG,
             text=textFVG,
             text_color=color.new(colorFVG, fvgTextOpacity),
             text_size=size.tiny
         )

        if array.size(fvgs) >= maxBoxes
            old = array.shift(fvgs)
            box.delete(old.boxObject)

        array.push(fvgs, fvg.new(b, topVal, bottomVal, false, bar_index + 1, bullFVG))

resizeFVGBoxes(inRange) =>
    if array.size(fvgs) > 0
        for i = array.size(fvgs) - 1 to 0
            gap = array.get(fvgs, i)

            if

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

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

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

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

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

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

Стоимость полного кода
649,40₽ ≈ $7.94