Sistema de Tipos

Tipos de dados no Pine Script v6

Tipos Básicos

Tipos de Dados no Pine Script v6

Pine Script possui um sistema de tipos com dois componentes: qualificador e tipo.

Qualificadores

- const: Valor conhecido em tempo de compilação

- input: Valor definido pelo usuário nos inputs

- simple: Valor calculado uma vez, antes de processar as barras

- series: Valor que pode mudar a cada barra (o mais comum)

Tipos Principais

TipoDescriçãoExemplo
intNúmeros inteiros`14`, `-5`, `0`
floatNúmeros decimais`3.14`, `-0.5`
boolVerdadeiro/Falso`true`, `false`
stringTexto`"Hello"`, `'World'`
colorCores`color.red`, `#FF0000`

Variáveis Built-in Importantes

close    // Preço de fechamento
open     // Preço de abertura
high     // Preço máximo
low      // Preço mínimo
volume   // Volume
time     // Timestamp da barra
bar_index // Índice da barra (começa em 0)
Declaração de Variáveis

Diferentes formas de declarar variáveis

1//@version=6
2indicator("Tipos de Dados")
3
4// Declaração com tipo explícito
5int periodo = 14
6float multiplicador = 1.5
7bool mostrarSinal = true
8string titulo = "Meu Indicador"
9color corAlta = color.green
10
11// Declaração com tipo inferido (Pine Script deduz o tipo)
12periodoAuto = 14      // int
13multAuto = 1.5        // float
14ativoAuto = true      // bool
15
16// Variável que mantém valor entre barras (var)
17var float maiorPreco = 0.0
18maiorPreco := math.max(maiorPreco, high)
19
20plot(maiorPreco, "Maior Preço Histórico", color.purple)

Operadores

Operadores no Pine Script v6

Operadores Aritméticos

OperadorDescrição
`+`Adição
`-`Subtração
`*`Multiplicação
`/`Divisão
`%`Módulo (resto)

Operadores de Comparação

OperadorDescrição
`==`Igual a
`!=`Diferente de
`>`Maior que
`<`Menor que
`>=`Maior ou igual
`<=`Menor ou igual

Operadores Lógicos

OperadorDescrição
`and`E lógico
`or`OU lógico
`not`Negação

Operador Ternário

resultado = condição ? valorSeVerdadeiro : valorSeFalso

Operadores de Atribuição

OperadorDescrição
`=`Declaração e inicialização
`:=`Reatribuição (variável mutável)
Uso de Operadores

Exemplos práticos de operadores

1//@version=6
2indicator("Operadores em Ação", overlay=true)
3
4// Operadores aritméticos
5range = high - low
6midpoint = (high + low) / 2
7
8// Operadores de comparação
9isUpBar = close > open
10isBigBar = range > ta.atr(14)
11
12// Operadores lógicos
13strongUpBar = isUpBar and isBigBar
14eitherSignal = isUpBar or volume > ta.sma(volume, 20)
15
16// Operador ternário
17barColor = isUpBar ? color.green : color.red
18
19// Colorir barras baseado na condição
20barcolor(barColor)
21
22// Plotar ponto médio
23plot(midpoint, "Ponto Médio", color.orange, style=plot.style_circles)