RicardoSantos

[RS]Trade System 002 Oscilator V1

EXPERIMENTAL: Multiple indicator Analysis
Script open-source

Nello spirito di condivisione promosso da TradingView, l'autore (al quale vanno i nostri ringraziamenti) ha deciso di pubblicare questo script in modalità open-source, così che chiunque possa comprenderlo e testarlo. Puoi utilizzarlo gratuitamente, ma il riutilizzo del codice è subordinato al rispetto del Regolamento. Per aggiungerlo al grafico, mettilo tra i preferiti.

Declinazione di responsabilità

Le informazioni ed i contenuti pubblicati non costituiscono in alcun modo una sollecitazione ad investire o ad operare nei mercati finanziari. Non sono inoltre fornite o supportate da TradingView. Maggiori dettagli nelle Condizioni d'uso.

Vuoi usare questo script sui tuoi grafici?
study(title="[RS]Trade System 002 Oscilator V1", shorttitle="[RS]TS002O.V1", overlay=false)
//  ||---   Input:
useHA = input(true)
smooth = input(1)
src = avg(highest(max(open,close), 4), lowest(min(open,close), 4))//input(open)
//  ||---   Globals:
_s = useHA ? security(heikenashi(tickerid), period, src) : src
smooth_price = sma(_s, smooth)
transp_value = 90
//  ||---   Sequencer Signal
sequenceLimiter = 5
shortSequence = smooth_price < smooth_price[1] ? nz(shortSequence[1])+1 : 0
longSequence = smooth_price > smooth_price[1] ? nz(longSequence[1])+1 : 0
s_con = shortSequence > 0//(longSequence[1] >= sequenceLimiter and shortSequence > 0)
b_con = longSequence > 0//(shortSequence[1] >= sequenceLimiter and longSequence > 0)
SequenceSignal = b_con ? 1 : s_con ? -1 : 0
//  ||---   RSI Signal:
_rsi = rsi(smooth_price, 50)
s_con_01 = _rsi < 45
b_con_01 = _rsi > 55
RSISignal = b_con_01 ? 1 : s_con_01 ? -1 : 0
//  ||---   CCI Signal:
_cci = cci(smooth_price, 100)
s_con_02 = _cci < 0
b_con_02 = _cci > 0
CCISignal = b_con_02 ? 1 : s_con_02 ? -1 : 0
//  ||---   Momentum Signal:
_mom = mom(smooth_price, 50)
s_con_03 = _mom < 0
b_con_03 = _mom > 0
MOMSignal = b_con_03 ? 1 : s_con_03 ? -1 : 0
//  ||---   Fast MA oscilator Signal:
_fast_ma_str = smooth_price-sma(smooth_price, 12)
s_con_04 = _fast_ma_str < 0
b_con_04 = _fast_ma_str > 0
XMA1Signal = b_con_04 ? 1 : s_con_04 ? -1 : 0
//  ||---   Slow MA oscilator Signal:
_slow_ma_str = smooth_price-sma(smooth_price, 48)
s_con_05 = _slow_ma_str < 0
b_con_05 = _slow_ma_str > 0
XMA2Signal = b_con_05 ? 1 : s_con_05 ? -1 : 0
//  ||---   Track Fast/Slow Donchian:
_fast_HH = highest(smooth_price, 12)
_fast_LL = lowest(smooth_price, 12)
_slow_HH = highest(smooth_price, 48)
_slow_LL = lowest(smooth_price, 48)
b_con_06 = _fast_HH == _slow_HH
s_con_06 = _fast_LL == _slow_LL
DonchianSignal = b_con_06 ? 1 : s_con_06 ? -1 : 0
//  ||---   MACD Signals:
[_, _, MACDhist] = macd(smooth_price, 14, 34, 8)
MACDSignal = MACDhist > 0 ? 1 : MACDhist < 0 ? -1 : 0
//  ||---   Williams %R Signal:
upper = highest(100)
lower = lowest(100)
WILLR = 100 * (smooth_price - upper) / (upper - lower)
SmoothWR = sma(WILLR, 8)
WRSignal = SmoothWR > -50 ? +1 : SmoothWR < -50 ? -1 : 0
//  ||---   SAR Signal:
SAR = sar(0.03,0.01,0.2)
SARSignal = SAR < smooth_price ? 1 : -1
//  ||---
power1 = SequenceSignal + RSISignal + CCISignal + MOMSignal + XMA1Signal + XMA2Signal + DonchianSignal + MACDSignal + WRSignal + SARSignal
power = wma(power1, 4)
powerSignal = ema(power, 8)
signalHist = power-ema(power, 32)
plot(power, color=black, linewidth=2)
plot(powerSignal, color=purple, linewidth=2)
plot(signalHist, color=purple, style=histogram, linewidth=1)
plot(power1, color=gray, linewidth=1)
hline(0)
hline(10)
hline(-10)
powerColor = power >= 8 ? green : 
        power >= 5 and power < 8 ? lime : 
        power >= 1 and power < 5 ? olive : 
        power <= -1 and power > -5 ? orange : 
        power <= -5 and power > -8 ? red : 
        power <= -8 ? maroon : yellow
bgcolor(powerColor, transp=40)
barcolor(powerColor)