Documentazione

Applicazioni

Ultimo aggiornamento il 6. 5. 2015 da Mark Fric

Matrice di avanzamento

La matrice Walk-Forward è una funzione potente e unica della piattaforma StrategyQuant. Può aiutarvi in due modi:

  1. Verificare la solidità della strategia
    Se la strategia supera il test della matrice di Walk-Forwad, significa che con l'aiuto della riottimizzazione dei parametri è adattabile a una vasta gamma di condizioni di mercato.
  2. Trovare il periodo ottimale per la ri-ottimizzazione della strategia
    vi aiuterà a identificare la frequenza di ottimizzazione migliore

Standard Ottimizzazione Walk-Forward testa i risultati della strategia con una riottimizzazione periodica, diciamo ogni 300 giorni.
Ma come facciamo a sapere qual è il periodo di riottimizzazione migliore? Possiamo solo tirare a indovinare, a meno che non si utilizzi la matrice Walk-Forward per testare varie combinazioni di periodi di riottimizzazione.

Che cos'è la matrice Walk-Forward?

Si tratta semplicemente di una serie di ottimizzazioni Walk-Forward eseguite con un diverso numero di periodi di riottimizzazione e diversi Out of Sample %.

Il risultato di WF Matrix potrebbe apparire come nell'immagine seguente, che mostra il risultato totale più il periodo di riottimizzazione ideale.

Verrà inoltre mostrato un grafico 3D dei punteggi (risultati di robustezza) di tutte le combinazioni di OOS/esecuzioni eseguite in questa matrice WF.

Il grafico e la tabella saranno spiegati in fondo a questo articolo, ma prima iniziamo con l'esempio completo.

Esempio di matrice Walk-Forward in StrategyQuant

Eseguire la matrice Walk-Forward è quasi altrettanto semplice che eseguire l'ottimizzazione WF; nelle prossime righe mostrerò il processo completo.
L'intero processo di utilizzo di WF Matrix è quasi uguale a quello di un'ottimizzazione WF, quindi in questo esempio descriverò solo le differenze.
Si può fare riferimento a Esempio di ottimizzazione Walk-Forward per i dettagli sui passi non descritti.

Contenuti:

  1. Caricamento di una strategia di ottimizzazione
  2. Impostazione dei valori di ottimizzazione
  3. Configurazione delle corse di andata e ritorno
  4. Controllo dei risultati
  5. Interpretare i risultati

Fase 1: caricare una strategia di ottimizzazione

Dobbiamo passare alla finestra Optimizer e caricare la strategia che vogliamo ottimizzare.

Questa volta passeremo alla modalità Walk-Forward Matrix e imposteremo i parametri. WF Matrix esegue una serie di ottimizzazioni Walk-Forward singole, quindi dobbiamo configurare il numero di periodi (esecuzioni) e di OOS % che verranno eseguiti. A tale scopo si possono utilizzare i campi Start, Stop e Increment.

Nella matrice dobbiamo specificare quali combinazioni vogliamo testare per l'ottimizzazione Walk-Forward. Nel nostro esempio, useremo i periodi 5, 7, 9, 11, 13, 15 corse e gli OOS % 20, 30, 40.

Nota!
Il calcolo della matrice Walk-Forward richiede molto tempo, perché deve eseguire l'ottimizzazione Walk-Forward completa per ogni combinazione della matrice. È meglio non impostare un numero eccessivo di passi, almeno se si desidera ottenere i risultati in tempi relativamente brevi.

È disponibile un nuovo tipo di ottimizzazione Walk-Forward - la simulazione - che può migliorare la velocità di calcolo dell'ottimizzazione Walk-Forward o matrice WF da 10 a 100 volte.


Fase 2: Impostazione dei valori di ottimizzazione

Passo 3: Configurazione delle corse di andata e ritorno

Queste impostazioni sono impostate in modo identico o molto simile a quelle di Esempio di ottimizzazione Walk-Forward.

Possiamo fare clic sul pulsante Inizio per avviare il test.


Fase 4: Controllo dei risultati

Come detto in precedenza, l'analisi della matrice Walk-Forward può richiedere molto tempo, quindi è necessario attendere che sia terminata. È possibile utilizzare meno parametri, meno passaggi e meno combinazioni di WF per ridurre il numero di test necessari e far terminare l'analisi più rapidamente.

Al termine dell'ottimizzazione, otteniamo ancora una volta un nuovo risultato della matrice Walk-Forward nella nostra banca dati.

Al termine, vedremo che abbiamo solo due risultati nella banca dati: la strategia originale e il risultato della matrice Walk-Forward.

Il risultato della matrice WF nella banca dati ci mostra il miglior profitto netto di tutte le ottimizzazioni Walk-Forwad eseguite. Facciamo doppio clic sul risultato della matrice WF nella banca dati per aprirlo in dettaglio.

I dettagli mostrano il risultato finale del test di robustezza - se la strategia ha superato o meno il test - e un grafico 3D configurabile che può visualizzare i risultati per tutte le combinazioni di matrici.

Sotto i risultati finali è possibile scegliere qualsiasi combinazione di camminata-avanzamento che è stata testata e vedere i risultati dettagliati qui sotto.

Quando passeremo al grafico Equity, vedremo anche i risultati dell'ottimizzazione Walk-Forward per una combinazione selezionata dalla tabella WF Matrix.

La linea blu rappresenta la strategia riottimizzata, mentre la linea grigia più sottile rappresenta la strategia originale non ottimizzata.
Si vede chiaramente che questa strategia funziona meglio se viene periodicamente riottimizzata.

Si noti che questi risultati e il grafico azionario sono visualizzati per l'ottimizzazione selezionata - 7 corse con 20% OOS. Se si sceglie un'altra combinazione, i risultati e il grafico saranno diversi.


Interpretare i risultati

Come si è detto all'inizio di questo articolo, la matrice Walk-Forward serve sia come verifica della robustezza della strategia e come strumento per trovare il periodo ottimale per la riottimizzazione della strategia.

Utilizzo della matrice Walk-Forward come verifica di robustezza

L'ottimizzazione della strategia mediante l'ottimizzazione Walk-Forward con vari parametri ci permette di vedere se la strategia "sopravvive" durante diversi periodi di riottimizzazione, con una diversa lunghezza della storia su cui è stata ottimizzata.

Il grafico Score 3D ci mostra i risultati della robustezza per ogni combinazione di parametri; è un ottimo strumento per identificare ed evitare la sovraottimizzazione (curve-fitting). Le strategie robuste appariranno con cambiamenti graduali, piuttosto che bruschi, nel grafico della superficie.

L'obiettivo è che il maggior numero possibile di combinazioni WF abbia successo.
Come minimo cerco un gruppo di almeno 3×3 combinazioni in cui ci siano più successi che fallimenti.

Quando facciamo clic sul pulsante Configura, possiamo impostarlo in modo che StrategyQuant lo riconosca automaticamente: nel nostro esempio vogliamo un gruppo di combinazioni 3×3 di singoli test Walk-Forward in cui almeno 7 di questi 9 test Walk-Forward abbiano successo.

Nel nostro esempio ci sono due cluster di questo tipo, i cui confini sono disegnati con i colori giallo e blu. In entrambi i casi sono stati superati 7 dei 9 test Walk-Forward (indicati dal colore verde, i test sono contrassegnati da cerchi rossi).

Se nella matrice si trova un solo gruppo 3×3 di questo tipo, considero la strategia robusta. Questo Il gruppo significa che non solo la strategia beneficia della riottimizzazione, ma che può essere riottimizzata utilizzando periodi diversi e mantenendo la sua redditività: questo è un segno di robustezza.

Cosa determina il successo di una singola ottimizzazione Walk-Forward?

In precedenza abbiamo valutato tutte le combinazioni Walk-Forward testate per determinare se la strategia è robusta, verificando che la maggior parte delle singole ottimizzazioni WF superassero i nostri criteri.
Ma come abbiamo deciso che una singola ottimizzazione Walk-Forward è passata o meno?
A questo scopo utilizziamo un sistema personalizzabile Punteggio di robustezza che viene calcolato per ogni singola ottimizzazione Walk-Forward.

Il punteggio di robustezza è completamente personalizzabile. Possiamo impostare tutte le condizioni che vogliamo osservare nella tabella dei componenti del punteggio di robustezza (1) e impostare i loro valori limite. Controllare la descrizione dei componenti avanzati del punteggio in Ottimizzazione Walk-Forward articolo.

Il valore di soglia del punteggio di robustezza principale (2) indica quanti di questi punteggi utilizzati devono essere superati affinché il risultato di WF sia considerato positivo.

Possiamo vedere che, ad esempio, 9 corse / 20% OOS sono fallite perché 2 punteggi su 6 non sono stati superati - il punteggio di robustezza è solo 66% (4 su 6 è 66%) invece degli 80 valori di punteggio superati % richiesti.

È sempre bene esaminare le combinazioni che hanno fallito: qual è stata la ragione del loro fallimento?
Dovremmo esaminare anche i dettagli. Tutte le combinazioni sono fallite? Forse i criteri di successo sono troppo stretti.

Utilizzo della matrice Walk-Forward per trovare il periodo di riottimizzazione ottimale

Questa è l'estensione naturale del controllo di robustezza. Quando troviamo, ad esempio, un gruppo 3×3 di singole ottimizzazioni Walk-Forward, preferisco selezionare quella che si trova al centro.
StrategyQuant lo fa automaticamente per noi (se lo abbiamo configurato correttamente e il risultato viene visualizzato appena sotto il risultato finale:

Ricordate che la strategia deve essere robusta anche rispetto alle impostazioni di riottimizzazione, quindi la data esatta di riottimizzazione non dovrebbe essere importante, purché il periodo di riottimizzazione e di cronologia rimangano all'incirca quelli previsti.

Nel caso di questa strategia posso riottimizzare la strategia proprio ora (agosto) su uno storico di 2 anni, e intendo riottimizzarla nuovamente l'anno prossimo ad agosto (tra un anno).

Grafici 3D avanzati

Il nuovo StrategyQuant offre una nuova funzionalità: i grafici 3D di tutte le combinazioni Walk-Forward eseguite. Come già detto, il grafico 3D mostra il valore di ogni combinazione di parametri ed è un ottimo strumento per identificare ed evitare la sovraottimizzazione. Le strategie robuste appariranno con cambiamenti graduali nel grafico di superficie.

È possibile visualizzare il grafico 3D del profitto netto, del drawdown, della stagnazione, del fattore di profitto, della stabilità o di qualsiasi altro valore in tre modi diversi: come superficie, grafico a barre o mappa di calore.

Suggerimento: controllare anche l'articolo Descrizione dei valori avanzati di Walk-Forward per la descrizione dei vari valori che possono essere utilizzati nei filtri o mostrati nella banca dati.

Questo articolo è stato utile? L'articolo è stato utile L'articolo non è stato utile

Abbonarsi
Notificami
1 Commento
Il più vecchio
Più recente I più votati
Feedback in linea
Visualizza tutti i commenti
Mario Gordon
Mario Gordon
29. 12. 2018 2:18 am

Ciao,

Ho notato che nella nuova versione di SQ non c'è il parametro WF net profit stability, quale potrebbe essere l'opzione da selezionare? Potete creare una nuova guida con i nuovi parametri per SQ4?