24 Agosto 2026 · ricerca

Perché il mio backtest esegue più operazioni della mia strategia in paper trading?

Perché il mio backtest esegue più operazioni della mia strategia in paper trading?

Un backtest spesso conteggia le operazioni come se un segnale si trasformasse direttamente in una posizione. Il paper trading inserisce un ordine nel mezzo. L’ordine può restare in attesa, essere eseguito solo in parte, essere cancellato o rifiutato, oppure restare attivo anche dopo che il segnale è cambiato. Se la strategia simulata salta questo ciclo di vita, il numero di operazioni e l’esposizione potrebbero avere ben poco a che fare con ciò che registra il conto di paper trading.

La soluzione pratica è rappresentare gli ordini come oggetti persistenti con stati e timestamp. Un segnale indica di provare a eseguire un’operazione; non dimostra che l’operazione sia avvenuta.

Perché la mia strategia in paper trading esegue meno operazioni del backtest?

Partiamo dagli ordini mai eseguiti. Un backtest può presumere che ogni ordine limite venga eseguito ogni volta che il mercato tocca il suo prezzo. In un mercato reale, un semplice tocco non dice se il tuo ordine fosse in testa alla coda, se sia stato scambiato volume sufficiente o se la quotazione fosse ancora disponibile quando l’ordine è arrivato alla piattaforma di scambio.

Consideriamo una strategia che inserisce un ordine limite di acquisto a $100 e lo cancella dopo 30 secondi. Il mercato scambia a $100.00, ma lì passa poco volume e altri ordini hanno la precedenza. Il tuo ordine potrebbe essere eseguito solo in parte, o per niente. Un backtest basato sul semplice tocco del prezzo registra una posizione intera. Un conto di paper trading che tiene conto delle ipotesi sulla coda potrebbe non registrare alcuna esecuzione.

Gli ordini a mercato presentano una discrepanza diversa. Un backtest potrebbe eseguire l’intera quantità all’apertura della barra successiva, mentre il paper trading potrebbe rifiutare una quantità che supera i limiti della piattaforma oppure eseguirla in più parti mentre il book si muove. Una barra riassume gli scambi; non garantisce che l’intero ordine potesse essere eseguito a un unico prezzo.

Cosa dovrebbe fare un backtest se il segnale cambia prima che l’ordine venga eseguito?

Mantieni attivo il vecchio ordine finché il simulatore non riceve ed elabora la richiesta di cancellazione. Se il segnale si inverte mentre un ordine di acquisto è in attesa, la strategia potrebbe volerlo cancellare e inviare un ordine di vendita. Questa intenzione non elimina subito l’ordine di acquisto. Potrebbe essere eseguito mentre la cancellazione è in corso, lasciando il conto con una posizione long proprio quando il nuovo segnale indica short.

Modella la sequenza così: il segnale cambia, la strategia invia una richiesta di cancellazione, la piattaforma conferma la cancellazione oppure segnala un’esecuzione, e solo allora la strategia conosce lo stato finale dell’ordine. Anche un semplice ritardo fisso può rivelare condizioni di gara che un backtest con cancellazione istantanea nasconde.

Per un modello volutamente semplice, un ritardo di cancellazione di 1 secondo e l’elaborazione al verificarsi dell’evento successivo possono essere più informativi che fingere che la cancellazione sia istantanea. Il ritardo giusto dipende dalla piattaforma e dal sistema; l’importante è rappresentarne uno. Se l’ordine è a mercato e non prevede una finestra di cancellazione, restano comunque rilevanti le esecuzioni parziali e le segnalazioni tardive.

Quali stati degli ordini dovrebbe registrare un simulatore di paper trading?

Usa una piccola macchina a stati e conserva l’ora di ogni transizione. La terminologia esatta varia da una piattaforma all’altra, ma le distinzioni fondamentali restano le stesse:

Registra la quantità eseguita separatamente da quella richiesta, insieme ai prezzi di esecuzione e alle commissioni. Un ordine eseguito parzialmente è sia un’operazione sia un impegno ancora attivo per la quantità residua. Trattarlo come semplicemente aperto o semplicemente concluso fa perdere informazioni necessarie alla strategia per dimensionare l’azione successiva.

Evento dell’ordineCosa deve sapere la strategiaScorciatoia comune nei backtest
Esecuzione parzialeQuantità eseguita, quantità residua, prezzo medioSegnare l’intero ordine come eseguito a un unico prezzo
Richiesta di cancellazioneOra della richiesta e successiva conferma di cancellazione o esecuzioneRimuovere subito l’ordine
RifiutoMotivo e validità di un nuovo tentativoPresumere che l’operazione richiesta sia avvenuta
ScadenzaOra in cui l’ordine ha smesso di essere eseguibileLasciarlo aperto finché il prezzo non lo tocca in seguito

Come posso confrontare in modo equo le operazioni del backtest con quelle del paper trading?

Confronta prima gli eventi degli ordini, poi le posizioni e infine il P&L. Se il backtest ha eseguito un ordine che il conto di paper trading non ha mai eseguito, la successiva differenza nel P&L è una conseguenza, non il punto in cui cercare la causa.

Per ogni ordine previsto, abbina le due esecuzioni usando un identificativo stabile della decisione o dell’ordine della strategia. Poi controlla l’ora di invio, il prezzo e la quantità richiesti, la validità dell’ordine, le esecuzioni, le cancellazioni, i rifiuti, le commissioni e la posizione finale. Registra anche il motivo di ogni mancata esecuzione simulata: il prezzo non ha mai raggiunto il limite, la coda ipotizzata davanti all’ordine non si è esaurita oppure l’ordine è scaduto.

Un piccolo esempio chiarisce la sequenza. Il segnale richiede 10 unità. Entrambi i sistemi inviano l’ordine alle 10:00:00. Il backtest presume un’esecuzione completa alle 10:00:01. Il paper trading esegue 4 unità alle 10:00:01, riceve una richiesta di cancellazione alle 10:00:02 e poi segnala un’altra esecuzione di 2 unità prima che la cancellazione venga confermata alle 10:00:03. Il confronto corretto è 6 unità eseguite contro 10, con 4 cancellate. Riassumere tutto in un’unica «operazione» nasconde l’esposizione effettiva della strategia.

Mi serve un simulatore completo della piattaforma di scambio per farlo bene?

No. Si può iniziare un backtest con poche ipotesi esplicite: se il tocco del limite è sufficiente, quanto volume deve essere scambiato oltre il prezzo per smaltire la coda ipotizzata davanti all’ordine, per quanto tempo gli ordini restano aperti e come funzionano i ritardi di cancellazione. Esegui la strategia con più di una configurazione plausibile. Se i risultati dipendono dal presupposto che ogni ordine limite in attesa venga eseguito per intero, hai imparato qualcosa di utile sul modello.

Anche il paper trading non è una verità assoluta sulla qualità dell’esecuzione. Potrebbe usare esecuzioni simulate e non avere una coda reale. Qui serve a qualcosa di più circoscritto: mostra se la strategia e il suo sistema di gestione degli ordini concordano su quantità in attesa, cancellazioni, posizione e nuovi tentativi man mano che arrivano gli eventi.

Una piccola soddisfazione di questo lavoro: un buon registro degli ordini può trasformare una discrepanza altrimenti incomprensibile in una spiegazione banale. «Il secondo ordine derivato è stato eseguito dopo la richiesta di cancellazione» è meglio di «il paper trading fa cose strane». Quando il backtest e il conto di paper trading non concordano, segui il ciclo di vita dell’ordine prima di modificare il segnale.

paper tradinggestione degli ordinibacktestingesecuzionericerca sulle strategie
← Tutti gli articoli