Форум Бингуру

Форум трейдеров: Бинарные опционы & Форекс & CFD & Крипта

Вы не вошли.

Объявление

Это старый форум. Он законсервирован. Добро пожаловать на Форум Бингуру 2.0, абсолютно безумный и ненормальный. Не ходите туда, молю

#1 15.05.2018 08:02:10

wMEL
Участник
Зарегистрирован: 18.08.2016
Сообщений: 752

Помощь со скриптами для TradingView

Готов помочь со скриптами для TradingView, но чур без СУПЕРТАЙН вашего не готового кода (ибо зачем вы тут), в том смысле что я (никто другой) не телепаты и не могут понять из ваших слов чего вы именно хотите, поэтому покажите хотябы тот участок кода который  вы хотите чтоб работал (хотите измените значения или что то ), чтоб было понятно как оно должно работать. Кароч объясните что вы хотите получить, ведь скорей всего в pinescript это просто невозможно реализовать.
Удачи.

Offline

#2 30.06.2018 18:41:09

Parkhom
Участник
Зарегистрирован: 30.06.2018
Сообщений: 3

Re: Помощь со скриптами для TradingView

Буду первым. Возможно я не слишком спец, но полазив по мануалу Pine'а так и не смог решить следующую задачу:
Условие: есть переменная b, если RSI входит в зону перекупленности (больше 70) -  переменной b присваивается значение 1; если RSI входит в зону перепроданности (меньше 30) -  переменной b присваивается значение -1; важно: до тех пор пока не произошло новое событие, переменная b равна 1 или -1
В общем нужен флаг.
Мои скудные попытки не привели ни к чему, как только событие заканчивается переменная сваливается к 0. Ниже код.

//@version=2
study("Flag")
b = 0
if rsi(close,14) > 70
    b:= 1
if rsi(close,14) < 30
    b:= -1
plot(b)

Использование crossover и crossunder также не привели к решению.
Что посоветуете?

Offline

#3 01.07.2018 10:13:53

wMEL
Участник
Зарегистрирован: 18.08.2016
Сообщений: 752

Re: Помощь со скриптами для TradingView

//@version=3
study(title="bbb", shorttitle="bbb")
src = close, len = input(14, minval=1, title="Length")
up = rma(max(change(src), 0), len)
down = rma(-min(change(src), 0), len)
rsi = down == 0 ? 100 : up == 0 ? 0 : 100 - (100 / (1 + up / down))
//-----------------
b=rsi>70? 1 : rsi<30? -1 : 0
plot(b)

Offline

#4 01.07.2018 13:29:53

Parkhom
Участник
Зарегистрирован: 30.06.2018
Сообщений: 3

Re: Помощь со скриптами для TradingView

Спасибо за ответ. Но решить задачу не получается.

Моя версия

02.png

Ваша версия

01.png

Хочется

03.png

UPD: Может в Pine невозможно реализовать такое? Я так понимаю глобальных переменных нет, а как забивать в серию (в моем случае это переменная b) постоянно 1 или -1, не сваливаясь к 0 - непонятно.

Редактировался Parkhom (01.07.2018 13:39:26)

Offline

#5 01.07.2018 13:44:14

Appuxif
Участник
Из Красноярск
Зарегистрирован: 28.07.2015
Сообщений: 165

Re: Помощь со скриптами для TradingView

Parkhom пишет:

Буду первым. Возможно я не слишком спец, но полазив по мануалу Pine'а так и не смог решить следующую задачу:
Условие: есть переменная b, если RSI входит в зону перекупленности (больше 70) -  переменной b присваивается значение 1; если RSI входит в зону перепроданности (меньше 30) -  переменной b присваивается значение -1; важно: до тех пор пока не произошло новое событие, переменная b равна 1 или -1
В общем нужен флаг.
Мои скудные попытки не привели ни к чему, как только событие заканчивается переменная сваливается к 0. Ниже код.

//@version=2
study("Flag")
b = 0
if rsi(close,14) > 70
    b:= 1
if rsi(close,14) < 30
    b:= -1
plot(b)

Использование crossover и crossunder также не привели к решению.
Что посоветуете?

Как насчет такого? Пока не наступило условие, переменной присваивается предыдущее значение.

//@version=2
study("Flag")
rsi_ = rsi(close,14)
b = rsi_ >= 70 ? 1 : rsi_ <= 30 ? -1 : b[1]
plot(b)

Скрин

mG1kU7Kz

Редактировался Appuxif (01.07.2018 13:46:05)

Offline

Понравилось:

#6 01.07.2018 16:55:09

Parkhom
Участник
Зарегистрирован: 30.06.2018
Сообщений: 3

Re: Помощь со скриптами для TradingView

Appuxif пишет:

Как насчет такого? Пока не наступило условие, переменной присваивается предыдущее значение.

Да, это оно. Спасибо!!!

Offline

#7 05.08.2018 13:28:43

barton
Участник
Зарегистрирован: 05.08.2018
Сообщений: 2

Re: Помощь со скриптами для TradingView

wMEL пишет:

Готов помочь со скриптами для TradingView

Помоги. Вот код:

//@version=2
study("Уровни", shorttitle="Уровни", overlay=true)
connectRanges=input(false, title="Connect Ranges")
up = close<nz(up[1]) and close>down[1] ? nz(up[1]) : high
down = close<nz(up[1]) and close>down[1] ? nz(down[1]) : low
sr=close<nz(up[1]) and close>down[1] ? avg(up,down):na
//rightborder = barstate.islast
plot(sr, title='средняя', color=blue, linewidth=2, style=linebr, trackprice=false)
ul=plot(connectRanges?up:up==nz(up[1])?up:na, color=red, linewidth=2, style=linebr, title="Up")
ll=plot(connectRanges?down:down==nz(down[1])?down:na, color=red, linewidth=2, style=linebr, title="Down")


В этом варианте линия sr рисуется только до конца линий up и down. А мне нужно чтоб она рисовалась до конца графика (barstate.islast). А в идеале чтоб она была перенесена с часового графика. например на 5-минутный.

Как можно с тобой связаться? Какая стоимость личной консультации? Нужно обучиться.

Редактировался barton (05.08.2018 13:29:34)

Offline

#8 05.08.2018 13:58:13

wMEL
Участник
Зарегистрирован: 18.08.2016
Сообщений: 752

Re: Помощь со скриптами для TradingView

barton пишет:

Как можно с тобой связаться? Какая стоимость личной консультации? Нужно обучиться.

Стоимость - не ипать мозг. 
Тыж типа внутренние бары делаешь?
Чтобы на каком то ТФе   отображалось  что то с другого ТФа используй security
Например
security(tickerid, "60", close>open)
tickerid - это тек. инструмент (eurusd usdjpy и т.п.)
"60" - это ТФ, т.е. выбирается в минутах
close>open - это условие срабатывания, ну тут ты можешь вписать что хочешь

На счет линий что у тебя чертятся, они у тебя чертятся до тех пор пока твое условие не сработает по новой. До края графика кажется они чертится и не умеют в pinescripte.

Offline

#9 05.08.2018 14:59:15

barton
Участник
Зарегистрирован: 05.08.2018
Сообщений: 2

Re: Помощь со скриптами для TradingView

Спасибо за подсказку. Примерно так я и думал.

wMEL пишет:

На счет линий что у тебя чертятся, они у тебя чертятся до тех пор пока твое условие не сработает по новой. До края графика кажется они чертится и не умеют в pinescripte.

Вот и я не пойму как такое может быть. Может условие как-то можно прописать чтоб когда заканчивается линия sr, начиналась новая линия, которая имела бы координаты цены  sr В таком случае линия может быть до конца графика. Только как это сделать ума не приложу. А потом на этом еще нужно стратегию делать. Такое вообще реально?
Как вообще можно вытягивать от туда данные чтоб их потом обрабатывать например самостоятельно? Например чтоб прикрутить ИИ.

Редактировался barton (05.08.2018 15:04:52)

Offline

#10 05.08.2018 16:22:15

wMEL
Участник
Зарегистрирован: 18.08.2016
Сообщений: 752

Re: Помощь со скриптами для TradingView

Включи в plot    trackprice=true  и будет тебе  на весь график линии.

Offline

#11 06.08.2018 07:25:34

wMEL
Участник
Зарегистрирован: 18.08.2016
Сообщений: 752

Re: Помощь со скриптами для TradingView

Вот те примерный код. Единственный косяк в этих show_last в плотах, они показывают плоты за последние указанное кол-во свечей,  т.е. на М5  их надо наверное штук 20 или 40, ну сам посмотришь. Менять число можно только прямо в плоте (увы), через инпут работать не хочет. Или посмотри как это было реализовано в моих пивотах , идею я брал с другого скрипта  под названием КитКат кажется. 
Ну если что пиши. Помогу по мере возможности, да и кроме меня тут есть кому помочь.  Ты главное не пытайся сделать из нереализованной идеи что то супер секретное, все давно придумано, так что чем больше открытости - тем легче работать, понимая что ты хочешь.

Твой скрипт

//@version=3
study("Уровни", shorttitle="Уровни", overlay=true)
connectRanges=input(false, title="Connect Ranges")
mbup () =>
    up = 0.0
    down = 0.0
    up := close<nz(up[1]) and close>down[1] ? nz(up[1]) : high
    down := close<nz(up[1]) and close>down[1] ? nz(down[1]) : low
mbdn () =>
    down = 0.0
    up = 0.0
    down := close<nz(up[1]) and close>down[1] ? nz(down[1]) : low
    up := close<nz(up[1]) and close>down[1] ? nz(up[1]) : high
up1=security(tickerid, "60", mbup() )
dn1=security(tickerid, "60", mbdn() )
sr = avg(up1,dn1)
plot(sr, title='средняя', color=sr!=sr[1]? na : blue, linewidth=2, style=linebr, trackprice=false, show_last=12)
u2=plot(up1, color=up1!=up1[1]? na : red, linewidth=2, style=linebr, title="Up", show_last=12, trackprice=true)
d2=plot(dn1, color=dn1!=dn1[1]? na : red, linewidth=2, style=linebr, title="Down", show_last=12, trackprice=true)

Offline

#12 07.08.2018 16:30:54

sheef
Участник
Зарегистрирован: 07.08.2018
Сообщений: 12

Re: Помощь со скриптами для TradingView

Привет!
Помогу плиз установить алерты для этого скрипта

//@version=2
//                                                Indicator420 by SeaSide420
study("Indicator420", overlay=true)
q=input(title="HullMA",type=integer,defval=420)
z=input(title="HullMA cross",type=integer,defval=7)
a=input(title="VWMA",type=integer,defval=25)
rvwma=vwma(close,round(a))
rvwma2=vwma(close,round(a*2))
rvwma3=vwma(close,round(a*3))
n2ma=2*wma(close,round(z/2))
nma=wma(close,z)
diff=n2ma-nma
sqn=round(sqrt(z))
n2ma1=2*wma(close[1],round(z/2))
nma1=wma(close[1],z)
diff1=n2ma1-nma1
sqn1=round(sqrt(z))
n2ma2=2*wma(close[2],round(q/2))
nma2=wma(close[2],q)
diff2=n2ma2-nma2
sqn2=round(sqrt(q))
n1=wma(diff,sqn)
n2=wma(diff1,sqn)
n3=wma(diff2,sqn)
b=n1>n2?red:lime
c=n1>n2?green:red

plot(cross(n1, n2) ? n1 : na, style = line,color=b, linewidth = 3)
plot(cross(n1, n2) ? n1 : na, style = circles,color=c, linewidth = 4)

Offline

#13 07.08.2018 17:00:12

wMEL
Участник
Зарегистрирован: 18.08.2016
Сообщений: 752

Re: Помощь со скриптами для TradingView

sheef пишет:

Привет!
Помогу плиз установить алерты для этого скрипта

//@version=2
//                                                Indicator420 by SeaSide420
study("Indicator420", overlay=true)
q=input(title="HullMA",type=integer,defval=420)
z=input(title="HullMA cross",type=integer,defval=7)
a=input(title="VWMA",type=integer,defval=25)
rvwma=vwma(close,round(a))
rvwma2=vwma(close,round(a*2))
rvwma3=vwma(close,round(a*3))
n2ma=2*wma(close,round(z/2))
nma=wma(close,z)
diff=n2ma-nma
sqn=round(sqrt(z))
n2ma1=2*wma(close[1],round(z/2))
nma1=wma(close[1],z)
diff1=n2ma1-nma1
sqn1=round(sqrt(z))
n2ma2=2*wma(close[2],round(q/2))
nma2=wma(close[2],q)
diff2=n2ma2-nma2
sqn2=round(sqrt(q))
n1=wma(diff,sqn)
n2=wma(diff1,sqn)
n3=wma(diff2,sqn)
b=n1>n2?red:lime
c=n1>n2?green:red

plot(cross(n1, n2) ? n1 : na, style = line,color=b, linewidth = 3)
plot(cross(n1, n2) ? n1 : na, style = circles,color=c, linewidth = 4)

Помогу если скажешь при каком условии тебе нужен алерт )

Offline

#14 07.08.2018 19:47:22

sheef
Участник
Зарегистрирован: 07.08.2018
Сообщений: 12

Re: Помощь со скриптами для TradingView

вот так выглядит индюк http://joxi.ru/krDGW5gCEdKk5A  хотелось бы отдельно при смене цвета скользящей с  красного на зеленый и наоборот, два разных алерта было. Спасиб)

Редактировался sheef (07.08.2018 19:48:42)

Offline

#15 07.08.2018 22:15:07

sheef
Участник
Зарегистрирован: 07.08.2018
Сообщений: 12

Re: Помощь со скриптами для TradingView

а как можно сделать чтобы алерт один раз срабатывал? сейчас если я в настройках ставлю 1 раз на закрытии свечи то по граику один и тот же сигнал срабатывает на закрытии каждой свечи пока выполняется условие http://joxi.ru/a2XEgJlu1pwR3A  а хотелось бы что бы было один раз купить - один раз продать, можно так?

Offline

#16 08.08.2018 10:19:43

sheef
Участник
Зарегистрирован: 07.08.2018
Сообщений: 12

Re: Помощь со скриптами для TradingView

Если поставить один раз, то он отрабатывает только один раз, а при дальнейших сигналах уведомления уже нет

Offline

#17 08.08.2018 11:48:51

sheef
Участник
Зарегистрирован: 07.08.2018
Сообщений: 12

Re: Помощь со скриптами для TradingView

все равно сигналит после каждой свечи

Offline

#18 08.08.2018 17:07:24

wMEL
Участник
Зарегистрирован: 18.08.2016
Сообщений: 752

Re: Помощь со скриптами для TradingView

Я не телепат, так что давай дальше тыкать пальцем в небо..
alertcondition((n1[1]>n2[1] and n2>n1), title='AlertSell', message='AAAAAAA ПРОДАВАЙ ПРОДАВАЙ!')
alertcondition((n2[1]>n1[1] and n1>n2), title='AlertBuy', message='AAAAAAA ПОКУПАЙ ПОКУПАЙ!')
в настройках алерта поставь "раз за бар (на закрытии)"

Редактировался wMEL (08.08.2018 17:09:45)

Offline

#19 09.08.2018 17:59:21

sheef
Участник
Зарегистрирован: 07.08.2018
Сообщений: 12

Re: Помощь со скриптами для TradingView

Так вроде норм. Спасибо тебе большое!! Добрый человек  :lol:

Offline

#20 10.08.2018 10:01:14

sheef
Участник
Зарегистрирован: 07.08.2018
Сообщений: 12

Re: Помощь со скриптами для TradingView

а можно еще вопросик? вот есть скрипт индюка:

dt = input(defval=0.0010, title="Decision Threshold", type=float, step=0.0001)
keh=input(title="Double HullMA Cross",type=integer,defval=14, minval=1)
che1=input(title="MA 1",type=integer,defval=34,minval=1)
che2=input(title="MA 2",type=integer,defval=144,minval=1)
che3=input(title="MA 3",type=integer,defval=377,minval=1)
amnt=input(title="TP ($)",type=integer,defval=4200,minval=1)
wma1=wma(close,che1)
wma2=wma(close,che2)
wma3=wma(close,che3)
A=security(tickerid, 'D', close)
B=security(tickerid, 'D', close[1])
C=A>B?green:red
D=wma2>wma3?green:red
plot(wma1,style=line,color=C,linewidth=4,title="MA1")
p1=plot(wma2,style=line,color=D,title="MA2")
p2=plot(wma3,style=line,color=D,title="MA3")
fill(p1, p2, color=D, transp=75)
n2ma=2*wma(close,round(keh/2))
nma=wma(close,keh)
diff=n2ma-nma,sqn=round(sqrt(keh))
n2ma1=2*wma(close[2],round(keh/2))
nma1=wma(close[2],keh)
diff1=n2ma1-nma1,sqn1=round(sqrt(keh))
n1=wma(diff,sqn)
n2=wma(diff1,sqn)
E=n1>n2?green:red
plot(n1,style=line,color=E,title="hull_MA1")
plot(n2,style=line,color=E,title="Hull_MA2")
plot(cross(n1, n2) ? n1 : na, style = circles,color=E, linewidth = 3,title="Hull_MA Cross")
plot(cross(A, B) ? A : na, style = circles,color=C, linewidth = 5,title="DailyClose Cross")

делаю алерт по аналогии с предыдущим твоим решением, вот так:

alertcondition((A[1]>B[1] and B>A), title='AlertSell', message='AAAAAAA ПРОДАВАЙ ПРОДАВАЙ!')
alertcondition((B[1]>A[1] and A>B), title='AlertBuy', message='AAAAAAA ПОКУПАЙ ПОКУПАЙ!')

но алерт не срабатывает

Offline

#21 10.08.2018 13:47:44

wMEL
Участник
Зарегистрирован: 18.08.2016
Сообщений: 752

Re: Помощь со скриптами для TradingView

Внимательней со знаками > <

Offline

#22 10.08.2018 13:55:07

sheef
Участник
Зарегистрирован: 07.08.2018
Сообщений: 12

Re: Помощь со скриптами для TradingView

По аналогии делал, вот твое готовое решение:

alertcondition((n1[1]>n2[1] and n2>n1), title='AlertSell', message='AAAAAAA ПРОДАВАЙ ПРОДАВАЙ!')
alertcondition((n2[1]>n1[1] and n1>n2), title='AlertBuy', message='AAAAAAA ПОКУПАЙ ПОКУПАЙ!')

это что у меня получилось:
alertcondition((A[1]>B[1] and B>A), title='AlertSell', message='AAAAAAA ПРОДАВАЙ ПРОДАВАЙ!')
alertcondition((B[1]>A[1] and A>B), title='AlertBuy', message='AAAAAAA ПОКУПАЙ ПОКУПАЙ!')

где ошибка, подскажи плиз)

Offline

#23 10.08.2018 14:43:32

wMEL
Участник
Зарегистрирован: 18.08.2016
Сообщений: 752

Re: Помощь со скриптами для TradingView

Может потому что А и В это просто закрытие свечей с Дневного ТФа и они ну никак не могут пересекаться?)))  Скользящие у тебя n1 и n2

Offline

#24 10.08.2018 15:23:10

sheef
Участник
Зарегистрирован: 07.08.2018
Сообщений: 12

Re: Помощь со скриптами для TradingView

этот код с индюка, и он нормально отрисовывается, и выводит эти точки на график разными цветами
plot(cross(A, B) ? A : na, style = circles,color=C, linewidth = 5,title="DailyClose Cross")

а может тогда лучше сюда повесить можно алерт? здесь тоже меняется цвет у скользящей
plot(wma1,style=line,color=C,linewidth=4,title="MA1")

вот как выглядит на графике, http://joxi.ru/bmone8RUxleWWr  меняется цвет у скользящей и внизу или вверху появляется жирная точка с верхней строчки кода DailyClose Cross  там где А и В

Offline

#25 10.08.2018 16:11:33

wMEL
Участник
Зарегистрирован: 18.08.2016
Сообщений: 752

Re: Помощь со скриптами для TradingView

Ты хоть понимаешь что эта точка в лучшем случае 1 раз в день появляется?

Offline

Подвал доски

Форум BINGURU.NET