admin

Volatility Stop

9203 14 1341
The Volatility Stop Indicator is able to define the current trend. When a downward trend is determined a red line above the prices bars is plotted; when an upward trend is determined a green line below the prices bars is plotted. These lines are generally used as trailing stops. The Volatility Stop Indicator is more used as an exit tool than an entry tool. When the price crosses the VStop value, the trend reverses and VStop moves to the other side of price.

We'd like to present you VStop indicator written in Pine Script. Please notice new Pine Script features used in this indicator: variables max_, min_, is_uptrend, vstop. We may refer to previous values of the indicator in the source code (e.g. vstop, is a vstop value on the previous bar) before the actual vstop variable definition. Enjoy and leave your comments!
Remove from Favorite Scripts Add to Favorite Scripts
study("Volatility Stop", shorttitle="VStop", overlay=true)
length = input(20)
mult = input(2)
atr_ = atr(length)
max1 = max(nz(max_[1]), close)
min1 = min(nz(min_[1]), close)
is_uptrend_prev = nz(is_uptrend[1], true)
stop = is_uptrend_prev ? max1 - mult * atr_ : min1 + mult * atr_
vstop_prev = nz(vstop[1])
vstop1 = is_uptrend_prev ? max(vstop_prev, stop) : min(vstop_prev, stop)
is_uptrend = close - vstop1 >= 0
is_trend_changed = is_uptrend != is_uptrend_prev
max_ = is_trend_changed ? close : max1
min_ = is_trend_changed ? close : min1
vstop = is_trend_changed ? is_uptrend ? max_ - mult * atr_ : min_ + mult * atr_ : vstop1
plot(vstop, color = is_uptrend ? green : red, style=cross, linewidth=2)
http://www.tradingview.com :)
hi, could you please show me how to create an ALERT on tradingview for this code? I'm combing this with an RSI for entry and exits
+1 Reply
You need to pre-declare variables in version 3. The below will work

//@version=3
study("Volatility Stop Custom", shorttitle="VStop", overlay=true)

length = input(20)
mult = input(2)

atr_ = atr(length)

max_ = 0.0
min_ = 0.0

is_uptrend = false
is_uptrend_prev = false
stop = 0.0
vstop = 0.0
vstop1 =0.0
vstop_prev = 0.0
is_trend_changed = false


max1 = max(nz(max_), close)
min1 = min(nz(min_), close)

is_uptrend_prev := nz(is_uptrend, true)
stop := is_uptrend_prev ? max1 - mult * atr_ : min1 + mult * atr_
vstop_prev := nz(vstop)
vstop1 := is_uptrend_prev ? max(vstop_prev, stop) : min(vstop_prev, stop)
is_uptrend := close - vstop1 >= 0
is_trend_changed := is_uptrend != is_uptrend_prev

max_ := is_trend_changed ? close : max1
min_ := is_trend_changed ? close : min1

vstop := is_trend_changed ? is_uptrend ? max_ - mult * atr_ : min_ + mult * atr_ : vstop1
plot(vstop, color = is_uptrend ? green : red, style=cross, linewidth=2)
+1 Reply
BobHoward21 BobHoward21
@BobHoward21, Oops, forgot tradingview strips out square brackets. Correct version can be found here
+1 Reply
hi
can you please convert this script to //@version=3
+2 Reply
@anilpune,

//@version=3
study("Volatility Stop Custom", shorttitle="VStop", overlay=true)

length = input(20)
mult = input(2)

atr_ = atr(length)

max_ = 0.0
min_ = 0.0

is_uptrend = false
is_uptrend_prev = false
stop = 0.0
vstop = 0.0
vstop1 =0.0
vstop_prev = 0.0
is_trend_changed = false


max1 = max(nz(max_), close)
min1 = min(nz(min_), close)

is_uptrend_prev := nz(is_uptrend, true)
stop := is_uptrend_prev ? max1 - mult * atr_ : min1 + mult * atr_
vstop_prev := nz(vstop)
vstop1 := is_uptrend_prev ? max(vstop_prev, stop) : min(vstop_prev, stop)
is_uptrend := close - vstop1 >= 0
is_trend_changed := is_uptrend != is_uptrend_prev

max_ := is_trend_changed ? close : max1
min_ := is_trend_changed ? close : min1

vstop := is_trend_changed ? is_uptrend ? max_ - mult * atr_ : min_ + mult * atr_ : vstop1
plot(vstop, color = is_uptrend ? green : red, style=cross, linewidth=2)
Reply
@anilpune, Oops, forgot tradingview strips out square brackets. Correct version can be found here
Reply
I happened to add a compiler directive "//@version=3" prior to the "study" line and it won't compile.
When I removed the compiler directive, it works!
Just wondering why ... the inquiring mind would like to know ...
Reply
Trailing Stops? Over the last 4 months he was quite the "leading" indicator for the top currency pairs, including DYX. Whatever you're doing, do not stop!
Reply
what's a strategy for using this ind?
Reply
Thank you!!!
+1 Reply
EN English
EN English (UK)
EN English (IN)
DE Deutsch
FR Français
ES Español
IT Italiano
PL Polski
SV Svenska
TR Türkçe
RU Русский
PT Português
ID Bahasa Indonesia
MS Bahasa Melayu
TH ภาษาไทย
VI Tiếng Việt
JA 日本語
KO 한국어
ZH 简体中文
ZH 繁體中文
AR العربية
Home Stock Screener Forex Signal Finder Cryptocurrency Signal Finder Economic Calendar How It Works Chart Features House Rules Moderators Website & Broker Solutions Widgets Stock Charting Library Feature Request Blog & News FAQ Help & Wiki Twitter
Profile Profile Settings Account and Billing My Support Tickets Contact Support Ideas Published Followers Following Private Messages Chat Sign Out