Machine Learning: la mia esperienza
BTP Futura, il primo giorno soddisfa il Tesoro: ordini per più di 2,37 miliardi. Iacovoni: oltre nostre aspettative
La prima giornata di emissione del BTP Futura - il BTP dedicato esclusivamente agli investitori retail che scade nel luglio 2030 - si è conclusa con ordini superiori a 2,37 …
Il mito di Buffett tentenna con un mercato ‘troppo veloce’ per i suoi gusti, ecco cosa ha sbagliato prima e post Covid
Il rally del 40% di Wall Street dai minimi di marzo ha colto impreparato Warren Buffett che sembra aver perso il suo tocco magico e ha fatto fatica a destreggiarsi …
UniCredit: Memory Cash Collect con rimborso anticipato e barriera profonda
UniCredit lancia una nuova gamma di Memory Cash Collect Worst Of con premi trimestrali e autocallability. Diversi gli aspetti interessanti di questa nuova emissione che appare pensata per affrontare al …
Tutti gli articoli
Tutti gli articoli Tutte le notizie

  1. #1

    Data Registrazione
    Sep 2008
    Messaggi
    8,104
    Mentioned
    8 Post(s)
    Quoted
    1587 Post(s)
    Potenza rep
    42949684

    Machine Learning: la mia esperienza

    Negli ultimi anni le conversazioni, gli articoli di giornale, nonchè una certa cultura accademica hanno posto una enorme attenzione al tema del Machine Learning ed ovviamente tale strumento non poteva non toccare il mondo della finanza dove si trovano due catalizzatori importantissimi: una infinità di dati da poter analizzare ed i soldi.

    Mi sono occupato di Machine Learning ed in particolare del suo elemento core l'Ottimizzazione (da un punto di vista matematico) da tempi remoti e non sospetti. E me ne sono occupato non attraverso l'utilizzo di funzioni builtin che puoi trovare dentro qualche libreria di Python o Matlab, R o Stata o sia anche C++ ma costruendomeli da me, come si dice in gergo from scratch. L'ho potuto fare grazie alla mia passione per i metodi Monte Carlo che mi hanno consentito di costruire algoritmi di ottimizzazione non lineare estremamente potenti ma e sopratutto aderenti alle esigenze del modello che si intende ottimizzare. Ebbene posso dire sin da adesso che, almeno nel mio caso, questi metodi di Machine Learning non hanno funzionato. Credetemi ho provato di tutto, ho posto ENORME attenzione a non incorrere nell'over fitting, ho estremizzato il codice sorgente per effettuare migliaia di cicli evitando di saturare la RAM, eppure i livelli di parametri che la mia mente stimava risultavano in una qualsiasi proiezione Forward migliori di qualsiasi altro set di parametri stimati dalla macchina dopo poderosi training set nel back testing. Era incredibile osservare che sebbene i set elaborati dalla macchina fossero almeno di un ordine di grandezza migliori dei miei nella specificazione dei dati passati quando si passava all'analisi forward, cioè nell'out sample quindi stiamo parlando di predizione, i miei parametri risultavano mediamente migliori del 30-35% rispetto a quelli della macchina.
    Negli ultimi 16 mesi per lavoro e proprio per approcci Machine Learning ho avuto modo di entrare in contatto con numerose aziende che fanno uso di questi approcci da Amazon alla Roche, da Bet365 sino a molte start-up nel campo del fintech e mi sono fatto una idea della capacità del machine learning di essere utile. A mio avviso quando le tecniche di Machine Learning sono applicate in ambienti dove si sviluppano giochi cooperativi (vedi Amazon, case farmaceutiche etc etc) tali tecniche funzionano o cmq sono efficienti, quando invece tali tecniche sono applicate all'interno di ambienti dove si originano giochi in concorrenza e/o non cooperativi allora falliscono, come nei mercati finanziari. In questi ultimi casi il pattern individuato dalla macchina nel passato non si ripresenterà più nel futuro o cmq non si presenterà in futuro all'interno di certi sigma che l'analisi di sensitività dei parametri ha indicato essere la soglia entro cui il modello funziona.
    Per la cronaca ho visitato società fintech che hanno preso poderose iniezioni di venture capital ma che ancora dopo anni non hanno guadagnato un euro, semmai l'hanno perso, ma che hanno bellissimi siti internet con descrizioni altisonanti e con un numero di strumenti adottati nell'analisi che rendono la descrizione stessa del loro operato una farsa. Non sanno infatti che l'utilizzo di centinaia di regole per l'analisi consuma altrettanti gradi di libertà rendendo tutto quel lavoro inutile. Eppure si sanno vendere benissimo.
    Il mio safe harbor sono stati: un buon modello teorico, la statistica utile per la sua validazione e l'ingegneria finanziaria necessaria per controllare il rischio.
    Ultima modifica di amartya78; 05-01-19 alle 10:48

  2. #2

    Data Registrazione
    Oct 2018
    Messaggi
    7
    Mentioned
    0 Post(s)
    Quoted
    97 Post(s)
    Potenza rep
    0
    bellissimi siti internet con descrizioni altisonanti e con un numero di strumenti adottati nell'analisi che rendono la descrizione stessa del loro operato una farsa. Non sanno infatti che l'utilizzo di centinaia di regole per l'analisi consuma altrettanti gradi di libertà rendendo tutto quel lavoro inutile. Eppure si sanno vendere benissimo.
    E....d? Il proprietario è di una arroganza e ignoranza assoluta. Un classico marchettaro. Fa pena. Il nuovo arrivato sembrerebbe uno in gamba. vedremo.


    Per quanto riguarda il machine learning e/o altri approcci quantitativi applicati da quant research difficilmente può funzionare se non sono affiancati da trader/strateghi di grande abilità. Difficilmente un matematico/fisico può sapere dove e come mettere in atto questi esperimenti. Bisogna avere una conoscenza totale dei mercati finanziari.

  3. #3
    L'avatar di Paolo1956
    Data Registrazione
    Jun 2010
    Messaggi
    5,574
    Mentioned
    1 Post(s)
    Quoted
    1448 Post(s)
    Potenza rep
    42949683
    La risposta usuale (e la più probabile ) è che nei dati passati vi sia troppo poca informazione che si trasmette. In sostanza che l'innovazione sia quasi tutto.

    Oppure (meno probabile) c'è informazione ma non usiamo il metodo giusto per estrarla. Ad esempio essa si potrebbe trasmettere in modo fortemente non lineare, oppure è "sparsa", "diffusa", o altro.....

    Interessante la distinzione che fai fra giochi cooperativi e non. Non ci ho mai riflettuto, però mi sembra che anche gli esiti di questi ultimi siano spesso prevedibili. Puoi chiarire meglio il punto?

    Ciao.

  4. #4

    Data Registrazione
    Sep 2008
    Messaggi
    8,104
    Mentioned
    8 Post(s)
    Quoted
    1587 Post(s)
    Potenza rep
    42949684
    Ciao Paolo,

    il fallimento che ho ottenuto nell'ambito del Machine Learning in particolare nella Ottimizzazione non lineare tramite metodologia MC applicata ai mercati finanziari rappresenta la mia più grande delusione in ambito teorico. Da questa delusione tuttavia ho tratto delle lezioni che mi hanno infine consentito di giungere ad un modello di trading (non si tratta più di voler fare predizioni, certamente non previsioni nel lungo periodo) decisamente più stabile nel tempo e che mi sta regalando, sino ad ora, importanti alpha, rispetto al S&P500 mio benchmark. Un'altra lezione che ho imparato è che non esiste un modello universale ma sempre nel mio caso il risultato è ottenuto mediante la combinazione certosina di approcci anche molto lontani che di concerto agiscono ora prevedendo nel breve termine ora controllando il rischio.

    Inizio con la mia idea di previsione nei mercati finanziari: mi sono fatto una idea che i mercati finanziari siano come una Varietà geometrica (come la Terra), dove localmente hai delle proprietà e più ti sposti dal tuo punto di riferimento più quelle proprietà sfumano.
    Tornando ai mercati finanziari esiste, secondo la mia esperienza ed i miei calcoli, un range temporale rispetto al punto T_0 dove esistono certe regolarità statisticamente parlando e queste regolarità sono anche correlate alle fasi di mercato. All'interno di questo range temporale è possibile trarre delle ipotesi sul movimento dei prezzi. La mia esperienza ed i miei calcoli mi hanno portato a concludere che in quel range temporale la variazione dei prezzi non è una random walk.

    Rispondendo alla tua domanda l'idea della teoria dei giochi come spiegazione al mio fallimento del Machine Learning, questa idea mi è venuta osservando che l'utilizzo di processi di Ottimizzazione non lineare tramite metodi MC mi dava successi strepitosi quando la applicavo a problemi in cui le informazioni passate non erano in concorrenza con altri attori e fallivano invece sempre quando li applicavo ai mercati finanziari. Mi spiego subito con un esempio. Supponiamo che io sia un lettore di Amazon e su quella piattaforma compro sempre dei libri aventi a che fare con la Fantascienza è normale che dopo alcuni acquisti o visite fatte al sito l'algoritmo di Amazon deduca immediatamente una relazione tra me ed i libri di fantascienza inondandomi di spam. In questo caso, se escludo il problema dello spam, io ed Amazon non siamo in concorrenza nel senso che l'idea che Amazon mi proponga nuovi titoli di fantascienza tutto sommato o è positiva o quanto meno non è negativa. Trasliamo tutto ai mercati finanziari nel momento in cui un algoritmo trova una relazione o pattern tra me investitore ed i miei acquisti o vendite allora lui è in grado di anticiparmi traendone un vantaggio ed io uno svantaggio (banalmente se per esempio mi muovo a comprare il prezzo ask tenderà ad aumentare). La presenza di una componente negativa induce il mio comportamento ad essere inusuale rispetto all'azione precedente rendendo quel pattern del tutto inefficace ed inducendo la macchina in errore. Estendendo questo approccio a tutti gli operatori di mercato ed iterandolo infinite volte ecco che tutta l'informazione passata trattata in quel modo così rozzo (il Machine Learning non ti da una spiegazione, ti tira fuori dei valori di parametro che sono stati eccellenti nel passato) cessa di avere una utilità. Spingendomi ulteriormente nell'analisi posso però dire di più infatti con il ML più vai a trattare variabili sensibili più questi risultati sono scadenti e li la mente umana è imbattibile, più invece per esempio vuoi trovare un pattern tra il modello predittivo e le condizioni di mercato più quell'approccio può funzionare (in quest'ultimo caso variazioni anche grandi del parametro non impattano in maniera catastrofica sulle performance).

    Oggi osservo molte società fintech che nascono sul ML pensando che il Machine Learning sia l'arma definitiva. Spesso l'euforia è tale che non si sono neanche interrogati su quali sono le tecniche di base di validazione (Back - Forward). C'è una di queste società estera piena piena zeppa di giovani matematici e fisici che mi ha colpito per certe ingenuità. Voglio dire anche io all'inizio fui ingenuo pensando che funzionassero ma sapevo che cmq avrei dovuto fare una validazione mi bastò fare alcune volte un Back-Forward per capire che potevo rimettere in frigo la bottiglia di champagne.

    Cmq è proprio vero la finanza inizi a conoscerla dopo che ci hai sbattuto tante volte ed ogni volta hai avuto la forza di ricominciare.

  5. #5
    L'avatar di Paolo1956
    Data Registrazione
    Jun 2010
    Messaggi
    5,574
    Mentioned
    1 Post(s)
    Quoted
    1448 Post(s)
    Potenza rep
    42949683
    Random walk: sì, è possibile che non sia un RW (tra l'altro le code grasse ci mostrano che la distribuzione non è certamente gaussiana) e semmai si dovrebbe (penso) guardare ai processi di Ornstein. Ma le complicazioni matematiche valgono la pena per noi comuni mortali? (mah!)

    Tornando al discorso giochi, è chiaro che big data & ML sono preziosi in certi ambiti. Qui però gli operatori sono in competizione reciproca e contemporaneamente influenzano il risultato. Ne segue che i patterns non sono mai stabili. Direi che hai riassunto bene quello mche pensiamo in tanti....

    Ciao!

  6. #6
    L'avatar di ciroascarone
    Data Registrazione
    Mar 2007
    Messaggi
    20,201
    Mentioned
    2 Post(s)
    Quoted
    3495 Post(s)
    Potenza rep
    42949686
    Ultima modifica di ciroascarone; 06-01-19 alle 22:31

  7. #7
    L'avatar di Paolo1956
    Data Registrazione
    Jun 2010
    Messaggi
    5,574
    Mentioned
    1 Post(s)
    Quoted
    1448 Post(s)
    Potenza rep
    42949683
    Sì, dunque, banalmente, la volatilità è autocorrelata e questo non è compatibile con pprocessi RW o OU. I mercati non sono (in generale) efficienti, ma tutto questo non aiuta molto.

    Voglio dire, l'esperienza di Amartya è anche quella che ho avuto io, è molto difficile formalizzare un modello che funzioni, spesso si va meglio a braccio. Non so se mi sono spiegato.

    Devo anche dire che il nick Ebenezer ha sostenuto qui sopra di avere ottenuto risultati significativi (in senso statistico) con modelli autoregressivi applicati alle opzioni.

  8. #8
    L'avatar di ciroascarone
    Data Registrazione
    Mar 2007
    Messaggi
    20,201
    Mentioned
    2 Post(s)
    Quoted
    3495 Post(s)
    Potenza rep
    42949686
    Citazione Originariamente Scritto da Paolo1956 Visualizza Messaggio
    Sì, dunque, banalmente, la volatilità è autocorrelata e questo non è compatibile con pprocessi RW o OU. I mercati non sono (in generale) efficienti, ma tutto questo non aiuta molto.

    Voglio dire, l'esperienza di Amartya è anche quella che ho avuto io, è molto difficile formalizzare un modello che funzioni, spesso si va meglio a braccio. Non so se mi sono spiegato.

    Devo anche dire che il nick Ebenezer ha sostenuto qui sopra di avere ottenuto risultati significativi (in senso statistico) con modelli autoregressivi applicati alle opzioni.
    beh, un variance ratio stimato superiore ad 1 su una certa finestra temporale con uno dei tests asintotici riportati indica che vi è stato comportamento trend following del mercato ( correlazione seriale positiva ) mentre se è risultato significativamente inferiore ad 1 vi è stata correlazione seriale negativa o comportamento mean reverting..naturalmente è probabile che nella finestra forward di pari periodo il comportamento osservato abbia più o meno le stesse probabilità di rimanere tale o cambiare di regime cosicchè tutte le congetture su variance ratio autocorrelazioni et simila vanno a donnine allegre e con loro i soldi dello sventurato trader...fosre solo sui mercati più inefficienti o su qtime frame elevati ( mensile trimestrale annuale) il comportamento osservato su una finestra temporale si mantiene per un poco...sugli altri vi è un continuo cambio di regime tra trend following e mean reverting, instabilità continua, che si mescolano assieme in maniera caotica a formare la nota "via di mezzo" del mercato efficiente imprevedibile con questi strumenti

  9. #9

    Data Registrazione
    Sep 2018
    Messaggi
    93
    Mentioned
    0 Post(s)
    Quoted
    62 Post(s)
    Potenza rep
    3752487
    Discussione molto interessante, io da 3 anni ormai lavoro su progetti di machine learning o legati ad esso. Posso affermare che anche in un contesto non competitivo, definire modelli o insiemi di modelli che abbiano capacità predittive significativamente superiori all'opinione di un esperto non è affatto banale anche se possibile. Da qualche mese ho iniziato a lavorare su un progetto di deep reinforcement learning applicato al mondo finanziario con un orientamento buy & hold.
    Ho utilizzato il metodo Montecarlo in passato, ma questo progetto utilizza più strumenti come reti neurali e q-learning. L'obiettivo è quello di "smazzarsi" il mercato azionario e trovare stock validi per la strategia B&H, una volta ricevuto un set di stocks con annesse probabilità sarei comunque io (e/o il team) a valutare se e come agire. Per fare un esempio abbastanza vicino, il mio modello è l'INGV che mi da la probabilità che accada un terremoto, il team sarebbe la protezione civile che decide o meno di evacuare la zona.
    Dalla vostra esperienza nel settore mi sembra di capire che alla fine dell'arcobaleno c'è una pentola vuota.
    Vorrei capire se secondo voi affrontare il problema in questo modo porti o meno dei vantaggi e le possibili insidie che mi attendono. Voi avete già percorso questa strada e c'è sempre tanto da imparare.

  10. #10

    Data Registrazione
    Sep 2008
    Messaggi
    8,104
    Mentioned
    8 Post(s)
    Quoted
    1587 Post(s)
    Potenza rep
    42949684
    Citazione Originariamente Scritto da lumio Visualizza Messaggio
    Discussione molto interessante, io da 3 anni ormai lavoro su progetti di machine learning o legati ad esso. Posso affermare che anche in un contesto non competitivo, definire modelli o insiemi di modelli che abbiano capacità predittive significativamente superiori all'opinione di un esperto non è affatto banale anche se possibile. Da qualche mese ho iniziato a lavorare su un progetto di deep reinforcement learning applicato al mondo finanziario con un orientamento buy & hold.
    Ho utilizzato il metodo Montecarlo in passato, ma questo progetto utilizza più strumenti come reti neurali e q-learning. L'obiettivo è quello di "smazzarsi" il mercato azionario e trovare stock validi per la strategia B&H, una volta ricevuto un set di stocks con annesse probabilità sarei comunque io (e/o il team) a valutare se e come agire. Per fare un esempio abbastanza vicino, il mio modello è l'INGV che mi da la probabilità che accada un terremoto, il team sarebbe la protezione civile che decide o meno di evacuare la zona.
    Dalla vostra esperienza nel settore mi sembra di capire che alla fine dell'arcobaleno c'è una pentola vuota.
    Vorrei capire se secondo voi affrontare il problema in questo modo porti o meno dei vantaggi e le possibili insidie che mi attendono. Voi avete già percorso questa strada e c'è sempre tanto da imparare.
    Ciao Lumio,

    intanto grazie del tuo contributo alla discussione. Specifico subito che nel mio caso utilizzo i metodi MC per fare ottimizzazione quindi come mezzo per costruirmi metodi ML, quindi da distinguere dalle simulazioni MC che invece sono un fine. Pertanto per esempio utilizzo MC per stimare i valore dei nodi di una Neural Network.
    Ritornando al tema sull'efficacia del ML io chiaramente ho dato la mia versione dei fatti basata sulla mia esperienza. Quindi non è escluso a priori che vi possa essere una applicazione ML efficace.

    Detto questo però mi permetto di suggerire quanto meno una Validazione. Per esempio io ritengo robusto un approccio back-forward (classico metodo di validazione di modelli predittivi) del seguente tipo prendi ca. 10 anni di serie storiche dividili in due parti 5 anni e 5 anni, nel primo set effettui il training della macchina (training set) quindi fissi il miglior set di valori ottenuti nel training e proietti per 5 anni. Infine calcoli il tasso di decadimento tra la performance ottenuta nel in-sample e quella nell'out-sample. Il miglior modello predittivo è quello che tra in-sample ed out- sample non mostra alcuna differenza nella performance. 5 anni sono tanti ma bisogna essere molto esigenti. Un altro approccio potrebbe essere che effettui il training set nei 5 anni e proietti anche ad un giorno, quindi esce l'ultimo giorno ed entra nel training set quello appena proiettato iterando il processo per tutti i giorni nei 5 anni successivi infine metti insieme le performance dei 5 anni così ottenuti. L'importante è non contaminare i dati out-sample cioè aggiustare la performance utilizzando quei dati.
    Ciò dovrebbe darti una idea se alla fine dell'arcobaleno c'è una pentola vuota o piena.

Accedi