⬡ TECHNICAL TUTORIAL · WITH CODE · READ 13 MIN

Pine Script do zero: indicadores e estratégias no TradingView.

A linguagem mais acessível for those who want programar trading. Vamos do primeiro indicador a uma estratégia completa com backtest e alertas for automação — tudo inside do TradingView, without instalar nada.

By RoboTraderIA Team· updated may/2026· beginner level

Se Python é a porta de entrada for bots de exchange, o Pine Script é a porta de entrada for automação de chart. É a linguagem nativa do TradingView, was desenhada especificamente for análise técnica, e tem uma vantagem enorme for quem está começando: você programa, plota e faz backtest na mesma tela, without instalar nada. Este tutorial usa a versão atual, Pine Script v5.

01 What is Pine Script (e why começar por ele)

Pine Script is a linguagem de script criada by the TradingView for dois propósitos: criar indicadores personalizados (que se plotam no chart) e criar estratégias (que geram sinais de compra/venda e can ser testadas no histórico). É simples, específica e roda na nuvem do TradingView — você doesn't need de servidor nem instalação.

Why é ótimo for aprender: o ciclo escrever→plotar→testar é instantâneo e visual. Você vê o resultado no chart na hora. Comparado a montar todo o pipeline de dados em Python, é very mais rápido for validar uma ideia de estratégia.

02Your first indicator

No TradingView, abra o Pine Editor (aba na parte inferior do chart). Todo script começa declarando a versão e o tipo. Vamos plotar uma média móvel simples:

//@version=5
indicator("Minha Primeira MM", overlay=true)

// input: deixa o período ajustável by the interface
periodo = input.int(20, "Período da Média")

// calcula a média móvel simples do fechamento
media = ta.sma(close, periodo)

// plota no chart
plot(media, "MM", color=color.aqua, linewidth=2)

Click on Adicionar ao chart. Pronto — sua média aparece about os candles. O overlay=true is what faz o indicador desenhar sobre o preço (em vez de num painel separado embaixo).

03Os conceitos that you precisa entender

A série de tempo

No Pine, variáveis como close, open, high, low aren't um número só — are séries. O script roda uma vez for each candle do chart, e close always se refere ao fechamento do candle atual naquela passagem. Pra acessar candles anteriores, use colchetes: close[1] é o fechamento do candle anterior, close[2] o de dois atrás.

Funções da biblioteca ta

A biblioteca ta (technical analysis) tem tudo pronto: ta.sma() (média simples), ta.ema() (exponencial), ta.rsi(), ta.macd(), ta.crossover() (cruzamento for cima), ta.crossunder() (cruzamento for baixo). Você raramente precisa calcular indicador na mão.

04De indicador a estratégia

A diferença crucial: indicator() só desenha; strategy() simula operações e gera relatório de backtest. Vamos transformar a média num sistema de cruzamento que opera:

//@version=5
strategy("Cruzamento de Médias", overlay=true,
         initial_capital=10000, default_qty_type=strategy.percent_of_equity,
         default_qty_value=10)

// parâmetros ajustáveis
rapida = input.int(9,  "MM Rápida")
lenta  = input.int(21, "MM Lenta")

ma_rapida = ta.ema(close, rapida)
ma_lenta  = ta.ema(close, lenta)

// detecta os cruzamentos
cruzaCima  = ta.crossover(ma_rapida, ma_lenta)
cruzaBaixo = ta.crossunder(ma_rapida, ma_lenta)

// regras de operação
if cruzaCima
    strategy.entry("Compra", strategy.long)
if cruzaBaixo
    strategy.close("Compra")

// visualizar as médias
plot(ma_rapida, "Rápida", color=color.lime)
plot(ma_lenta,  "Lenta",  color=color.orange)

Ao adicionar ao chart, o TradingView abre automaticamente o Strategy Tester embaixo — com lucro líquido, número de trades, win rate, maximum drawdown e a curva de capital. Você acabou de fazer backtest without escrever uma linha de código de teste.

Quer estratégias prontas for adaptar?

Veja nossa coletânea de estratégias clássicas com a lógica explicada — prontas for virar código.

See strategies →

05Adicionando stop loss e take profit

Estratégia without risk management é incompleta. No Pine, você define stop e alvo no momento da entrada:

// inside do bloco de entrada
if cruzaCima
    strategy.entry("Compra", strategy.long)
    // stop 2% abaixo, alvo 4% above (risco:retorno 1:2)
    strategy.exit("Saida", "Compra",
                   stop  = close * 0.98,
                   limit = close * 1.04)

Dica: o Strategy Tester recalcula tudo when você muda esses valores. Use for ver como diferentes níveis de stop/alvo afetam o resultado — but cuidado com overfitting (otimizar demais for the passado).

06Alertas: a ponte for automação

Pine Script roda no TradingView e não executa ordens sozinho na sua broker. A ponte for automação are os alertas. Você adiciona um alerta no código, e when a condição dispara, o TradingView can enviar um webhook (uma requisição HTTP) for um servidor que executa a ordem na broker.

// dispara alerta no cruzamento
if cruzaCima
    alert("COMPRA BTCUSDT", alert.freq_once_per_bar_close)
if cruzaBaixo
    alert("VENDA BTCUSDT", alert.freq_once_per_bar_close)

Duas formas de transformar o alerta em ordem real: (1) integração nativa — brokers que suportam TradingView (como a Pepperstone) executam direto do chart; (2) webhook + servidor — o alerta chama seu servidor (ex: um script Python que recebe o webhook e envia a ordem via API, como mostramos no tutorial da Binance).

Atenção: automação via webhook adiciona pontos de falha (servidor cai, requisição se perde, latency). Pra estratégias sensíveis a tempo, a integração nativa da broker é mais confiável. Teste exaustivamente em demo account before de automatizar com dinheiro real.

07 Next steps for dominar

  • Estude a biblioteca ta inteira — RSI, MACD, Bollinger, ATR. Cada uma abre novas estratégias.
  • Aprenda arrays e var for manter estado between candles (ex: rastrear um nível de support).
  • Detecte padrões de SMC — order blocks e fair value gaps can ser codificados em Pine (veja nosso guia de Smart Money Concepts).
  • Leia o manual oficial do Pine v5 — é a melhor referência e tem exemplos for tudo.

08 Pertanyaan yang sering diajukan

What is Pine Script?

É a linguagem de programação do TradingView, for criar indicadores personalizados e estratégias com backtest direto na plataforma. Roda na nuvem — doesn't need instalar nada.

Pine Script é difícil?

Não. É simples e específica for análise de charts. Quem already programou aprende em horas; iniciantes pegam o básico em poucos dias. O ciclo visual escrever→plotar→testar acelera very o aprendizado.

Dá for operar truly com Pine Script?

Pine gera sinais e alertas. Pra executar ordens reais automaticamente, você conecta os alertas a um webhook (que envia ordem à broker via API) ou usa a integração nativa de brokers que suportam TradingView.

Pine Script ou Python for automação?

Pine é melhor for prototipar e fazer backtest visual rápido. Python dá controle total e roda independente do TradingView, ideal for execution robusta. Muitos usam Pine for desenhar a estratégia e Python for executá-la.

Preciso pagar TradingView for usar Pine?

O plano gratuito permite criar e testar scripts com limitações (número de indicadores simultâneos, alertas). Pra automação séria com vários alertas, os planos pagos liberam mais recursos.