ChartArt

Fisher Transform of On Balance Volume (by ChartArt)

A simple mash-up of the On Balance Volume (OBV) indicator with the Fisher Transform indicator (blue) with the classic Fisher Transform signal trigger (silver color), plus a linear regression as a second signal line (red).

I recommend to use a period for the linear regression which has the same speed or is slower than the period of the Fisher Transform to avoid overshooting.

P.S. Here are three areas where the indicator worked quite good on historic charts


Script open-source

Dans le véritable esprit de TradingView, l'auteur de ce script l'a publié en open-source, afin que les traders puissent le comprendre et le vérifier. Bravo à l'auteur! Vous pouvez l'utiliser gratuitement, mais la réutilisation de ce code dans une publication est régie par le règlement. Vous pouvez le mettre en favori pour l'utiliser sur un graphique.

Clause de non-responsabilité

Les informations et les publications ne sont pas destinées à être, et ne constituent pas, des conseils ou des recommandations en matière de finance, d'investissement, de trading ou d'autres types de conseils fournis ou approuvés par TradingView. Pour en savoir plus, consultez les Conditions d'utilisation.

Vous voulez utiliser ce script sur un graphique ?
study(title="Fisher Transform of On Balance Volume", shorttitle="CA_-_Fisher_of_OBV")

// version 1.0
// idea by ChartArt on April 8, 2015
// using TradingView indicators 'Fisher Transform' and 'On Balance Volume'
// (this indicator only works with symbols where volume data is available)
// list of my work: 
// https://www.tradingview.com/u/ChartArt/

//On Balance Volume
src = close
obv = cum(change(src) > 0 ? volume : change(src) < 0 ? -volume : 0*volume)

//Fisher Transform of OBV
len = input(12, minval=2, title="Period of Fisher Transform of OBV")
high_ = highest(obv, len)
low_ = lowest(obv, len)
round_(val) => val > .99 ? .999 : val < -.99 ? -.999 : val
value = round_(.66 * ((obv - low_) / max(high_ - low_, .001) - .5) + .67 * nz(value[1]))
fish1 = .5 * log((1 + value) / max(1 - value, .001)) + .5 * nz(fish1[1])
signallen = input(12, title="Linear Regression Signal Line Period")
signal = linreg(fish1,signallen,0)

fish2 = fish1[1]
plot(fish2, color=silver, title="Fast Signal Line")
plot(fish1, color=blue, title="Fisher Transform of OBV")
plot(signal,color=red, title="Linear Regression Signal Line")
hline(0, color=maroon)