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

Trend Change Indicator

trend change indicator_5971963926995277856.pine

Похожие материалы по тегам

indicator previous session range + projected candles + boschoch protected for tradingview.pineTradingView · 1 общих тегов#__slope direction line.mq5MQL5 / MetaTrader 5 · 1 общих теговrange breakout @meowforex1.pineTradingView · 1 общих тегов#1.mtf_collider_h4_close_13_v18bar.mq4MQL4 / MetaTrader 4 · 1 общих тегов!mth_fasttmaline_edit3.mq4MQL4 / MetaTrader 4 · 1 общих тегов!mth_fasttmaline_edit2.mq4MQL4 / MetaTrader 4 · 1 общих тегов
Вы автор или правообладатель?

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

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

О программе

Индикатор Trend Change Indicator отображает на графике TradingView изменения тренда на основе соотношения быстрых и медленных скользящих средних EMA. Он анализирует данные на выбранном пользователем таймфрейме и на дневном графике, используя фильтр волатильности на основе ATR для определения бычьего или медвежьего состояния рынка.

Индикатор рисует две линии EMA (быструю и медленную), цвет которых меняется в зависимости от направления тренда: зелёный — бычий, красный — медвежий, белый — нейтральный. Между линиями заполняется область, визуализирующая силу тренда. Также отображается простая скользящая средняя SMA с прогнозными линиями на будущие периоды.

В правом нижнем углу графика выводится таблица с текущим состоянием тренда на разных таймфреймах. Индикатор поддерживает два типа оповещений TradingView: одно срабатывает при смене тренда, другое — при расхождении трендов на разных таймфреймах, сигнализируя о возможной необходимости фиксации прибыли.

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

НастройкаОписание
ema_fast_input Быстрая EMA — Параметр периода быстрой экспоненциальной скользящей средней EMA.
ema_slow_input Медленная EMA — Параметр периода медленной экспоненциальной скользящей средней EMA.
atr_length_input Длина ATR — Параметр периода расчёта среднего истинного диапазона ATR, используемого в качестве фильтра волатильности.
atr_margin_input Маржа ATR — Множитель ATR, определяющий пороговое значение для классификации направления тренда как бычьего или медвежьего.
sma_input Длина SMA — Параметр периода простой скользящей средней SMA, отображаемой на графике с прогнозными линиями.
select_timeframe Таймфрейм — Выбор таймфрейма для анализа тренда из доступных вариантов от 1H до 12H.
Получить полный код

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

indicator('Trend Change Indicator', overlay=true) 
ema_fast_input = input(30, title = "EMA Fast")
ema_slow_input = input(60, title = "EMA Slow")
atr_length_input = input(60, title = "ATR Length")
atr_margin_input = input(0.3, title = "ATR Margin")
sma_input = input(140, title = "SMA Length")
select_timeframe = input.string(title="Timeframe", defval="4H", options=["1H", "2H", "4H", "6H", "8H", "12H"])
timeframe = select_timeframe == "1H" ? "60" : select_timeframe == "2H" ? "120" : select_timeframe == "4H" ? "240" : select_timeframe == "6H" ? "360" : select_timeframe == "8H" ? "480" : "720"
ema_fast_4h = request.security(syminfo.tickerid, timeframe, ta.ema(close, ema_fast_input))
ema_slow_4h = request.security(syminfo.tickerid, timeframe, ta.ema(close, ema_slow_input))
ema_diff_4h = ema_fast_4h - ema_slow_4h
ema_bull_4h = ema_diff_4h > atr_margin_input * request.security(syminfo.tickerid, timeframe, ta.atr(atr_length_input))
ema_bear_4h = ema_diff_4h < -atr_margin_input * request.security(syminfo.tickerid, timeframe, ta.atr(atr_length_input))
ema_over_4h = ema_fast_4h > ema_slow_4h
ema_fast_1d = request.security(syminfo.tickerid, "1440", ta.ema(close, ema_fast_input))
ema_slow_1d = request.security(syminfo.tickerid, "1440", ta.ema(close, ema_slow_input))
ema_diff_1d = ema_fast_1d - ema_slow_1d
ema_bull_1d = ema_diff_1d > atr_margin_input * request.security(syminfo.tickerid, "1440", ta.atr(atr_length_input))
ema_bear_1d = ema_diff_1d < -atr_margin_input * request.security(syminfo.tickerid, "1440", ta.atr(atr_length_input))
ema_over_1d = ema_fast_1d > ema_slow_1d
color bull = color.new(color(#00FF00), 0)
color bull_fill = color.new(color(#00FF00), 50)
color bear = color.new(color(#FF0000), 0)
color bear_fill = color.new(color(#FF0000), 50)
color neutral = color.new(color(#FFFFFF), 0)
color neutral_fill = color.new(color(#FFFFFF), 50)
iff_1 = ema_bear_1d ? bear : neutral
ema_fast_plot = plot(ema_fast_1d, title="EMA Fast", linewidth=2, color=ema_bull_1d ? bull : iff_1)
iff_2 = ema_bear_1d ? bear : neutral
ema_slow_plot = plot(ema_slow_1d, title="EMA Slow", linewidth=2, color=ema_bull_1d ? bull : iff_2)
iff_3 = ema_bear_1d ? bear_fill : neutral_fill
fill(ema_fast_plot, ema_slow_plot, color=ema_bull_1d ? bull_fill : iff_3, title="EMA Fill")
var is_long = false
no_trend = not ema_bull_1d and not ema_bear_1d
trend = ema_bull_1d or ema_bear_1d
is_change = not is_long and no_trend
is_no_change = is_long and trend
is_long := is_change ? true : is_no_change ? false : is_long
warning_bull = ema_bull_1d and ema_bear_4h
warning_bear = ema_bear_1d and ema_bull_4h
warning = warning_bull or warning_bear
close_1d = request.security(syminfo.tickerid, "1440", close)
sma = request.security(syminfo.tickerid, "1440", ta.sma(close, sma_input))
plot(sma, title="SMA 1", color=color.new(color.white, 0), linewidth=2)
sma_forecast_1_1 = request.security(syminfo.tickerid, "1440", ((sma * sma_input) + (close_1d - close_1d[sma_input])) / sma_input)
sma_forecast_1_2 = request.security(syminfo.tickerid, "1440", ((sma * sma_input) + ((close_1d * 2) - close_1d[sma_input] - close_1d[sma_input - 1])) / sma_input)
sma_forecast_1_3 = request.security(syminfo.tickerid, "1440", ((sma * sma_input) + ((close_1d * 3) - close_1d[sma_input] - close_1d[sma_input - 1] - close_1d[sma_input - 2])) / sma_input)
sma_forecast_1_4 = request.security(syminfo.tickerid, "1440", ((sma * sma_input) + ((close_1d * 4) - close_1d[sma_input] - close_1d[sma_input - 1] - clo

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

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

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

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

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

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

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