KEMBAR78
Boss Scalper Code | PDF | Software Engineering | Computer Programming
0% found this document useful (0 votes)
1K views2 pages

Boss Scalper Code

The document describes a trading strategy called the Chandelier Exit strategy. It uses an ATR-based method to determine stop losses and signals for entering long and short positions. Various inputs allow customizing the ATR period and multiplier as well as visual settings for the indicator.

Uploaded by

HemantGaur
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
1K views2 pages

Boss Scalper Code

The document describes a trading strategy called the Chandelier Exit strategy. It uses an ATR-based method to determine stop losses and signals for entering long and short positions. Various inputs allow customizing the ATR period and multiplier as well as visual settings for the indicator.

Uploaded by

HemantGaur
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 2

//@version=4

// Copyright BOSS SCALPER


// Chandelier Exit script may be freely distributed under the terms of the GPL-3.0
license.
study("BSCALPER", shorttitle="BOSS SCALPER", overlay=true)

length = input(title="ATR Period", type=input.integer, defval=1)


mult = input(title="ATR Multiplier", type=input.float, step=0.1, defval=1.85)
showLabels = input(title="Show Buy/Sell Labels ?", type=input.bool, defval=true)
useClose = input(title="Use Close Price for Extremums ?", type=input.bool,
defval=true)
highlightState = input(title="Highlight State ?", type=input.bool, defval=true)

atr = mult * atr(length)

longStop = (useClose ? highest(close, length) : highest(length)) - atr


longStopPrev = nz(longStop[1], longStop)
longStop := close[1] > longStopPrev ? max(longStop, longStopPrev) : longStop

shortStop = (useClose ? lowest(close, length) : lowest(length)) + atr


shortStopPrev = nz(shortStop[1], shortStop)
shortStop := close[1] < shortStopPrev ? min(shortStop, shortStopPrev) : shortStop

var int dir = 1


dir := close > shortStopPrev ? 1 : close < longStopPrev ? -1 : dir

var color longColor = color.green


var color shortColor = color.red

longStopPlot = plot(dir == 1 ? longStop : na, title="Long Stop",


style=plot.style_linebr, linewidth=2, color=longColor)
buySignal = dir == 1 and dir[1] == -1
plotshape(buySignal ? longStop : na, title="Long Stop Start",
location=location.absolute, style=shape.circle, size=size.tiny, color=longColor,
transp=0)
plotshape(buySignal and showLabels ? longStop : na, title="Buy Label", text="Buy",
location=location.absolute, style=shape.labelup, size=size.tiny, color=longColor,
textcolor=color.white, transp=0)

shortStopPlot = plot(dir == 1 ? na : shortStop, title="Short Stop",


style=plot.style_linebr, linewidth=2, color=shortColor)
sellSignal = dir == -1 and dir[1] == 1
plotshape(sellSignal ? shortStop : na, title="Short Stop Start",
location=location.absolute, style=shape.circle, size=size.tiny, color=shortColor,
transp=0)
plotshape(sellSignal and showLabels ? shortStop : na, title="Sell Label",
text="Sell", location=location.absolute, style=shape.labeldown, size=size.tiny,
color=shortColor, textcolor=color.white, transp=0)

midPricePlot = plot(ohlc4, title="", style=plot.style_circles, linewidth=0,


display=display.none, editable=false)

longFillColor = highlightState ? (dir == 1 ? longColor : na) : na


shortFillColor = highlightState ? (dir == -1 ? shortColor : na) : na
fill(midPricePlot, longStopPlot, title="Long State Filling", color=longFillColor)
fill(midPricePlot, shortStopPlot, title="Short State Filling",
color=shortFillColor)

changeCond = dir != dir[1]


alertcondition(changeCond, title="Alert: CE Direction Change", message="Chandelier
Exit has changed direction!")
alertcondition(buySignal, title="Alert: CE Buy", message="Chandelier Exit Buy!")
alertcondition(sellSignal, title="Alert: CE Sell", message="Chandelier Exit Sell!")

length1 = input(title="Length", type=input.integer, defval=32)


offset = input(title="Offset", type=input.integer, defval=0)
src1 = input(close, title="Source")
lsma = linreg(src1, length1, offset)
lsma2 = linreg(lsma, length1, offset)
eq= lsma-lsma2
zlsma = lsma+eq

plot(zlsma, color=color.yellow, linewidth=3)

You might also like