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

Volume MAs Trading System | Multi-Filter v6.6 — FINAL

volume mas trading system multi-filter v6.6 — final (1).pine
Вы автор или правообладатель?

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

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

О программе

Volume MAs Trading System | Multi-Filter v6.6 — FINAL — это индикатор для TradingView, написанный на Pine Script v6. Он рассчитывает объёмно-взвешенную скользящую среднюю и формирует торговые сигналы на основе отклонения цены от этого показателя, а также дополнительных фильтров объёма.

Индикатор поддерживает выбор типа скользящей средней из 16 вариантов, настраиваемые фильтры Ultra Volume и Delta Volume, три режима логики комбинирования сигналов (Strict, Weighted, Levels) и настраиваемые веса каждого компонента. Каждый фильтр можно включить или отключить независимо.

Отображение включает метки входов Long/Short с указанием силы сигнала, цветовую индикацию баров и информационную панель с текущими данными. Также предусмотрены условия для оповещений TradingView для различных комбинаций сигналов и режимов логики.

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

НастройкаОписание
source Источник данных, используемый для расчётов.
ma_type Тип скользящей средней для расчёта объёмно-взвешенного показателя.
ma_length Период скользящей средней, используемой в расчётах.
band_length Период для расчёта полос волатильности на основе стандартного отклонения.
band_smooth Коэффициент сглаживания перестройки полос от 0.0 до 1.0.
pos_mult Множитель для расчёта верхней полосы.
neg_mult Множитель для расчёта нижней полосы.
signal_mode Режим генерации основного сигнала: Trend — трендовый, Reversion — реверсный.
use_ultra Включение или отключение фильтра Ultra Volume.
ultra_len Период скользящей средней для фильтра Ultra Volume.
ultra_mult Множитель объёма для определения условия Ultra Volume.
use_delta Включение или отключение фильтра Delta Volume.
delta_thr Пороговое значение дельты объёма в процентах для фильтра Delta Volume.
logic_mode Режим комбинирования сигналов: Strict — строгое совпадение всех фильтров, Weighted — взвешенная сумма, Levels — уровни силы сигнала.
w_main Вес основного сигнала в режиме Weighted.
w_ultra Вес фильтра Ultra Volume в режиме Weighted.
w_delta Вес фильтра Delta Volume в режиме Weighted.
min_weight Минимальный суммарный вес, необходимый для генерации сигнала в режиме Weighted.
show_labels Отображение меток входа Long и Short на графике.
show_panel Отображение информационной панели в правом верхнем углу графика.
col_long Цвет, используемый для отображения сигналов Long.
col_short Цвет, используемый для отображения сигналов Short.
col_strong Цвет для меток STRONG в режиме Levels и STRICT в режиме Strict.
col_medium Цвет для меток MEDIUM в режиме Levels.
Получить полный код

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

indicator("Volume MAs Trading System | Multi-Filter v6.6 — FINAL", overlay=true, max_labels_count=500, max_lines_count=500)

import LyroRS/LMAs/1 as MAs

g_main   = "Основной осциллятор"
g_filter = "Фильтры объёма"
g_logic  = "Логика сигналов"
g_disp   = "Отображение"

source       = input.source(close,   "Источник", group=g_main)
ma_type      = input.string("JMA",   "Тип скользящей средней", 
                options=["SMA","EMA","WMA","VWMA","DEMA","TEMA","RMA","HMA","LSMA","SMMA","ALMA","ZLSMA","FRAMA","KAMA","JMA","T3"], group=g_main)
ma_length    = input.int(30,         "Длина MA", minval=2, group=g_main)
band_length  = input.int(27,         "Длина полос", minval=5, group=g_main)
band_smooth  = input.float(0.8,      "Сглаживание полос", minval=0.0, maxval=1.0, step=0.1, group=g_main)
pos_mult     = input.float(1.8,      "Множитель (+) полосы", minval=0.1, group=g_main)
neg_mult     = input.float(-0.85,    "Множитель (-) полосы", maxval=-0.1, group=g_main)
signal_mode  = input.string("Trend", "Режим сигнала", options=["Trend", "Reversion"], group=g_main)

use_ultra    = input.bool(true,  "Ultra Volume фильтр", group=g_filter)
ultra_len    = input.int(25,     "Длина Ultra Volume", options=[8,13,21,25,34,55,89], group=g_filter)
ultra_mult   = input.float(2.4,  "Множитель Ultra Volume", minval=1.0, step=0.1, group=g_filter)

use_delta    = input.bool(true,  "Delta Volume фильтр", group=g_filter)
delta_thr    = input.float(5.0,  "Порог дельты (%)", minval=0.0, step=0.5, group=g_filter)

logic_mode   = input.string("Weighted", "Режим логики", options=["Strict","Weighted","Levels"], group=g_logic)

w_main       = input.int(50, "Вес основного сигнала", minval=0, maxval=100, group=g_logic)
w_ultra      = input.int(30, "Вес Ultra Volume", minval=0, maxval=100, group=g_logic)
w_delta      = input.int(20, "Вес Delta Volume", minval=0, maxval=100, group=g_logic)
min_weight   = input.int(75, "Мин. вес для входа (%)", minval=50, maxval=100, group=g_logic)

show_labels  = input.bool(true,  "Метки входа", group=g_disp)
show_panel   = input.bool(true,  "Инфо-панель", group=g_disp)
col_long     = input.color(#00ff88, "Цвет Long", group=g_disp)
col_short    = input.color(#ff0044, "Цвет Short", group=g_disp)
col_strong   = input.color(#FFD700, "Цвет STRONG", group=g_disp)
col_medium   = input.color(#FFA500, "Цвет MEDIUM", group=g_disp)

float vwma = switch ma_type
    "SMA"   => MAs.SMA(source*volume, ma_length)   / MAs.SMA(volume, ma_length)
    "EMA"   => MAs.EMA(source*volume, ma_length)   / MAs.EMA(volume, ma_length)
    "WMA"   => MAs.WMA(source*volume, ma_length)   / MAs.WMA(volume, ma_length)
    "VWMA"  => MAs.VWMA(source, volume, ma_length)
    "DEMA"  => MAs.DEMA(source*volume, ma_length)  / MAs.DEMA(volume, ma_length)
    "TEMA"  => MAs.TEMA(source*volume, ma_length)  / MAs.TEMA(volume, ma_length)
    "RMA"   => MAs.RMA(source*volume, ma_length)   / MAs.RMA(volume, ma_length)
    "HMA"   => MAs.HMA(source*volume, ma_length)   / MAs.HMA(volume, ma_length)
    "LSMA"  => MAs.LSMA(source*volume, ma_length, 0) / MAs.LSMA(volume, ma_length, 0)
    "SMMA"  => MAs.SMMA(source*volume, ma_length)  / MAs.SMMA(volume, ma_length)
    "ALMA"  => MAs.ALMA(source*volume, ma_length, 0.0, 20) / MAs.ALMA(volume, ma_length, 0.0, 20)
    "ZLSMA" => MAs.ZLSMA(source*volume, ma_length) / MAs.ZLSMA(volume, ma_length)
    "FRAMA" => MAs.FRAMA(source*volume, ma_length) / MAs.FRAMA(volume, ma_length)
    "KAMA"  => MAs.KAMA(source*volume, ma_length)  / MAs.KAMA(volume, ma_length)
    "JMA"   => MAs.JMA(source*volume, ma_length, 0) / MAs.JMA(volume, ma_length, 0)
    "T3"    => MAs.T3(source*volume, ma_length, 0.5) / MAs.T3(volume, ma_length, 0.5)
    => na

float diff = (source - vwma) / vwma * 100
float std  = ta.stdev(diff, band_length)

var float upper_band = na
var float lower_band = na
upper_band := nz(upper_band[1]) * (1 - band_smooth) + (std * pos_mult) * band_smooth
lower_band := nz(lower_band[1]) * (1 - band_smooth) + (std * neg_mult) * band_smooth

var int main_sig = 0
main_sig := signal_mode == "Trend" ?
     diff > upper_band ? 1 : diff < lower_band ? -1 : main_sig[1] :
     diff > upper_band ? -1 : diff < lower_band ? 1 : main_sig[1]

float vol_ma    = ta.wma(volume, ultra_len)
bool  ultra_vol = volume >= vol_ma * ultra_mult
int   ultra_sig = use_ultra and ultra_vol ? (close >= open ? 1 : -1) : 0

float delta_

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

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

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

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

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

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

Стоимость полного кода
719₽ ≈ $9