Kaique Mitsuo Silva Yamamoto
Mercado financeiroAutomação de EstratégiasTradingView / Pine ScriptBibliotecasGestão de Ordens

TradeTrackerv2

Biblioteca Pine Script para visualização de trades diretamente no gráfico, com cálculo de R-multiple e rastreamento histórico de entradas e saídas.

Tipo: Biblioteca (library) Categoria: Gestão de Ordens Fonte: TradingView Script


Visão geral

TradeTrackerv2 adiciona visualização de trades diretamente no gráfico, desenhando linhas de entrada, stop-loss, take-profit e conectando-os visualmente para facilitar a revisão do histórico de operações.

Diferencial: Calcula automaticamente o R-multiple de cada trade — métrica que normaliza o resultado em termos do risco assumido (1R = valor do SL).


O que é R-multiple?

R = Risco em pontos = Entrada − SL (para longs)

R-multiple = Resultado / Risco
  +2R = lucrou o dobro do que arriscou
  +1R = lucrou igual ao que arriscou
  -1R = perdeu o SL completo (resultado esperado de um stop)
  -2R = perdeu o dobro (SL não funcionou como esperado)

Traders profissionais buscam trades com expectativa > 1R.

API / Funções

FunçãoParâmetrosRetornoDescrição
addTrade()entry, sl, tp, directionTradeIdRegistra um novo trade
closeTrade()id, exitPrice, exitTimeFecha o trade e calcula P&L
getRMultiple()idfloatR-multiple do trade
render()Desenha todos os trades no gráfico
clearAll()Remove todos os trades da visualização

Exemplo de uso

//@version=6
indicator("Trade Tracker — Exemplo", overlay=true)

import author/TradeTrackerv2/1 as tt

// Sinal de entrada
atr = ta.atr(14)
longSignal = ta.crossover(ta.ema(close, 10), ta.ema(close, 30))

var int tradeId = na

// Abrir trade
if longSignal
    entry = close
    sl    = close - atr * 1.5
    tp    = close + atr * 3.0
    tradeId := tt.addTrade(entry, sl, tp, "long")

// Fechar trade (exemplo: cruzamento de saída)
exitSignal = ta.crossunder(ta.ema(close, 10), ta.ema(close, 30))
if exitSignal and not na(tradeId)
    tt.closeTrade(tradeId, close, time)
    label.new(bar_index, low,
        "R: " + str.tostring(tt.getRMultiple(tradeId), "##.##") + "R",
        style=label.style_label_up)

// Renderizar linhas no gráfico
tt.render()

Visualização gerada

Entrada ──────────────────────────────────────── TP (+3R)
         └── linha de entrada
SL ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─  SL (-1R)

  [L]   entrada                        [X] saída em TP → +3R

Integrações

ScriptComo combinar
Position (Electrified)Usar dados de MFE/MAE para análise de qualidade
BackTestLibCombinar visualização com métricas agregadas
LevelsManagerVisualizar múltiplos TPs no gráfico

Limitações

LimitaçãoImpacto
Apenas visualização — não executa ordensNão é uma ferramenta de automação
Muitos trades simultâneos podem poluir o gráficoLimitar a período recente ou usar clearAll()

Aviso Legal: Conteúdo educativo. Não constitui recomendação de investimento. Resultados passados não garantem resultados futuros.

On this page