Documentación
Aplicaciones
Última actualización el 17. 6. 2020 by Mark Fric
Registro y DebugColsole
Contenido de la página
DebugConsole en StrategyQuant X está pensado para permitir una depuración/registro más fácil cuando desarrolle sus propios fragmentos en SQ CodeEditor.
Es fácil de usar y le permite ver lo que ocurre "entre bastidores" cuando se ejecuta su fragmento.
Cómo utilizarlo en código
Hay dos métodos disponibles:
depurar(categoría, mensaje)
registra el mensaje en una consola de depuración (más información al respecto más adelante)
y
fdebug(categoría, mensaje)
registra el mensaje en un archivo de registro estándar ubicado en /user/log/StrategyQuant
Ambos métodos tienen los mismos dos parámetros:
- categoría (cadena)- nombre de la categoría de registro - cuando tienes múltiples mensajes de depuración puedes categorizarlos para poder archivar los mensajes por categoría
- mensaje (cadena) - un mensaje de texto real a registrar
Nota - las funciones debug() y fdebug() deberían estar disponibles en todas las clases de snippet en builds a partir de 128. En la Build 128 estos métodos faltan en las clases de indicadores, por lo que puede utilizar llamadas alternativas:
debug() -> DebugConsole.log()
log() -> Log.info()
Ejemplo de uso
Añadiremos un registro a un indicador CCI, a su OnBarUpdate() en el que se calculan los valores de los indicadores:
@Override protected void OnBarUpdate() throws TradingException { averageCalculator.onBarUpdate(Input.get(0), CurrentBar); if (CurrentBar == 0) { Valor.set(0, 0); } else { double media = 0; double sma = mediaCalculator.getValue(); for (int idx = Math.min(CurrentBar, Period - 1); idx >= 0; idx--) { media += Math.abs(Input.get(idx) - sma); } if(media < 0.0000000001) { Valor.set(0, 0); } else { double cci = (Input.get(0) - sma) / (media == 0 ? 1 : (0.015 * (media / Math.min(Period, CurrentBar + 1)))); Value.set(0, cci); debug("CCI", "El valor de CCI es: "+cci); } } }
Observe que sólo hemos añadido una línea:
debug("CCI", "El valor de CCI es: "+cci);
Utilizamos depurar() por lo que los mensajes registrados se añadieron a una consola de depuración especial que está disponible en la parte superior derecha bajo el icono de depuración:
Cuando lo abra después de ejecutar una prueba de alguna estrategia que contenga el indicador CCI, verá que se registraron los mensajes:
¿Le ha resultado útil este artículo? El artículo era útil El artículo no era útil
si utilizo el comando fdebugfunciona, puedo ver la salida en el registro, pero si utilizo depurar no aparece nada en la consola de depuración
No puedo seleccionar ninguna categoría que no sea "todas".
¿Ha fallado este método ahora? Porque no se puede utilizar
depurar(categoría, mensaje) y fdebug(categoría, mensaje) en el editor de código directamente.
título extraño : Registro y DebugColsole