Considera un diario inventato: Marco registra 171 operazioni e una perdita di 4200 EUR. Aggiungere campi su setup e notizie consente di individuare retrospettivamente un segmento da −2700 EUR, circa 64,3 % del totale perso. Non prova che escluderlo avrebbe prodotto un successivo profitto 8100 EUR. Le venticinque colonne qui proposte sono un progetto editoriale per investigare domande precise, non uno standard obbligatorio o un metodo certificato dalle società di trading.

Dalla domanda ai dati necessari

Un diario di cinque colonne può registrare risultati ma non contenere ciò che serve per una specifica indagine. Questo progetto raggruppa dieci campi operativi, cinque di rischio, cinque di setup e cinque di revisione. Aggiungi o riduci campi secondo lo scopo, conservando un registro sorgente riconciliabile.

Separa il piano disponibile al momento della decisione, eventi effettivi e riepiloghi calcolati. Un fill importato resta dato sorgente anche se non digitato a mano. Definisci la riga riassuntiva come una singola idea operativa e collega le esecuzioni parziali con un ID dell’idea in un foglio operazioni distinto. Due uscite parziali non sono necessariamente due segnali indipendenti. Nel dizionario o nel registro aggiungi conto, valuta, demo/live, fuso e versione della strategia. Non sommare PLN e USD senza conversione definita; Europe/Rome può essere il fuso di visualizzazione, non quello implicito del server.

Dieci campi dell’operazione

Le date includono qui l’orario nello stesso campo. Conserva separatamente prezzi pianificati e fill se vuoi analizzare l’esecuzione; non ricostruire contesto mancante dopo il risultato. Per alcune metriche servono osservazioni intratrade che questi dieci campi non contengono.

  1. Ingresso: data e ora. Usa YYYY-MM-DD e HH:MM, con fuso o riferimento al dizionario; rendi possibile ordinare e segmentare per giorno.
  2. Strumento. Salva simbolo del provider e prodotto, ad esempio EUR/USD, GBP/JPY o oro quotato in USD. XAU/USD non è una coppia di due valute.
  3. Direzione. Long o short: cambia il segno del risultato a parità di prezzi.
  4. Prezzo d’ingresso. Fill effettivo; registra separatamente la quotazione di riferimento e il tempo per distinguere slippage e movimenti successivi.
  5. Stop loss. Livello pianificato e tipo d’ordine. Il fill d’uscita va conservato: uno stop ordinario non garantisce il prezzo indicato.
  6. Take profit. Obiettivo se previsto o regola alternativa documentata; non ogni strategia ha un target fisso.
  7. Quantità. Lotti e unità effettive per lotto. L’etichetta micro/mini/standard non descrive ogni contratto.
  8. Prezzo d’uscita. Fill reale anche per chiusura manuale, stop o target; più fill richiedono collegamento al dettaglio.
  9. Uscita: data e ora. Stesso riferimento temporale dell’ingresso per ricostruire durata e sessione.
  10. Risultato monetario netto. Importo con valuta e tutti gli oneri pertinenti, riconciliati senza duplicazioni.

Per uno strumento lineare, P/L lordo nella valuta quotata = segno della direzione × (uscita−ingresso) × unità; poi conversione secondo il contratto e oneri applicabili. Commissione di trading e finanziamento possono essere registrazioni separate. Lo spread incorporato nei prezzi eseguibili buy/sell non si sottrae nuovamente. Un marchio ECN non determina un costo universale in euro per lotto.

Cinque campi di rischio con denominatori dichiarati

800 EUR di risultato su 400 EUR inizialmente pianificati danno 2 R; 1200 su 1000 danno 1,2 R. I soli rapporti non decidono quale strategia sia migliore o quale rischio sia stato realmente sopportato. R confronta un risultato netto con un riferimento monetario iniziale documentato; anche rendimento sull’equity risponde a una domanda legittima diversa.

  1. Rischio iniziale percentuale. Perdita monetaria pianificata divisa per Saldo del conto o equity esplicitamente scelti. Se la cella contiene il rapporto e usa il formato percentuale, non moltiplicare ancora per 100. Se vuoi un numero espresso in percento, moltiplica una sola volta.
  2. Multiplo R. Netto diviso rischio iniziale positivo e valido:150 EUR/50 EUR = 3 R; −50/50 = −1 R. Spostare poi lo stop non riscrive il denominatore iniziale. Se manca il rischio, lascia R mancante; lo stop ordinario non garantisce perdita massima.
  3. Restituzione del profitto potenziale. Da picco favorevole +4 R a uscita +1 R: giveback 3 R. Non è necessariamente massimo Drawdown picco-fondo, che richiede il percorso intermedio.
  4. Esposizione. Definisci base comparabile, valuta e conversione; il Valore nozionale della posizione non coincide con la perdita massima.
  5. Correlazione stimata. Salva finestra, metodo e serie usate. +0,90 non rende identiche due posizioni né raddoppia esattamente il rischio.

Cinque campi per spiegare il setup

Registra le condizioni prima dell’esito, con categorie sufficientemente stabili. Correlazione fra una valutazione personale e perdite non identifica automaticamente la causa. Ottanta o cento operazioni possono lasciare pochissime osservazioni in ciascuna sottocategoria.

  1. Tipo di setup. Elenco definito e versionato. Otto–dieci etichette o cento trade totali non garantiscono una stima affidabile dell’aspettativa.
  2. Timeframe del segnale. Indica barra osservata e se completata, oltre all’unità temporale.
  3. Confluenze. Condizioni specificate senza presumere indipendenza: media, RSI e figura sugli stessi prezzi possono sovrapporsi. Sessanta o cento trade non provano superiorità del timeframe o aumento del win rate del 15–20 %.
  4. Contesto del calendario. Evento programmato e fuso, distinto da una spiegazione inventata dopo l’uscita.
  5. Stato soggettivo all’ingresso. Scala 1–10 con definizioni coerenti. Un valore sotto quattro non dimostra universalmente aspettativa negativa; indaga associazione e incertezza.

Cinque campi per confrontare piano ed esecuzione

  1. Aderenza al piano. Scala 1–10 documentata; separa modifica autorizzata e deviazione. Non attribuire a ogni punto sotto sette un costo 0,3 R o una relazione presente nel 90 % dei trader.
  2. Numero di deviazioni. Categorie definite prima, ad esempio volume aumentato senza autorizzazione o istruzione d’uscita mancante. L’etichetta «errore» non dimostra da sola relazione statistica con profitto.
  3. Osservazione in una frase. «Ingresso prima del close H1 richiesto» oppure «Uscita +0,8 R anziché target +2 R: indagare il motivo». Collega regola e prova: una deviazione profittevole resta deviazione, una perdita conforme non è automaticamente errore.
  4. Collegamento ai grafici. Immagini di ingresso e uscita con tempi. Se usi cloud o link condivisi, verifica accesso e informazioni esposte; non serve pubblicare il conto.
  5. Etichetta mensile. Categoria di ricerca, ad esempio «gennaio-NFP-tilt» o «febbraio-EURUSD-range», senza ridefinirla per migliorare l’esito.

Statistiche di trading: conserva i totali e la sequenza presenta misure complementari: una colonna non genera automaticamente informazioni mai registrate. Conserva distinguibili dato originale, calcolo e interpretazione.

ID locale: conta anche il conto

Elenco fittizio nell’ordine indicato: A/17+10 PLN; A/18−4 PLN; B/17+7 PLN; reimportazione identica A/17+10 PLN. In questo modello gli ID locali sono unici dentro ciascun conto; per un export reale il perimetro va verificato. La nostra verifica deterministica conserva il primo record per chiave completa dopo conferma dell’identità del duplicato: A/17,A/18,B/17, totale 13 PLN. La procedura errata che usa solo ID e conserva il primo tiene A/17,A/18:6 PLN, perdendo B/17. La differenza è 7 PLN, non una perdita di mercato.

La chiave completa distingue B/17 da A/17

La chiave completa distingue B/17 da A/17Quattro record inventati in PLN: A17+10,A18−4,B17+7,A17+10 identico reimportato. Verifica con chiave conto e ID conserva i primi tre, totale 13. Solo ID con primo record conserva A17 e A18, totale 6. Non è una promessa sull’ordine di Power Query.Verifica la chiave e i record conservatiConto / IDPLNChiave completaA / 17+10ConservaA / 18−4ConservaB / 17+7ConservaA / 17+10Ripetizione identicaConto + ID: 10−4+7 = 13 PLNSolo ID + primo record: 10−4 = 6 PLNB/17 è diverso da A/17.Identità del duplicato verificata; conflitti da indagare.
La regola del primo record appartiene a questa verifica. Power Query non garantisce di conservarlo quando rimuove duplicati.

Scorri orizzontalmente o ingrandisci il diagramma per leggere i dettagli.

Microsoft documenta confronti su più colonne ma avverte che Remove Duplicates non garantisce la prima istanza. Se una chiave completa ha valori discordanti, non eliminare il record come ripetizione identica: conserva il conflitto e ricostruisci origine e versione.

Controesempio EUR nuovo: un deal non è un’idea. Un’unica idea I1 ha due uscite nette +6 e −2 EUR, rischio iniziale totale 8 EUR. Dettaglio esecuzioni: due record distinti; riepilogo idea: una osservazione +4 EUR e 0,5 R. Contare le due uscite come due idee darebbe 50 % di vincite anziché una idea positiva su una: 100 %. Nessuna percentuale stima affidabilità futura con questo campione. Assegnare tutto il rischio 8 a ciascuna uscita produce R 0,75 e −0,25, media 0,25 R, diversa da 0,5 R dell’idea; non dividere il rischio senza una regola economica esplicita.

Due uscite, una sola idea EURIdeaI1, due esiti netti +6 e −2 EUR, rischio iniziale complessivo 8 EUR; nessun altro evento.ESEMPIO DI CALCOLODettaglioDue record esecutiviRiepilogo idea+4 EUR /8 EUR = 0,5 RErrore di denominatoreMedia 0,25 R se duplico8
Due uscite, una sola idea EUR. IdeaI1, due esiti netti +6 e −2 EUR, rischio iniziale complessivo 8 EUR; nessun altro evento.

Numero di fill e numero di idee sono denominatori distinti.

Dettaglio
Due record esecutivi – Non sono automaticamente due segnali indipendenti.
Riepilogo idea
+4 EUR /8 EUR = 0,5 R – Una idea positiva, campione insufficiente per affidabilità.
Errore di denominatore
Media 0,25 R se duplico 8 – Assegnare 8 a ciascun fill non rappresenta il rischio dell’idea.

Foglio di calcolo o servizio dedicato?

Un foglio offre controllo su campi e formule; verifica licenza, funzioni disponibili e importazione. Excel non è universalmente gratuito e strumenti a pagamento possono consentire personalizzazione. Tempi di preparazione dipendono da requisiti e capacità. Confronta import/export, campi, analisi e rinnovo su un campione noto. TraderSync presenta piani ricorrenti; Edgewonk descrive abbonamento annuale, non accesso perpetuo per un pagamento unico 169 USD. Nessuna soglia di mille operazioni annue o sequenza obbligata di prodotti impone il cambio.

Per l’utilizzatore italiano verifica valuta al checkout, imposte, rinnovo e compatibilità effettiva del broker; non rinominare un listino USD come EUR. Riconcilia i risultati del campione prima di fidarti di metriche aggregate. Qui non raccomandiamo un abbonamento né riportiamo prezzi correnti o risparmi promessi dal venditore.

VBA: aggregazione, non ricostruzione dei dati

Il codice sorgente seguente resta invariato, comprese stringhe e nomi macchina: foglio Trades, colonne J e L, risultati in Dashboard. Aggrega esiti monetari e R già validi: non deriva rischio iniziale, controlla valute, deduplica, aggiorna pivot o invia email. Usa un’unica valuta e insieme riconciliato. Una riga valida con risultato zero rientra nel conteggio; profit factor non disponibile senza perdite. Campi associati mancanti, errori e valori non numerici vengono respinti. Questi controlli numerici non verificano date, valuta o raggruppamento; Value2 può restituire valori di date formattate come numeri.

Sub CalculateMetrics()
    Dim ws As Worksheet, lastRow As Long, i As Long
    Dim totalTrades As Long, countWins As Long
    Dim sumWins As Double, sumLosses As Double, sumR As Double
    Dim result As Double, rValue As Double
    Dim resultCell As Variant, rCell As Variant
    Dim resultText As String, rText As String
    Set ws = ThisWorkbook.Sheets("Trades")
    lastRow = Application.Max(ws.Cells(ws.Rows.Count, "J").End(xlUp).Row, _
        ws.Cells(ws.Rows.Count, "L").End(xlUp).Row)
    For i = 2 To lastRow
        resultCell = ws.Cells(i, 10).Value2
        rCell = ws.Cells(i, 12).Value2
        If IsError(resultCell) Then
            Err.Raise vbObjectError + 3, , "Error value in J at row " & i
        End If
        If IsError(rCell) Then
            Err.Raise vbObjectError + 4, , "Error value in L at row " & i
        End If
        If IsNull(resultCell) Then
            Err.Raise vbObjectError + 5, , "Null result in J at row " & i
        End If
        If IsNull(rCell) Then
            Err.Raise vbObjectError + 6, , "Null R in L at row " & i
        End If
        resultText = Trim$(CStr(resultCell))
        rText = Trim$(CStr(rCell))
        If Len(resultText) > 0 Or Len(rText) > 0 Then
            If Len(resultText) = 0 Or Len(rText) = 0 Then
                Err.Raise vbObjectError + 1, , "Missing result or R at row " & i
            End If
            If Not IsNumeric(resultCell) Then
                Err.Raise vbObjectError + 2, , "Non-numeric result in J at row " & i
            End If
            If Not IsNumeric(rCell) Then
                Err.Raise vbObjectError + 2, , "Non-numeric R in L at row " & i
            End If
            result = CDbl(resultCell)
            rValue = CDbl(rCell)
            totalTrades = totalTrades + 1
            sumR = sumR + rValue
            If result > 0 Then
                sumWins = sumWins + result
                countWins = countWins + 1
            ElseIf result < 0 Then
                sumLosses = sumLosses + Abs(result)
            End If
        End If
    Next i
    With ThisWorkbook.Sheets("Dashboard")
        .Range("B2").Value = totalTrades
        If totalTrades > 0 Then
            .Range("B3").Value = countWins / totalTrades
            .Range("B4").Value = sumR / totalTrades
        Else
            .Range("B3:B4").Value = CVErr(xlErrNA)
        End If
        If sumLosses > 0 Then
            .Range("B5").Value = sumWins / sumLosses
        Else
            .Range("B5").Value = CVErr(xlErrNA)
        End If
        .Range("B6").Value = sumWins - sumLosses
    End With
    MsgBox "Metrics calculated for " & totalTrades & " trades.", vbInformation
End Sub

Prima di collegare la routine esaminata a un pulsante, confronta input e output con un insieme piccolo e noto e verifica il comportamento nell’Excel effettivamente usato. Il presente testo non dichiara esecuzione nativa della macro. Tempo di runtime e ulteriori automazioni richiedono verifica separata.

Un diario inventato, senza causalità attribuita al template

Marco parte da 12000 EUR e perde 4200, cioè 35 %, su 171 trade. Il registro iniziale non basta per segmentare; supponiamo che fonti conservate permettano di classificare quarantotto operazioni da −2700 EUR, circa 64,3 % della perdita. Se ciascuna ha rischio iniziale 100 EUR, rischio pianificato aggregato 4800 e media −2700/(48 × 100) = −0,5625 R. Con rischi diversi il rapporto fra totali è una media ponderata per rischio, non media aritmetica dei singoli R.

Secondo anno ipotetico: 142 trade, profitto 8100 EUR, media 0,42 R e profit factor 1,94. Novantuno vincite su 142 arrotondano al 64 %; ottanta su 171 nel primo anno al 47 %, con altri riepiloghi assegnati −0,18 R e profit factor 0,71. Questi valori non ricostruiscono sequenza e quantità, non sono osservazioni certificate e non isolano l’effetto causale dell’esclusione del segmento. Cercare molti gruppi può selezionare rumore storico: conserva definizione iniziale e valuta una regola cambiata su dati successivi intatti.

Modello PLN distinto: +100 PLN su 100 di rischio = +1 R; −1000 PLN su 1000 di rischio = −1 R. Media aritmetica 0 R, ma netto −900 PLN. −900/1100 ≈−0,818 è media di R ponderata per rischio, non rendimento del conto. Una media R non dice da sola quanto denaro hai guadagnato.

Controlli prima del prossimo riepilogo

  1. Definisci campi, formato temporale, valuta e unità della riga. Usa nome neutro e segna mancanti invece di inventare contesto.
  2. Controlla formule e denominatori: netto/rischio iniziale per R, rischio/riferimento di capitale × 100 per percentuale numerica. Non duplicare spread o perdite già contabilizzate.
  3. Riconcilia venti operazioni sorgenti come piccolo controllo di fill, oneri, valuta e ID. Venti righe non garantiscono stabilità statistica; contesto retrospettivo soltanto se era registrato.
  4. Definisci aggregati: media dei R validi; profit factor somma dei netti positivi/valore assoluto dei netti negativi, non disponibile senza perdite; win rate vincite/tutte le osservazioni chiuse valide, inclusi zeri secondo classificazione dichiarata.
  5. Programma una revisione sostenibile di completezza, deviazioni e ipotesi. Il Diario di trading supporta apprendimento senza garantire competenza o profitto; venticinque colonne non sono necessarie per ogni domanda.