TradingView
marketmusician
4 Okt 2021 pukul 16.35

DSI - Dynamic Strength Index  

Bitcoin / United States DollarCoinbase

Huraian

The DSI is a volume weighted momentum indicator similar but superior to the traditional RSI.

The DSI algorithm takes values for RSI, MFI, OBV and stochastics, then gives them each a different weighting depending on their historic reliability in different market conditions, and then averages out the values.

This results in a very reliable, noise-free momentum indicator, especially reliable on high timeframes.

Further features include:

Auto Trendlines - Up-downtrend lines to show support, resistance and breakouts
Supertrend- A momentum (ATR based) version of the Supertrend.
Divergences - Bullish and bearish momentum divergences, with confirmation signals.

General Rules:

Bullish above 50
Bearish below 50

Enjoy!

MM
Komen
TheLuckyOnes
Extraordinary contribution, super complete and impeccable, thanks for sharing it!
ajtkr5
@MaxReneVG, //@version=4
study("DSI - Dynamic Strength Index", overlay=true)

// Inputs
rsiLength = input(14, minval=1)
mfiLength = input(14, minval=1)
obvLength = input(14, minval=1)
stochLength = input(14, minval=1)

// Weights for each component
rsiWeight = input(0.25, minval=0, maxval=1)
mfiWeight = input(0.25, minval=0, maxval=1)
obvWeight = input(0.25, minval=0, maxval=1)
stochWeight = input(0.25, minval=0, maxval=1)

// Calculate components
rsi = rsi(close, rsiLength)
mfi = mfi(high, low, close, volume, mfiLength)
obv = obv(close, volume, obvLength)
stoch = stoch(high, low, close, fastk=stochLength, fastd=3)

// Calculate DSI
dsi = (rsi * rsiWeight) + (mfi * mfiWeight) + (obv * obvWeight) + (stoch * stochWeight)

// Plot DSI
plot(dsi, color=orange, linewidth=2)

// Trendlines and divergences
autoTrendLength = input(10, minval=1)

upTrend = sma(dsi, autoTrendLength)
downTrend = sma(dsi, autoTrendLength)

// Supertrend
atrLength = input(14, minval=1)
atrMultiplier = input(3.0, minval=0)

supertrend = (high + low) / 2 + atrMultiplier * atr(atrLength)

// Bullish divergences
plotshape(dsi > dsi[1] and dsi > upTrend and dsi[1] <= upTrend, shape=triangleup, color=green, location=location.abovebar)

// Bearish divergences
plotshape(dsi < dsi[1] and dsi < downTrend and dsi[1] >= downTrend, shape=triangledown, color=red, location=location.belowbar)

// Trendlines
plot(upTrend, color=green, linewidth=2)
plot(downTrend, color=red, linewidth=2)

// Supertrend
plot(supertrend, color=purple, linewidth=2)
TheLuckyOnes
@ajtkr5, Thank you !!!
UnderdogR
great one. congrats and thank you. but i don't get why the indicator put a bullish rocket symbol and why not put a bearish one. do you mind if i ask whether it relates dsi in cryptostatistical's linear momentum indicator? thanks again.
UnderdogR
@UnderdogR, probably one of the most underrated oscillator on tv. especially works great in HTF. one can grasp an alpha, if dives into it.
Lebih