Great Expectations [LucF]
Biblioteca Pine Script do autor LucF para visualização de P&L Cloud histórico — mostra o range de lucros e perdas possíveis ao longo do tempo. AVISO: repinta fortemente.
Autor: LucF (PineCoders)
Tipo: Biblioteca (library)
Categoria: Análise Avançada
Fonte: TradingView Script
⚠️ AVISO CRÍTICO: Esta biblioteca repinta fortemente. Os valores históricos mudam conforme novos dados chegam. NÃO USE para decisões de trading em tempo real. Use exclusivamente para análise retrospectiva e estudo.
Visão geral
Great Expectations [LucF] é uma ferramenta de visualização que constrói uma "nuvem de P&L" (P&L Cloud) — uma representação visual do range de lucros e perdas potenciais de uma estratégia ao longo do tempo histórico.
Para que serve: Análise exploratória de estratégias, entendimento visual de drawdowns históricos, comparação de períodos de performance — sempre em análise retrospectiva, nunca para sinais ao vivo.
O que é P&L Cloud?
P&L Cloud é uma banda que representa o range de resultados possíveis:
Limite superior: melhor P&L alcançado no período
Linha central: P&L médio
Limite inferior: pior P&L (maior drawdown)
┌─────────── Melhor P&L
│ Nuvem de P&L
──────────│──────── P&L médio
│
└─────────── Pior P&L (drawdown máximo)Por que esta biblioteca repinta?
Repintura acontece quando:
1. Você está na barra 100
2. A biblioteca calcula o P&L Cloud retroativamente para a barra 50
3. Ela usa dados das barras 51–100 para construir essa análise
4. Quando a barra 101 chega, o cálculo da barra 50 muda (agora usa 51–101)
Isso é LOOKAHEAD POR DESIGN — a biblioteca usa dados futuros
para construir a visualização histórica.API / Funções
| Função | Parâmetros | Retorno | Descrição |
|---|---|---|---|
cloud() | pnlSeries, lookback | [float, float] | Range [max, min] do P&L no período |
render() | upper, lower, mid | — | Desenha a nuvem no gráfico |
setColors() | bullColor, bearColor | — | Define cores da nuvem |
worstDrawdown() | pnlSeries, lookback | float | Maior drawdown no período |
Exemplo de uso
//@version=6
indicator("Great Expectations — P&L Cloud", overlay=false)
import LucF/GreatExpectations/1 as ge
// Calcular P&L da sua estratégia
// (aqui usando uma EMA cross simples como exemplo)
fastMA = ta.ema(close, 10)
slowMA = ta.ema(close, 30)
var float entryPrice = na
var float pnl = 0.0
if ta.crossover(fastMA, slowMA)
entryPrice := close
if not na(entryPrice)
pnl := (close - entryPrice) / entryPrice * 100
// Construir a nuvem (REPINTA — apenas análise histórica)
[upper, lower] = ge.cloud(pnl, lookback=50)
mid = (upper + lower) / 2
ge.render(upper, lower, mid)
// Plotar
plot(upper, "P&L Máximo", color=color.new(color.green, 60), style=plot.style_area)
plot(lower, "P&L Mínimo", color=color.new(color.red, 60), style=plot.style_area)
plot(mid, "P&L Médio", color=color.blue, linewidth=2)
plot(pnl, "P&L Atual", color=color.white)Interpretação da nuvem
Período 1 (Jan–Mar):
Nuvem estreita e acima de zero → estratégia consistente e lucrativa
Período 2 (Abr–Jun):
Nuvem larga cruzando zero → alta incerteza, resultados mistos
Período 3 (Jul–Set):
Nuvem abaixo de zero → estratégia em drawdown no períodoIntegrações
| Script | Como combinar |
|---|---|
| BackTestLib | Usar o P&L do BackTestLib como input para o Cloud |
| MonthlyReturnsVsMarket | Visão mensal complementa a nuvem temporal |
| LapseBacktestingTable | Métricas numéricas para complementar visualização |
Limitações
| Limitação | Impacto |
|---|---|
| Repinta fortemente | Resultados históricos mudam com novos dados — NUNCA usar ao vivo |
| Usa lookahead por design | Não reflete o que teria sido visto em tempo real |
| Apenas visual | Não retorna métricas numéricas precisas |
| Lookback muito longo aumenta repintura | Usar lookback menor para menos distorção |
Quando usar / não usar
| Cenário | Recomendação |
|---|---|
| Análise exploratória de uma ideia de estratégia | ✅ Útil para entender o range de resultados históricos |
| Comparação visual de períodos de mercado | ✅ Excelente para apresentações e análise retrospectiva |
| Tomada de decisão de trading em tempo real | ❌ Proibido — repinta, dados não confiáveis ao vivo |
| Backtesting para otimização de parâmetros | ❌ Use BackTestLib + LapseBacktestingTable (sem repintura) |
Aviso Legal: Conteúdo educativo. Não constitui recomendação de investimento. Resultados passados não garantem resultados futuros. Esta ferramenta usa lookahead e repinta — qualquer análise realizada é retrospectiva e não representa o que seria visível em tempo real.
Análise Avançada
Bibliotecas Pine Script para análise avançada de performance, incluindo visualizações históricas de P&L. Atenção: alguns scripts desta categoria repintam.
Backtesting
Bibliotecas Pine Script para backtesting avançado em indicadores: simulação de trades, métricas Sharpe/Sortino/Omega, filtros por data e tabelas visuais de performance.