Ferramentas do usuário

Ferramentas do site


tradingview:alertas:eventos_alertcondition

Eventos alertcondition

alertcondition

  • A função alertcondition() permite criar eventos de alertas individuais nos estudos Pine.
    • Importante: Apenas para estudos - study()
  • Um estudo pode conter mais de uma chamada de alertcondition().
  • Cada chamada da função alertcondition() em um script irá criar uma caixa de seleção correspondente no campo “Condição” na caixa de diálogo “Criar Alerta”.
  • alertcondition(condition, title, message)
  • condition - obrigatório
  • Um valor “series bool” (true ou false) que determina quando o alerta irá disparar.
    • Quando o valor for true o alerta dispara.
    • Quando o valor for false o alerta não dispara.
  • Diferente da função alert() - a função alertcondition() deve ser chamada no escopo global do script, ou seja, não pode estar contida dentro de testes condicionais if.
  • title - opcional
    • Um valor “const string” que define o nome da condição do alerta como aparece na caixa de diálogo “Criar Alerta” no campo “Condição” na interface gráfica. Se nenhum valor for especificado para o argumento a string “Alert” será usada.
  • message - opcional
    • Um valor “const string” que define a mensagem de texto a ser mostrada quando o alerta é disparado. O texto irá aparecer no campo “Mensagem” da caixa de diálogo “Criar Alerta” - onde usuários poderão alterar o valor pré-definido através do script caso achem necessário.
      • Importante: é um valor “const” ou seja - este valor deve ser conhecido no momento de compilação do script - por tanto - não pode ser alterado de barra para barra - ou seja - não é dinâmico. Pode, entretanto, possuir placeholders pré-definidos pelo Pine script.
  • A função alertcondition() não possui argumento freq como na função alert(). A frequência do alerta é determinada pelo usuário através da interface gráfica na caixa de diálogo “Criar Alerta”.

Usando condição única

  • Exemplo de um script com apenas uma condição:
//@version=4
study("alertcondition() com condição única")
 
r = rsi(close, 20)
 
xUp = crossover(r, 50)
xDn = crossunder(r, 50)
 
plot(r, "RSI")
hline(50)
 
plotchar(xUp, "Compra", "▲", location.bottom, color.lime, size = size.tiny)
plotchar(xDn, "Venda", "▼", location.top, color.red,  size = size.tiny)
 
alertcondition(xUp, "Alerta de Compra", "Comprar")
alertcondition(xDn, "Alerta de Venda", "Vender")
  • Porque temos mais de uma chamada da função alertcondition() - 2 alertas diferentes estarão disponíveis no campo “Condição” da caixa de diálogo “Criar Alerta” na interface gráfica:
    • “Alerta de Compra”
    • “Alerta de Venda”
  • Não é possível, por exemplo, incluir o valor do RSI na mensagem de alerta usando uma string com a função tostring® no argumento message como fizemos com a função alert().
  • É possível, porém, incluir o valor do RSI usando um placeholder pré-definido pela linguagem Pine.
alertcondition(xUp, "Alerta de Compra",  "Comprar. RSI é {{plot_0}}")
alertcondition(xDn, "Alerta de Venda", 'Vender. RSI é {{plot("RSI")}}')
  • A primeira linha usa o placeholder {{plot_0}} onde o número da plotagem corresponde com a ordem sequencial de plotagens do script.
  • A segunda linha usa o placeholder {{plot("[plot_title]")}} onde o título da plotagem plot() é usado para definir a plotagem especifica. Aspas duplas “RSI” são usadas para o título, por tanto, aspas simples são usadas no argumento message.
  • Ambos métodos podem ser usados para incluir valores numéricos gerados pelo script de nosso estudo - porém note - que strings não podem ser plotadas usando plot() por tanto não podem ser usadas para esse propósito.

Usando múltiplas condições

  • Se nós quisermos um script que oferece a possibilidade de criar um alerta para um estudo com condições múltiplas usando alertcondition() - nós precisaremos disponibilizar parâmetros de entrada para que o usuário defina as condições que devem ser satisfeitas para disparar o alerta antes deste ser compilado.
//@version=4
study("alertcondition() com múltiplas condições")
	
i_detectLongs = input(true, "Detectar Compra")
i_detectShorts = input(true, "Detectar Venda")
	
r = rsi(close, 20)
	
// Detectar cruzamento.
xUp = crossover(r, 50)
xDn = crossunder(r, 50)
	
// Gerar alertas apenas para sinais que satisfazem a configuração.
aC = i_detectLongs and xUp
aV = i_detectShorts and xDn
	
plot(r)
	
plotchar(aC, "Comprar", "▲", location.bottom, color.lime, size = size.tiny)
plotchar(aV, "Vender", "▼", location.top, color.red, size = size.tiny)
	
hline(50)
	
// Trigger the alert when one of the conditions is met.
alertcondition(aC or aV, "Alerta múltiplo", "Entrada")
  • Note que a função alertcondition() é chamada para disparar uma das duas condições, porém, estas só podem fazer isso caso o usuário defina isso através dos parâmetros.

Placeholders

  • Os seguintes placeholders podem ser usados com o argumento message.
  • Estes serão substituídos dinamicamente pelos valores correspondentes no momento do disparo do alerta.
  • Esta é a única forma de incluir valores dinâmicos, ou seja, valores que alteram-se de barra para barra, usando a mensagem da função alertcondition().
  • Importante: Estes mesmos placeholders podem ser usados diretamente na caixa de diálogo “Criar Alerta” no campo “Mensagem”.
  • {{exchange}}
    • Retorna a exchange (bolsa/corretora) do ativo configurado no alerta.
    • Ativos com delay terão o sufixo “_DL” mostrado.
  • {{interval}}
    • Retorna o timeframe do gráfico onde o alerta foi critado.
    • Gráficos de Range - são calculados com informação de gráficos de 1 minutos - por tanto - placeholder nesses gráficos sempre retornará “1”.
  • {{open}}, {{high}}, {{low}}, {{close}}, {{volume}}
    • Retorna o valor correspondente a cada série de dados no momento do disparo do alerta.
  • {{plot_0}}, {{plot_1}}, […], {{plot_19}}
    • Retorna o valor correspondente da plotagem. Plotagens são numeradas de 0 a 19.
  • {{plot("[plot_title]")}}
    • Retorna o valor correspondente da plotagem, porém, identificando-a pelo seu título.
    • Sempre usar aspas duplas no título “ ” e aspas simples ' ' no argumento message.
  • {{ticker}}
    • Retorna o ticker to ativo usado no alerta.
  • {{time}}
    • Retorna a data e hora da abertura da barra que disparou o alerta.
    • No formato UTC : yyyy-MM-ddTHH:mm:ssZ = 2019-08-27T09:56:00Z
  • {{timenow}}
    • Retorna a data e hora no momento em que houve o disparo do alerta.
    • Mesmo formato de {{time}}
    • A precisão será sempre até o segundo - independente da resolução do gráfico.


tradingview/alertas/eventos_alertcondition.txt · Última modificação: 05/04/2023 08:25 por 127.0.0.1