Monte Carlo - Degrado casuale dell'esecuzione
Le imperfezioni nell'esecuzione, come lo slittamento dei prezzi o gli spread temporaneamente più ampi, sono eventi comuni nel trading live. Questi fattori possono far sì che il prezzo di chiusura effettivo di un'operazione sia meno favorevole del prezzo ideale osservato o mirato durante il backtest. Questa simulazione Monte Carlo modella l'impatto di questi problemi di esecuzione casuale.
Se applichiamo questo test Monte Carlo, una percentuale casuale di operazioni (Probability) durante il backtest il loro risultato di esecuzione sarà degradato. Ciò si ottiene peggiorando il Prezzo di chiusura delle operazioni selezionate. L'importo di cui il Prezzo di chiusura è peggiorato è anch'esso randomizzato per ogni mestiere interessato, calcolato come percentuale casuale (fino a Percentuale di degradazione massima) dell'intervallo di prezzo coperto da quella specifica compravendita (da Prezzo aperto all'originale Prezzo di chiusura). Un prezzo "peggiore" significa un inferiore prezzo di chiusura per le operazioni lunghe e un più alto prezzo di chiusura per le operazioni short, riducendo così i profitti o aumentando le perdite.
In parole povere, eseguendo 500 (o un numero diverso) backtest, in cui ogni backtest applica questa degradazione casuale dei prezzi a un sottoinsieme diverso di operazioni e con gravità variabile, è possibile acquisire una prospettiva di analisi Monte Carlo sulla sensibilità della strategia alle variazioni della qualità di esecuzione.
In questo particolare esempio, potremmo eseguire 100 simulazioni con una degradazione dell'esecuzione randomizzata applicata come descritto.
Questo test è diverso dall'applicazione di un valore fisso di slippage a tutte le operazioni. In questo caso, l'effetto di degradazione è probabilistico:
-
Quale Le compravendite interessate sono casuali (basate su Probability).
-
Quanto ogni commercio interessato è degradato è anche casuale (fino a Percentuale di degradazione massima del suo raggio d'azione).
Di conseguenza, ogni esecuzione di simulazione rappresenta uno scenario di backtest unico. Una simulazione potrebbe vedere le operazioni #5, #23 e #58 degradate di piccole quantità, mentre un'altra simulazione potrebbe interessare le operazioni #12, #23, #45 e #70, con l'operazione #23 che potrebbe subire una degradazione del prezzo maggiore rispetto alla prima simulazione. Se il numero di simulazioni Monte Carlo è impostato su 500, si avranno 500 risultati unici di backtest, ognuno dei quali riflette un diverso modello plausibile di imperfezioni di esecuzione casuali. Ciò consente di valutare la solidità della strategia rispetto alle variazioni di esecuzione imprevedibili che si verificano nei mercati reali.
Come importare snippet/indicatori personalizzati in SQX:
- https://strategyquant.com/doc/programming-for-sq/import-export-custom-indicators-and-other-snippets/
devi caricarlo in formato rar affinché possa essere scaricato