Gli script Pine ora supportano i footprint volume, offrendovi un accesso diretto al flusso dettagliato degli ordini (order flow) all’interno di ogni barra di prezzo.
Questo aggiornamento vi consente di creare indicatori footprint personalizzati, estrarre metriche precise sul volume e analizzare l’attività all’interno delle barre senza dover ricorrere a soluzioni alternative basate su timeframe inferiori.
Perché utilizzare i footprint in Pine?
Le richieste di footprint consentono di sbloccare istantaneamente dati avanzati all’interno della barra e di mappare livelli di order flow strutturalmente importanti, quali:
- Suddivisioni granulari del volume: totali esatti del volume di “acquisto” (ask) e “vendita” (bid) per l’intera barra e a livelli di prezzo specifici
- Delta di volume preciso: la differenza tra pressione di acquisto e di vendita
- Livelli chiave dell’asta: accesso immediato al Punto di controllo (POC), all’Area di valore massima (VAH) e all’Area di valore minima (VAL) della barra
- Squilibri: dati sugli squilibri di acquisto e vendita a specifici livelli di prezzo
Combinando request.footprint() con i vostri script personalizzati, potete monitorare livelli profondi di order flow rimanendo concentrati sulla strategia e sull’esecuzione.
Come funzionano i footprint e le strutture dei dati
La funzione request.footprint() è lo strumento principale utilizzato per richiedere informazioni sul footprint volume per la barra corrente. Quando viene chiamata, restituisce un oggetto footprint, che contiene tutti i dati dello stesso recuperati per quella specifica barra.
I dati sono organizzati in due strutture principali:
- Oggetti Footprint: consentono di accedere alle metriche complessive di una barra. Utilizzando le funzioni footprint.*(), è possibile recuperare dati quali il volume totale di acquisto, il volume totale di vendita e il delta di volume
- Oggetti Volume_row: rappresentano righe di prezzo specifiche all’interno del footprint, come il Punto di Controllo (POC) o i confini dell’Area di valore. Utilizzando le funzioni volume_row.*(), è possibile recuperare i livelli di prezzo, i valori di volume, il delta di volume e gli squilibri di una riga specifica.
Nota: se non sono disponibili dati footprint per una determinata barra, la funzione request.footprint() restituirà na.
Assicuratevi sempre che il vostro script verifichi che l’oggetto restituito sia not na prima di tentare di estrarre metriche utilizzando le funzioni footprint.*() o volume_row.*().
Esempio di utilizzo
Di seguito è riportato uno script semplificato che mostra come richiedere il footprint e accedere ai suoi punti dati sottostanti:
//@version=6
indicator("Footprint Data Highlight", overlay = true)
// Request the footprint object for the current bar (100 ticks per row, 70% Value Area)
footprint reqFootprint = request.footprint(100, 70)
// We use a block to ensure we only process data when the footprint is available
if not na(reqFootprint)
// 1. Access overall bar metrics from the `footprint` object
float totalBuyVol = reqFootprint.buy_volume()
float totalSellVol = reqFootprint.sell_volume()
float volumeDelta = reqFootprint.delta()
// 2. Retrieve a specific `volume_row` object (the Point of Control)
volume_row pocRow = reqFootprint.poc()
// 3. Access specific price values from the `volume_row` object
float pocUpperPrice = pocRow.up_price()
float pocLowerPrice = pocRow.down_price()
// --- USING THE VARIABLES ---
// Use Buy/Sell Volume and Delta in a label
if barstate.islast
label.new(bar_index, high,
text = "Buy: " + str.tostring(totalBuyVol, format.volume) +
"\nSell: " + str.tostring(totalSellVol, format.volume) +
"\nDelta: " + str.tostring(volumeDelta, format.volume),
color = color.new(color.blue, 20),
textcolor = color.white,
style = label.style_label_down)
// Use POC prices to highlight the POC area on the chart
linefill.new(
line.new(bar_index, pocUpperPrice, bar_index[1], pocUpperPrice, color = color.orange),
line.new(bar_index, pocLowerPrice, bar_index[1], pocLowerPrice, color = color.orange),
color.new(color.orange, 80))
// Plotting the volume delta on a separate pane (if moved to non-overlay)
// or as a reference value in the Data Window
plot(not na(reqFootprint) ? reqFootprint.total_volume() : na, "Volume Delta", display = display.data_window)
Vi ricordiamo che per poter utilizzare queste funzionalità relative al footprint, è necessario disporre di un piano Premium o Ultimate.
Per rimanere aggiornati sugli ultimi miglioramenti apportati all’esperienza Pine Script®, tenete d’occhio le Note di rilascio nel Manuale d’uso (ENG).
Ci auguriamo che queste funzionalità vi risultino utili quanto speriamo, e vi invitiamo a continuare a inviarci i commenti e suggerimenti, in modo da poter rendere la piattaforma la migliore possibile. Abbiamo creato TradingView per voi e siamo sempre desiderosi di conoscere la vostra opinione.
Team TradingView