DrFx Algo MA💎 (V.3.2)
Похожие материалы по тегам
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «drfx_algoma.pine» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
Индикатор TradingView на Pine Script v5, предназначенный для технического анализа графиков цен. Расчитывает скользящие средние (EMA, Zero Lag EMA), индикатор относительной силы RSI и строит уровни поддержки и сопротивления на основе пивотов. Отображает линии, облачко тренда, маркеры RSI и графические подписи на графике. Генерирует сигналы на покупку и продажу с настраиваемыми фильтрами по RSI, тренду и объёму, а также задаёт условия оповещений TradingView.
Настройки программы
| Настройка | Описание |
|---|---|
| mainFlowEMA | Main Flow EMA — Период быстрой EMA для расчёта Zero Lag EMA основного потока |
| mainFlowEMA2 | Main Flow EMA 2 — Период медленной EMA для расчёта Zero Lag EMA основного потока |
| trendEMA1 | Trend EMA 1 — Период первой трендовой скользящей средней EMA |
| trendEMA2 | Trend EMA 2 — Период второй трендовой скользящей средней EMA |
| showTrend | Show Trend EMAs — Включает отображение трендовых линий EMA на графике |
| showGlow | ✨ Show EMA Glow Effect — Добавляет эффект свечения вокруг линий EMA |
| showCloud | ☁️ Show Trend Cloud — Отображает облачко между двумя трендовыми EMA, окрашенное в цвет тренда |
| showRSI | Show RSI Print — Включает отображение маркеров пересечения уровней RSI на графике |
| rsiLen | RSI Length — Период расчёта индикатора RSI |
| rsiOB | Overbought — Уровень перекупленности RSI для формирования сигналов |
| rsiOS | Oversold — Уровень перепроданности RSI для формирования сигналов |
| showSignals | Show Buy/Sell Signals — Включает отображение сигналов покупки и продажи на графике |
| signalStyle | Signal Style — Стиль отображения сигналов: Modern, Minimal или Classic |
| useRSIFilter | 🎯 Use RSI Filter — Фильтрация сигналов по значению RSI |
| useTrendFilter | 📊 Use Trend Filter (EMA 50) — Фильтрация сигналов по направлению тренда через EMA |
| useVolumeFilter | 📊 Use Volume Filter — Фильтрация сигналов по объёму торгов относительно средней |
| minBarsBetween | ⏱️ Min Bars Between Signals — Минимальное количество баров между последовательными сигналами |
| showSupport | 📈 Show Support — Отображает уровни поддержки в виде блоков на графике |
| showResistance | 📉 Show Resistance — Отображает уровни сопротивления в виде блоков на графике |
| srPivotLen | Pivot Length — Длина периода для определения точек пивота поддержки и сопротивления |
| maxSRLines | Max S/R Lines — Максимальное количество отображаемых линий поддержки и сопротивления |
| srBoxHeight | Box Height (ATR) — Высота блоков уровней в кратных значениях ATR |
| showZeroLag | Show Zero Lag EMA — Включает отображение Zero Lag EMA на графике |
| showPromo | Show Promo Card — Включает отображение рекламной карточки в углу графика |
| promoPos | Position — Позиция рекламной карточки на графике |
| promoSize | Size — Размер текста рекламной карточки |
| bullCol | Bullish Color (Buy) — Цвет для бычьих сигналов и маркеров |
| bearCol | Bearish Color (Sell) — Цвет для медвежьих сигналов и маркеров |
| ema1Up | EMA Up Trend — Цвет EMA при восходящем тренде |
| ema1Dn | EMA Down Trend — Цвет EMA при нисходящем тренде |
| zlemaFastCol | ZLEMA Fast — Цвет быстрой Zero Lag EMA |
| zlemaSlowCol | ZLEMA Slow — Цвет медленной Zero Lag EMA |
| supportCol | Support Color — Цвет линий и блоков поддержки |
| resistanceCol | Resistance Color — Цвет линий и блоков сопротивления |
Поиск по коду файла
indicator("DrFx Algo MA💎 (V.3.2)", overlay=true, max_lines_count=500, max_labels_count=500, max_boxes_count=500)
grpMain = "Main Flow EMA 🌈"
mainFlowEMA = input.int(9, "Main Flow EMA", minval=1, group=grpMain)
mainFlowEMA2 = input.int(21, "Main Flow EMA 2", minval=1, group=grpMain)
grpTrend = "Trend 📊"
trendEMA1 = input.int(20, "Trend EMA 1", minval=1, group=grpTrend)
trendEMA2 = input.int(50, "Trend EMA 2", minval=1, group=grpTrend)
showTrend = input.bool(false, "Show Trend EMAs", group=grpTrend)
showGlow = input.bool(false, "✨ Show EMA Glow Effect", group=grpTrend)
showCloud = input.bool(false, "☁️ Show Trend Cloud", group=grpTrend)
grpRSI = "RSI 📊"
showRSI = input.bool(true, "Show RSI Print", group=grpRSI)
rsiLen = input.int(14, "RSI Length", minval=1, group=grpRSI)
rsiOB = input.int(70, "Overbought", group=grpRSI)
rsiOS = input.int(30, "Oversold", group=grpRSI)
grpSig = "Buy / Sell Signals 🎯"
showSignals = input.bool(true, "Show Buy/Sell Signals", group=grpSig)
signalStyle = input.string("Classic", "Signal Style", options=["Modern","Minimal","Classic"], group=grpSig)
useRSIFilter = input.bool(true, "🎯 Use RSI Filter", group=grpSig)
useTrendFilter = input.bool(true, "📊 Use Trend Filter (EMA 50)", group=grpSig)
useVolumeFilter= input.bool(true, "📊 Use Volume Filter", group=grpSig)
minBarsBetween = input.int(10, "⏱️ Min Bars Between Signals", minval=1, group=grpSig)
grpSR = "Support & Resistance 📦"
showSupport = input.bool(true, "📈 Show Support", group=grpSR)
showResistance = input.bool(true, "📉 Show Resistance", group=grpSR)
srPivotLen = input.int(10, "Pivot Length", minval=3, group=grpSR)
maxSRLines = input.int(5, "Max S/R Lines", minval=1, maxval=10, group=grpSR)
srBoxHeight = input.float(0.2, "Box Height (ATR)", minval=0.05, step=0.05, group=grpSR)
grpZL = "Zero Lag EMA 0️⃣"
showZeroLag = input.bool(false, "Show Zero Lag EMA", group=grpZL)
grpPromo = "Promo Card 📺"
showPromo = input.bool(true, "Show Promo Card", group=grpPromo)
promoPos = input.string("Top Right", "Position", options=["Top Right","Top Left","Bottom Right","Bottom Left","Middle Right","Middle Left"], group=grpPromo)
promoSize = input.string("Small", "Size", options=["Tiny","Small","Normal"], group=grpPromo)
grpCol = "Colors 🎨"
bullCol = input.color(#00E676, "Bullish Color (Buy)", group=grpCol)
bearCol = input.color(#FF1744, "Bearish Color (Sell)", group=grpCol)
ema1Up = input.color(#448AFF, "EMA Up Trend", group=grpCol)
ema1Dn = input.color(#FF5252, "EMA Down Trend", group=grpCol)
zlemaFastCol = input.color(#00E5A0, "ZLEMA Fast", group=grpCol)
zlemaSlowCol = input.color(#FF5C7C, "ZLEMA Slow", group=grpCol)
supportCol = input.color(#00E676, "Support Color", group=grpCol)
resistanceCol = input.color(#FF1744, "Resistance Color", group=grpCol)
f_zlema(src, len) =>
lag = math.floor((len - 1) / 2)
zlemaSrc = src + (src - src[lag])
ta.ema(zlemaSrc, len)
zlFast = f_zlema(close, mainFlowEMA)
zlSlow = f_zlema(close, mainFlowEMA2)
emaT1 = ta.ema(close, trendEMA1)
emaT2 = ta.ema(close, trendEMA2)
trendUp = emaT1 > emaT2
trendDn = emaT1 < emaT2
emaT1Color = trendUp ? ema1Up : ema1Dn
plot(showTrend and showGlow ? emaT1 : na, "EMA1 Glow", color=color.new(emaT1Color, 90), linewidth=3)
plot1Main = plot(showTrend ? emaT1 : na, "EMA-1 Trend", color=emaT1Color, linewidth=1)
plot(showTrend and showGlow ? emaT2 : na, "EMA2 Glow", color=color.new(emaT1Color, 92), linewidth=3)
plot2Main = plot(showTrend ? emaT2 : na, "EMA-2 Trend", color=color.new(emaT1Color, 50), linewidth=1)
plot(showZeroLag and showGlow ? zlFast : na, "ZLEMA Fast Glow", color=color.new(zlemaFastCol, 88), linewidth=3)
plot(showZeroLag ? zlFast : na, "Zero Lag Fast", color=zlemaFastCol, linewidth=1)
plot(showZeroLag and showGlow ? zlSlow : na, "ZLEMA Slow Glow", color=color.new(zlemaSlowCol, 88), linewidth=3)
plot(showZeroLag ? zlSlow : na, "Zero Lag Slow", color=zlemaSlowCol, linewidth=1)
cloudColor = showCloud and showTrend ? (trendUp ? color.new(ema1Up, 88) : color.new(ema1Dn, 88)) : na
fill(plot1Main, plot2Main, color=cloudColor, title="Trend Cloud")
rsiVal = ta.rsi(close, rsiLen)
rsiBullSig = showRSI and ta.crossover(rsiVal, rsiOS)
rsiBearSig = showRSI and ta.crossunder(rsiVal, rsiOB)
plotshape(rsiBullSig, title="RSI Oversold", style=shape.triangleup, location=location.belowbar, color=color.new(bullCol, 20), size=size.tiny)
plotshape(rsiBearSig, title="RSI Overbought", style=shape.triangledown, location=location.abovebar, color=color.new(bearCol, 20), size=size.tiny)
basicBuy = ta.crossover(zlFast, zlSlow)
basicSell = ta.crossunder(zlFast, zlSlow)
rsiOkBuy = not useRSIFilter or (rsiVal > 40 and rsiVal < 70)
rsiOkSell = not useRSIFilter or (rsiVal < 60 and rsiVal > 30)
trendOkBuy = not useTrendFilter or close > emaT2
trendOkSell = not useTrendFilter or close < emaT2
volMA = ta.sma(volume, 20)
volOk = not useVolumeFilter or volume > volMA
var int lastBuyBar = na
var int lastSellBar = na
barsSinceBuy = na(lastBuyBar) ? 9999 : bar_index - lastBuyBar
barsSinceSell = na(lastПоказано первые 50% кода (символов: 8592)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.