Pine Script collection
Ir al canal en Telegram
I don't know the copyright of these scripts. Just collected for testing and educational purposes Use at your own risk I don't accept any responsibility...
Mostrar másEl país no está especificadoLa categoría no está especificada
2 310
Suscriptores
Sin datos24 horas
Sin datos7 días
Sin datos30 días
Archivo de publicaciones
//@version=2
//Name: Price Action Channel Trading System v0.3 by JustUncleL
//Created By: JustUncleL on 3 Aug 2016
//Version: 0.3
//
study(title="Price Action Trading System v0.3 by JustUncleL",overlay = true, shorttitle="CCIPAT v0.3 by JustUncleL")
//
len = input(14, minval=1, title="CCI Length")
lenUpper = input(75, minval=1, title="CCI UpLevel")
lenLower = input(-75, maxval=-1, title="CCI DownLevel")
bars_on = input(true, title="Color CCI Bars")
src = input(close,title="CCI Source")
lenLo = input(5, minval=2, title="Low Channel Length")
lenHi = input(5, minval=2, title="High Channel Length")
lenMe = input(4, minval=1, title="Median Channel Length")
//
fastLength = input(12, minval=1,title="MACD Fast Length")
slowLength=input(17,minval=1,title="MACD Slow Length")
signalLength=input(8,minval=1,title="MACD Signal Length")
//
rsiLen = input(7,minval=2,title="RSI length")
rsiUpper= input(70,minval=50,maxval=100,title="RSI Upper limit")
rsiLower= input(30,maxval=50,minval=0,title="RSI Lower Limit")
//
filterM = input(true,title="Use MACD confilter filter")
filterR = input(true,title="Use RSI confirm filter")
filterE = input(true,title="Use Trend direction filter")
dCandles= input(4,minval=2,title="Direction test Candles")
//
rsiVal = rsi(src,rsiLen)
//
// Calculate MACD and color background
fastMC = ema(src, fastLength)
slowMC = ema(src, slowLength)
macd = fastMC - slowMC
signal = sma(macd, signalLength)
OutputSignal = signal > macd ? 1 : signal < macd ? -1 : 0
bgcolor(OutputSignal>0?red: OutputSignal<0?green:yellow, transp=90)
plot(slowMC,color=blue,transp=0,title="Slow EMA trend line", linewidth=2)
// Calculate and draw the Price Action channel
emaLo = ema(low,lenLo)
emaHi = ema(high,lenHi)
emaMe = ema(hl2,lenMe)
plot(emaLo,title="Low Price Line",style=line,color=gray,transp=0,linewidth=2)
plot(emaHi,title="High Price Line",style=line,color=gray,transp=0,linewidth=2)
plot(emaMe,title="Median Price Line",style=line,color=orange,transp=0,linewidth=2)
// Calculate CCI
cciVal = cci(src, len)
// Calculate CCI indicating continuance of trend.
isup = cciVal > lenUpper
isdown = cciVal < lenLower
barcolor(bars_on ? isup ? aqua : isdown ? black : na : na )
// Check have alert and use MACD filter
cciup_alert = isup and close>open and (not filterR or rsiVal>rsiUpper) and (not filterM or OutputSignal<0) and
(not filterE or (emaMe>slowMC and rising(slowMC,dCandles))) ? na(cciup_alert[1]) ? 1 : cciup_alert[1]+1 : 0
ccidn_alert = isdown and close<open and (not filterR or rsiVal<rsiLower) and (not filterM or OutputSignal>0) and
(not filterE or (emaMe<slowMC and falling(slowMC,dCandles))) ? na(ccidn_alert[1]) ? 1 : ccidn_alert[1]+1 : 0
//
plotshape(cciup_alert==1? cciup_alert : na, title="CCIPAT Up Arrow", style=shape.triangleup,location=location.belowbar, color=olive, transp=0, size=size.small)
plotshape(ccidn_alert==1? ccidn_alert : na, title="CCIPAT Down Arrow", style=shape.triangledown,location=location.abovebar, color=red, transp=0, size=size.small)
// generate an alert if required.
alertcondition(cciup_alert==1 or ccidn_alert==1, title="CCIPAT Alert", message="CCIPAT Alert")
//EOFDescription:
This is an implementation of 'Price Action Channel, “The Gold line” Trading System'
for Binary Options, originally a scapling system, but without the MA cross "Arrow1".
This is a Trend following price action system.
To complete the setup instead of the two "Chandelier Stop" indications,
I replaced them with a MACD(12,17,8) indicator.
This is suitable for 15min charts, with 2 to 4 candle (30min to 60min) expiry.
Call Entry:
- Green Triangle, confirmed by MACD background green.
- CCI Candles aqua.
- For best call entry wait for the price retrace back to the gold line,
back inside channel also works well.
Put Entry:
- Red Triangle, confirmed by MACD background red.
- CCI Candles black.
- For best put entry wait for the price retrace on the gold line,
back inside channel also works well.
Notes:
- will work well on trending patterns only.
- works best on the first alert after MACD cross over.
- don't take trades when MACD and signal are close together.
- don't trade when channel and slow MA are flat or close together or
chopper (yellow and blue MA cross over quickly over short period).
Modifications:
0.3 : Added optional filters for trend direction from MACD slow EMA(17)
and also RSI(7) filter.
Some corrections:
- input for lenLower minval=1 should be maxval=-1
- one bar pullback did not reset trigger, missing some alerts
0.2 : Use MACD instead of Chandelier Stop for filtering, giving
a simplier looking chart.
0.1 : Original version.
reference:
- Chandelier Stop by pipCharlie (not used in this version)
- http:www.forexstrategiesresources.com/scalping-forex-strategies/73-price-action-channel-the-gold-line/
- Used some ideas from RSI Candles by glaz
//@version=3
study(title="CM_Ultimate RSI MTF", shorttitle="CM_Ult_RSI_MTF", precision=0)
src = close
len = input(14, minval=1, title="Length")
upLine = input(70, minval=50, maxval=90, title="Upper Line Value?")
lowLine = input(30, minval=10, maxval=50, title="Lower Line Value?")
sml = input(true, title="Show Mid Line?")
sbh = input(true, title="Show Back Ground Highlights When RSI is Above/Below High/Low Lines?")
sch = input(true, title="Show Back Ground Highlights When RSI Cross?")
sl = input(true, title="Show 'B' and 'S' Letters When RSI Crosses High/Low Line?")
useCurrentRes = input(true, title="Use Current Chart Resolution?")
resCustom = input(title="Use Different Timeframe? Uncheck Box Above", type=resolution, defval="60")
ssRSI = input(false, title="Show 2nd RSI?")
resCustom2 = input(title="Use 2nd RSI? Check Box Above", type=resolution, defval="D")
useCurrentRes2 = input(false, title="Use 2nd RSI Plot On Samet Timeframe?")
len2 = input(14, minval=1, title="2nd RSI Length")
res = useCurrentRes ? period : resCustom
res2 = useCurrentRes2 ? period : resCustom2
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))
outRSI = security(tickerid, res, rsi)
up2 = rma(max(change(src), 0), len2)
down2 = rma(-min(change(src), 0), len2)
rsi2 = down2 == 0 ? 100 : up2 == 0 ? 0 : 100 - (100 / (1 + up2 / down2))
outRSI2 = security(tickerid, res2, rsi2)
aboveLine = outRSI > upLine ? 1 : 0
belowLine = outRSI < lowLine ? 1 : 0
crossUp = outRSI[1] < lowLine and outRSI > lowLine ? 1 : 0
crossDn = outRSI[1] > upLine and outRSI < upLine ? 1 : 0
bgcolor(sbh and aboveLine ? red : na, transp=70)
bgcolor(sbh and belowLine ? green : na, transp=70)
bgcolor(sch and crossUp ? lime : na, transp=40)
bgcolor(sch and crossDn ? red : na, transp=40)
plot(outRSI, title="RSI", style=line, linewidth=3, color=aqua)
plot(ssRSI and outRSI2 ? outRSI2 : na, title="2nd RSI - Different Time Frame?", style=linebr, linewidth=4, color=orange)
p1 = plot(upLine, title= "Upper Line", style=solid, linewidth=3, color=red)
p2 = plot(lowLine, title= "Lower Line", style=solid, linewidth=3, color=lime)
plot(sml and 50 ? 50 : na, title="Mid Line", style=linebr, linewidth=2, color=gray)
plotchar(sl and crossUp ? crossUp : na, title="Buy Signal", char='B', location=location.bottom, color=lime, transp=0, offset=0)
plotchar(sl and crossDn ? crossDn : na, title="Sell Signal", char='S', location=location.top, color=red, transp=0, offset=0)
fill(p1, p2, color=silver, transp=70)//@version=3
study(title="daily high low close Levels", overlay=true)
timeFrame = input(defval="D", title="Interval:", options=["D", "240", "60"])
mydhigh = security(tickerid, timeFrame , high)
mydlow = security(tickerid, timeFrame, low)
mydclose = security(tickerid, timeFrame, close)
plot(mydhigh, color=#00ff00, linewidth=2)
plot(mydlow, color=#ff0000, linewidth=2)
plot(mydclose, color=#000000, linewidth=2)//@version=4
study(title="multiple moving average with period", shorttitle="MMAP", overlay=true)
showlastSR = input(title = "Show Only Last Period SR", defval = true)
inputTF=input("12M")
islastSR = showlastSR ? security(syminfo.tickerid, inputTF, barstate.islast, lookahead = true) : true
SMA_EMA = input(true, "sma/ema")
len = input(14, minval=1, title="Length")
src = input(close, title="Source")
out = sma(src, len)
outE = ema(src, len)
plot(islastSR ? (SMA_EMA ? out : outE):na, color=color.purple, title="plot 1", linewidth=1)
SMA_EMA1 = input(true, "sma/ema")
len1 = input(21, minval=1, title="Length")
src1 = input(close, title="Source")
out1 = sma(src1, len1)
outE1 = ema(src1, len1)
plot(islastSR ? (SMA_EMA1 ? out1 : outE1):na, color=color.olive, title="plot 2", linewidth=2)
SMA_EMA2 = input(true, "sma/ema")
len2 = input(35, minval=1, title="Length")
src2 = input(close, title="Source")
out2 = sma(src2, len2)
outE2 = ema(src2, len2)
plot(islastSR ? (SMA_EMA2 ? out2 : outE2):na, color=color.teal, title="plot 3", linewidth=2)
SMA_EMA3 = input(true, "sma/ema")
len3 = input(50, minval=1, title="Length")
src3 = input(close, title="Source")
out3 = sma(src3, len3)
outE3 = ema(src3, len3)
plot(islastSR ? (SMA_EMA3 ? out3 : outE3):na, color=color.yellow, title="MA Fast", linewidth=2)
SMA_EMA4 = input(true, "sma/ema")
len4 = input(100, minval=1, title="Length")
src4 = input(close, title="Source")
out4 = sma(src4, len4)
outE4 = ema(src4, len4)
plot(islastSR ? (SMA_EMA4 ? out4 : outE4):na, color=color.red, title="MA Medium", linewidth=3)
SMA_EMA5 = input(true, "sma/ema")
len5 = input(200, minval=1, title="Length")
src5 = input(close, title="Source")
out5 = sma(src5, len5)
outE5 = ema(src5, len5)
plot(islastSR ? (SMA_EMA5 ? out5 : outE5):na, color=color.blue, title="MA Slow", linewidth=3)// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © Montdouan-De-Sprimont
study("ADX and DI With Coloured Histogram BUY/SELL")
len = input(title="Length", type=integer, defval=14)
TrueRange = max(max(high-low, abs(high-nz(close[1]))), abs(low-nz(close[1])))
DirectionalMovementPlus = high-nz(high[1]) > nz(low[1])-low ? max(high-nz(high[1]), 0): 0
DirectionalMovementMinus = nz(low[1])-low > high-nz(high[1]) ? max(nz(low[1])-low, 0): 0
SmoothedTrueRange = nz(SmoothedTrueRange[1]) - (nz(SmoothedTrueRange[1])/len) + TrueRange
SmoothedDirectionalMovementPlus = nz(SmoothedDirectionalMovementPlus[1]) - (nz(SmoothedDirectionalMovementPlus[1])/len) + DirectionalMovementPlus
SmoothedDirectionalMovementMinus = nz(SmoothedDirectionalMovementMinus[1]) - (nz(SmoothedDirectionalMovementMinus[1])/len) + DirectionalMovementMinus
DIPlus = SmoothedDirectionalMovementPlus / SmoothedTrueRange * 100
DIMinus = SmoothedDirectionalMovementMinus / SmoothedTrueRange * 100
DX = abs(DIPlus-DIMinus) / (DIPlus+DIMinus)*100
ADX = sma(DX, len)
ColorBuy=color(green,0)
ColorSell=color(red,0)
ColorDoNothing=color(yellow,60)
plot(DIPlus, color=green, title="DI+",linewidth=3,style=line)
plot(DIMinus, color=red, title="DI-",linewidth=3,style=line)
plot(ADX, color=(ADX>DIMinus and DIPlus>DIMinus and ADX > ADX[1]? ColorBuy : (ADX>DIPlus and DIMinus>DIPlus and ADX > ADX[1] ? ColorSell:ColorDoNothing)),title="ADX",style=columns)//@version=4
study("Leo_Amit ATM",overlay=true,max_bars_back=5000)
showEMA9 = input(title="Show EMA-9", type=input.bool, defval=false)
showEMA20 = input(title="Show EMA-20", type=input.bool, defval=true)
showSMA20 = input(title="Show SMA -20", type=input.bool, defval=false)
showSMA50 = input(title="Show SMA-50", type=input.bool, defval=true)
//Basic
candle90 = (max(open, close) - min(open, close)) / (high - low) >= 0.80
//plotchar(candle90, char = "", location = location.belowbar)
plotshape(candle90, style=shape.triangleup, location=location.belowbar)
length = input(20,group='Basic Settings'
,tooltip='Pivot length. Use higher values for having lines connected to more significant pivots')
lookback = input(10,minval=1,group='Basic Settings'
,tooltip='Number of lines connecting a pivot high/low to display')
Slope = input(0.,minval=-1,maxval=1,step=0.1,group='Basic Settings'
,tooltip='Allows to multiply the linear regression slope by a number within -1 and 1')
//Style
ph_col = input(#00E676,'Pivot High Lines Color',group='Line Colors')
pl_col = input(#ff1100,'Pivot Low Lines Color',group='Line Colors')
//──────────────────────────────────────────────────────────────────────────────
Sma(src,p) => a = cum(src), (a - a[max(p,0)])/max(p,0)
Variance(src,p) => p == 1 ? 0 : Sma(src*src,p) - pow(Sma(src,p),2)
Covariance(x,y,p) => Sma(x*y,p) - Sma(x,p)*Sma(y,p)
//──────────────────────────────────────────────────────────────────────────────
n = bar_index
ph = pivothigh(length,length)
pl = pivotlow(length,length)
//──────────────────────────────────────────────────────────────────────────────
varip ph_array = array.new_float(0)
varip pl_array = array.new_float(0)
varip ph_n_array = array.new_int(0)
varip pl_n_array = array.new_int(0)
if ph
array.insert(ph_array,0,ph)
array.insert(ph_n_array,0,n)
if pl
array.insert(pl_array,0,pl)
array.insert(pl_n_array,0,n)
//──────────────────────────────────────────────────────────────────────────────
val_ph = valuewhen(ph,n-length,lookback-1)
val_pl = valuewhen(pl,n-length,lookback-1)
val = min(val_ph,val_pl)
k = n - val > 0 ? n - val : 2
slope = Covariance(close,n,k)/Variance(n,k)*Slope
var line ph_l = na,var line pl_l = na
if barstate.islast
for i = 0 to lookback-1
ph_y2 = array.get(ph_array,i),ph_x1 = array.get(ph_n_array,i)-length
pl_y2 = array.get(pl_array,i),pl_x1 = array.get(pl_n_array,i)-length
ph_l := line.new(ph_x1,ph_y2,ph_x1+1,ph_y2+slope,extend=extend.right,color=ph_col)
pl_l := line.new(pl_x1,pl_y2,pl_x1+1,pl_y2+slope,extend=extend.right,color=pl_col)
EMA9_Len = input(9, minval=1, title="EMA9_Length")
EMA9_out = ema(close, EMA9_Len)
plot(showEMA9 ? EMA9_out:na, title="EMA9", color=color.yellow, offset=0)
EMA20_Len = input(20, minval=1, title="EMA20_Length")
EMA20_out = ema(close, EMA20_Len)
plot(showEMA20 ? EMA20_out:na, title="EMA20", color=color.lime, offset=0)
SMA20_Len = input(20, minval=1, title="SMA20_Length")
SMA20_out = sma(close, SMA20_Len)
plot(showSMA20 ? SMA20_out:na, title="SMA20", color=color.lime, offset=0)
SMA50_Len = input(50, minval=1, title="SMA50_Length")
SMA50_out = sma(close, SMA50_Len)
plot(showSMA50 ? SMA50_out:na, title="SMA50", color=color.red, offset=0)//@version=2
study(title = "Smoothed Heiken Ashi Candles", shorttitle="Smoothed Ha Candles", overlay=true)
len=input(10)
o=ema(open,len)
c=ema(close,len)
h=ema(high,len)
l=ema(low,len)
haclose = (o+h+l+c)/4
haopen = na(haopen[1]) ? (o + c)/2 : (haopen[1] + haclose[1]) / 2
hahigh = max (h, max(haopen,haclose))
halow = min (l, min(haopen,haclose))
len2=input(10)
o2=ema(haopen, len2)
c2=ema(haclose, len2)
h2=ema(hahigh, len2)
l2=ema(halow, len2)
col=o2>c2 ? red : lime
plotcandle(o2, h2, l2, c2, title="heikin smoothed", color=col)