Iscriviti ora
Istruzioni/probuilder

PRINT

PRINT mostra i valori delle variabili per ogni bar in una finestra di debug separata in ProRealTime™, con etichette e colori opzionali, per esaminare il codice ProBuilder.

Sintassi

probuilder
PRINT(variable) AS "Label" COLOURED(R, G, B) FILLCOLOR(bgR, bgG, bgB)

Parametri

NomeTipoPredefinitoDescrizione
variablenumericoobbligatorioLa variabile o espressione i cui valori per bar vengono mostrati.
"Label"stringanome della variabileIntestazione di colonna mostrata nella tabella di output, impostata con AS.
COLOURED(R, G, B)Valori RGBnessunoColore del testo dei valori stampati, ogni componente da 0 a 255.
FILLCOLOR(bgR, bgG, bgB)Valori RGBnessunoColore di sfondo delle celle stampate, ogni componente da 0 a 255.

Come funziona

PRINT è un'istruzione diagnostica. Per ogni candela elaborata dallo script, aggiunge il valore corrente della variabile indicata a una tabella che si apre in una finestra propria, una riga per bar e una colonna per ogni istruzione PRINT. Questo permette di osservare come i valori intermedi evolvono bar per bar senza tracciarli, cosa spesso più chiara della lettura di una curva quando interagiscono più variabili.

Il AS la clausola nomina la colonna, cosa che conta appena viene stampato più di un valore. COLOURED e FILLCOLOR controllano i colori del testo e dello sfondo della cella, così colonne specifiche o stati di valore possono essere resi visivamente distinti.

PRINT appartiene al codice degli indicatori scritto in ProBuilder. Il codice delle strategie ha i propri output di debug, GRAPH e GRAPHONPRICE, che tracciano i valori durante un backtest invece di tabularli. Per il testo posizionato direttamente sul grafico, DRAWTEXT è l'alternativa.

Poiché costruire la tabella costa tempo e memoria su ogni bar, le istruzioni PRINT dovrebbero essere rimosse o commentate una volta terminato il debug. Non aggiungono valore a un indicatore rilasciato e rallentano il ricalcolo su storici ampi.

Esempi

Esempio 1, Esaminare il calcolo del corpo di una candela (Indicatore)

probuilder
// Difference between close and open, shown in a debug table
VarA = close - open
R = 255
B = 255
PRINT(VarA) AS "A" COLOURED(R, 0, 0) FILLCOLOR(0, 0, B)
RETURN

Ogni bar aggiunge una riga alla tabella sotto l'intestazione "A", con testo rosso su sfondo blu. L'indicatore in sé non restituisce nulla, il punto è la tabella.

Esempio 2, Confrontare due valori intermedi affiancati (Indicatore)

probuilder
// Watch both moving averages while debugging a crossover
fastMA = average[10](close)
slowMA = average[40](close)
PRINT(fastMA) AS "Fast MA"
PRINT(slowMA) AS "Slow MA"
RETURN fastMA - slowMA AS "MA spread"

Due istruzioni PRINT producono due colonne etichettate, permettendo di verificare la logica di incrocio bar per bar mentre lo spread viene tracciato normalmente.

Esempio 3, Evidenziare i valori fuori intervallo (Indicatore)

probuilder
// Print RSI and flag extreme readings with a distinct background
myRSI = RSI[14](close)
IF myRSI > 70 OR myRSI < 30 THEN
  PRINT(myRSI) AS "RSI14" COLOURED(255, 255, 255) FILLCOLOR(200, 0, 0)
ELSE
  PRINT(myRSI) AS "RSI14"
ENDIF
RETURN myRSI AS "RSI14"

La formattazione condizionale all'interno del blocco IF fa risaltare nella tabella le righe di ipercomprato e ipervenduto senza modificare l'output tracciato.

Errori e insidie comuni

  • Lasciato nel codice di produzione. PRINT è solo per lo sviluppo. Le istruzioni dimenticate continuano a generare la tabella di debug a ogni ricalcolo e peggiorano le prestazioni su storici lunghi.
  • Colonne senza etichetta. Diverse chiamate PRINT senza AS etichette producono una tabella difficile da leggere. Dai un nome a ogni colonna quando stampi più di una variabile.
  • Strumento sbagliato per le strategie. PRINT è un'istruzione di debug per indicatori. All'interno del codice ProBacktest o ProOrder, usa GRAPH o GRAPHONPRICE per ispezionare i valori durante un backtest.
  • Componenti RGB fuori intervallo. COLOURED e FILLCOLOR si aspettano ogni componente tra 0 e 255. Valori fuori da quell'intervallo non producono il colore previsto.
  • GRAPH, traccia un valore in una finestra separata durante un backtest.
  • GRAPHONPRICE, traccia un valore del backtest direttamente sul grafico dei prezzi.
  • RETURN, restituisce il valore finale dell'indicatore sul grafico.
  • DRAWTEXT, scrive testo alle coordinate del grafico.
  • COLOURED, applica il colore alle curve restituite e al testo stampato.
  • FILLCOLOR, imposta il colore di sfondo per le celle stampate e i disegni.