Pine Script®: ecco gli oggetti!

Dec 14, 2022

Abbiamo lanciato Pine Script® nel 2013 per permettere ai trader più navigati di sviluppare i strumenti proprietari per l’analisi dei mercati. Agli esordi, ci sembrava tanto anche solo calcolare una linea RSI, ma con il tempo e con i vostri suggerimenti siamo riusciti a costruire, mattone su mattone, un linguaggio di programmazione sempre più completo e potente. Ad oggi i vostri script sono molto più capaci di fare cose: da un backtesting approfondito, agli alert per dei trading bot, passando per un’estetica più raffinata, una maggiore flessibilità negli input ed una migliore esperienza di scrittura, grazie ad un nuovo editor, nuove librerie, e nuove strutture dati come array e matrici. Quando due anni fa vi abbiamo parlato dei numeri da record, non sapevamo che fosse solo l’inizio della crescita.

Oggi si aggiunge un nuovo tassello a questo sempre più importante linguaggio di programmazione, con l’introduzione degli oggetti come strutture dati definite dall’utente (UDT in gergo tecnico) tramite la parola chiave type.

Ora, invece di usare due variabili indipendenti (pivotTime e pivotLevel) per tracciare i punti pivot, si potrà definire un pivotPoint con al suo interno due campi (fields) per tenere tali variabili:

type pivotPoint
    int openTime
    float level

Per creare un nuovo oggetto è sufficiente usare il comando new() constructor:

newPivot = pivotPoint.new(time, high)

Si potrà poi fare riferimento ad esso con la dot notation:

label.new(newPivot.openTime, newPivot.level, str.tostring(newPivot.level), xloc.bar_time)

Anche array e matrici di oggetti potranno essere definiti usando il modello descritto sopra:

pivotArray = array.new<pivotPoint>()

Gli oggetti possono essere usati insieme alle altre funzionalità Pine: è possibile esportarli tramite librerie, richiederli con la funzione request.security(), e così via. Una funzione che in passato restituiva una tupla con dieci valori può ora restituire un singolo oggetto con dieci campi al suo interno. 

Per tutti i dettagli, potete fare riferimento al nostro Manuale utente (ENG).

Di seguito alcuni esempi d’uso provenienti da script già esistenti:

Electrocardiogram Chart, indicatore di HeWhoMustNotBeNamed

ZigZag, libreria di TradingView, e l’indicatore ZigZag che è stato riscritto per farne uso:

Per rimanere informati sulle nuove funzionalità di Pine Script®, tenete d’occhio le note di rilascio nel Manuale Utente. L’account PineCoders trasmette anche aggiornamenti dalla sua Squawk Box su Telegram, dal suo account Twitter e dalla chat pubblica Pine Script® Q&A su TradingView.

Ci auguriamo che questa funzione, molto richiesta, vi sia utile. Continuate a inviarci il vostro feedback e i vostri suggerimenti per migliorare. Costruiamo TradingView per voi e siamo sempre desiderosi di ascoltarvi.

Look first Then leap

TradingView è realizzato per te. Assicurati di sfruttare al massimo tutte le sue funzionalità
Apri grafico