Come si può testare il rischio di swing?
Definisci il rischio di swing prima di testarlo
Il rischio di swing si riferisce alla possibilità che i risultati di una strategia durante i periodi di detenzione (spesso dell’ordine di giorni o settimane) subiscano deviazioni negative a causa dell’andamento dei prezzi. Testare il rischio di swing non consiste nel prevedere gli esiti di un singolo trade futuro, ma nel verificare quanto possano essere ampie le perdite e quanto siano coerenti i risultati in diverse condizioni di mercato.
Per testare il rischio di swing in modo verificabile, è necessaria una definizione operativa che trasformi il “rischio” in grandezze misurabili. Tra gli obiettivi misurabili più comuni:
- Ampiezza del drawdown: quanto profonde sono le fasi di calo rispetto a un punto di riferimento (ad esempio, il picco dell’equity del conto).
- Frequenza delle perdite: la proporzione di risultati negativi nei periodi di swing.
- Gravità delle perdite: l’entità delle perdite quando si verificano.
L’obiettivo è scegliere metriche coerenti con la domanda posta. Se si vuole sapere “quanto male può andare”, drawdown e gravità delle perdite sono più direttamente rilevanti. Se invece si cerca di capire “quanto spesso va male”, allora la frequenza delle perdite è più pertinente.
Distingui meccaniche stabili da condizioni variabili
Il rischio di swing comprende sia meccaniche relativamente stabili che condizioni variabili.
Meccaniche stabili sono scelte e regole che puoi mantenere costanti durante il test. Esempi includono:
- Il modo in cui entri ed esci (le regole, non il mercato).
- Il metodo di dimensionamento della posizione.
- La metrica utilizzata per misurare il rischio.
Condizioni variabili includono fattori che cambiano nel tempo o tra diversi provider, come:
- Regime di mercato (trend vs. range, variazioni di volatilità).
- Costi di trading (spread, commissioni, fee).
- Qualità dell’esecuzione (slippage rispetto a un prezzo modello).
- Gestione dei dati (come tratti tick mancanti o variazioni di liquidità).
Un piano di test deve specificare chiaramente cosa viene mantenuto costante e cosa può variare. Questo evita di confondere il “comportamento della strategia” con il “rumore di mercato o del provider”.
Costruisci un test con ipotesi, baseline e suddivisione dei dati
Un test utile inizia con un’ipotesi chiara e verificabile. Ad esempio:
- Ipotesi: “Con costi e ipotesi di esecuzione definiti, i drawdown del periodo di swing della strategia rimangono entro un intervallo tollerabile rispetto a una baseline scelta.”
Scegli una baseline difendibile
Una baseline è il punto di confronto. Esempi di baseline non promozionali includono:
- Un benchmark naïf, come detenere una posizione equivalente al contante (ove concettualmente applicabile).
- Una baseline basata su regole, come usare la stessa metrica di rischio ma con orari di ingresso randomizzati (per testare se una struttura ha rilevanza).
- Una baseline con shift temporale, in cui le regole sono mantenute ma i segnali sono spostati nel tempo, così da non allinearsi più all’informazione prevista.
Il requisito principale è che la baseline rispecchi le tue assunzioni. Se la tua definizione di rischio di swing usa il drawdown, anche la baseline deve essere valutata con il drawdown.
Suddividi i dati per evitare effetti di look-ahead
Anche senza disporre di dati di mercato “in tempo reale”, puoi comunque progettare una suddivisione che riduca il rischio di leakage accidentale. Una struttura comune è:
- Segmento di training (o calibrazione): usato solo per impostare assunzioni non già fissate.
- Segmento di validazione: usato per verificare la persistenza dei risultati.
- Segmento di test: usato una sola volta alla fine per stimare le proprietà di rischio.
Se non desideri un flusso di lavoro multistadio, un approccio più semplice è un periodo di holdout singolo. L’obiettivo è assicurarsi che la tua valutazione del rischio non sia semplicemente adattata a una finestra storica specifica.
Specifica le assunzioni su costi ed esecuzione
Poiché il rischio di swing è sensibile alle frizioni di trading, devi includere ipotesi sui costi come parte del design del test. Come minimo, definisci:
- Una stima fissa o un intervallo di scenario per i costi di transazione per ogni ciclo di swing.
- Un’assunzione sul modello di slippage (ad esempio, uno slippage fisso conservativo o un intervallo).
Se non riesci a giustificare una stima numerica di slippage, testa la robustezza del costo usando un intervallo di valori plausibili invece di un singolo punto. Il test diventa così “come cambia il rischio all’aumentare dei costi”, il che è verificabile.
Evidenze ed esempio: checklist pratica basata sulla robustezza
Di seguito una sequenza pratica e verificabile che puoi adattare al tuo contesto senza presupporre performance future.
1) Calcola gli esiti per periodo di swing con regole fisse
Scegli la finestra del periodo di detenzione che corrisponde allo “swing”. Poi calcola gli esiti per ogni periodo usando regole fisse di ingresso/uscita e dimensionamento fisso della posizione.
2) Misura le metriche di rischio in modo coerente
Per ogni segmento (training/validation/test), calcola le metriche di rischio definite:
- ampiezza del drawdown,
- frequenza delle perdite,
- gravità delle perdite.
La coerenza è fondamentale: lo stesso punto di riferimento e le stesse regole contabili devono essere usati in tutti i segmenti.
3) Esegui test di stress su costi ed esecuzione
Ripeti il calcolo in diversi scenari di costo:
- costi base,
- costi più elevati,
- slippage più alto.
Monitora se il rischio di swing peggiora gradualmente o si rompe bruscamente. Un peggioramento graduale è generalmente più interpretabile; punti di rottura netti indicano una dipendenza da assunzioni favorevoli.
4) Verifica la sensibilità al regime
Testa separatamente in segmenti temporali che rappresentano diverse condizioni di mercato. Puoi farlo anche senza dati in tempo reale, suddividendo storicamente per volatilità o usando proxy semplici calcolati dal tuo dataset (ad esempio, periodi ad alta vs. bassa volatilità).
Se il rischio di swing è accettabile solo in un regime, allora il “rischio” è condizionato, non universale.
5) Aggiungi un controllo per la casualità
Un controllo semplice è testare una baseline che distrugga la relazione temporale originale (ad esempio, spostando nel tempo gli eventi di ingresso). Se le metriche di rischio risultano simili dopo aver distrutto la struttura, allora il rischio di swing misurato potrebbe non riflettere un comportamento significativo.
Limitazioni e modi di fallimento da considerare
Il test storico del rischio di swing può fallire in diversi modi rilevanti.
1) Le relazioni storiche non garantiscono risultati futuri
Una strategia può sembrare avere un rischio di swing limitato in un backtest, ma comportarsi molto diversamente in seguito. I mercati possono cambiare in modi non rappresentati nei tuoi dati storici.
2) Costi ed esecuzione sono spesso sottovalutati
Anche con dati sui prezzi accurati, il trading reale può comportare costi effettivi e slippage più elevati. Il rischio di swing può cambiare in modo significativo all’aumentare delle frizioni.
3) Overfitting su una singola suddivisione del dataset
Se aggiusti troppe volte le assunzioni usando gli stessi dati, il “rischio testato” potrebbe essere un artefatto. Tenere un segmento di test in riserva riduce questo rischio, ma non lo elimina se controlli ripetutamente i risultati e li modifichi finché non sembrano buoni.
4) Mismatch nella definizione della metrica
Se definisci il rischio di swing usando il drawdown ma lo valuti con un riferimento diverso (o con contabilità dell’equity incoerente), i risultati del test diventano difficili da confrontare e meno significativi.
5) Fallimento in caso di cambiamento della liquidità
Le strategie di swing possono essere particolarmente colpite dalle condizioni di liquidità.