tradingview:programacao_avancada:contexto_e_ativos
Tabela de conteúdos
Contexto e Ativos
Ativos
- security (função) permite ao script requisitar dados de um ativo e/ou resolução diferentes do ativo sendo executado no gráfico.
- security(“NYSE:IBM”, “15”, close)
- Esta função chamará os preços de fechamento do ativo IBM no gráfico do gráfico de 15 minutos.
- Primeiro argumento: Nome do Ativo
- Segundo argumento: Resolução
- Terceiro argumento: expressão a ser calculada para a série requisitada
//@version=4 study("Example security 1", overlay=true) ibm_15 = security("NYSE:IBM", "15", close) plot(ibm_15)
Primeiro Argumento : Nome do Ativo (string)
- Duas formas de representar o nome do ativo
- Com prefixo
- Da bolsa de valores (stock exchange) “BMFBOVESPA:PETR3”
- Do provedor dos dados “BATS:IBM”
- Sem prefixo “PETR3”
- Armazenado em variáveis nativas
- syminfo.ticker - Nome do ativo sem o prefixo da exchange
- syminfo.tickerid - Nome do ativo com o prefixo da exchange
- Recomendado: para evitar ambiguidade.
Segundo Argumento : Resolução (string)
- Resoluções de periodicidades Intraday são definidas usando um número em minutos
- É possível solicitar qualquer número (inteiro) de minutos… “2”, “3”, “7”, “15” … minutos.
- O menor valor é “1” - representando 1 minuto.
- O maior valor é “1440” - representando 24 horas.
- Horas também são representados por minutos, por exemplo
- “60” = 1 Hora; “120” = 2 Horas; “240” = 4 Horas
- Gráficos diários são indicados por “D” ou “1D”, “2D”, “3D”…
- Gráficos semanais são indicados por “W” ou “1W”, “2W” …
- Gráficos mensais são indicados por “M” ou “1M”, “2M” …
- Armazenado em variáveis nativas
- timeframe.period - Onde será armazenada a string da resolução.
Terceiro Argumento : Expressão ou Função
- O terceiro parâmetro pode ser uma expressão matemática por si ou uma chamada de função, que será calculada no contexto da série de dados escolhida.
- Exemplos:
- Visualizar um gráfico de 1 minuto enquanto exibe um MMA (ou qualquer outra expressão) de qualquer outra resolução (ou seja, diário, semanal, mensal):
//@version=4 study(title="High Time Frame MA", overlay=true) src = close, len = 9 out = sma(src, len) out1 = security(syminfo.tickerid, 'D', out) plot(out1)
- Calcular a mesma expressão porém de diferentes resoluções.
- Retornar uma série que é então adaptada à escala de tempo do símbolo do gráfico atual.
- Este resultado pode ser mostrado diretamente no gráfico (ou seja, com plot) ou usado em cálculos posteriores.
- O script “Advance Decline Ratio” ilustra um uso mais envolvente de security:
//@version=4 study(title = "Advance Decline Ratio", shorttitle="ADR") ratio(t1, t2, source) => s1 = security(t1, timeframe.period, source) s2 = security(t2, timeframe.period, source) s1 / s2 plot(ratio("USI:ADVN.NY", "USI:DECL.NY", close))
Requisitando dados de resoluções menores
- security foi construída para requisitar dados de uma resolução maior que a do gráfico atual.
- Não é recomendado requisitar dados de uma resolução menor que a do gráfico atual.
- Parte dos dados serão inevitavelmente perdidos, pois, por exemplo,
- É impossível exibir dados de um gráfico de 1 minuto em um gráfico de 5 minutos e não quebrar o eixo do tempo.
- Em tais casos, o comportamento de security pode ser bastante inesperado.
tradingview/programacao_avancada/contexto_e_ativos.txt · Última modificação: 05/04/2023 08:25 por 127.0.0.1