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

tc top & bottom finder.pine

Вы автор или правообладатель?

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

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

О программе

Индикатор «TC Top & Bottom Finder» для TradingView (Pine Script v5) отображается поверх ценового графика и использует скользящие средние и волатильность для построения верхней и нижней граничных зон с центральной линией. При пересечении цены этих зон индикатор формирует метки потенциальных разворотов и отрисовывает горизонтальные уровни для ордеров и тейк-профита. Также предусмотрены условия оповещений TradingView для основных и сильных сигналов покупки и продажи.

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

НастройкаОписание
w_adjust Ширина линий лимитов и тейк-профита — Управляет толщиной горизонтальных линий уровней покупки и тейк-профита на графике.
away Расстояние меток — Задаёт горизонтальное смещение текстовых меток и линий от текущего бара.
dp Количество знаков после запятой — Определяет точность отображения числовых значений уровней в подписях.
show_takeprofit Показать тейк-профит — Включает или отключает отображение горизонтальной линии и метки тейк-профита.
show_marketorder Показать рыночный ордер — Включает или отключает отображение горизонтальной линии и метки рыночного ордера.
show_buylimit1 Показать лимит покупки 1 — Включает или отключает отображение первого уровня лимитной покупки.
show_buylimit2 Показать лимит покупки 2 — Включает или отключает отображение второго уровня лимитной покупки.
show_buylimit3 Показать лимит покупки 3 — Включает или отключает отображение третьего уровня лимитной покупки.
slp1 Процент тейк-профита — Множитель для расчёта уровня тейк-профита от текущей цены.
Input Сила сигнала — Пороговое значение для подтверждения сигнала разворота.
Получить полный код

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

indicator(title="TC Top & Bottom Finder", overlay=true)

Approximation1(a, b) =>
    l0 = 0.0
    l1 = 0.0
    l2 = 0.0
    l3 = 0.0
    l0 := (1 - b) * a+b * nz(l0[1])
    l1 := -b*l0+nz(l0[1])+b*nz(l1[1])
    l2 := -b*l1+nz(l1[1])+b*nz(l2[1])
    l3 := -b*l2+nz(l2[1])+b*nz(l3[1])
    Approximation1 = (l0 + 2*l1 + 2*l2 + l3)/6
Approximation2(a, b) =>
    l0 = 0.0
    l1 = 0.0
    l2 = 0.0
    l3 = 0.0
    l0 := (1 - b) * a+b * nz(l0[1])
    l1 := -b*l0+nz(l0[1])+b*nz(l1[1])
    l2 := -b*l1+nz(l1[1])+b*nz(l2[1])
    l3 := -b*l2+nz(l2[1])+b*nz(l3[1])
    Approximation2 = (l0 + 2*l1 + 2*l2 + l3)/6
Approximation3(a, b) =>
    l0 = 0.0
    l1 = 0.0
    l2 = 0.0
    l3 = 0.0
    l0 := (1 - b) * a+b * nz(l0[1])
    l1 := -b*l0+nz(l0[1])+b*nz(l1[1])
    l2 := -b*l1+nz(l1[1])+b*nz(l2[1])
    l3 := -b*l2+nz(l2[1])+b*nz(l3[1])
    Approximation3 = (l0 + 2*l1 + 2*l2 + l3)/6
Approximation4(a, b) =>
    l0 = 0.0
    l1 = 0.0
    l2 = 0.0
    l3 = 0.0
    l0 := (1 - b) * a+b * nz(l0[1])
    l1 := -b*l0+nz(l0[1])+b*nz(l1[1])
    l2 := -b*l1+nz(l1[1])+b*nz(l2[1])
    l3 := -b*l2+nz(l2[1])+b*nz(l3[1])
    Approximation4 = (l0 + 2*l1 + 2*l2 + l3)/6
Approximation5(a, b) =>
    l0 = 0.0
    l1 = 0.0
    l2 = 0.0
    l3 = 0.0
    l0 := (1 - b) * a+b * nz(l0[1])
    l1 := -b*l0+nz(l0[1])+b*nz(l1[1])
    l2 := -b*l1+nz(l1[1])+b*nz(l2[1])
    l3 := -b*l2+nz(l2[1])+b*nz(l3[1])
    Approximation5 = (l0 + 2*l1 + 2*l2 + l3)/6
Approximation6(a, b) =>
    l0 = 0.0
    l1 = 0.0
    l2 = 0.0
    l3 = 0.0
    l0 := (1 - b) * a+b * nz(l0[1])
    l1 := -b*l0+nz(l0[1])+b*nz(l1[1])
    l2 := -b*l1+nz(l1[1])+b*nz(l2[1])
    l3 := -b*l2+nz(l2[1])+b*nz(l3[1])
    Approximation6 = (l0 + 2*l1 + 2*l2 + l3)/6
Approximation7(a, b) =>
    l0 = 0.0
    l1 = 0.0
    l2 = 0.0
    l3 = 0.0
    l0 := (1 - b) * a+b * nz(l0[1])
    l1 := -b*l0+nz(l0[1])+b*nz(l1[1])
    l2 := -b*l1+nz(l1[1])+b*nz(l2[1])
    l3 := -b*l2+nz(l2[1])+b*nz(l3[1])
    Approximation7 = (l0 + 2*l1 + 2*l2 + l3)/6
Approximation8(a, b) =>
    l0 = 0.0
    l1 = 0.0
    l2 = 0.0
    l3 = 0.0
    l0 := (1 - b) * a+b * nz(l0[1])
    l1 := -b*l0+nz(l0[1])+b*nz(l1[1])
    l2 := -b*l1+nz(l1[1])+b*nz(l2[1])
    l3 := -b*l2+nz(l2[1])+b*nz(l3[1])
    Approximation8 = (l0 + 2*l1 + 2*l2 + l3)/6
Approximation9(a, b) =>
    l0 = 0.0
    l1 = 0.0
    l2 = 0.0
    l3 = 0.0
    l0 := (1 - b) * a+b * nz(l0[1])
    l1 := -b*l0+nz(l0[1])+b*nz(l1[1])
    l2 := -b*l1+nz(l1[1])+b*nz(l2[1])
    l3 := -b*l2+nz(l2[1])+b*nz(l3[1])
    Approximation9 = (l0 + 2*l1 + 2*l2 + l3)/6
Approximation10(a, b) =>
    l0 = 0.0
    l1 = 0.0
    l2 = 0.0
    l3 = 0.0
    l0 := (1 - b) * a+b * nz(l0[1])
    l1 := -b*l0+nz(l0[1])+b*nz(l1[1])
    l2 := -b*l1+nz(l1[1])+b*nz(l2[1])
    l3 := -b*l2+nz(l2[1])+b*nz(l3[1])
    Approximation10 = (l0 + 2*l1 + 2*l2 + l3)/6
Approximation11(a, b) =>
    l0 = 0.0
    l1 = 0.0
    l2 = 0.0
    l3 = 0.0
    l0 := (1 - b) * a+b * nz(l0[1])
    l1 := -b*l0+nz(l0[1])+b*nz(l1[1])
    l2 := -b*l1+nz(l1[1])+b*nz(l2[1])
    l3 := -b*l2+nz(l2[1])+b*nz(l3[1])
    Approximation11 = (l0 + 2*l1 + 2*l2 + l3)/6
Approximation12(a, b) =>
    l0 = 0.0
    l1 = 0.0
    l2 = 0.0
    l3 = 0.0
    l0 := (1 - b) * a+b * nz(l0[1])
    l1 := -b*l0+nz(l0[1])+b*nz(l1[1])
    l2 := -b*l1+nz(l1[1])+b*nz(l2[1])
    l3 := -b*l2+nz(l2[1])+b*nz(l3[1])
    Approximation12 = (l0 + 2*l1 + 2*l2 + l3)/6
Approximation13(a, b) =>
    l0 = 0.0
    l1 = 0.0
    l2 = 0.0
    l3 = 0.0
    l0 := (1 - b) * a+b * nz(l0[1])
    l1 := -b*l0+nz(l0[1])+b*nz(l1[1])
    l2 := -b*l1+nz(l1[1])+b*nz(l2[1])
    l3 := -b*l2+nz(l2[1])+b*nz(l3[1])
    Approximation13 = (l0 + 2*l1 + 2*l2 + l3)/6
Approximation14(a, b) =>
    l0 = 0.0
    l1 = 0.0
    l2 = 0.0
    l3 = 0.0
    l0 := (1 - b) * a+b * nz(l0[1])
    l1 := -b*l0+nz(l0[1])+b*nz(l1[1])
    l2 := -b*l1+nz(l1[1])+b*nz(l2[1])
    l3 := -b*l2+nz(l2[1])+b*nz(l3[1])
    Approximation14 = (l0 + 2*l1 + 2*l2 + l3)/6
Approximation15(a, b) =>
    l0 = 0.0
    l1 = 0.0
    l2 = 0.0
    l3 = 0.0
    l0 := (1 - b) * a+b * nz(l0[1])
    l1 := -b*l0+nz(l0[1])+b*nz(l1[1])
    l2 := -b*l1+nz(l1[1])+b*nz(l2[1])
    l3 := -b*l2+nz(l2[1])+b*nz(l3[1])
    Approximation15 = (l0 + 2*l1 + 2*l2 + l3)/6
Approximation16(a, b) =>
    l0 = 0.0
    l1 = 0.0
    l2 = 0.0
    l3 = 0.0
    l0 := (1 - b) * a+b * nz(l0[1])
    l1 := -b*l0+nz(l0[1])+b*nz(l1[1])
    l2 := -b*l1+nz(l1[1])+b*nz(l2[1])
    l3 := -b*l2+nz(l2[1])+b*nz(l3[1])
    Approximation16 = (l0 + 2*l1 + 2*l2 + l3)/6
Approximation17(a, b) =>
    l0 = 0.0
    l1 = 0.0
    l2 = 0.0
    l3 = 0.0
    l0 := (1 - b) * a+b * nz(l0[1])
    l1 := -b*l0+nz(l0[1])+b*nz(l1[1])
    l2 := -b*l1+nz(l1[1])+b*nz(l2[1])
    l3 := -b*l2+nz(l2[1])+b*nz(l3[1])
    Approximation17 = (l0 + 2*l1 + 2*l2 + l3)/6
Approximation18(a, b) =>
    l0 = 0.0
    l1 = 0.0
    l2 = 0.0
    l3 = 0.0
    l0 := (1 - b) * a+b * nz(l0[1])
    l1 := -b*l0+nz(l0[1])+b*nz(l1[1])
    l2 := -b*l1+nz(l1[1])+b*nz(l2[1])
    l3 := -b*l2+nz(l2[1])+b*nz(l3[1])
    Approximation18 = (l0 + 2*l1 + 2*l2 + l3)/6
Conjecture1 = Approximation1(open, 0.1)
Conjecture2 = Approximation2(open, 0.15)
Conjecture3 = Approximation3(open, 0.2)
Conjecture4 = Approximation4(open, 0.25)
Conjecture5 = Approximation5(open, 0.3)
Conjecture6 = Approximation6(open, 0.35)
Conjecture7 = Approximation7(open, 0.4)
Conjecture8 = Approximation8(open, 0.45)
Conjecture9 = Approximation9(open, 0.5)
Conjecture10 = Approximation10(open, 0.55)
Conjecture11 = Approximation11(open, 0.6)
Conjecture12 = Approximation12(open, 0.65)
Conjecture13 = Approximation13(open, 0.7)
Conjecture14 = Approximation14(open, 0.75)
Conjecture15 = Approximation15(open, 0.8)
Conjecture16 = Approximation16(open, 0.85)
Conjecture17 = Approximation17(open, 0.9)
Conjecture18 = Approximation18(open, 0.95)
Inapproximability = (Approximation1(ta.tr, 0.1) + Approximation2(ta.tr, 0.15) +Approximation3(ta.tr, 0.2) + Approximation4(ta.tr, 0.25) + Approximation5(ta.tr,0.3) + Approximation6(ta.tr, 0.35) + Approximation7(ta.tr, 0.4) +Approximation8(ta.tr, 0.45) + Approximation9(ta.tr, 0.5) + Approximation10(ta.tr,0.55) + Approximation11(ta.tr, 0.6) + Approximation12(ta.tr, 0.65) +Approximation13(ta.tr, 0.7) + Approximation14(ta.tr, 0.75) + Approximation15(ta.tr,0.8) + Approximation16(ta.tr, 0.85) + Approximation17(ta.tr, 0.9) +Approximation18(ta.tr, 0.95))/18
amlag     = (Conjecture1 + Conjecture2 + Conjecture3 + Conjecture4 + Conjecture5 +Conjecture6 + Conjecture7 + Conjecture8 + Conjecture9 + Conjecture10 + Conjecture11+ Conjecture12 + Conjecture13 + Conjecture14 + Conjecture15 + Conjecture16 +Conjecture17 + Conjecture18)/18
Upper_Threshold_of_Approximability1 = amlag + Inapproximability*1.618
Upper_Threshold_of_Approximability2 = amlag + 2*Inapproximability*1.618
Lower_Threshold_of_Approximability1 = amlag - Inapproximability*1.618
Lower_Threshold_of_Approximability2 = amlag - 2*Inapproximability*1.618
bcolor = #008080
lower_color = ta.ema(close, 40) - ta.ema(high - low, 40) * 4 <Lower_Threshold_of_Approximability2 ? #0f790f:#0f790f
upper_color = ta.ema(close, 40) + ta.ema(high - low, 40) * 4 >Upper_Threshold_of_Approximability2 ? #aa1d1d:#aa1d1d
hplot2 = plot(Upper_Threshold_of_Approximability2,    color=upper_color,linewidth=1, title="Upper Band")
alplot = plot(amlag, color=color.new(bcolor,50), linewidth=1, title="Middle Band")
lplot2 = plot(Lower_Threshold_of_Approximability2,    color=lower_color,linewidth=1, title="Lower Band")
crossdn = high < Upper_Threshold_of_Approximability2[1] and high[1] >=Upper_Threshold_of_Approximability2[1]//and open < open[1]
crossup = low > Lower_Threshold_of_Approximability2[1] and low[1] <=Lower_Threshold_of_Approximability2[1]//and open > open[1]
u_color = Upper_Threshold_of_Approximability2 > ta.ema(close, 40) + ta.ema(high -low, 40) * 4 ? #aa1d1d:na
l_color = Lower_Threshold_of_Approximability2 < ta.ema(close, 40) - ta.ema(high -low, 40) * 4 ? #0f790f:na
u = plot(ta.ema(close, 40) + ta.ema(high - low, 40) * 4, color=u_color,title="Upper Margin")
l = plot(ta.ema(close, 40) - ta.ema(high - low, 40) * 4, color=l_color,title="Lower Margin")
fill(u, hplot2, color=Upper_Threshold_of_Approximability2 > ta.ema(close, 40) +ta.ema(high - low, 40) * 4 ? color.new(#ff0000, 50):na)
fill(l, lplot2, color=Lower_Threshold_of_Approximability2 < ta.ema(close, 40) -ta.ema(high - low, 40) * 4 ? color.new(#0f790f,50):na)
p_display = true
label_direction = true
w_adjust = input(1, 'Buy Limit/Take P

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

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

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

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

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

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

Стоимость полного кода
1 354,20₽ ≈ $16.55