KevinUtecht

WatchlistTracker

40
Provides a picture of multiple companies in one chart. This method alerts you to possible trades without having to click through items in the Watchlist. The companies are hard coded so some editing is required to customize to items you watch.
开源脚本

本着真正的TradingView精神,该脚本的作者将其开源发布,以便交易者可以理解和验证它。为作者喝彩!您可以免费使用它,但在出版物中重复使用此代码受网站规则的约束。 您可以收藏它以在图表上使用。

免责声明

这些信息和出版物并不意味着也不构成TradingView提供或认可的金融、投资、交易或其它类型的建议或背书。请在使用条款阅读更多信息。

想在图表上使用此脚本?
study(title = "WatchlistTracker", overlay=false)

//
// globals
//
successCount = 3 // 3 or more successes
getPrepared = -0.3500
overSold = -0.4000
prepColor = navy
triggerColor = red
longColor = green
spacer = 24
shortlen = 13
longlen = 25

//
// inputs
//
bollngrLen = input(defval=20, type=integer, minval=1, maxval=300) 
bollngrMult = input(defval=2.5, type=float, minval=0.1, maxval=50)
macdFastLen = input(12, minval=1) 
macdSlowLen = input(26, minval=1)
macdSignalLen = input(9, minval=1)
stochLen = input(5, minval=1)
stochEntry = input(20, minval=1)
stochExit = input(80, minval=1)
rsiEntry = input(25, minval=1)
rsiExit = input(65, minval=1)
rsiLen = input(defval=13,type=integer,minval=1,maxval=300)

//
// functions
//
countSuccesses(bollngrSuccess, macdSuccess, stochSuccess, rsiSuccess) =>
    count = (bollngrSuccess ? 1 : 0) + (macdSuccess ? 1 : 0) + (stochSuccess ? 1 : 0) + (rsiSuccess ? 1 : 0)
    count


bollngrBasis(s) => sma(s, bollngrLen)
bollngrDev(s) => bollngrMult * stdev(s, bollngrLen)
bollngrLowr(s) => bollngrBasis(s) - bollngrDev(s)


macdFastMA(s) => ema(s, macdFastLen)
macdSlowMA(s) => ema(s, macdSlowLen)
macd(s) => macdFastMA(s) - macdSlowMA(s)
macdSignal(s) => sma(s, macdSignalLen)

stochVal(s) => stoch(s, high, low, stochLen)

rsiVal(s) => rsi(s,rsiLen)


//
// calculate long signals - over the last 6 ticks
//
longSignals = 0

bollngrLong(s,bl) => (lowest(s,1) < bl) or (lowest(s,2) < bl[1]) or (lowest(s,3) < bl[2])  or (lowest(s,4) < bl[3]) or (lowest(s,5) < bl[4]) or (lowest(s,6) < bl[5])

macdLong(macd,macds) => (macd[1] <= macds[1] and macd > macds) or (macd[2] <= macds[2] and macd[1] > macds[1]) or (macd[3] <= macds[3] and macd[2] > macds[2]) or (macd[4] <= macds[4] and macd[3] > macds) or (macd[5] <= macds[5] and macd[4] > macds[4]) or (macd[6] <= macds[6] and macd[5] > macds[5])

stochLong(stoc) => (stoc[1] <= stochEntry and stoc > stochEntry) or (stoc[2] <= stochEntry and stoc[1] > stochEntry) or (stoc[3] <= stochEntry and stoc[2] > stochEntry) or (stoc[4] <= stochEntry and stoc[3] > stochEntry) or (stoc[5] <= stochEntry and stoc[4] > stochEntry) or (stoc[6] <= stochEntry and stoc[5] > stochEntry)

rsiLong(r) => (r[1] <= rsiEntry and r > rsiEntry) or (r[2] <= rsiEntry and r[1] > rsiEntry) or (r[3] <= rsiEntry and r[2] > rsiEntry) or (r[4] <= rsiEntry and r[3] > rsiEntry) or (r[5] <= rsiEntry and r[4] > rsiEntry) or (r[6] <= rsiEntry and r[5] > rsiEntry)


hline(spacer, linestyle=dashed, color=white)

sym(s) => security(s, period, close)
step3(t) => (t <= getPrepared) ? prepColor : white
step2(t) => (t <= overSold) ? triggerColor : step3(t)
status(s, bl, macd, macds, stoc, r, t) => countSuccesses(bollngrLong(s,bl), macdLong(macd,macds), stochLong(stoc), rsiLong(r)) >= successCount ? longColor : step2(t)

s1 = sym("GLW")
tsi1 = tsi(s1, shortlen, longlen)
bl1 = bollngrLowr(s1)
macd1 = macd(s1)
macds1 = macd(s1)
stoc1 = stochVal(s1)
rsi1 = rsiVal(s1)
plot(1,color=status(s1,bl1,macd1,macds1,stoc1,rsi1,tsi1),style=circles,linewidth=2)

s2 = sym("UA")
tsi2 = tsi(s2, shortlen, longlen)
bl2 = bollngrLowr(s2)
macd2 = macd(s2)
macds2 = macd(s2)
stoc2 = stochVal(s2)
rsi2 = rsiVal(s2)
plot(2,color=status(s2,bl2,macd2,macds2,stoc2,rsi2,tsi2),style=circles,linewidth=2)

s3 = sym("HPQ")
tsi3 = tsi(s3, shortlen, longlen)
bl3 = bollngrLowr(s3)
macd3 = macd(s3)
macds3 = macd(s3)
stoc3 = stochVal(s3)
rsi3 = rsiVal(s3)
plot(3,color=status(s3,bl3,macd3,macds3,stoc3,rsi3,tsi3),style=circles,linewidth=2)

s4 = sym("TWTR")
tsi4 = tsi(s4, shortlen, longlen)
bl4 = bollngrLowr(s4)
macd4 = macd(s4)
macds4 = macd(s4)
stoc4 = stochVal(s4)
rsi4 = rsiVal(s4)
plot(4,color=status(s4,bl4,macd4,macds4,stoc4,rsi4,tsi4),style=circles,linewidth=2)

s5 = sym("NKE")
tsi5 = tsi(s5, shortlen, longlen)
bl5 = bollngrLowr(s5)
macd5 = macd(s5)
macds5 = macd(s5)
stoc5 = stochVal(s5)
rsi5 = rsiVal(s5)
plot(5,color=status(s5,bl5,macd5,macds5,stoc5,rsi5,tsi5),style=circles,linewidth=2)

s6 = sym("YHOO")
tsi6 = tsi(s6, shortlen, longlen)
bl6 = bollngrLowr(s6)
macd6 = macd(s6)
macds6 = macd(s6)
stoc6 = stochVal(s6)
rsi6 = rsiVal(s6)
plot(6,color=status(s6,bl6,macd6,macds6,stoc6,rsi6,tsi6),style=circles,linewidth=2)

s7 = sym("BMY")
tsi7 = tsi(s7, shortlen, longlen)
bl7 = bollngrLowr(s7)
macd7 = macd(s7)
macds7 = macd(s7)
stoc7 = stochVal(s7)
rsi7 = rsiVal(s7)
plot(7,color=status(s7,bl7,macd7,macds7,stoc7,rsi7,tsi7),style=circles,linewidth=2)

s8 = sym("STJ")
tsi8 = tsi(s8, shortlen, longlen)
bl8 = bollngrLowr(s8)
macd8 = macd(s8)
macds8 = macd(s8)
stoc8 = stochVal(s8)
rsi8 = rsiVal(s8)
plot(8,color=status(s8,bl8,macd8,macds8,stoc8,rsi8,tsi8),style=circles,linewidth=2)

s9 = sym("GPRO")
tsi9 = tsi(s9, shortlen, longlen)
bl9 = bollngrLowr(s9)
macd9 = macd(s9)
macds9 = macd(s9)
stoc9 = stochVal(s9)
rsi9 = rsiVal(s9)
plot(9,color=status(s9,bl9,macd9,macds9,stoc9,rsi9,tsi9),style=circles,linewidth=2)

s10 = sym("MDT")
tsi10 = tsi(s10, shortlen, longlen)
bl10 = bollngrLowr(s10)
macd10 = macd(s10)
macds10 = macd(s10)
stoc10 = stochVal(s10)
rsi10 = rsiVal(s10)
plot(10,color=status(s10,bl10,macd10,macds10,stoc10,rsi10,tsi10),style=circles,linewidth=2)

s11 = sym("NXPI")
tsi11 = tsi(s11, shortlen, longlen)
bl11 = bollngrLowr(s11)
macd11 = macd(s11)
macds11 = macd(s11)
stoc11 = stochVal(s11)
rsi11 = rsiVal(s11)
plot(11,color=status(s11,bl11,macd11,macds11,stoc11,rsi11,tsi11),style=circles,linewidth=2)

s12 = sym("SBUX")
tsi12 = tsi(s12, shortlen, longlen)
bl12 = bollngrLowr(s12)
macd12 = macd(s12)
macds12 = macd(s12)
stoc12 = stochVal(s12)
rsi12 = rsiVal(s12)
plot(12,color=status(s12,bl12,macd12,macds12,stoc12,rsi12,tsi12),style=circles,linewidth=2)

s13 = sym("CELG")
tsi13 = tsi(s13, shortlen, longlen)
bl13 = bollngrLowr(s13)
macd13 = macd(s13)
macds13 = macd(s13)
stoc13 = stochVal(s13)
rsi13 = rsiVal(s13)
plot(13,color=status(s13,bl13,macd13,macds13,stoc13,rsi13,tsi13),style=circles,linewidth=2)

s14 = sym("BABA")
tsi14 = tsi(s14, shortlen, longlen)
bl14 = bollngrLowr(s14)
macd14 = macd(s14)
macds14 = macd(s14)
stoc14 = stochVal(s14)
rsi14 = rsiVal(s14)
plot(14,color=status(s14,bl14,macd14,macds14,stoc14,rsi14,tsi14),style=circles,linewidth=2)

s15 = sym("AAPL")
tsi15 = tsi(s15, shortlen, longlen)
bl15 = bollngrLowr(s15)
macd15 = macd(s15)
macds15 = macd(s15)
stoc15 = stochVal(s15)
rsi15 = rsiVal(s15)
plot(15,color=status(s15,bl15,macd15,macds15,stoc15,rsi15,tsi15),style=circles,linewidth=2)