The RealGains Algo
Похожие материалы по тегам
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «the real-gains algo 2.5 final.pine» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
The RealGains Algo — это многокомпонентный индикатор-оверлей для TradingView, написанный на Pine Script v6. Он объединяет несколько подсистем анализа тренда и отображения сигналов на одном графике. Индикатор предназначен для визуальной оценки направления цены, определения потенциальных точек входа и выхода, а также для мониторинга состояния рынка на множестве таймфреймов одновременно.
Настройки программы
| Настройка | Описание |
|---|---|
| src | Источник данных — Исходный источник данных для расчётов (по умолчанию — цена закрытия). |
| per | Период сэмплирования — Период, используемый для расчёта сглаженного диапазона фильтра. |
| mult | Множитель диапазона — Множитель, определяющий ширину верхней и нижней границ канала. |
| showSMA20 | Показать SMA 20 — Включает отображение скользящей средней с периодом 20 на графике. |
| showSMA50 | Показать SMA 50 — Включает отображение скользящей средней с периодом 50 на графике. |
| showSMA200 | Показать SMA 200 — Включает отображение скользящей средней с периодом 200 на графике. |
| useSMA20Filter | Фильтр по SMA 20 — Включает фильтрацию сигналов по условию цены относительно SMA 20. |
| useSMA50Filter | Фильтр по SMA 50 — Включает фильтрацию сигналов по условию цены относительно SMA 50. |
| useSMA200Filter | Дополнительный фильтр по SMA 200 — Включает дополнительную фильтрацию сигналов по условию цены относительно SMA 200. |
| paint_bars | Окрашивать свечи — Включает окрашивание свечей в соответствии с направлением тренда. |
| catch_flat | Перехватывать плоскость — Включает попытку определения плоского (нестрендового) состояния рынка. |
| uptrend_colour | Цвет восходящего тренда — Цвет, используемый для обозначения восходящего тренда. |
| downtrend_colour | Цвет нисходящего тренда — Цвет, используемый для обозначения нисходящего тренда. |
| neutraltrend_colour | Цвет нейтрального тренда — Цвет, используемый для обозначения нейтрального (плоского) состояния. |
| show_header | Показать заголовок — Включает отображение заголовка таблицы на графике. |
| show_ema_value | Показать значение EMA — Включает отображение значений EMA в таблице таймфреймов. |
| dashboard_position | Позиция панели — Позиция таблицы с информацией о трендах на графике. |
| text_size | Размер текста — Размер шрифта текста в таблице. |
| text_color | Цвет текста — Цвет текста в таблице и водяных знаках. |
| table_color | Цвет границ таблицы — Цвет границ таблицы с данными. |
| uptrend_indicator | Индикатор восходящего тренда — Символ, отображаемый в таблице для восходящего тренда. |
| downtrend_indicator | Индикатор нисходящего тренда — Символ, отображаемый в таблице для нисходящего тренда. |
| neutraltrend_indicator | Индикатор нейтрального тренда — Символ, отображаемый в таблице для нейтрального состояния. |
| trend_identification_approach | Подход определения тренда — Метод определения направления тренда: по одному EMA или сравнению двух EMAs. |
| ema1_length | Длина EMA — Период первой экспоненциальной скользящей средней для определения тренда. |
| ema2_length | Дополнительная длина EMA — Период второй экспоненциальной скользящей средней для сравнения направлений. |
| show_1m | Показать 1m — Включает отображение таймфрейма 1 минута в таблице трендов. |
| show_2m | Показать 2m — Включает отображение таймфрейма 2 минуты в таблице трендов. |
| show_3m | Показать 3m — Включает отображение таймфрейма 3 минуты в таблице трендов. |
| show_5m | Показать 5m — Включает отображение таймфрейма 5 минут в таблице трендов. |
| show_10m | Показать 10m — Включает отображение таймфрейма 10 минут в таблице трендов. |
| show_15m | Показать 15m — Включает отображение таймфрейма 15 минут в таблице трендов. |
| show_30m | Показать 30m — Включает отображение таймфрейма 30 минут в таблице трендов. |
| show_45m | Показать 45m — Включает отображение таймфрейма 45 минут в таблице трендов. |
| show_1h | Показать 1h — Включает отображение таймфрейма 1 час в таблице трендов. |
| show_2h | Показать 2h — Включает отображение таймфрейма 2 часа в таблице трендов. |
| show_3h | Показать 3h — Включает отображение таймфрейма 3 часа в таблице трендов. |
| show_4h | Показать 4h — Включает отображение таймфрейма 4 часа в таблице трендов. |
| show_12h | Показать 12h — Включает отображение таймфрейма 12 часов в таблице трендов. |
| show_D | Показать D — Включает отображение дневного таймфрейма в таблице трендов. |
| show_3D | Показать 3D — Включает отображение таймфрейма 3 дня в таблице трендов. |
| show_W | Показать W — Включает отображение недельного таймфрейма в таблице трендов. |
| show_M | Показать M — Включает отображение месячного таймфрейма в таблице трендов. |
| title | Заголовок — Текст заголовка водяного знака на графике. |
| subtitle | Подзаголовок — Текст подзаголовка водяного знака на графике. |
| symInfoCheck | Показать информацию о символе — Включает отображение информации о символе и таймфрейме на графике. |
| textVPosition | Вертикальная позиция текста — Вертикальное положение водяного знака с заголовком. |
| textHPosition | Горизонтальная позиция текста — Горизонтальное положение водяного знака с заголовком. |
| symVPosition | Вертикальная позиция символа — Вертикальное положение водяного знака с информацией о символе. |
| symHPosition | Горизонтальная позиция символа — Горизонтальное положение водяного знака с информацией о символе. |
| width | Ширина — Ширина ячеек водяного знака в процентах от визуального пространства индикатора. |
| height | Высота — Высота ячеек водяного знака в процентах от визуального пространства индикатора. |
| c_title | Цвет заголовка — Цвет текста заголовка водяного знака. |
| s_title | Размер заголовка — Размер шрифта заголовка водяного знака. |
| a_title | Выравнивание заголовка — Выравнивание текста заголовка водяного знака. |
| c_subtitle | Цвет подзаголовка — Цвет текста подзаголовка водяного знака. |
| s_subtitle | Размер подзаголовка — Размер шрифта подзаголовка водяного знака. |
| a_subtitle | Выравнивание подзаголовка — Выравнивание текста подзаголовка водяного знака. |
| c_symInfo | Цвет информации о символе — Цвет текста информации о символе. |
| s_symInfo | Размер информации о символе — Размер шрифта информации о символе. |
| a_symInfo | Выравнивание информации о символе — Выравнивание текста информации о символе. |
| c_bg | Цвет фона — Цвет фона водяных знаков. |
| TrendMode | Режим тренда — Режим агрессивности тренд-системы, влияющий на чувствительность линий. |
| HTFMode | Режим старшего таймфрейма — Режим выбора старшего таймфрейма: автоматический или ручной. |
| TimeFrameM | Агрегация старшего таймфрейма — Выбор таймфрейма для старшей временной системы при ручном режиме. |
| ShowTrendBars | Показать бары тренда — Включает окрашивание свечей на основе направления тренда по DMI/ADX. |
| TrendBarBullish | Бычий цвет баров — Цвет свечей при бычьем тренде. |
| TrendBarBearish | Медвежий цвет баров — Цвет свечей при медвежьем тренде. |
| TrendBarNeutral | Нейтральный цвет баров — Цвет свечей при отсутствии выраженного тренда. |
| ShowTrend | Показать линию тренда — Включает отображение линии тренда на основе экспоненциальной скользящей средней. |
| TrendBullish | Бычий цвет линии тренда — Цвет линии тренда при бычьем направлении. |
| TrendBearish | Медвежий цвет линии тренда — Цвет линии тренда при медвежьем направлении. |
| TrendNeutral | Нейтральный цвет линии тренда — Цвет линии тренда при нейтральном состоянии. |
| ShowStop | Показать стоп-линию — Включает отображение стоп-линии на основе ATR. |
| StopBullish | Бычий цвет стоп-линии — Цвет стоп-линии при бычьем направлении. |
| StopBearish | Медвежий цвет стоп-линии — Цвет стоп-линии при медвежьем направлении. |
| ShowTrend2 | Показать линию тренда старшего ТФ — Включает отображение линии тренда старшего таймфрейма. |
| TrendBullish2 | Бычий цвет линии тренда старшего ТФ — Цвет линии тренда старшего таймфрейма при бычьем направлении. |
| TrendBearish2 | Медвежий цвет линии тренда старшего ТФ — Цвет линии тренда старшего таймфрейма при медвежьем направлении. |
| TrendNeutral2 | Нейтральный цвет линии тренда старшего ТФ — Цвет линии тренда старшего таймфрейма при нейтральном состоянии. |
| ShowStop2 | Показать стоп-линию старшего ТФ — Включает отображение стоп-линии старшего таймфрейма. |
| StopBullish2 | Бычий цвет стоп-линии старшего ТФ — Цвет стоп-линии старшего таймфрейма при бычьем направлении. |
| StopBearish2 | Медвежий цвет стоп-линии старшего ТФ — Цвет стоп-линии старшего таймфрейма при медвежьем направлении. |
| ShowCloud | Показать облачную заливку — Включает заливку области между линиями тренда и стопа цветом направления. |
| CloudBullish | Бычий цвет облачной заливки — Цвет облачной заливки при бычьем направлении. |
| CloudBearish | Медвежий цвет облачной заливки — Цвет облачной заливки при медвежьем направлении. |
| ShowHTFCloud | Показать облачную заливку старшего ТФ — Включает облачную заливку для старшего таймфрейма. |
| CloudBullish2 | Бычий цвет облачной заливки старшего ТФ — Цвет облачной заливки старшего таймфрейма при бычьем направлении. |
| CloudBearish2 | Медвежий цвет облачной заливки старшего ТФ — Цвет облачной заливки старшего таймфрейма при медвежьем направлении. |
| showEntryBuy | Показать вход в покупку — Отображает метку входа в длинную позицию. |
| showTpBuy | Показать TP покупки — Отображает метку достижения цели прибыли для длинной позиции. |
| showReBuy | Показать повторный вход покупки — Отображает метку повторного входа в длинную позицию. |
| showExitBuy | Показать выход покупки — Отображает метку выхода из длинной позиции. |
| showEntrySell | Показать вход в продажу — Отображает метку входа в короткую позицию. |
| showTpSell | Показать TP продажи — Отображает метку достижения цели прибыли для короткой позиции. |
| showReSell | Показать повторный вход продажи — Отображает метку повторного входа в короткую позицию. |
| showExitSell | Показать выход продажи — Отображает метку выхода из короткой позиции. |
| useSmaFilter | Включить фильтр SMA — Включает фильтр по SMA 200 для сигналов PSAR. |
| psarStart | Начальное значение PSAR — Начальное значение ускорения PSAR. |
| psarIncrement | Приращение PSAR — Шаг увеличения ускорения PSAR. |
Поиск по коду файла
indicator(title = 'The RealGains Algo', shorttitle = 'The RealGains Algo 2.5', overlay = true)
upColor = color.white
midColor = #90bff9
downColor = color.blue
src = input(defval = close, title = 'Source')
per = input.int(defval = 100, minval = 1, title = 'Sampling Period')
mult = input.float(defval = 3.0, minval = 0.1, title = 'Range Multiplier')
g_sma = "Choose SMAs"
showSMA20 = input.bool(true, title = 'Show 20 SMA', group=g_sma)
showSMA50 = input.bool(true, title = 'Show 50 SMA', group=g_sma)
showSMA200 = input.bool(true, title = 'Show 200 SMA', group=g_sma)
g_filter = "Apply SMAs Filter"
useSMA20Filter = input.bool(true, title="Filter Signals using SMA 20", group=g_filter)
useSMA50Filter = input.bool(true, title="Filter Signals using SMA 50", group=g_filter)
useSMA200Filter = input.bool(true, title="Additional Filter using SMA 200", group=g_filter)
sma20 = ta.sma(src, 20)
sma50 = ta.sma(src, 50)
sma200 = ta.sma(src, 200)
sma20Color = src > sma20 ? color.new(color.green, 0) : color.new(color.red, 0)
sma50Color = src > sma50 ? color.new(color.green, 0) : color.new(color.red, 0)
sma200Color = src > sma200 ? color.new(color.green, 0) : color.new(color.red, 0)
plot(showSMA20 ? sma20 : na, color = sma20Color, linewidth = 1, title = 'SMA 20')
plot(showSMA50 ? sma50 : na, color = sma50Color, linewidth = 1, title = 'SMA 50')
plot(showSMA200 ? sma200 : na, color = sma200Color, linewidth = 2, title = 'SMA 200')
smoothrng(x, t, m) =>
wper = t * 2 - 1
avrng = ta.ema(math.abs(x - x[1]), t)
smoothrng = ta.ema(avrng, wper) * m
smoothrng
smrng = smoothrng(src, per, mult)
rngfilt(x, r) =>
rngfilt = x
rngfilt := x > nz(rngfilt[1]) ? x - r < nz(rngfilt[1]) ? nz(rngfilt[1]) : x - r : x + r > nz(rngfilt[1]) ? nz(rngfilt[1]) : x + r
rngfilt
filt = rngfilt(src, smrng)
upward = 0.0
upward := filt > filt[1] ? nz(upward[1]) + 1 : filt < filt[1] ? 0 : nz(upward[1])
downward = 0.0
downward := filt < filt[1] ? nz(downward[1]) + 1 : filt > filt[1] ? 0 : nz(downward[1])
hband = filt + smrng
lband = filt - smrng
filtcolor = upward > 0 ? upColor : downward > 0 ? downColor : midColor
barcolor = src > filt and src > src[1] and upward > 0 ? upColor : src > filt and src < src[1] and upward > 0 ? upColor : src < filt and src < src[1] and downward > 0 ? downColor : src < filt and src > src[1] and downward > 0 ? downColor : midColor
filtplot = plot(filt, color = filtcolor, linewidth = 2, title = 'Range Filter')
hbandplot = plot(hband, color = color.new(upColor, 70), title = 'High Target')
lbandplot = plot(lband, color = color.new(downColor, 70), title = 'Low Target')
fill(hbandplot, filtplot, color = color.new(upColor, 90), title = 'High Target Range')
fill(lbandplot, filtplot, color = color.new(downColor, 90), title = 'Low Target Range')
barcolor(barcolor)
longCond = bool(na)
shortCond = bool(na)
longCond := src > filt and src > src[1] and upward > 0 or src > filt and src < src[1] and upward > 0
shortCond := src < filt and src < src[1] and downward > 0 or src < filt and src > src[1] and downward > 0
CondIni = 0
CondIni := longCond ? 1 : shortCond ? -1 : CondIni[1]
validLongSignal = longCond and CondIni[1] == -1 and
(not useSMA20Filter or src > sma20) and // SMA 20 filter
(not useSMA50Filter or src > sma50) and // SMA 50 filter
(not useSMA200Filter or src > sma200) // SMA 200 filter
validShortSignal = shortCond and CondIni[1] == 1 and
(not useSMA20Filter or src < sma20) and // SMA 20 filter
(not useSMA50Filter or src < sma50) and // SMA 50 filter
(not useSMA200Filter or src < sma200) // SMA 200 filter
plotshape(validLongSignal, title = 'Buy Signal', text = 'Buy', textcolor = color.white, style = shape.labelup, size = size.small, location = location.belowbar, color = color.new(#aaaaaa, 20))
plotshape(validShortSignal, title = 'Sell Signal', text = 'Sell', textcolor = color.white, style = shape.labeldown, size = size.small, location = location.abovebar, color = color.new(downColor, 20))
alertcondition(validLongSignal, title = 'Buy alert on Range Filter', message = 'Buy alert on Range Filter')
alertcondition(validShortSignal, title = 'Sell alert on Range Filter', message = 'Sell alert on Range Filter')
alertcondition(validLongSignal or validShortSignal, title = 'Buy and Sell alert on Range Filter', message = 'Buy and Sell alert on Range Filter')
paint_bars = input(false, title = 'Paint bars?', group = 'Bars Settings')
catch_flat = input(false, title = 'Try to catch flat?', group = 'Bars Settings')
uptrend_colour = input.color(defval = color.green, title = 'Uptrend colour', group = 'Bars Settings')
downtrend_colour = input.color(defval = color.red, title = 'Downtrend colour', group = 'Bars Settings')
neutraltrend_colour = input.color(defval = color.gray, title = 'Downtrend colour', tooltip = 'Note that this value is ignored if the setting to catch flat is switched off.', group = 'Bars Settings')
show_header = input(false, title = 'Show header?', group = 'Table Settings')
show_ema_value = input(false, title = 'Show EMA value?', group = 'Table Settings')
dashboard_position = input.session('Middle right', 'Position', ['Top right', 'Bottom right', 'Top left', 'Bottom left', 'Top center', 'Bottom center', 'Middle right'], group = 'Table Settings')
text_size = input.session('Normal', 'Size', options = ['Tiny', 'Small', 'Normal', 'Large'], group = 'Table Settings')
text_color = input(#d1d4dc, title = 'Text colour', group = 'Table Settings')
table_color = input(color.gray, title = 'Border colour', group = 'Table Settings')
uptrend_indicator = input('🟢', title = 'Uptrend indicator', group = 'Table Settings')
downtrend_indicator = input('🔴', title = 'Downtrend indicator', group = 'Table Settings')
neutraltrend_indicator = input('⚫️', title = 'Neutraltrend indicator', tooltip = 'Note that this value is ignored if the setting to catch flat is switched off.', group = 'Table Settings')
trend_identification_approach = input.session('Direction of a single EMA', 'Trend identification approach', ['Direction of a single EMA', 'Comparison of the two EMAs'], group = 'EMA Settings')
ema1_length = input.int(title = 'EMA length', defval = 50, minval = 1, maxval = 800, group = 'EMA Settings')
ema2_length = input.int(title = 'Additional EMA length', defval = 200, minval = 20, maxval = 800, tooltip = 'Note that the single EMA trend identification approach ignores this value.', group = 'EMA Settings')
show_1m = input(true, title = 'Show 1m', group = 'Timeframe Settings')
show_2m = input(false, title = 'Show 2m ', group = 'Timeframe Settings')
show_3m = input(true, title = 'Show 3m ', group = 'Timeframe Settings')
show_5m = input(true, title = 'Show 5m', group = 'Timeframe Settings')
show_10m = input(false, title = 'Show 10m', group = 'Timeframe Settings')
show_15m = input(true, title = 'Show 15m', group = 'Timeframe Settings')
show_30m = input(false, title = 'Show 30m', group = 'Timeframe Settings')
show_45m = input(false, title = 'Show 45m', group = 'Timeframe Settings')
show_1h = input(true, title = 'Show 1h', group = 'Timeframe Settings')
show_2h = input(false, title = 'Show 2h', group = 'Timeframe Settings')
show_3h = input(false, title = 'Show 3h', group = 'Timeframe Settings')
show_4h = input(true, title = 'Show 4h', group = 'Timeframe Settings')
show_12h = input(false, title = 'Show 12h', group = 'Timeframe Settings')
show_D = input(true, title = 'Show D', group = 'Timeframe Settings')
show_3D = input(false, title = 'Show 3D', group = 'Timeframe Settings')
show_W = input(false, title = 'Show W', group = 'Timeframe Settings')
show_M = input(false, title = 'Show M', group = 'Timeframe Settings')
var table_position = dashboard_position == 'Top right' ? position.top_right : dashboard_position == 'Top left' ? position.top_left : dashboard_position == 'Top center' ? position.top_center : dashboard_position == 'Bottom right' ? position.bottom_right : dashboard_position == 'Bottom left' ? position.bottom_left : dashboard_position == 'Bottom center' ? position.bottom_center : dashboard_position == 'Middle right' ? position.middle_right : dashboard_position == 'Middle left' ? position.middle_left : position.middle_right
var table_text_size = text_size == 'Normal' ? size.normal : text_size == 'Large' ? size.large : text_size == 'Tiny' ? size.tiny : text_size == 'Small' ? size.small : size.normal
var t = table.new(position = table_position, columns = 3, rows = 20, frame_color = table_color, frame_width = 2, border_color = table_color, border_width = 2)
calc_smma(src, len) =>
var float smma = na
smma := na(smma) ? ta.sma(src, len) : (smma[1] * (len - 1) + src) / len
smma
calc_zlema(src, len) =>
ema1 = ta.ema(src, len)
ema2 = ta.ema(ema1, len)
d = ema1 - ema2
ema1 + d
check_impulse() =>
impulse_length = 34
impulse_strength = 9
hi = calc_smma(high, impulse_length)
lo = calc_smma(low, impulse_length)
mi = calc_zlema(hlc3, impulse_length)
md = mi > hi ? mi - hi : mi < lo ? mi - lo : 0
md_prev = mi[1] > hi[1] ? mi[1] - hi[1] : mi[1] < lo[1] ? mi[1] - lo[1] : 0
sb = ta.sma(md, impulse_strength)
sb_prev = ta.sma(md_prev, impulse_strength)
sh = md - sb
sh_prev = md_prev - sb_prev
is_impulse = sh != 0 and sh_prev != 0
is_impulse
get_trend_status() =>
impulse = catch_flat ? check_impulse() : true
ema1_current_candle = ta.ema(close, ema1_length)
ema1_previous_candle = ema1_current_candle[1]
round = ema1_current_candle > 1000 ? 0 : ema1_current_candle > 10 ? 1 : ema1_current_candle > 0 ? 2 : ema1_current_candle > 0.1 ? 3 : 10
ema1_str = str.tostring(math.round(ema1_current_candle, round))
if trend_identification_approach == 'Direction of a single EMA'
ema1_previous_previous_candle = ema1_current_candle[2]
trend_current_candle = not impulse ? neutraltrend_indicator : ema1_current_candle > ema1_previous_candle ? uptrend_indicator : ema1_current_candle < ema1_previous_candle ? downtrend_indicator : neutraltrend_indicator
trend_previous_candle = not impulse ? neutraltrend_indicator : ema1_previous_candle > ema1_previous_previous_candle ? uptrend_indicator : ema1_previous_candle < ema1_previous_previous_candle ? downtrend_indicator : neutraltrend_indicator
[ema1_str, trend_current_candle, trend_previous_candle]
else
ema2_current_candle = ta.ema(close, ema2_length)
ema2_previous_candle = ema2_current_candle[1]
trend_current_candle = not impulse ? neutraltrend_indicator : ema1_current_candle > ema2_current_candle ? uptrend_indicator : ema1_current_candle < ema2_current_candle ? downtrend_indicator : neutraltrend_indicator
trend_previous_candle = not impulse ? neutraltrend_indicator : ema1_previous_candle > ema2_previous_candle ? uptrend_indicator : ema1_previous_candle < ema2_previous_candle ? downtrend_indicator : neutraltrend_indicator
[ema1_str, trend_current_candle, trend_previous_candle]
[ema_1m, trend_indicator_1m, _] = request.security(syminfo.tickerid, '1', get_trend_status())
[ema_2m, trend_indicator_2m, _] = request.security(syminfo.tickerid, '2', get_trend_status())
[ema_3m, trend_indicator_3m, _] = request.security(syminfo.tickerid, '3', get_trend_status())
[ema_5m, trend_indicator_5m, _] = request.security(syminfo.tickerid, '5', get_trend_status())
[ema_10m, trend_indicator_10m, _] = request.security(syminfo.tickerid, '10', get_trend_status())
[ema_15m, trend_indicator_15m, _] = request.security(syminfo.tickerid, '15', get_trend_status())
[ema_30m, trend_indicator_30m, _] = request.security(syminfo.tickerid, '30', get_trend_status())
[ema_45m, trend_indicator_45m, _] = request.security(syminfo.tickerid, '45', get_trend_status())
[ema_1h, trend_indicator_1h, _] = request.security(syminfo.tickerid, '60', get_trend_status())
[ema_2h, trend_indicator_2h, _] = request.security(syminfo.tickerid, '120', get_trend_status())
[ema_3h, trend_indicator_3h, _] = request.security(syminfo.tickerid, '180', get_trend_status())
[ema_4h, trend_indicator_4h, _] = request.security(syminfo.tickerid, '240', get_trend_status())
[ema_12h, trend_indicator_12h, _] = request.security(syminfo.tickerid, '720', get_trend_status())
[ema_D, trend_indicator_D, _] = request.security(syminfo.tickerid, 'D', get_trend_status())
[ema_3D, trend_indicator_3D, _] = request.security(syminfo.tickerid, '3D', get_trend_status())
[ema_W, trend_indicator_W, _] = request.security(syminfo.tickerid, 'W', get_trend_status())
[ema_M, trend_indicator_M, _] = request.security(syminfo.tickerid, 'M', get_trend_status())
if barstate.islast
if show_header
table.cell(t, 0, 0, 'Timeframe', text_color = text_color, text_size = table_text_size)
table.cell(t, 1, 0, 'Trend', text_color = text_color, text_size = table_text_size)
if show_ema_value
table.cell(t, 2, 0, str.tostring(ema1_length) + ' EMA', text_color = text_color, text_size = table_text_size)
if show_1m
table.cell(t, 0, 1, '1m', text_color = text_color, text_size = table_text_size)
table.cell(t, 1, 1, trend_indicator_1m, text_color = text_color, text_size = table_text_size)
if show_ema_value
table.cell(t, 2, 1, ema_1m, text_color = text_color, text_size = table_text_size)
if show_2m
table.cell(t, 0, 2, '2m', text_color = text_color, text_size = table_text_size)
table.cell(t, 1, 2, trend_indicator_2m, text_color = text_color, text_size = table_text_size)
if show_ema_value
table.cell(t, 2, 2, ema_2m, text_color = text_color, text_size = table_text_size)
if show_3m
table.cell(t, 0, 3, '3m', text_color = text_color, text_size = table_text_size)
table.cell(t, 1, 3, trend_indicator_3m, text_color = text_color, text_size = table_text_size)
if show_ema_value
table.cell(t, 2, 3, ema_3m, text_color = text_color, text_size = table_text_size)
if show_5m
table.cell(t, 0, 4, '5m', text_color = text_color, text_size = table_text_size)
table.cell(t, 1, 4, trend_indicator_5m, text_color = text_color, text_size = table_text_size)
if show_ema_value
table.cell(t, 2, 4, ema_5m, text_color = text_color, text_size = table_text_size)
if show_10m
table.cell(t, 0, 5, '10m', text_color = text_color, text_size = table_text_size)
table.cell(t, 1, 5, trend_indicator_10m, text_color = text_color, text_size = table_text_size)
if show_ema_value
table.cell(t, 2, 5, ema_10m, text_color = text_color, text_size = table_text_size)
if show_15m
table.cell(t, 0, 6, '15m', text_color = text_color, text_size = table_text_size)
table.cell(t, 1, 6, trend_indicator_15m, text_color = text_color, text_size = table_text_size)
if show_ema_value
table.cell(t, 2, 6, ema_15m, text_color = text_color, text_size = table_text_size)
if show_30m
table.cell(t, 0, 7, '30m', text_color = text_color, text_size = table_text_size)
table.cell(t, 1, 7, trend_indicator_30m, text_color = text_color, text_size = table_text_size)
if show_ema_value
table.cell(t, 2, 7, ema_30m, text_color = text_color, text_size = table_text_size)
if show_45m
table.cell(t, 0, 8, '45m', text_color = text_color, text_size = table_text_size)
table.cell(t, 1, 8, trend_indicator_45m, text_color = text_color, text_size = table_text_size)
if show_ema_value
table.cell(t, 2, 8, ema_45m, text_color = text_color, text_size = table_text_size)
if show_1h
table.cell(t, 0, 9, '1h', text_color = text_color, text_size = table_text_size)
table.cell(t, 1, 9, trend_indicator_1h, text_color = text_color, text_size = table_text_size)
if show_ema_value
table.cell(t, 2, 9, ema_1h, text_color = text_color, text_size = table_text_size)
if show_2h
table.cell(t, 0, 10, '2h', text_color = text_color, text_size = table_text_size)
table.cell(t, 1, 10, trend_indicator_2h, text_color = text_color, text_size = table_text_size)
if show_ema_value
table.cell(t, 2, 10, ema_2h, text_color = text_color, text_size = table_text_size)
if show_3h
table.cell(t, 0, 11, '3h', text_color = text_color, text_size = table_text_size)
table.cell(t, 1, 11, trend_indicator_3h, text_color = text_color, text_size = table_text_size)
if show_ema_value
table.cell(t, 2, 11, ema_3h, text_color = text_color, text_size = table_text_size)
if show_4h
table.cell(t, 0, 12, '4h', text_color = text_color, text_size = table_text_size)
table.cell(t, 1, 12, trend_indicator_4h, text_color = text_color, text_size = table_text_size)
if show_ema_value
table.cell(t, 2, 12, ema_4h, text_color = text_color, text_size = table_text_size)
if show_12h
table.cell(t, 0, 13, '12h', text_color = text_color, text_size = table_text_size)
table.cell(t, 1, 13, trend_indicator_12h, text_color = text_color, text_size = table_text_size)
if show_ema_value
table.cell(t, 2, 13, ema_12h, text_color = text_color, text_size = table_text_size)
if show_D
table.cell(t, 0, 14, 'D', text_color = text_color, text_size = table_text_size)
table.cell(t, 1, 14, trend_indicator_D, text_color = text_color, text_size = table_text_size)
if show_ema_value
table.cell(t, 2, 14, ema_D, text_color = text_color, text_size = table_text_size)
if show_3D
table.cell(t, 0, 15, '3D', text_color = text_color, text_size = table_text_size)
table.cell(t, 1, 15, trend_indicator_3D, text_color = text_color, text_size = table_text_size)
if show_ema_value
table.cell(t, 2, 15, ema_3D, text_color = text_color, text_size = table_text_size)
if show_W
table.cell(t, 0, 16, 'W', text_color = text_color, text_size = table_text_size)
table.cell(t, 1, 16, trend_indicator_W, text_color = text_color, text_size = table_text_size)
if show_ema_value
table.cell(t, 2, 16, ema_W, text_color = text_color, text_size = table_text_size)
if show_M
table.cell(t, 0, 17, 'M', text_color = text_color, text_size = table_text_size)
table.cell(t, 1, 17, trend_indicator_M, text_color = text_color, text_size = table_text_size)
if show_ema_value
table.cell(t, 2, 17, ema_M, text_color = text_color, text_size = table_text_size)
title = input.string('AG FX TRADING', 'Tittle', group = 'text')
subtitle = input.string('PATIENCE | DISCIPLINE | FEARLESS', 'Subtitle', group = 'text')
symInfoCheck = input.bool(title = 'Show Symbol Info', defval = true, group = 'watermark position')
symInfo = syminfo.ticker + ' | ' + timeframe.period + (timeframe.isminutes ? 'M' : na)
date = str.tostring(dayofmonth(time_close)) + '/' + str.tostring(month(time_close)) + '/' + str.tostring(year(time_close))
textVPosition = input.string('top', 'Vertical Position', options = ['top', 'middle', 'bottom'], group = 'watermark position')
textHPosition = input.string('center', 'Horizontal Position', options = ['left', 'center', 'right'], group = 'watermark position')
symVPosition = input.string('bottom', 'Vertical Position', options = ['top', 'middle', 'bottom'], group = 'symbol position')
symHPosition = input.string('center', 'Horizontal Position', options = ['left', 'center', 'right'], group = 'symbol position')
width = input.int(0, 'Width', minval = 0, maxval = 100, tooltip = 'The width of the cell as a % of the indicator\'s visual space. Optional. By default, auto-adjusts the width based on the text inside the cell. Value 0 has the same effect.', group = 'cell size')
height = input.int(0, 'Height', minval = 0, maxval = 100, tooltip = 'The height of the cell as a % of the indicator\'s visual space. Optional. By default, auto-adjusts the height based on the text inside of the cell. Value 0 has the same effect.', group = 'cell size')
c_title = input.color(color.new(color.black, 0), 'Title Color', group = 'title settings')
s_title = input.string('large', 'Title Size', options = ['tiny', 'small', 'normal', 'large', 'huge', 'auto'], group = 'title settings')
a_title = input.string('center', 'Title Alignment', options = ['center', 'left', 'right'], group = 'title settings')
c_subtitle = input.color(color.new(color.black, 30), 'Subitle Color', group = 'subtitle settings')
s_subtitle = input.string('normal', 'Subtitle Size', options = ['tiny', 'small', 'normal', 'large', 'huge', 'auto'], group = 'subtitle settings')
a_subtitle = input.string('center', 'Subtitle Alignment', options = ['center', 'left', 'right'], group = 'subtitle settings')
c_symInfo = input.color(color.new(color.black, 30), 'Subitle Color', group = 'symbol settings')
s_symInfo = input.string('normal', 'Subtitle Size', options = ['tiny', 'small', 'normal', 'large', 'huge', 'auto'], group = 'symbol settings')
a_symInfo = input.string('center', 'Subtitle Alignment', options = ['center', 'left', 'right'], group = 'symbol settings')
c_bg = input.color(color.new(color.blue, 100), 'Background', group = 'background')
textWatermark = table.new(textVPosition + '_' + textHPosition, 1, 3)
table.cell(textWatermark, 0, 0, title, width, height, c_title, a_title, text_size = s_title, bgcolor = c_bg)
table.cell(textWatermark, 0, 1, subtitle, width, height, c_subtitle, a_subtitle, text_size = s_subtitle, bgcolor Показано первые 50% кода (символов: 35968)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.