Documentação
Aplicações
Última atualização em 17. 6. 2020 por Mark Fric
Logging e DebugColsole
Conteúdo da página
O DebugConsole no StrategyQuant X tem o objetivo de facilitar a depuração/registro quando você desenvolve seus próprios trechos no SQ CodeEditor.
É simples de usar e permite que você veja o que está acontecendo "por trás da cena" quando o snippet é executado.
Como usá-lo no código
Há dois métodos disponíveis:
debug(categoria, mensagem)
registra a mensagem em um console de depuração (mais sobre isso posteriormente)
e
fdebug(categoria, mensagem)
registra a mensagem em um arquivo de registro padrão localizado em /user/log/StrategyQuant
Ambos os métodos têm os mesmos dois parâmetros:
- categoria (string)- nome da categoria de registro - quando houver várias mensagens de depuração, você poderá categorizá-las para poder filtrar as mensagens por categoria
- mensagem (string) - uma mensagem de texto real a ser registrada
Observação - as funções debug() e fdebug() devem estar disponíveis em todas as classes de snippet nas compilações a partir da 128. Na compilação 128, esses métodos estão ausentes nas classes de indicadores, portanto, você pode usar chamadas alternativas:
debug() -> DebugConsole.log()
log() -> Log.info()
Exemplo de uso
Adicionaremos um registro a um indicador CCI, ao seu EmBarUpdate() em que os valores dos indicadores são computados:
@Override protected void OnBarUpdate() throws TradingException { averageCalculator.onBarUpdate(Input.get(0), CurrentBar); Se (CurrentBar == 0) { Value.set(0, 0); } else { double mean = 0; double sma = averageCalculator.getValue(); for (int idx = Math.min(CurrentBar, Period - 1); idx >= 0; idx--) { mean += Math.abs(Input.get(idx) - sma); } if(mean < 0,0000000001) { Value.set(0, 0); } else { double cci = (Input.get(0) - sma) / (mean == 0 ? 1 : (0,015 * (mean / Math.min(Period, CurrentBar + 1)))); Value.set(0, cci); debug("CCI", "O valor do CCI é: "+cci); } } }
Observe que adicionamos apenas uma linha:
debug("CCI", "O valor do CCI é: "+cci);
Usamos debug() portanto, as mensagens registradas foram adicionadas a um console de depuração especial que está disponível no canto superior direito, no ícone de depuração:
Ao abri-lo depois de executar um teste de alguma estratégia que contenha o indicador CCI, você verá que as mensagens foram registradas:
Este artigo foi útil? O artigo foi útil O artigo não foi útil
Se eu usar o comando fdebugSe eu usar o debug nada aparece no console de depuração
Não consigo selecionar nenhuma categoria que não seja "todos"
Esse método falhou agora? Porque ele não pode ser usado
debug(categoria, mensagem) e fdebug(categoria, mensagem) diretamente no editor de código.
título estranho : Registro e DebugColsole