Supponiamo di voler sviluppare una nuova strategia di trading per EURUSD.
Ingressi
Con StrategyQuant non è necessario definire regole di trading precise: possiamo lasciare che sia il programma a trovare le entrate e le uscite migliori.
Solo nella fase 2 definiremo i blocchi che compongono la strategia (indicatori, dati di prezzo, operatori, ecc.).
Definiremo i vincoli di performance della strategia risultante (fase 3) - ad esempio, il Profitto netto totale deve essere superiore a $ 3000, il Drawdown % deve essere inferiore a 20%, il rapporto Ritorno/DD deve essere superiore a 4, deve produrre almeno 300 operazioni.
A questo punto basterà premere il pulsante Start e StrategyQuant farà il suo lavoro (fase 4).
Genererà in modo casuale nuove strategie di trading utilizzando i blocchi di costruzione da noi selezionati, le testerà subito e memorizzerà quelle che soddisfano i nostri requisiti per la nostra revisione (Fase 5).
Passo 0. Passare alla scheda Costruisci
Come primo passo, passiamo alla scheda Costruisci (a sinistra) perché vogliamo costruire nuove strategie.
Immagine 1: scheda Costruisci
Possiamo scegliere tra la modalità di evoluzione genetica e quella di generazione casuale. Per semplicità, in questo esempio utilizzeremo la generazione casuale.
Passo 1. Configurazione dei dati di prezzo
StrategyQuant viene fornito con oltre 6 anni di dati storici per le quattro coppie principali e consente di importare facilmente i propri dati di prezzo.
Immagine 2: Configurazione dei dati
Passiamo a Impostazioni -> Dati e scegliamo i dati per EURUSD e il timeframe di 1 ora. Impostiamo anche il periodo fuori campione a circa 1/3 dell'intero intervallo di tempo.
Passo 2. Configurazione delle opzioni di costruzione e strategia
Per prima cosa possiamo configurare i blocchi di costruzione. Si tratta delle parti che verranno utilizzate per generare casualmente le regole di trading per la strategia.
Immagine 3: Scelta dei blocchi di costruzione
Le strategie risultanti dipendono dai blocchi di costruzione scelti. Potete scegliere di utilizzare solo l'azione dei prezzi, senza indicatori tecnici, o di selezionare un gruppo specifico di indicatori preferiti.
Le opzioni della strategia contengono vari vincoli relativi al trading. È possibile verificare se si desidera che la strategia utilizzi uno Stop Loss (consigliato) e un obiettivo di profitto fisso (opzionale).
Immagine 3: Impostazione delle opzioni strategiche
È inoltre possibile scegliere opzioni di strategia più generali, come la dimensione minima e massima dello Stop protettivo, ecc. È possibile sperimentare con queste impostazioni: ad esempio, si potrebbero ottenere risultati migliori limitando il tempo di trading a un certo intervallo, chiudendo l'operazione alla fine della giornata o utilizzando diversi SL massimi.
La scheda Gestione del denaro consente di scegliere tra diverse modalità di gestione del denaro. Per la progettazione iniziale della strategia è sempre meglio utilizzare il trading con una quantità fissa di lotti, perché fornisce un quadro chiaro della performance della strategia.
I test di robustezza sono uno strumento aggiuntivo che aiuta a rivelare le strategie che si adattano alla curva dei dati storici. I test di robustezza ci permettono di verificare automaticamente il comportamento della strategia in varie situazioni di stress, ad esempio quando si perdono alcuni trade o quando la strategia utilizza valori diversi dei parametri. Se la strategia è robusta, deve rimanere redditizia anche in presenza di piccole variazioni nei dati di input o di prezzo.
Fase 3. Definire le proprietà desiderate delle strategie generate
Nell'ultima scheda Impostazioni - Opzioni di classificazione definiremo quali strategie devono essere eliminate automaticamente.
Scartiamo le strategie che hanno un profitto inferiore a $3000, che hanno un drawdown superiore a 20%, un rapporto rendimento/DD inferiore a 4 o che producono meno di 300 operazioni.
Immagine 6: Impostazione dei vincoli strategici risultanti
Si noti che se i vincoli sono troppo rigidi, potrebbe essere necessario molto tempo per trovare un candidato che li superi tutti.
Passo 4. Avvio della generazione
Torniamo alla scheda Progress e facciamo clic sul pulsante Start. StrategyQuant inizierà a creare le strategie e mostrerà i suoi progressi nel registro della schermata Build.
Immagine 7: StrategyQuant è in esecuzione e produce una nuova strategia insieme al backtest ogni pochi secondi.
Di solito ci vuole meno di un secondo (a seconda della modalità di precisione e dello storico dei dati) per generare e testare la nuova strategia sui dati storici. Le strategie generate vengono continuamente ordinate e le migliori vengono archiviate nella banca dati per una successiva revisione.
Risultati
Di seguito potete vedere un esempio di strategia redditizia generata da StrategyQuant. La strategia si basa sulle semplici regole delle Bande di Bollinger e presenta una curva azionaria quasi ideale che mostra una crescita costante durante i 4 anni di test.
Immagine 9: I risultati di questa strategia campione sono piuttosto stabili, con drawdown ridotti e una crescita costante del capitale proprio.
La parte rossa del grafico mostra la massima stagnazione azionaria, ovvero il tempo più lungo impiegato dalla strategia per creare un nuovo massimo azionario. La parte blu del grafico è l'area fuori campione, dove la strategia è stata testata su dati precedentemente sconosciuti.
Sintesi
StrategyQuant è uno strumento perfetto per i trader e gli sviluppatori di strategie per accelerare il processo di creazione e test delle strategie di trading e per imparare nuovi concetti che molto probabilmente li porteranno a vedere lo sviluppo delle strategie di trading sotto una luce diversa.
Nell'esempio precedente abbiamo visto quanto sia facile costruire una nuova strategia di trading. Ripetendo lo stesso processo per altri simboli o timeframe è possibile costruire un robusto portafoglio di robot di trading che operano su valute diverse, eventualmente su timeframe diversi, utilizzando strategie diverse e indipendenti.