Depure seu código do Pine Script® com o Pine Logs

Aug 29, 2023

Leve a depuração do Pine Script® a outro nível com nossas novas funções log.*(), que exibem texto no novo painel Pine Logs à medida que o script é executado. As três novas funções de registro são:

  • log.error() cria mensagens do tipo “Error” exibidas em vermelho.
  • log.info() cria mensagens do tipo “Info” exibidas em cinza.
  • log.warning() cria mensagens do tipo “Warning” exibidas em laranja.

Você pode visualizar os Pine Logs selecionando “Pine Logs…” no menu “Mais” do Editor ou no menu “Mais” de um script carregado no gráfico se ele usar as funções log.*().


O Pine Logs funciona em qualquer lugar: nas barras históricas, no tempo real e no modo Replay. As funções de registro podem ser chamadas de qualquer tipo de script (indicador, estratégia ou biblioteca) e de qualquer lugar no script, incluindo blocos locais, loops e de dentro de request.security() e funções semelhantes. É possível chamar as funções de registro de duas maneiras: usando apenas um argumento de string ou usando uma string de formatação e uma lista de valores no formato str.format().

Os scripts que usam logs devem ser scripts pessoais; scripts privados ou publicados publicamente não podem gerar logs, mesmo que contenham chamadas para as funções log.*().

O exemplo de código a seguir usa todas as três funções de registro:

//@version=5
indicator("Pine Logs")
if barstate.ishistory
    if bar_index % 100 == 0
        log.warning("\nBar index: {0,number,#}", bar_index)
else
    // Realtime bar processing.
    varip lastTime = timenow
    varip updateNo = 0
    if barstate.isnew
        updateNo := 0
        log.error("\nNew bar")
    else
        log.info("\nUpdate no: {0}\nclose: {1}\nSeconds elapsed: {2}", updateNo, close, (timenow - lastTime) / 1000)
        updateNo += 1
    lastTime := timenow
plot(timenow)

O exemplo exibe o índice da barra em cada centésima barra histórica usando uma mensagem de aviso laranja. Em tempo real, ele exibe uma mensagem de erro em vermelho para cada nova barra e, para cada atualização em tempo real, cria uma mensagem informativa em cinza mostrando o número da atualização, o preço de fechamento e o tempo decorrido desde a última atualização do gráfico.

Para ver o Pine Logs em ação:

1. Salve o exemplo do código acima em um script pessoal e adicione-o a um gráfico com um mercado ativo.

2. Abra o painel “Pine Logs” usando o menu “Mais” do Editor ou o menu “Mais” do indicador no gráfico.

Um registro de data e hora prefixa cada entrada de registro. É o horário de abertura da barra para barras históricas e o horário atual para mensagens em tempo real. As mensagens mais recentes aparecem na parte inferior do painel. Somente as últimas 10.000 mensagens serão exibidas para barras históricas; as mensagens em tempo real são anexadas a elas.

A parte superior do painel contém ícones que permitem iniciar/parar o registro, especificar uma data de início, filtrar os registros por tipo de mensagem e pesquisar os registros. O campo de pesquisa contém um submenu que permite a correspondência de casos, palavras inteiras e o uso de regex.

Ao passar o mouse sobre uma mensagem de registro, são exibidos ícones que permitem visualizar o código-fonte que gerou a mensagem ou ir para a barra do gráfico correspondente:

Quando vários scripts no seu gráfico usam registros, cada um mantém seu próprio conjunto de mensagens. Você pode alternar entre os logs de cada script usando o menu suspenso na parte superior do painel Logs do Pine:

Para se manter atualizado sobre os novos recursos do Pine Script®, fique de olho nas notas de Lançamento do Manual do Usuário. A conta do PineCoders também transmite atualizações a partir da sua Squawk Box no Telegram, da sua conta no Twitter e do chat público de Q&A do Pine Script® no TradingView.

Esperamos que esse recurso tão solicitado seja bastante útil, assim como achamos que será, e continue nos enviando seus comentários e sugestões para que possamos tornar a plataforma a melhor possível. Criamos o TradingView para você e estamos sempre dispostos a ouvir suas opiniões.

— Equipe do TradingView

Look first Then leap

TradingView is built for you, so make sure you're getting the most of our awesome features
Launch Chart