Come Possono Essere Misurate le Assunzioni di Slippage?
Cosa significano le “assunzioni di slippage” nella misurazione
Lo slippage di solito indica la differenza tra il prezzo che ti aspettavi di ottenere quando hai pianificato un’esecuzione e il prezzo effettivamente ricevuto al momento dell’esecuzione. Un’“assunzione di slippage” è un metodo specifico e dichiarato (e un input numerico) che trasforma quella differenza incerta in qualcosa di misurabile per il backtesting, la simulazione o l’analisi.
Per misurare le assunzioni di slippage, devi innanzitutto suddividere il concetto in due parti:
- I campi misurabili: quale prezzo atteso, quale prezzo eseguito, e se includi commissioni/spread/spese.
- La regola di confronto con i timestamp: come abbinare gli ordini pianificati ai fill e quali timestamp definiscono “atteso” rispetto a “eseguito”.
Se una di queste parti non è chiara, lo slippage misurato potrebbe essere un artefatto della tua metodologia piuttosto che un riflesso del mercato o del comportamento di esecuzione.
Un framework misurabile: campi e timestamp
Un approccio pratico alla misurazione definisce questi campi per ogni evento confrontabile:
- Prezzo pianificato/atteso (P_atteso): il prezzo utilizzato al momento della decisione. Esempi includono un preventivo di riferimento (bid/ask/mid) al timestamp di pianificazione, oppure un prezzo di fill proiettato da un modello.
- Prezzo eseguito/effettivo (P_exec): il prezzo di fill registrato al completamento dell’esecuzione (o quando si registra il fill simulato).
- Direzione: buy vs sell, poiché lo slippage viene solitamente calcolato in modo che un “movimento sfavorevole” aumenti il costo.
- Slippage in termini di prezzo:
- Per gli acquisti: Δ = P_exec − P_atteso
- Per le vendite: Δ = P_atteso − P_exec
- Slippage in termini di costo (opzionale ma comune): Δ moltiplicato per la dimensione della posizione, e opzionalmente al netto dei costi di transazione—solo se modelli in modo coerente le stesse componenti di costo sia nei prezzi attesi che in quelli eseguiti.
Quindi definisci i timestamp:
- T_pianificato: quando la strategia decide e seleziona P_atteso.
- T_richiesta_fill (opzionale): quando l’ordine viene inviato.
- T_fill: quando viene determinato il prezzo di fill.
La misurazione ha senso solo quando il prezzo “atteso” e quello “eseguito” sono legati a timestamp chiari e a una regola esplicita di abbinamento (ad esempio: un ordine pianificato corrisponde a un fill eseguito, oppure si aggregano i fill parziali).
Due opzioni di confronto (e cosa documentare)
Puoi misurare le assunzioni di slippage utilizzando uno di questi due schemi di confronto. L’importante è usare lo stesso schema in modo coerente su tutto il tuo dataset.
Opzione A: Quote-to-fill (preventivo di riferimento atteso al fill eseguito)
- Scegli un riferimento a T_pianificato (ad esempio, bid per gli acquisti o ask per le vendite, oppure una convenzione basata sul mid).
- Calcola lo slippage da quel riferimento al fill effettivo.
- Documenta esattamente la convenzione del preventivo e se il riferimento è bid/ask o mid.
Opzione B: Model-to-fill (fill modello atteso al fill eseguito)
- Invece di usare un preventivo grezzo, calcola P_atteso da una regola (ad esempio, una regola di conversione che stima un prezzo di fill effettivo).
- Calcola lo slippage dal fill modello al fill effettivo.
Requisito importante di similarità: entrambe le opzioni devono definire cosa significa “atteso”. Se l’Opzione A usa il mid e l’Opzione B usa prezzi aggiustati per lo spread, i confronti tra metodi non sono comparabili.
Evidenza attraverso esempi: come appare una “misurazione”
Un output di misurazione dovrebbe essere più di un singolo numero. Gli output comuni sono:
- Distribuzione di Δ (media, mediana, percentili) piuttosto che solo una media.
- Frequenza di slippage sfavorevole vs favorevole (per acquisti vs vendite, le convenzioni di segno sono importanti).
- Dipendenza dal contesto: raggruppa per regime di volatilità, orario della giornata o ampiezza dello spread.
Un esempio semplice di logica (senza dati in tempo reale):
- Per ogni evento pianificato, registra P_atteso e T_pianificato.
- Quando avviene l’esecuzione, registra P_exec e T_fill.
- Calcola Δ usando la formula sensibile alla direzione.
- Riassumi Δ in gruppi che riflettono la difficoltà di esecuzione (ad esempio, periodi con spread più ampi).
L’“evidenza” è che puoi riprodurre gli stessi valori di Δ dai campi e timestamp memorizzati.
Limitazioni materiali e modalità di errore
Diverse limitazioni spesso compromettono la misurazione dello slippage e rendono le assunzioni apparentemente più precise di quanto non siano:
- Disallineamento dei timestamp: se P_atteso si basa su un preventivo visibile in un momento successivo (o precedente) rispetto a quello previsto, puoi introdurre un bias sistematico.
- Doppio conteggio di spread e costi: se il tuo prezzo atteso include già gli effetti dello spread, ma aggiungi o sottrai nuovamente lo spread in termini di costo, lo slippage misurato diventa un errore contabile.
- Errori di abbinamento dell’esecuzione: fill parziali, cancellazioni di ordini o più fill per un singolo ordine pianificato possono distorcere l’abbinamento a livello di evento.
- Non stazionarietà: le relazioni storiche di slippage cambiano spesso con le condizioni di mercato e la tecnologia. Un metodo che si adatta a un periodo potrebbe non adattarsi a un altro.