Únete hoy
Instrucciones/probuilder

PRINT

PRINT muestra los valores de las variables de cada bar en una ventana de depuración aparte en ProRealTime™, con etiquetas y colores opcionales, para inspeccionar código ProBuilder.

Sintaxis

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

Parámetros

NombreTipoPor defectoDescripción
variablenuméricoobligatorioLa variable o expresión cuyos valores por bar se muestran.
"Label"cadenanombre de la variableEncabezado de columna mostrado en la tabla de salida, definido con AS.
COLOURED(R, G, B)Valores RGBningunoColor del texto de los valores impresos, cada componente de 0 a 255.
FILLCOLOR(bgR, bgG, bgB)Valores RGBningunoColor de fondo de las celdas impresas, cada componente de 0 a 255.

Cómo funciona

PRINT es una instrucción de diagnóstico. Por cada vela que procesa el script, añade el valor actual de la variable indicada a una tabla que se abre en su propia ventana, una fila por bar y una columna por sentencia PRINT. Esto permite observar cómo evolucionan los valores intermedios bar por bar sin representarlos, lo que a menudo resulta más claro que leer una curva cuando varias variables interactúan.

El AS la cláusula nombra la columna, lo que importa en cuanto se imprime más de un valor. COLOURED y FILLCOLOR controlan los colores del texto y del fondo de la celda, de modo que se pueden diferenciar visualmente columnas o estados de valor concretos.

PRINT pertenece al código de indicadores escrito en ProBuilder. El código de estrategia tiene sus propias salidas de depuración, GRAPH y GRAPHONPRICE, que representan valores durante un backtest en lugar de tabularlos. Para texto colocado directamente en el gráfico, DRAWTEXT es la alternativa.

Como construir la tabla cuesta tiempo y memoria en cada bar, las sentencias PRINT deben eliminarse o comentarse una vez terminada la depuración. No aportan ningún valor a un indicador publicado y ralentizan el recálculo en historiales grandes.

Ejemplos

Ejemplo 1, Inspeccionar el cálculo del cuerpo de una vela (Indicador)

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

Cada bar añade una fila a la tabla bajo el encabezado "A", con texto rojo sobre fondo azul. El indicador en sí no devuelve nada, lo importante es la tabla.

Ejemplo 2, Comparar dos valores intermedios uno al lado del otro (Indicador)

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"

Dos sentencias PRINT producen dos columnas etiquetadas, lo que permite verificar la lógica del cruce bar por bar mientras el spread se representa con normalidad.

Ejemplo 3, Resaltar valores fuera de rango (Indicador)

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"

El formato condicional dentro del bloque IF hace que las filas de sobrecompra y sobreventa destaquen en la tabla sin cambiar la salida representada.

Errores y trampas habituales

  • Dejado en el código de producción. PRINT es solo para desarrollo. Las sentencias olvidadas siguen generando la tabla de depuración en cada recálculo y degradan el rendimiento en historiales largos.
  • Columnas sin etiquetar. Varias llamadas PRINT sin AS etiquetas producen una tabla difícil de leer. Nombra cada columna cuando imprimas más de una variable.
  • Herramienta inadecuada para estrategias. PRINT es una instrucción de depuración de indicadores. Dentro del código de ProBacktest o ProOrder, usa GRAPH o GRAPHONPRICE para inspeccionar valores durante un backtest.
  • Componentes RGB fuera de rango. COLOURED y FILLCOLOR esperan cada componente entre 0 y 255. Los valores fuera de ese rango no producen el color deseado.
  • GRAPH, representa un valor en una ventana aparte durante un backtest.
  • GRAPHONPRICE, representa un valor del backtest directamente en el gráfico de precio.
  • RETURN, envía el valor final del indicador al gráfico.
  • DRAWTEXT, escribe texto en coordenadas del gráfico.
  • COLOURED, aplica color a las curvas devueltas y al texto impreso.
  • FILLCOLOR, define el color de fondo de las celdas impresas y los dibujos.