Ascolta “Robustezza dei Trading System” su Spreaker.


Ciao ragazzi, ciao da Andrea Unger.

Un sistema robusto, come si valuta la robustezza di un sistema.

Questo è un qualcosa di cui si parla spesso e un po’rifacendoci al discorso dei falsi miti, spesso se ne abusa anche, nel senso che troppo spesso si mettono in campo teorie algoritmiche sulla robustezza di un sistema con tanto di analisi Montecarlo o quant’altro.

Il discorso è duplice, in realtà.

Il discorso principale è nell’ipotesi che lo sviluppatore si faccia ammaliare, diciamo, dagli effetti di una scelta eccessivamente puntuale dei parametri di ottimizzazione.

C’è ovviamente il rischio che si vada a creare un sistema che in realtà sia puramente illusorio, perché basato su dei picchi di performance legati a una scelta del tutto casuale di valori per quelli che sono gli input dei parametri, degli indicatori o qualsiasi cosa che si scelga insomma.

È chiaro che qui ci sono due possibilità, o lo sviluppatore di questo sistema è truffaldino e vuol far vedere qualcosa di più bello di quello che in realtà potrà poi essere, o è un babbeo perché si vuole fregare da solo illudendosi di avere qualcosa di bello che poi bello non è.

Comunque, babbeo o truffatore che sia, ci sono per questo dei tool che permettono una valutazione e spesso e volentieri, questi tool che vanno a valutare le performance di questo sistema all’intorno dei parametri scelti, ci mettono di fronte uno scenario che può essere più o meno apocalittico se le scelte sono state fatte male e quindi servono per disilluderci o comunque per esporre le debolezze di questo sistema.

Poi però c’è il discorso molto più delicato del sistema che invece è stato fatto seriamente, dove le scelte sono state oculate, ragionate e ben pesate.

A questo punto come faccio a dire che è robusto o non è robusto?

Certamente da un lato ci sono i gradi di libertà o i vincoli, visti da un altro punto di vista del sistema, che poi sono tutte le condizioni che uno mette.

Ogni condizione che io aggiungo è un vincolo nuovo che io inserisco e ovviamente aumento il pericolo che il sistema sia frutto di puro overfitting, illusorio o chi più ne ha più ne metta.

Il grado di libertà che il sistema continua a mantenere è solo quello che in qualche maniera dovrebbe darci qualche indicazione di più su quello che potrebbe essere la robustezza di questo sistema.

Per cui, ovviamente, quanto più contorto è il sistema stesso, tanto più pericoloso e meno robusto potrebbe essere, un po’ come in quelle costruzioni di castello di carte che magari è bellissimo però basta il gatto che passa con la coda e casca tutto.

Chiaramente questo è un esempio estremo però rende un po’l’idea.

Poi però c’è anche un discorso in cui la robustezza non è una realtà misurabile.

Se si costruisce un sistema basandosi su una determinata caratteristica o un edge di mercato, qualora questo edge, questa caratteristica venisse meno il sistema chiaramente crollerebbe, il sistema non potrebbe più funzionare, perché se io baso il mio arrivo al posto di lavoro puntuale entro le 9 sull’autobus che passa sotto casa alle 8:20 e nel momento in cui l’autobus passa all’orario estivo e non passa più alle 8:20, ma passa alle 8:35 io rimango fregato.

Sono cambiate le caratteristiche dell’ambiente in cui vado ad operare e con esse ovviamente il risultato del mio sistema.

Questo purtroppo non è ben valutabile.

Sì certo uno può dire: “Beh certo, tu puoi calcolare che il tuo autobus ritarda di 5 minuti e già arrivi in ritardo”, ok va bene tutto, però la robustezza, nel momento in cui il sistema ben si sposa alla caratteristica del mercato, ad una inefficienza che riusciamo ad individuare, quella è.

Non è che io permutando, cambiando, cambio tanto, perché alla fine mi sto adeguando a quello che è un qualcosa che ho trovato nel mercato.

Devo semmai essere bravo a capire in tempo, un eventuale cambiamento della caratteristica.

Con l’autobus ho l’orario nuovo, basta che seguo gli aggiornamenti dell’azienda che mi fornisce il servizio e so per tempo che la cosa non funziona più.

Purtroppo i mercati non ci mandano gli aggiornamenti e quindi le caratteristiche cambiano.

In questo caso, più che un valutatore di robustezza, di cui se ne trovano tanti, sarebbe utile un valutatore del motore del sistema, cioè: il mio sistema perché funziona?

Se funziona perché sfrutta questa caratteristica, ho il sospetto che tale caratteristica sia venuta meno?

Allora sto attento o molto più semplicemente mi pongo dei paletti fissi, ben scelti in qualche maniera, come meglio rispondano alle mie caratteristiche, dei numeri che mi permettono di dire: “Ok questo sistema lo fermo perché ha fatto peggio di quello che io mi ero posto come limite”.

Questo è un discorso ovviamente amplissimo, si possono creare diversi indicatori che ci dicono quando fermare il sistema, a meno che appunto io non capisca chiaramente che una certa inefficienza si è spenta, è caduta e via dicendo, però questo è molto difficile.

Tra l’altro il motore del sistema, spesso e volentieri poi viene ovviamente infarcito di altri filtri, altri abbellimenti, altre condizioni che migliorano l’andamento generale dello stesso.

Ecco che poi, tutto questo assieme, alle volte permette al sistema di resistere anche a fronte del cedimento dell’inefficienza.

È lì che uno deve drizzare le antenne, perché se uno riuscisse a monitorare l’idea base, saprebbe magari non dico in anticipo, ma per tempo, che la situazione comincia a essere poco piacevole, per quello che riguarda quel tipo di sistema.

Per cui valutatori della robustezza del sistema e via dicendo possono essere utili qualora veramente temiamo di perderci in un bicchier d’acqua, ovvero di farci abbagliare da risultati belli o troppo belli.

Tutto il resto invece si costruisce con l’esperienza, la valutazione del vero contenuto del motore del sistema e quindi la valutazione dell’ambiente in cui il sistema va ad operare e dei motivi, delle ragioni, per cui quel sistema e lì in piedi.

Spero che sia stato utile, in ogni caso se avete dei dubbi o qualche cosa sull’argomento, estensioni o tesi, scrivete pure qua ed io cercherò di rispondere come sempre.

Ciao ragazzi, ciao da Andrea Unger.

Diventa un Trader Sistematico >>


articolo originale disponibile qui: https://blog.ungeracademy.it/2019/03/29/robustezza-dei-trading-system/