Ciao amici trader e programmatori! Oggi ci addentriamo nel magico mondo dell’RSI, o Relative Strength Index, uno degli indicatori più utilizzati nell’analisi tecnica. Pronti a scoprire come creare il vostro indicatore RSI personalizzato in Pine Script su TradingView? Preparatevi, perché sarà divertente e istruttivo!


Cos’è l’RSI?

L’RSI (Relative Strength Index) è un indicatore di momentum che misura la velocità e il cambiamento dei movimenti di prezzo. È utilizzato per identificare condizioni di ipercomprato o ipervenduto di un asset. Il valore dell’RSI varia tra 0 e 100:

  • Sopra 70: Possibile condizione di ipercomprato.
  • Sotto 30: Possibile condizione di ipervenduto.

Passo 1: Aprire l’Editor Pine Script

Prima di tutto, apriamo l’editor Pine Script su TradingView. Se non l’avete mai fatto prima, ecco come procedere:

  1. Accedi a TradingView: Vai su TradingView.
  2. Apri un grafico: Seleziona l’asset finanziario di tuo interesse.
  3. Apri l’Editor Pine Script: Clicca sull’icona dell’editor Pine Script nella parte inferiore del grafico.

Passo 2: Scrivere il Codice per l’RSI

Iniziamo con il codice base per creare un RSI. Scriveremo uno script semplice che calcola e traccia l’RSI sul grafico.

pinescriptCopy code//@version=4
study("Relative Strength Index (RSI)", shorttitle="RSI", overlay=false)

length = input(14, minval=1, title="Lunghezza RSI")
source = close

rsi_value = rsi(source, length)

plot(rsi_value, color=color.blue, title="RSI")
hline(70, "Overbought", color=color.red)
hline(30, "Oversold", color=color.green)

Spiegazione del Codice

  • //@version=4: Specifica la versione di Pine Script utilizzata.
  • study("Relative Strength Index (RSI)", shorttitle="RSI", overlay=false): Definisce il nome dell’indicatore e indica che non sarà sovrapposto al grafico dei prezzi.
  • length = input(14, minval=1, title="Lunghezza RSI"): Crea un input per l’utente per specificare la lunghezza del calcolo dell’RSI (default 14 periodi).
  • source = close: Utilizza i prezzi di chiusura come sorgente per il calcolo dell’RSI.
  • rsi_value = rsi(source, length): Calcola l’RSI utilizzando la funzione rsi() di Pine Script.
  • plot(rsi_value, color=color.blue, title="RSI"): Traccia l’RSI sul grafico con il colore blu.
  • hline(70, "Overbought", color=color.red): Aggiunge una linea orizzontale a 70 per indicare il livello di ipercomprato.
  • hline(30, "Oversold", color=color.green): Aggiunge una linea orizzontale a 30 per indicare il livello di ipervenduto.

Passo 3: Personalizzare l’RSI

Ora che abbiamo un RSI funzionante, possiamo aggiungere delle personalizzazioni per renderlo più utile e visivamente accattivante.

Cambiare il Colore e la Larghezza della Linea

pinescriptCopy code//@version=4
study("RSI Personalizzato", shorttitle="RSI", overlay=false)

length = input(14, minval=1, title="Lunghezza RSI")
source = close

rsi_value = rsi(source, length)

// Personalizzare il colore e la larghezza della linea
plot(rsi_value, color=color.purple, linewidth=2, title="RSI Personalizzato")
hline(70, "Overbought", color=color.red)
hline(30, "Oversold", color=color.green)

Aggiungere un Avviso per i Cross

Per rendere il nostro indicatore ancora più utile, aggiungiamo avvisi per quando l’RSI supera i livelli di ipercomprato e ipervenduto.

pinescriptCopy code//@version=4
study("RSI con Avvisi", shorttitle="RSI", overlay=false)

length = input(14, minval=1, title="Lunghezza RSI")
source = close

rsi_value = rsi(source, length)

// Aggiungere l'avviso per i cross
overbought_cross = crossover(rsi_value, 70)
oversold_cross = crossunder(rsi_value, 30)

plot(rsi_value, color=color.purple, linewidth=2, title="RSI Personalizzato")
hline(70, "Overbought", color=color.red)
hline(30, "Oversold", color=color.green)

plotshape(series=overbought_cross, location=location.top, color=color.red, style=shape.labeldown, text="Overbought")
plotshape(series=oversold_cross, location=location.bottom, color=color.green, style=shape.labelup, text="Oversold")

Spiegazione delle Aggiunte

  • plot(rsi_value, color=color.purple, linewidth=2, title="RSI Personalizzato"): Cambia il colore dell’RSI in viola e aumenta la larghezza della linea.
  • crossover(rsi_value, 70): Funzione che restituisce true quando l’RSI supera il livello di 70.
  • crossunder(rsi_value, 30): Funzione che restituisce true quando l’RSI scende sotto il livello di 30.
  • plotshape(series=overbought_cross, location=location.top, color=color.red, style=shape.labeldown, text="Overbought"): Aggiunge un’etichetta “Overbought” quando l’RSI supera 70.
  • plotshape(series=oversold_cross, location=location.bottom, color=color.green, style=shape.labelup, text="Oversold"): Aggiunge un’etichetta “Oversold” quando l’RSI scende sotto 30.

Passo 4: Aggiungere Zone di Background Colorate

Per migliorare ulteriormente la leggibilità, possiamo aggiungere delle zone di background colorate per indicare le aree di ipercomprato e ipervenduto.

pinescriptCopy code//@version=4
study("RSI con Zone Colorate", shorttitle="RSI", overlay=false)

length = input(14, minval=1, title="Lunghezza RSI")
source = close

rsi_value = rsi(source, length)

plot(rsi_value, color=color.purple, linewidth=2, title="RSI")
hline(70, "Overbought", color=color.red)
hline(30, "Oversold", color=color.green)

bgcolor(rsi_value > 70 ? color.red : na, transp=90)
bgcolor(rsi_value < 30 ? color.green : na, transp=90)

Conclusione

Complimenti! Avete appena creato un indicatore RSI personalizzato in Pine Script! Ora avete tutti gli strumenti necessari per analizzare meglio i vostri grafici e individuare le condizioni di ipercomprato e ipervenduto. Continuate a sperimentare con colori, larghezze delle linee e avvisi per creare un indicatore che si adatti perfettamente alle vostre esigenze di trading.

Risorse Aggiuntive

  • Documentazione UfficialePine Script Reference
  • Corsi e Tutorial: Cercate su YouTube e piattaforme di e-learning per ulteriori tutorial e corsi su Pine Script.

Se questo articolo ti è stato utile, condividilo con altri aspiranti programmatori e trader! Seguimi per ulteriori guide e consigli su Pine Script e il mondo del trading. Buona fortuna e buon trading! 🚀

Se hai dubbi o domande a riguardo puoi farmele pure su

Instagram: https://www.instagram.com/investoinvestigando.it/

Qui puoi trovare tutta la guida: LINK