15 Settembre 2026 · ricerca

Il modello di slippage del backtest dovrebbe sbagliare di proposito

Il modello di slippage del backtest dovrebbe sbagliare di proposito

Spesso il modello di slippage più onesto è deliberatamente impreciso. Un backtest che riporta un costo di esecuzione preciso basandosi su dati storici poco granulari avanza una tesi che i dati non possono sostenere.

Sembra un argomento a favore di ipotesi approssimative. È il contrario: usa un modello semplice che sai spiegare, poi fagli dare risultati diversi da sé stesso. Se una strategia funziona solo con una stima dell’eseguito opportunamente favorevole, l’incertezza fa parte del risultato.

Perché una stima precisa dello slippage può essere fuorviante?

Supponiamo che tu abbia barre OHLCV a 1 minuto e invii un ordine a mercato per 2,000 azioni. La barra mostra l’intervallo di prezzo e il volume totale nell’arco di un minuto. Non indica il bid e l’ask al momento dell’arrivo dell’ordine, la coda davanti a te, come si è distribuito il volume nel minuto o quale parte sarebbe stata assorbita dal tuo ordine.

Puoi comunque assegnare un valore numerico allo slippage. Potresti eseguire al prezzo di apertura della barra successiva più un costo fisso in punti base, oppure proporzionale al rapporto tra la dimensione dell’ordine e il volume della barra. Sono approssimazioni utili, ma non osservazioni. Presentare il risultato come «slippage: 3.2 punti base» fa sembrare una scelta di modello una misurazione.

Consideriamo un esempio concreto: una strategia negozia $20,000 per ordine su un titolo il cui volume nella barra successiva è $400,000. Il tasso di partecipazione è 5%. Un modello che addebita 2 punti base costa $4 per ordine; uno che ne addebita 10 costa $20. Su 500 operazioni di andata e ritorno, la differenza è di $16,000, prima delle commissioni. Se il profitto lordo del backtest è $18,000, l’ipotesi sull’esecuzione incide quasi quanto il segnale.

5%dimensione dell’ordine in rapporto al volume della barra successiva
$16,000differenza di costo su 500 operazioni di andata e ritorno a 2 e 10 punti base

Definisci un intervallo coerente con ciò che i dati possono mostrare

Parti da uno scenario di riferimento che rispecchi il tipo di ordine della strategia e la granularità dei dati. Un ordine a mercato richiede di considerare spread e impatto. Per un ordine limite serve una regola che stabilisca se viene eseguito; presumere che ogni prezzo toccato comporti un’esecuzione è un errore diverso nel modello di esecuzione.

Poi esegui lo stesso backtest con un insieme ristretto di scenari espliciti. Mantieni invariati segnale, dimensionamento e timestamp, così potrai attribuire le variazioni all’esecuzione:

ScenarioIpotesi sull’esecuzioneChe cosa verifica
FavorevoleSpread di riferimento e impatto ridottoQuanto dipende la strategia da condizioni di mercato favorevoli?
BaseSpread tipico e impatto proporzionale al tasso di partecipazioneChe cosa implica l’ipotesi operativa scelta?
SfavorevoleSpread più ampio, impatto maggiore ed esecuzione ritardataIl vantaggio regge in condizioni di mercato difficili ma plausibili?

Non sono intervalli di confidenza, a meno che tu non li abbia calibrati statisticamente. Sono scenari di prova. Spiega nel report che cosa rappresentano e non farne una media per ottenere uno «slippage atteso» inventato, se non hai dati a sostegno delle probabilità.

Fai dipendere il modello dall’ordine

Un costo fisso in punti base può essere un’approssimazione iniziale ragionevole per gli ordini piccoli. Con l’aumentare del tasso di partecipazione diventa una rappresentazione poco credibile. Come minimo, registra il controvalore dell’ordine, il volume disponibile nella barra e il tasso di partecipazione. Se la strategia negozia futures, registra il valore del contratto e le unità di volume pertinenti; se negozia crypto spot, indica chiaramente la valuta di quotazione e la piattaforma.

Una semplice curva d’impatto può rendere visibile la pressione sulla capacità senza fingere di riprodurre il book degli ordini. Per esempio, definisci il costo come uno spread di riferimento più una componente d’impatto che cresce con la radice quadrata del tasso di partecipazione. Stima i parametri solo se disponi di dati di esecuzione adeguati. Altrimenti, varia i parametri e mostra quanto rapidamente peggiora il risultato.

Evita inoltre che il modello di esecuzione salvi la strategia senza che te ne accorga. Un segnale long che arriva dopo un forte rialzo non dovrebbe ottenere il minimo della barra solo perché si trova all’interno della candela. Usa una convenzione di esecuzione causale, poi applica uno stress al prezzo e ritarda l’esecuzione. Se l’ordine ritardato perde il movimento, è un esito dell’esecuzione, non un fastidio da attenuare.

Una domanda utile: a quale spread, impatto, ritardo o tasso di partecipazione la performance netta scende a zero? Spesso quel punto di pareggio è più utile di un singolo Sharpe del backtest.

Usa il paper trading per restringere l’intervallo

Il paper trading non rivela quale esecuzione avresti ottenuto in un motore di matching reale. Può comunque dirti se il flusso di ordini del backtest assomiglia alle decisioni effettive del sistema: quando vengono generati gli ordini, quanto sono grandi e per quanto tempo restano eseguibili.

Confronta il prezzo simulato dell’ordine con le quotazioni contemporanee o con i dati di mercato registrati dal sistema di paper trading. Monitora lo scarto per strumento, ora del giorno, dimensione dell’ordine e tipo di ordine. Queste osservazioni possono restringere le ipotesi per quella configurazione, ma non si trasferiscono automaticamente a un’altra piattaforma, a un diverso regime di mercato o a un ordine più grande.

Le critiche sono fondate: gli scenari pessimisti possono essere arbitrari. Un modello deliberatamente severo può scartare una strategia valida, proprio come uno favorevole può far apparire migliore una strategia debole. Perciò non considerare vero lo scenario più severo. Pubblica le ipotesi, mostra la sensibilità e raccogli i dati necessari per sostituire le stime con valori calibrati.

Un backtest non può ricostruire la posizione storica in coda a partire da una candela. Può mostrare se l’idea resta coerente quando l’esecuzione peggiora in modi che i tuoi dati non consentono di escludere. È una risposta più utile di una cifra decimale.

slippageimpatto sul mercatobacktestingesecuzionepaper trading
← Tutti gli articoli