Errori nella scrittura dei codici e debugging nel trading sistematico – Guida Completa

CONTENUTI

    Se ti occupi di trading sistematico sai già che è importante avere delle competenze di programmazione. Fortunatamente non è necessario diventare veri e propri esperti informatici. Anzi, per raggiungere traguardi di tutto rispetto possono bastare conoscenze piuttosto basilari.

    La parte di programmazione in sé, quindi, è un ostacolo che viene superato abbastanza facilmente da tutti i trader sistematici.

    Ma c’è un altro ostacolo che spesso viene sottovalutato e che può essere un vero bastone tra le ruote nella creazione delle proprie strategie di trading. Si tratta degli errori di forma e di contenuto che possiamo commettere quando scriviamo i codici dei trading system.

    Gli errori di forma nei codici dei sistemi

    Per poter utilizzare un trading system su un certo mercato è innanzitutto necessario compilarne lo script. La fase di compilazione rappresenta una validazione del codice durante la quale la piattaforma di trading utilizzata controlla che tutti i passaggi espressi nello script siano conformi alle regole di scrittura da essa previste e ne conferma l'applicabilità.

    Talvolta può capitare che in fase di compilazione, la piattaforma di trading segnali alcuni errori legati alla forma del codice, ovvero alla sua sintassi.

    Può trattarsi di errori davvero semplici come ad esempio il mancato inserimento del punto e virgola alla fine di un'istruzione (o di altre convenzioni legate al linguaggio di programmazione utilizzato) oppure la dichiarazione errata o mancante di una variabile, o ancora un errore nell'uso di qualche parola chiave.

    Per individuare questi errori è sufficiente ripercorrere con pazienza l'intero script e correggerli.

    Gli errori di contenuto nei codici dei sistemi

    debugging di trading system come trovare gli errori

    Una tipologia di errore sicuramente più difficile da individuare, gestire e risolvere sono gli errori legati al contenuto stesso di un trading system, ovvero a quello che il sistema fa quando viene messo a mercato.

    Questi errori non vengono individuati dalla piattaforma in fase di compilazione in quanto il codice di per sé è scritto in modo corretto, solo che le istruzioni che abbiamo scritto non corrispondono a quello che vorremmo facesse il trading system.

    In questo caso è fondamentale applicare una capacità che abbiamo scelto di chiamare debugging in analogia con il processo informatico di ricerca e correzione degli errori (bug) nei codici di software e programmi.

    Nel trading sistematico, fare debugging significa analizzare tutti i passaggi eseguiti per costruire un trading system, dallo sviluppo all'ottimizzazione, e individuare il punto in cui si trova l'errore.

    Nel seguente video, Andrea Unger parla della capacità di debugging applicata al trading sistematico e offre alcuni consigli utili per svilupparla e imparare ad individuare e risolvere gli errori:

    Principali cause di errore nella creazione di trading system inefficaci

    Se mettere a mercato un trading system con errori di forma è impossibile, in quanto il sistema non supera la fase della compilazione, andare live con un sistema dal contenuto sbagliato è possibile e anche pericoloso.

    Un sistema che si comporta in modo diverso da come vorremmo rischia infatti di portarci a perdite anche ingenti che non avevamo preventivato in fase di sviluppo.

    Tra gli errori che possono far sì che un sistema non performi in maniera conforme alle nostre aspettative troviamo ad esempio l'uso di tipologie di ordini non appropriate al nostro scopo oppure il mancato adattamento di parametri come stop loss e take profit alla tipologia di sistema e al mercato oggetto di negoziazione.

    Per esempio usare uno stop loss troppo stretto per un mercato molto liquido e volatile oppure applicare un take profit ad una strategia trend following sono errori di impostazione che possono compromettere fortemente le performance di una strategia.

    Anche la sovraottimizzazione, o overfitting, dei parametri con cui tradare il sistema può portare alla creazione di strategie che non funzionano come vorremmo, così come l'utilizzo di porzioni di storico dati non sufficientemente estese o che non coprono una varietà sufficiente di diverse condizioni di mercato.

    Conclusione

    Come vedi, esistono vari tipi di errori che possiamo commettere durante lo sviluppo e l'ottimizzazione di una strategia di trading automatizzata.

    Per prevenirli è fondamentale applicare sempre il buon senso e svolgere tutti i test e le verifiche necessarie per accertarsi che il sistema faccia quello che desideriamo e che i risultati prodotti siano veritieri e affidabili.