Diário de trading — planilha, estatísticas e revisão de desempenho
Um guia completo para construir uma planilha de diário em cerca de 20 minutos (tempo indicativo para quem conhece o básico de planilhas; a primeira importação e as verificações podem demorar mais): 26 colunas com nomes técnicos coerentes com o artigo 15.9, fórmulas por linha e painel de nove métricas em duas variantes (Excel polonês e inglês; configurações de planilhas na nuvem são abordadas abaixo), além de um CSV inicial gerado no navegador. Você pode baixar o XLSX pronto ou construir a planilha com as instruções completas abaixo. Aprender as fórmulas ajuda a entender e corrigir os cálculos; graças aos nomes de coluna compartilhados, uma exportação CSV deste diário, com delimitador, codificação e formato de data corretos, funciona com o script S1–S3 pronto do suplemento I e com o script do prompt P5; as auditorias P6–P7 exigem duas colunas adicionais (abaixo).
- 26 colunas em cinco grupos: identificação, contexto, plano versus execução, custos e resultados, processo — com fórmulas apenas onde os números são derivados de outros campos (slippage, r_net, execution_drag)
- Um painel de nove fórmulas: número de operações, taxa de acerto, fator de lucro, expectativa, R total, drawdown máximo em R, médias de MAE/MFE, taxa de execução sem erros — métricas de desempenho calculadas por r_net e de processo em colunas separadas; o alcance de MAE/MFE é explicado abaixo
- Duas variantes de fórmulas: Excel PL (ŚREDNIA, LICZ.JEŻELI, ponto e vírgula) e Excel EN (AVERAGE, COUNTIF, vírgulas) — alternador e botões de cópia em cada bloco
- As métricas descrevem a amostra desde o primeiro registro: cerca de 50 operações é um ponto de revisão de exemplo usado no curso, não um mínimo universal ou prova de vantagem. As conclusões dependem de dispersão, dependência entre resultados e plano de testes. Violações de limites ou erros de dados exigem resposta imediata; mudar regras da estratégia exige hipótese e validação separadas
Diário XLSX pronto
Baixar o diário de trading — XLSX em português
O arquivo tem três abas: Statistics, Journal e Instructions, 999 linhas preparadas e fórmulas de resultado líquido, R, slippage e drawdown. As colunas A–Z preservam o formato descrito abaixo; o arquivo também inclui AA–AC (autoavaliação de 15.9), AD (notas), AE–AF (curva de patrimônio e drawdown) e AG (execução sem erros) — as exportações CSV para os scripts abrangem A:Z. As células amarelas recebem dados; não sobrescreva colunas calculadas com uma exportação do broker. Se swap ou comissão for realmente zero, informe 0 — dados ausentes continuam ausentes.
Os exemplos deste guia não entram nas estatísticas do arquivo. O drawdown inclui o ponto inicial de 0 R: uma perda inicial de −1 R produz drawdown de 1 R. Ordene as operações cronologicamente pelo fechamento; mantenha uma ordem coerente quando os horários forem idênticos. Não ordene só a coluna C — os campos de cada registro devem permanecer juntos. Após reordenar linhas, confira se AE/AF ainda acumulam a partir da linha 2. A coluna auxiliar adicional coded_clean não trata um código de erro vazio como execução sem erros.
A planilha mostra médias de MAE e MFE de todas as medições informadas (incluindo zeros), enquanto variantes adicionais para analisar ganhadoras e perdedoras estão abaixo. O arquivo calcula fator de lucro em R, não na moeda da conta. Preencha o resultado planejado na coluna T apenas para o mesmo tipo de saída: compare SL planejado com SL executado e TP com TP. Deixe vazio para saída sem equivalente.
A versão PL usa PLN nos campos *_pln . A versão em português tem a mesma ordem de colunas e nomes monetários neutros sem o sufixo _pln ; você especifica a moeda da conta nas instruções. Ao transferir arquivos CSV entre idiomas, mapeie os cabeçalhos e confira a moeda. Mudar apenas o rótulo da moeda não converte nenhum valor.
Planilha pronta ou construção própria
- Dois caminhos para o mesmo diário: o XLSX pronto contém fórmulas visíveis, e o guia completo permite recriar a planilha. O arquivo não tem macros nem conexão com o broker. O CSV inicial continua sendo gerado localmente no navegador. Você encontra a versão do arquivo na aba Instructions (atualmente 1.2, de 21 de setembro de 2026; o artigo tem numeração própria).
- Você conhece a fundo uma planilha construída por você: quando uma fórmula dá erro anos depois (novo par, outro formato de exportação), fica mais fácil identificar a causa porque você sabe o que ela calcula. Um modelo “mágico” quebra silenciosamente — e um diário que mente é pior do que não ter diário.
- Os nomes das colunas são compartilhados em todo o curso: os cabeçalhos vêm da miniespecificação CSV de 15.9 (a planilha cobre cerca de 20 dos 29 campos lógicos numerados de 15.9 — os ausentes são listados em Fontes), e os mesmos nomes são esperados pelo script S1–S3 pronto do suplemento I e pelo script do prompt P5; as auditorias P6–P7 da oficina de IA também precisam de estado de conformidade com o plano e nota de estado pessoal — adicione: status = “plan” para error_code 0, “breach” para códigos 1–9, e omita as linhas com código 10 (infraestrutura) da exportação P6 ou rotule seu status como “infrastructure” e explique isso no prompt; derive a nota de estado pessoal dos campos de autoavaliação (AA–AC). Um formato, tradução mínima dos dados entre ferramentas.
- A nuvem é conveniente, mas estes são dados da conta: tamanhos de posição, resultados, erros de processo. Faça uma escolha deliberada entre nuvem e armazenamento local — use os mesmos critérios aplicados ao colar dados em modelos de IA (a seção de higiene dos dados no suplemento H).
Estrutura: 26 colunas em 5 grupos
As letras das colunas (A–Z) correspondem ao layout usado pelas fórmulas abaixo — se mudar a ordem, atualize as referências. Mantenha os cabeçalhos técnicos em inglês: isso permite que a exportação CSV funcione com o script P5 sem mapeamento. Você pode adicionar três campos de autoavaliação (mental_state, sleep_hours, decision_quality de 15.9) como colunas opcionais AA–AC (já incluídas no arquivo) — as fórmulas não os exigem.
| Col. | Cabeçalho | Grupo 1: identificação | Exemplo |
|---|---|---|---|
| A | trade_id | número sequencial ou ID da plataforma | 2026-041 |
| B | open_time_utc | data e hora de abertura em UTC — exportações MT4/MT5 usam o horário do servidor do broker (ex.: GMT+2/+3 — confira suas especificações); converta a partir do fuso do servidor (15.9); formato YYYY-MM-DD HH:MM | 2026-07-08 07:42 |
| C | close_time_utc | data e hora de fechamento em UTC (como em B); um valor real de data/hora na planilha, não texto. Vazio = operação aberta, excluída das métricas; uma data inválida ou fechamento anterior à abertura informada não produz R | 2026-07-08 13:15 |
| D | pair | instrumento — 6 caracteres sem separador nem sufixo do broker (EURUSD, não EUR/USD ou EURUSD.m); a fórmula de pip vale apenas para pares FX (um pip é 0.0001, ou 0.01 para pares JPY — identificados pelo final); para outros instrumentos, informe o tamanho do pip pelas especificações e mude o multiplicador | EURUSD |
| E | direction | long / short (minúsculas — a fórmula de slippage compara texto) | long |
| Col. | Cabeçalho | Grupo 2: contexto | Exemplo |
|---|---|---|---|
| F | setup | nome do setup do playbook (suplemento E) | asia-london-breakout |
| G | setup_class | A+ / A / B / C — classe do playbook na entrada; a lista do arquivo segue 15.9. Não atribua classe com base no resultado posterior | A+ |
| H | session | sessão de entrada (Ásia / Londres / NY / sobreposição) | Londres |
| Col. | Cabeçalho | Grupo 3: plano versus execução | Exemplo |
|---|---|---|---|
| I | planned_entry | entrada planejada (registrada ANTES de enviar a ordem) | 1.0850 |
| J | actual_entry | execução real da plataforma | 1.0852 |
| K | planned_sl | stop-loss planejado | 1.0820 |
| L | planned_tp | take-profit planejado | 1.0910 |
| M | actual_exit | preço real de fechamento | 1.0907 |
| N | spread_pips | spread na entrada | 0.7 |
| O | slippage_entry_pips | fórmula — slippage de entrada em pips, positivo = execução pior | 2.0 |
| Col. | Cabeçalho | Grupo 4: custos e resultados | Exemplo |
|---|---|---|---|
| P | swap | valor de swap com sinal na moeda da conta (um custo é negativo) | −3.20 |
| Q | commission | comissão como custo não negativo; 0 se não houver comissão. Converta um custo negativo da exportação do broker para valor positivo para a fórmula não somá-lo ao lucro | 7.00 |
| R | broker_gross_pnl | resultado bruto da plataforma: após spread e execução de preço, antes de swap e comissão | 201.67 |
| S | broker_net_pnl | fórmula (ou informe manualmente se o broker fornecer resultado líquido) | 191.47 |
| T | planned_gross_pnl | resultado planejado para o mesmo tipo de saída (valor): TP planejado para saída no TP, SL planejado para saída no stop; deixe vazio para saída manual ou por tempo — o arquivo então deixa W vazio, enquanto 15.9 calcula o impacto como a soma de slippage de entrada, comissão e swap em R: (O × valor do pip + Q − P) / U, em que o swap P preserva o sinal (negativo = custo) — calculado manualmente, fora da fórmula | 220.00 |
| U | planned_risk | risco planejado na moeda da conta (USD nos exemplos; distância da entrada planejada → SL planejado em pips × valor do pip para o volume planejado). Este é o denominador R fixo da operação, sem ajuste posterior para coincidir com a perda. Não é uma perda máxima garantida: gaps, slippage e custos podem ampliá-la | 110.00 |
| V | r_net | fórmula — resultado líquido em R; a coluna que alimenta as métricas de desempenho | 1.74 |
| W | execution_drag_R | fórmula — diferença entre resultado bruto planejado e resultado líquido real em R; pode ser negativa quando o resultado é melhor que o planejado | 0.26 |
| Col. | Cabeçalho | Grupo 5: processo | Exemplo |
|---|---|---|---|
| X | mae_r | máxima excursão desfavorável do preço durante a vida da posição, em R (definição: 15.9, seção 7) | 0.35 |
| Y | mfe_r | máxima excursão favorável do preço durante a vida da posição, em R | 2.10 |
| Z | error_code | 0 = execução sem erros; 1–9 = códigos de erros de decisão; 10 = erro de infraestrutura (catálogo: 15.9) | 0 |
Fórmulas por linha — colunas calculadas
Variante de fórmulas:
Configurações: a variante PL usa nomes de funções em polonês e ponto e vírgula; EN usa nomes em inglês e vírgulas. O delimitador depende das configurações regionais; no Google Sheets, o idioma das funções é definido separadamente. Ao importar, defina B/C como data e hora e depois confira =CZY.LICZBA(C2) (EN: =ISNUMBER(C2)): o resultado correto é PRAWDA/TRUE. Mudar apenas a aparência da célula não basta.
Insira as fórmulas na linha 2 e preencha para baixo (ou copie para um intervalo). Os intervalos vão até a linha 1000 — para um diário maior, amplie as fórmulas por linha, a validação e todos os intervalos do painel, incluindo as verificações de preenchimento.
=JEŻELI(ORAZ(CZY.LICZBA(I2);CZY.LICZBA(J2);DŁ(D2)=6;LUB(E2="long";E2="short"));JEŻELI(E2="long";J2-I2;I2-J2)*JEŻELI(PRAWY(D2;3)="JPY";100;10000);"")
=IF(AND(ISNUMBER(I2),ISNUMBER(J2),LEN(D2)=6,OR(E2="long",E2="short")),IF(E2="long",J2-I2,I2-J2)*IF(RIGHT(D2,3)="JPY",100,10000),"")
=JEŻELI(ORAZ(ILE.LICZB(P2:R2)=3;Q2>=0);R2+P2-Q2;"")
=IF(AND(COUNT(P2:R2)=3,Q2>=0),R2+P2-Q2,"")
=JEŻELI(ORAZ(CZY.LICZBA(C2);CZY.LICZBA(S2);CZY.LICZBA(U2));JEŻELI(ORAZ(C2>=1;C2<2958466;U2>0;LUB(B2="";ORAZ(CZY.LICZBA(B2);B2>=1;B2<=C2)));S2/U2;"");"")
=IF(AND(ISNUMBER(C2),ISNUMBER(S2),ISNUMBER(U2)),IF(AND(C2>=1,C2<2958466,U2>0,OR(B2="",AND(ISNUMBER(B2),B2>=1,B2<=C2))),S2/U2,""),"")
=JEŻELI(ORAZ(CZY.LICZBA(V2);CZY.LICZBA(T2));(T2-S2)/U2;"")
=IF(AND(ISNUMBER(V2),ISNUMBER(T2)),(T2-S2)/U2,"")
Painel: 9 métricas e como interpretá-las
Cole as métricas em uma aba separada (como no arquivo: acrescente o nome da aba antes de cada intervalo, ex. 'Journal'!V2:V1000) ou acima da tabela — nesse caso, os cabeçalhos saem da linha 1 e você precisa ajustar as referências. Copiar um bloco fornece várias fórmulas em linhas separadas; coloque cada uma na célula apropriada. AE2, AF2 e AG2 pertencem à aba Journal, não à Statistics.
Um diário vazio dá N = 0, R total = 0 e drawdown máximo = 0; WR, PF, expectativa e médias sem medições ficam vazios. PF também fica vazio quando não há perdas, pois a razão não tem valor finito nesse caso. Resultados em R exigem resultado líquido em S, U positivo e data/hora numérica em C dentro do intervalo de datas do Excel. Se B estiver preenchido, deve ser uma data reconhecida não posterior a C. O Excel armazena datas como números; a formatação da célula não converte texto em data nem verifica se o horário foi realmente inserido em UTC.
A versão 1.2 do arquivo usa validação do tipo Stop para datas, direção, classe, custo de comissão, risco, MAE/MFE e código. Colar dados pode contornar a validação — por isso V rejeita datas em texto e risco não positivo, S rejeita custos de comissão negativos, e AG aceita somente códigos inteiros 0–10. As verificações nas linhas 16–19 de Statistics mostram fechamentos informados sem R, operações com R mas sem código válido e medições inválidas de MAE e MFE. Uma fórmula de data que retorna texto vazio é tratada como fechamento ausente, não como operação fechada inválida. Qualquer contagem acima de zero precisa ser explicada antes de avaliar a amostra completa.
As métricas de desempenho usam V. As médias de MAE/MFE de todas as medições informadas usam uma amostra separada: incluem números não negativos, inclusive zero, mesmo quando V ainda está vazio. Um número negativo, texto (incluindo “0.5” armazenado como texto), espaço ou valor booleano em uma coluna de medição bloqueia sua média até a resolução, em vez de distorcer silenciosamente o resultado. A contagem de células inválidas fica em Statistics B18 para MAE e B19 para MFE; um erro em uma coluna não bloqueia uma média válida na outra. Não compare automaticamente os tamanhos dessas amostras com o número de operações fechadas. Informe medições não negativas para o mesmo período definido da vida da posição; deixe as ausentes vazias. As variantes de ganhadoras/perdedoras abaixo selecionam um subconjunto por V.
Número de operações: =ILE.LICZB(V2:V1000) Taxa de acerto: =JEŻELI(ILE.LICZB(V2:V1000)=0;"";LICZ.JEŻELI(V2:V1000;">0")/ILE.LICZB(V2:V1000)) Fator de lucro: =JEŻELI(LICZ.JEŻELI(V2:V1000;"<0")=0;"";SUMA.JEŻELI(V2:V1000;">0")/-SUMA.JEŻELI(V2:V1000;"<0")) Expectativa (R): =JEŻELI(ILE.LICZB(V2:V1000)=0;"";ŚREDNIA(V2:V1000)) R total: =SUMA(V2:V1000)
Número de operações: =COUNT(V2:V1000) Taxa de acerto: =IF(COUNT(V2:V1000)=0,"",COUNTIF(V2:V1000,">0")/COUNT(V2:V1000)) Fator de lucro: =IF(COUNTIF(V2:V1000,"<0")=0,"",SUMIF(V2:V1000,">0")/-SUMIF(V2:V1000,"<0")) Expectativa (R): =IF(COUNT(V2:V1000)=0,"",AVERAGE(V2:V1000)) R total: =SUM(V2:V1000)
AE2 (curva): =JEŻELI(CZY.LICZBA(V2);SUMA($V$2:V2);"") AF2 (drawdown): =JEŻELI(CZY.LICZBA(AE2);MAX(0;$AE$2:AE2)-AE2;"") Drawdown máximo (R): =MAX(AF2:AF1000)
AE2 (curva): =IF(ISNUMBER(V2),SUM($V$2:V2),"") AF2 (drawdown): =IF(ISNUMBER(AE2),MAX(0,$AE$2:AE2)-AE2,"") Drawdown máximo (R): =MAX(AF2:AF1000)
MAE médio (todas): =JEŻELI(WIERSZE(X2:X1000)-LICZ.PUSTE(X2:X1000)-ILE.LICZB(X2:X1000)+LICZ.JEŻELI(X2:X1000;"<0")>0;"";JEŻELI(ILE.LICZB(X2:X1000)=0;"";ŚREDNIA(X2:X1000))) (como no arquivo, B11) MFE médio (todas): =JEŻELI(WIERSZE(Y2:Y1000)-LICZ.PUSTE(Y2:Y1000)-ILE.LICZB(Y2:Y1000)+LICZ.JEŻELI(Y2:Y1000;"<0")>0;"";JEŻELI(ILE.LICZB(Y2:Y1000)=0;"";ŚREDNIA(Y2:Y1000))) (como no arquivo, B12) MAE médio das ganhadoras: =JEŻELI(WIERSZE(X2:X1000)-LICZ.PUSTE(X2:X1000)-ILE.LICZB(X2:X1000)+LICZ.JEŻELI(X2:X1000;"<0")>0;"";JEŻELI.BŁĄD(ŚREDNIA.JEŻELI(V2:V1000;">0";X2:X1000);"")) MFE médio das perdedoras: =JEŻELI(WIERSZE(Y2:Y1000)-LICZ.PUSTE(Y2:Y1000)-ILE.LICZB(Y2:Y1000)+LICZ.JEŻELI(Y2:Y1000;"<0")>0;"";JEŻELI.BŁĄD(ŚREDNIA.JEŻELI(V2:V1000;"<0";Y2:Y1000);"")) AG2 (coded_clean): =JEŻELI(ORAZ(CZY.LICZBA(V2);CZY.LICZBA(Z2));JEŻELI(ORAZ(Z2>=0;Z2<=10;Z2=LICZBA.CAŁK(Z2));JEŻELI(Z2=0;1;0);"");"") Execução sem erros: =JEŻELI(ILE.LICZB(AG2:AG1000)=0;"";ŚREDNIA(AG2:AG1000)) Impacto médio da execução: =JEŻELI(ILE.LICZB(W2:W1000)=0;"";ŚREDNIA(W2:W1000)) (opcional, não está no arquivo)
MAE médio (todas): =IF(ROWS(X2:X1000)-COUNTBLANK(X2:X1000)-COUNT(X2:X1000)+COUNTIF(X2:X1000,"<0")>0,"",IF(COUNT(X2:X1000)=0,"",AVERAGE(X2:X1000))) (como no arquivo, B11) MFE médio (todas): =IF(ROWS(Y2:Y1000)-COUNTBLANK(Y2:Y1000)-COUNT(Y2:Y1000)+COUNTIF(Y2:Y1000,"<0")>0,"",IF(COUNT(Y2:Y1000)=0,"",AVERAGE(Y2:Y1000))) (como no arquivo, B12) MAE médio das ganhadoras: =IF(ROWS(X2:X1000)-COUNTBLANK(X2:X1000)-COUNT(X2:X1000)+COUNTIF(X2:X1000,"<0")>0,"",IFERROR(AVERAGEIF(V2:V1000,">0",X2:X1000),"")) MFE médio das perdedoras: =IF(ROWS(Y2:Y1000)-COUNTBLANK(Y2:Y1000)-COUNT(Y2:Y1000)+COUNTIF(Y2:Y1000,"<0")>0,"",IFERROR(AVERAGEIF(V2:V1000,"<0",Y2:Y1000),"")) AG2 (coded_clean): =IF(AND(ISNUMBER(V2),ISNUMBER(Z2)),IF(AND(Z2>=0,Z2<=10,Z2=INT(Z2)),IF(Z2=0,1,0),""),"") Execução sem erros: =IF(COUNT(AG2:AG1000)=0,"",AVERAGE(AG2:AG1000)) Impacto médio da execução: =IF(COUNT(W2:W1000)=0,"",AVERAGE(W2:W1000)) (opcional, não está no arquivo)
Fechamento sem R: =WIERSZE(C2:C1000)-LICZ.PUSTE(C2:C1000)-ILE.LICZB(V2:V1000) R sem código: =ILE.LICZB(V2:V1000)-ILE.LICZB(AG2:AG1000) MAE inválido: =WIERSZE(X2:X1000)-LICZ.PUSTE(X2:X1000)-ILE.LICZB(X2:X1000)+LICZ.JEŻELI(X2:X1000;"<0") MFE inválido: =WIERSZE(Y2:Y1000)-LICZ.PUSTE(Y2:Y1000)-ILE.LICZB(Y2:Y1000)+LICZ.JEŻELI(Y2:Y1000;"<0")
Fechamento sem R: =ROWS(C2:C1000)-COUNTBLANK(C2:C1000)-COUNT(V2:V1000) R sem código: =COUNT(V2:V1000)-COUNT(AG2:AG1000) MAE inválido: =ROWS(X2:X1000)-COUNTBLANK(X2:X1000)-COUNT(X2:X1000)+COUNTIF(X2:X1000,"<0") MFE inválido: =ROWS(Y2:Y1000)-COUNTBLANK(Y2:Y1000)-COUNT(Y2:Y1000)+COUNTIF(Y2:Y1000,"<0")
| Métrica | Como ler os resultados e suas limitações |
|---|---|
| Taxa de acerto | Sozinha, não diz nada sobre uma vantagem — veja o gráfico abaixo. Fica vazia quando não há operações fechadas; 0% significa amostra sem ganhadoras. Use-a para comparar resultados com as premissas do playbook, não para julgar “sou bom nisso?” |
| Fator de lucro | Abaixo de 1.0 = resultado negativo em R para a amostra analisada; só tem significado junto com número de operações e drawdown. Ausência de perdas na amostra significa divisão por zero, não “vantagem infinita” |
| Expectativa (R) | O número mais importante do diário: resultado líquido médio por operação. Um valor positivo após custos descreve esta amostra, mas não prova, por si só, uma vantagem. Avalie dispersão, dependência entre resultados, estabilidade das condições e resultados de validação conforme o protocolo de testes (N). O número 50 é um ponto de revisão de exemplo, e a decisão de aumentar a escala também exige conformidade com o plano de risco |
| Drawdown máximo (R) | Uma medida do histórico completo: AF calcula o drawdown a partir do maior pico da curva, portanto não é a perda da semana. O limite semanal do plano (suplemento E) é expresso no R base do plano ou em porcentagem do capital. Não o compare diretamente com o r_net total se as operações tiveram valores U diferentes. Com R base constante na moeda da conta, o resultado do período na unidade do plano é a soma dos resultados líquidos em S naquele período dividida pelo valor do R base. Para limite percentual, use a base de capital especificada no plano. AF descreve o caminho do R acumulado das operações, não o drawdown do saldo ou patrimônio da conta. Um drawdown incomum exige conferir dados, condições e premissas dos testes |
| Média de MAE das ganhadoras | Baixa (ex.: < 0.4R) = hipótese de que o stop é mais amplo que o necessário — a testar em uma nova amostra, não a encurtar imediatamente (15.9); perto de 1R = as ganhadoras sofreram movimento adverso próximo ao risco integral — confira entradas e posição do stop antes de concluir que é um problema de execução |
| MFE médio das perdedoras | Alto = as operações andaram a seu favor e depois inverteram — audite as regras de saída e realização parcial de lucro |
| Impacto da execução (média) | Uma fórmula opcional (acima), calculada só nas operações com T preenchido. Um valor persistentemente alto indica diferença entre resultado bruto planejado e resultado líquido real em saídas comparáveis: inclui custos e diferenças nos preços de execução. Saídas manuais/antecipadas sem equivalente não entram nesta média. Não a combine com a estimativa simplificada de custos dessas saídas |
| Execução sem erros | A porcentagem de operações fechadas com error_code = 0 (a coluna AG conta apenas operações com R válido e código inteiro de 0 a 10; código ausente não conta como execução sem erros). Cerca de 90% pode ser um limiar de trabalho em um plano específico, não um padrão de qualidade. Confira o número de operações avaliadas e códigos ausentes: 100% obtidos de um código 0 e muitos códigos vazios não descrevem o diário inteiro. Uma violação crítica exige ação independentemente da porcentagem. Métricas de operações que violam regras não são um teste limpo dessas regras |
CSV inicial e importação
O botão cria o arquivo CSV inteiramente no navegador, sem enviar dados nem fazer uma solicitação de rede separada: 26 cabeçalhos e duas linhas de exemplo — uma ganhadora e uma perdedora — para as fórmulas demonstrarem como funcionam. A variante PL usa ponto e vírgula e vírgula decimal (selecione o delimitador explicitamente na importação; o comportamento do clique duplo depende das configurações do sistema), enquanto EN usa vírgulas e ponto decimal. Após importar, substitua as colunas calculadas (O, S, V, W) nas linhas de exemplo pelas fórmulas da seção acima e apague os exemplos antes do primeiro registro (ou mantenha-os em arquivo separado). Uma exportação CSV pode salvar a precisão exibida pelo programa; no XLSX 1.2, as colunas V e W usam seis casas decimais. O CSV inicial também usa seis casas, calculadas pelos valores de cada linha. Com esse arredondamento, o erro em um valor R individual não excede 0.0000005 R; PF pode ser mais sensível quando a soma das perdas é muito pequena. Um resultado com valor absoluto abaixo de 0.0000005 R pode arredondar para zero, mudando a classificação ganho/perda e a taxa de acerto; para esses dados, aumente a precisão antes de exportar. Para análise que exija maior precisão, aumente-a antes da exportação, não só depois no script.
yyyy-mm-dd hh:mm (uma interface polonesa pode mostrar rrrr-mm-dd gg:mm), e V/W com no mínimo seis casas decimais, sem separador de milhares. Salve como CSV UTF-8. Antes de combinar arquivos, confira se os valores trade_id são únicos: o script S1 não remove duplicações. Agregue execuções parciais de uma posição conforme a unidade de operação escolhida (incluindo custos), preservando seu U original; não conte a mesma operação tanto como várias execuções quanto como resumo único. Abra uma cópia em um editor de texto: confira os 26 campos por registro, delimitador, datas UTC e números. CSV contém valores, não fórmulas nem outras abas — guarde o XLSX original. Para S1, configure PL: CSV_SEP=";", DECIMAL=","; EN: CSV_SEP=",", DECIMAL=".". UTF-8 com BOM pode ser lido como utf-8-sig.Conferindo os dois exemplos: resultado líquido de USD 191.47 com risco de USD 110 dá 1.740636 R; resultado líquido de −USD 113.10 com risco de USD 105 dá −1.077143 R. Com esses valores de seis casas decimais, o script deve produzir N = 2, WR = 50%, total de 0.663493 R, expectativa de 0.3317465 R, PF de aproximadamente 1.615974852 e DD máximo de 1.077143 R. S2 imprime números arredondados: WR 0.5; PF 1.62; expectativa 0.332 R; total 0.66 R; DD máximo 1.08 R. As fórmulas completas do XLSX calculam por razões não arredondadas, portanto os últimos dígitos podem diferir. S1 interrompe a análise em uma operação fechada inválida; P5 instrui o script a excluir e relatar esse registro. Compare métricas apenas após conciliar a amostra. P5 é uma instrução para gerar um script, não um arquivo pronto com resultado garantido.
Construção passo a passo
- Crie uma planilha em branco no Excel ou LibreOffice Calc; uma planilha na nuvem também funciona — mas estes são dados da conta, portanto escolha deliberadamente.
- Importe o CSV inicial (ou copie os cabeçalhos das tabelas de estrutura). Confira se os números foram importados como números — se “1.0850” aparecer como texto, a variante de delimitador não corresponde às configurações do sistema.
- Cole as fórmulas por linha em O2, S2, V2 e W2 e preencha para baixo com uma reserva de linhas.
- Cole o painel (métricas 1–9) acima da tabela ou em aba separada; preencha as colunas auxiliares AE, AF e AG para baixo da mesma forma que as fórmulas por linha, até a última linha preparada.
- Estabeleça uma rotina: faça um registro após cada operação fechada (a lista EOD do suplemento J inclui isso), leia as métricas na revisão semanal e tome decisões de playbook trimestralmente (suplemento E).
Perguntas frequentes
Excel, LibreOffice ou planilha na nuvem?
As fórmulas usam funções básicas disponíveis no Excel, LibreOffice Calc e Google Sheets. Porém, a escolha de nomes de funções e delimitadores depende do programa e das configurações do arquivo: a variante PL mostra nomes poloneses e ponto e vírgula, enquanto EN mostra nomes ingleses e vírgulas. Uma planilha na nuvem pode exigir nomes ingleses com ponto e vírgula. Não afirmamos ter testado todas as versões desses programas. A diferença real está em outro ponto: o diário contém tamanhos de posição, resultados e um catálogo dos seus erros — na nuvem, esses dados ficam sujeitos às políticas do provedor e são armazenados fora do seu próprio disco. A regra desta seção é manter os dados da conta locais por padrão; use a nuvem deliberadamente e exporte um backup. É a mesma decisão exigida pela seção de higiene de dados do suplemento H antes de colar um diário em um chat.
Quantas operações são necessárias para as métricas terem significado?
As métricas descrevem a amostra desde a primeira operação; cerca de cinquenta é um ponto de trabalho de exemplo para a primeira revisão do sistema, não um limiar de significância — antes disso, expectativa e taxa de acerto mudam bastante após cada sequência e dizem mais sobre ela que sobre o sistema; dispersão e dependência entre resultados também importam (por isso o mesmo número aparece no playbook do suplemento E como limiar de classe A+). Isso não significa que o diário seja inútil antes: métricas de processo funcionam desde o primeiro registro — taxa de execução sem erros e preenchimento dos registros — e determinam se os números do sistema algum dia serão confiáveis. A ordem é sempre a mesma: primeiro o processo, depois a amostra e, por fim, a avaliação do sistema. Atualização sobre a versão atual de E: as cerca de cinquenta operações citadas são um momento ilustrativo para revisão, não um limiar A+ do playbook atual. A classificação segue condições necessárias e critérios de qualidade definidos previamente; o tamanho da amostra, por si só, não atribui uma classe.
Por que ter uma coluna error_code se o resultado já aparece?
Porque resultado e qualidade da decisão são dimensões separadas: há operações lucrativas que violam o plano (o caso mais perigoso — uma violação recompensada se reforça) e execuções exemplares que acabam em perda. Error_code 0–10 permite calcular a expectativa SEPARADAMENTE para execução sem erros: se o sistema ganha dinheiro após filtrar as violações, isso sugere um problema de execução, não das regras — uma diferença entre subgrupos ainda não prova a causa; só mostra onde procurar. Mantenha o código 10 (erro de infraestrutura) separado dos erros de decisão; os procedimentos para esses casos estão no suplemento K, enquanto o catálogo dos códigos 1–9 está em 15.9.
Meu Excel não aceita as fórmulas — o que devo conferir?
Quase sempre é uma de três coisas. Primeiro, a variante: idioma das funções e delimitador de argumentos são configurações separadas. O alternador oferece duas combinações comuns (PL: nomes poloneses + ponto e vírgula; EN: nomes ingleses + vírgulas), mas confira as configurações regionais. No Google Sheets, confira também a opção de usar nomes de funções em inglês. Segundo, o separador decimal: um sistema com vírgula decimal lê “1.0850” como texto — por isso existem duas variantes CSV. Terceiro, as aspas: copiar por aplicativos de mensagens pode trocar aspas retas por tipográficas — copie pelo botão desta página, sem intermediário. Se algo ainda não calcular, o prompt P3 do suplemento H pode revisar fórmulas tão bem quanto código.
Material relacionado do curso
- 15.9 Diário e métricas — catálogo completo dos campos (incluindo códigos de erro 0–10), definições de MAE/MFE e métricas avançadas (SQN, Sortino)
- 15.10 Auditoria da estratégia — o que se pode inferir das métricas e com qual amostra
- Suplemento I — kit de código — script S1–S3 pronto e testado: lê a exportação CSV desta planilha (A–Z), calcula métricas e desenha a curva de patrimônio
- Suplemento H, prompts P5–P7 — script para calcular métricas da exportação CSV desta planilha, mais auditorias de padrões (P6–P7: adicione estado de conformidade com o plano e nota de estado pessoal; P7 espera métricas semanais — copie as linhas fechadas naquela semana para uma aba separada e calcule ali as mesmas fórmulas; um filtro automático sozinho não muda os resultados de COUNT/SUM/AVERAGE)
- Suplemento E — modelo de plano — playbook calibrado trimestralmente pelos números deste diário
- Suplemento J — listas de verificação — rotina EOD/EOW que mantém o diário em uso
Fontes
- Van K. Tharp, Trade Your Way to Financial Freedom, 2ª ed., McGraw-Hill 2007 — conceitos de múltiplos de R e expectativa como métricas centrais do sistema, nos quais se baseiam a coluna r_net e o painel.
- Interno: 15.9 Diário e métricas (estrutura dos campos, códigos de erro, MAE/MFE) e 15.10 Auditoria da estratégia (inferência disciplinada a partir de uma amostra) — 26 colunas A–Z mais 3 campos de autoavaliação dão 29 colunas no arquivo, mas a planilha cobre cerca de 20 dos 29 campos lógicos numerados de 15.9; os ausentes são regime, actual_tp, slippage_exit_pips e quatro que a própria seção 15.9 pede para adicionar (“a planilha é anterior a esta seção”): lots, pip_value_at_open, strategy_version, evidence_link — se usar o script de 15.9, adicione-os como colunas opcionais a partir de AH para não sobrescrever AA–AG existentes; para scripts que esperam A:Z, continue exportando apenas esse intervalo.
- Documentação: Microsoft — delimitador de argumentos e CSV, Microsoft — importação e exportação de CSV, Google Sheets — localidade e idioma das funções. Verificado em 21 de setembro de 2026; são regras de configuração, não uma afirmação de que todo aplicativo foi testado.
- NIST — incerteza da média: dependência do tamanho da amostra e da dispersão; não justifica um limiar universal de 50 operações. Verificado em 21 de setembro de 2026.