Machine Learning: la mia esperienza

  • Ecco la 60° Edizione del settimanale "Le opportunità di Borsa" dedicato ai consulenti finanziari ed esperti di borsa.

    Questa settimana abbiamo assistito a nuovi record assoluti in Europa e a Wall Street. Il tutto, dopo una ottava che ha visto il susseguirsi di riunioni di banche centrali. Lunedì la Bank of Japan (BoJ) ha alzato i tassi per la prima volta dal 2007, mettendo fine all’era del costo del denaro negativo e al controllo della curva dei rendimenti. Mercoledì la Federal Reserve (Fed) ha confermato i tassi nel range 5,25%-5,50%, mentre i “dots”, le proiezioni dei funzionari sul costo del denaro, indicano sempre tre tagli nel corso del 2024. Il Fomc ha anche discusso in merito ad un possibile rallentamento del ritmo di riduzione del portafoglio titoli. Ieri la Bank of England (BoE) ha lasciato i tassi di interesse invariati al 5,25%. Per continuare a leggere visita il link

Ho studiato decine di manuali in inglese, seguito centinaia di corsi online, da Youtube al MIT. Mi sono, con molto sforzo avendo una formazione umanistica ed essendo rimasto alle tabelline per quanto concerne la matematica, creato una basilare formazione scientifica. Dall'analisi all'algebra lineare passando per la statistica bayesiana e non.
Tolta la parte sul deep learning che francamente ora mi fonderebbe il cervello, ho studiato ogni forma possibile di tecnica di machine learning.
Ho imparato a programmare con Python e a collegarmi via API con i broker. Tutto sempre in demo, non ho nessuna intenzione di andare live fino ad un backtest decente.
Ciao, innanzitutto complimenti per lo sforzo, il tempo speso ad inseguire una passione non è mai tempo perso in senso stretto, ma – se sposso essere franco – la domanda che ti fai alla fine del tuo post (il ML funziona?) avresti dovuto farla all’inizio del percorso.
Secondo me il primo “errore” – se posso usare questo termine – è stato dare per risposte scontate a due domande di base:
1) Il ML funziona meglio di altre tecniche più tradizionali?
2) Un privato – per quanto volenteroso – è in grado in genere (cioè guardando alla norma e non alle eccezioni, che pure ci saranno) di farlo funzionare (cosa esclusa perfino da Lopez De Prado in una intervista che ho letto da qualche parte, in cui spiegava che – anche ammesso che funzioni – l’asticella è talmente alta che richiede forti investimenti in infrastrutture e lavoro in team di “scienziati”)?


Ho imparato a programmare con Python e a collegarmi via API con i broker. Tutto sempre in demo, non ho nessuna intenzione di andare live fino ad un backtest decente.

E’ molto peggio di così, anche avessi un back test decente:
The False Strategy Theorem: A Financial Application of Experimental Mathematics by Marcos Lopez de Prado, David H. Bailey :: SSRN



Trado solo su Forex, CFD, cripto sporadicamente, azionario raramente. Per questioni meramente di budget.
Questo – secondo me – è un altro errore fondamentale.
La scelta del sottostante non può dipendere dal tuo budget, la scelta del sottostante è dipendente dall’identificazione dell’edge su un determinato sottostante…. sul forum (questo e sull’altro) è stato detto più volte…

Il machine learning funziona o posso buttare nel cestino via anni di lacrime e sangue? Per saperlo, almeno mi rilasso e chiudo una fase.

Io credo che la risposta già la sai: al 99%, puoi buttare nel cestino, a meno che non sia una passione da perseguire nel tempo libero, e senza togliere spazio alle altre cose (più) importanti della vita.

Scusa, so che sono come il sale su una ferita, ma è inutile esser diplomatici...

In ogni caso, come già detto, la domanda è sbagliata, non ha molto senso chiedersi se funziona in assoluto, quanto se ti da un vantaggio competitivo su tecniche più tradizionali di momentum o mean reversion, o di sfruttamento di altre edges (es l’implied skew pèremium)
La mia risposta è no, ma – WARNING – io non ho la minima io delle tecniche di cui tu hai parlato, non le ho mai studiate, a me (e ad altri) è sempre sembrato ovvio (come ha ricordato Amartya qualche post fa) che il nostro tempo va primariamente impiegato nella identificazione dei sottostanti che – per qualche motivo – ipotizziamo presentino caratteristiche almeno un minimo prevedibili….. una vota scelti “bene” (e su come sceglierli “bene” si aprirebbe tutta un'altra serie di problematiche..) i sottostanti non occorrono metodi particolari, basta la statistica di base.
 
Ultima modifica:
Poi ripeto io sto parlando di ML cioè il topic del thread, ma se invece la domanda è il trading quantitativo e sistematico funziona allora la mia più sincera opinione è che il ML in seno a questo settore conti meno del 5%. Per capirci quest anno molto fondi quantitativi basati su AI hanno perso. In sintesi se supponiamo che il Medalliom sia il miglior fondo quantitativo al mondo allora io sono sicuro che il Medallion fa quelle performance solo e soltanto perché dietro vi è definita in algoritmi una costruione quantitativa basata sulla pia ampia letteratura di concetti tradizionali di matematica e statistica. Per me la dentro il ML e’ meno dell 1%. E lo dico proprio perché mi sono accorto che finora ho fatto benissimo a meno del ML migliorando i ritorni ed il rischio semplicemente ampliando L inserimento di concetti matematici e statistici nel modello.

Basarsi solo su ML per andare live dal mio punto di vista è folle.

Io intendo il ML come L Ottimizzazione dell elemento forecast di un modello di gestione che tiene in seno qualsiasi aspetto e di cui il forecast è solo uno degli elementi. È un processo di apprendimento lungo che passa per tentativi ed errori.

....................
Semmai adesso sono più interessato all executions degli ordini come minimizzare lo spread, come gestire parecchi parecchi soldi mantenendo efficiente L operatività dei modelli. Ecco queste sono le cose su cui sto lavorando adesso. Il ML dal mio punto di vista è una Ottimizzazione che può aspettare ad essere implementata proprio perché ho capito che il salto è venuto dall implementare tanti altri concetti matematici e statistici più tradizionali ma in definitiva molto molto più robusti.


Da incorniciare, secondo me.


PS sull'importanza dell'EXECUTION gli stessi Brown e Mercier - si racconta - per molti tempo non capivano perchè
sull'azionario i loro modelli funzionassero in teoria e si schiantassero in partica, finchè non trovarono il modo di ..... risolvere il problema in termini di EXECUTION, come ipotizzano qui:

Renaissance Technologies - Trading Strategies Revealed | A Documentary - YouTube

Comunque se è vero che nel 2020 Medallion ha fatto il 60%, e gli atri fondi RENTEC (aperti ai clienti) si sono schiantati, beh allora immagino che si apra un problema grosso come una casa.... (sia di immagine sia di sostanza...) ma immagino avremo tempo e modi per approfondire...

PS qualche ipotesi di lavoro anche sull'altro mostro.....su D E Shaw... (alla fine sono solo 2 che hanno passato il test dei decenni....)

Ghost Patterns – D.E. Shaw’s Quant Strategy Explained - YouTube
 
Ultima modifica:
Da incorniciare, secondo me.


PS sull'importanza dell'EXECUTION gli stessi Brown e Mercier - si racconta - per molti tempo non capivano perchè
sull'azionario i loro modelli funzionassero in teoria e si schiantassero in partica, finchè non trovarono il modo di ..... risolvere il problema in termini di EXECUTION, come ipotizzano qui:

Renaissance Technologies - Trading Strategies Revealed | A Documentary - YouTube

Comunque se è vero che nel 2020 Medallion ha fatto il 60%, e gli atri fondi RENTEC (aperti ai clienti) si sono schiantati, beh allora immagino che si apra un problema grosso come una casa.... (sia di immagine sia di sostanza...) ma immagino avremo tempo e modi per approfondire...

PS qualche ipotesi di lavoro anche sull'altro mostro.....su D E Shaw... (alla fine sono solo 2 che hanno passato il test dei decenni....)

Ghost Patterns – D.E. Shaw’s Quant Strategy Explained - YouTube

Mi ero sbagliato sul Medallion, ma In difetto. Avrebbe fatto il 76% che su 10 billions fa 7.6 mld di dollari di profitto netto.

Siamo davvero oltre la comprensione umana.

Renaissance’s Medallion Fund Surged 76% in 2020. But Funds Open to Outsiders Tanked. | Institutional Investor

Non mi riferisco alla sola performance ma la performance legata a quella montagna di soldi senza (questa invece è una mia riflessione comunque pervenuta da notizie trapelate dai più importanti giornali di finanza al mondo) perdere MAI, cioè proprio MAI.

Guardate che ripeto anche perdere MAI e performance ormai sono nelle condizioni di comprenderle. Ma non riesco davvero a spiegarmi come fa ad evitare o comunque limitare molto i costi di transazione e come evita che quella massa di soldi gestiti a quel modo sia di fatto market neutral ai fini della sua strategia. Ho solo una piccola ipotesi sul secondo aspetto.
 
Ultima modifica:
Intanto ringrazio tutti delle risposte senza quotare singolarmente, spunti molto interessanti. Il consiglio di uscire da una visione "budgetcentrica" per concentrarmi sul sottostante mi ha dato una scossa.
Ringrazio soprattutto per la brutalità, brucia ma è necessaria. Diciamo che in questo periodo il dedicare meno tempo agli effetti sia stato un processo naturale, quasi inconsapevole. Forse la passione che ci ho messo, forse la fretta nel voler ridurre i tempi di studio dovendo portare a termine altri progetti oltre al lavoro.
Ad ogni modo non cerco l'alpha che renda milionari e faccia girare in Lambo a Dubai come tanti simpatici guru fanno vedere nelle sponsorizzate, il mio obiettivo primario era portare a termine un progetto del tutto mio, partendo da zero ed in un ambito complesso. E' una soddisfazione personale, a prescindere dai profitti. L'ho detto spesso a chi mi conosce: anche se fallisco sono felice, sono riuscito a farlo e ad arrivare a testarlo. Mi va bene così. Poi certo se il conto si gonfia non mi lamento :D
Detto ciò, vista la mia confusione che si aggiunge a quella di un ambiente già di suo caotico e poco affine alle certezze, molti dubbi rimangono.
Dato per scontato che cercare un algo che predica bene le prossime candele utilizzando solo ML sia folle, come giustamente sottolineato, mi chiedo dove risieda un briciolo di verità e dove sia tutto leggenda.
Tagliando a priori le categorie estreme, cioè "il modo migliore per tradare è non tradare, falliscono tutti gnegne", "guadagnano solo gli istituzionali con l'hft" e "fidati basta un cross di medie mobili e sorseggi Mojito alle Barbados", cosa funziona veramente? Parlo ovviamente di approcci, di visioni, di tecniche generiche. Se non altro per sgombrare il campo dal rumore di tecniche inutili che affollano la mente e tolgono tempo ai temi cruciali. Ho bisogno di un indirizzo, di un percorso veramente utile verso potenziali profitti. E sottolineo potenziali, di certo come sappiamo non esiste nulla.
Lo dico perchè togliendo analisi tecnica e fondamentale e togliendo un approccio da investitore rimangono solo approcci statistici e di machine learning.
Ho recepito i consigli di utilizzare il ML come un ensemble, unito ad altri approcci primari su base statistica. O solo semplici inefficienze stanate statisticamente. Quindi ha ragione Lopez de Prado.
Ma la domanda rimane, specie per un autodidatta che litiga con la matematica come me: come? Cosa?
Criteri lineari non funzionano, quindi inutile scervellarsi su regressioni o Arima e Garch vari. I derivati li conosco poco quindi escludo tutto il mondo del calcolo stocastico.
L'hft per un retail è pazzia quindi escluso ogni approccio con tick e algo basati sul timing.
Unsupervised learning è utilizzato per altro quindi niente. Di supervised se non funzionano modelli avanzati come il boosting non vedo perchè dovrebbero funzionare logistic regression, random forest, svm, linear regression con elastic-net ecc.
Mean reversion con tecniche classiche tipo pair trading non hanno più senso, i costi si pappano tutto ammesso che esistano ancora margini con spread simili.
Rimane poco, almeno per quanto ne sappia io dalla mia scarsa esperienza.
Ho sentito parlare bene della spectral analysis e del relativo mondo markoviano, oltre che di wavelet e filtraggi vari per rilevare i regimi di mercato. Hanno potenziale?
Ho sentito parlare anche molto bene del machine learning su base probabilistica, bayesiano. Così come ho sentito parlare, e per la verità ho anche visto dati promettenti, di un grande potenziale nel deep reinforcement learning. Dal poco che ho studiato in merito sembra rivoluzionario: oltre a eliminare totalmente il labeling e altri step lunghi racchiude in se tutto ciò che possa ottimizzare un sistema. Oltre ad allenarsi da solo lo setti per ottimizzare qualunque cosa tu voglia, grazie al meccanismo "premio-punizione". Quindi usi per dire la sharpe ratio come premio e si dovrebbe allenare ottimizzandola. Oltre poi ad autoridurre l'overfitting implicitamente essendo costruito su processi markoviani che procedono in walk forward.
Se non ho capito nulla ditemelo, io me lo ero tenuto come "asso nella manica" ed extrema ratio ma sono pronto a rimanerci male pure qua :D
Per concludere, si capisce bene come sia molto confuso. Sto ovviamente parlando di segnale di ingresso, di predizione. La parte sul risk management l'ho per un attimo messa in pausa perchè è un mondo a se. Ecco, non so più nemmeno cosa andare a predire. Cosa cercare e come sfruttarlo per generare segnali di long/short.
 
Federico la prima cosa, ma davvero la prima cosa che farei se vuoi una risposta tecnica è capire quanti gradi di libertà consumano i tuoi modelli predittivi.

Qui puoi trovare qualcosa.

A Gentle Introduction to Degrees of Freedom in Machine Learning

Seconda cosa anziché L account demo dovresti provare il simulated. Il demo non è assolutamente idoneo a testare una strategia. Il simulated account lo paghi ma hai una verosimiglianza pressoché totale al mondo reale. Sopratutto per certe asset clas tipo l equity. Dipende poi dal broker, dalla sua tecnologia.
 
Federico la prima cosa, ma davvero la prima cosa che farei se vuoi una risposta tecnica è capire quanti gradi di libertà consumano i tuoi modelli predittivi.

Qui puoi trovare qualcosa.

A Gentle Introduction to Degrees of Freedom in Machine Learning

Seconda cosa anziché L account demo dovresti provare il simulated. Il demo non è assolutamente idoneo a testare una strategia. Il simulated account lo paghi ma hai una verosimiglianza pressoché totale al mondo reale. Sopratutto per certe asset clas tipo l equity. Dipende poi dal broker, dalla sua tecnologia.

Grazie della dritta, è un argomento che ho sempre colpevolmente snobbato ed ora lo approfondirò senza dubbio anche solo per conoscenza personale, voglio comunque espandere una discreta competenza assimilata. Peraltro ho quasi tutti i testi di Brownlee.
Però torniamo sempre al discorso che questo serva a ottimizzare un modello, se non altro l'overfitting. Cosa che poi fa crollare la sua efficacia mostrando il re nudo. E quindi in sostanza serve a farti capire il principio da cui partiamo: il ML non funziona. Non si scappa dal loop.
Discorso uguale sul conto simulated, su cui mi trovi assolutamente d'accordo. Se ci arrivo con una monnezza di modello che simulo a fare?
 
Mi ero sbagliato sul Medallion, ma In difetto. Avrebbe fatto il 76% che su 10 billions fa 7.6 mld di dollari di profitto netto.

Siamo davvero oltre la comprensione umana.

Renaissance’s Medallion Fund Surged 76% in 2020. But Funds Open to Outsiders Tanked. | Institutional Investor

Non mi riferisco alla sola performance ma la performance legata a quella montagna di soldi senza (questa invece è una mia riflessione comunque pervenuta da notizie trapelate dai più importanti giornali di finanza al mondo) perdere MAI, cioè proprio MAI.

Guardate che ripeto anche perdere MAI e performance ormai sono nelle condizioni di comprenderle. Ma non riesco davvero a spiegarmi come fa ad evitare o comunque limitare molto i costi di transazione e come evita che quella massa di soldi gestiti a quel modo sia di fatto market neutral ai fini della sua strategia. Ho solo una piccola ipotesi sul secondo aspetto.

Grazie della riflessione. Ti va di condividere con noi la tua ipotesi su come faccia ad essere market neutral?
 
Grazie della riflessione. Ti va di condividere con noi la tua ipotesi su come faccia ad essere market neutral?

Perchè ritengo che abbia un unico modello predittivo che applica ad una infinita sequela di sottostanti, e quindi dividendo l'importo per migliaia di tickers ad esempio ha già raggiunto gran parte del risultato. Bisognerebbe capire per ogni ticker quale è l'importo minimo che fa variare il prezzo. Ad esempio su Apple sarà molto diverso che su una mid cap. Però magari se metto 500.000 dollari su un ticker che capitalizza 5 mld e faccio lo stesso su uno che capitalizza 50 ed hanno lo stesso effetto allora vanno pure bene tutte quelle di 5. Sono scommesse equi-pesate. Chiaramente bisogna avere sistemi che possano gestire migliaia e migliaia di scommesse simultaneamente.

Sui costi di transazione non credo che ci sono invece aspetti tecnici particolari semplicemente li assorbe nella performance lorda ovviamente avendo contratti con prime broker particolari ovvero avendo la stessa Rentec la licenza come prime broker e poi invece lo spread bid-ask lo riducono mediante una allocazione dinamica che guarda al book, e quindi con costi inferiori alla media.
 
Ultima modifica:
  • Like
Reazioni: You
deep reinforcement learning. Dal poco che ho studiato in merito sembra rivoluzionario: oltre a eliminare totalmente il labeling e altri step lunghi racchiude in se tutto ciò che possa ottimizzare un sistema. Oltre ad allenarsi da solo lo setti per ottimizzare qualunque cosa tu voglia, grazie al meccanismo "premio-punizione". Quindi usi per dire la sharpe ratio come premio e si dovrebbe allenare ottimizzandola. Oltre poi ad autoridurre l'overfitting implicitamente essendo costruito su processi markoviani che procedono in walk forward.

mi pare di capire che, a guardare il grafico inerente il metodo 2 della regressione di amartya78 , che differisce dal metodo 1 per il fatto che cresce anzichè flattare, lui abbia seguito un percorso simile al tuo ragionamento in grassetto (lui avrà cercato la massimizzazione dell'inclinazione di quella regressione -con metodi di ottimizzazione ad personam vedi testo: matematica innovativa-, che è rappresentativa dell'equity, per dire). Da li mi pare di comprendere come si giustifica l'enorme dispendio hardware.

complimenti.
 
mi pare di capire che, a guardare il grafico inerente il metodo 2 della regressione di amartya78 , che differisce dal metodo 1 per il fatto che cresce anzichè flattare, lui abbia seguito un percorso simile al tuo ragionamento in grassetto (lui avrà cercato la massimizzazione dell'inclinazione di quella regressione -con metodi di ottimizzazione ad personam vedi testo: matematica innovativa-, che è rappresentativa dell'equity, per dire). Da li mi pare di comprendere come si giustifica l'enorme dispendio hardware.

complimenti.

Si anche io avevo pensato ad un reinforcement learning con premio non scontato, tipo appunto una sharpe ratio o dei return trattati in modo innovativo. Cosa fattibile solo con le reti neurali, è impossibile usare la sharpe ratio come target con una random forest (esempio qualsiasi). Poi ci avrà messo intuizioni matematiche sue che giustamente non rivela. Complimenti davvero.
Lo chiedo anche a te che mi sembri molto più competente di me: dal tuo punto di vista sistemi di time series analysis non lineari funzionano? Parlo di spectral analysis, wavelet, Gaussian mixture model, Hidden Markov model, bandpass e filtri di segnale vari ecc. Sto testando una delle strategie implementate in Zorro, dopo averla modificata un pochino per adattarla, ed al momento sembra profittevole. Certamente pochi giorni sono nulla, deve arrivare il drawdown e sono tecniche tarate su efficienze di durata breve, però...
Volevo pure chiederti se credi che tecniche simili possano essere usate insieme al machine learning puro tipo XGBoost, magari con l'approccio di de Prado tipo: primo modello statistico predittivo (tecniche descritte sopra o ensemble con altri modelli ML) e poi alle previsioni applicare maggiore potenza col modello ML. Il guaio è che non saprei come.
Mi dispiace fare tutte queste domande ma per anni ho solo interagito con utenti americani misteriosi su Reddit quindi ho accumulato dubbi :p
 
mi pare di capire che, a guardare il grafico inerente il metodo 2 della regressione di amartya78 , che differisce dal metodo 1 per il fatto che cresce anzichè flattare, lui abbia seguito un percorso simile al tuo ragionamento in grassetto (lui avrà cercato la massimizzazione dell'inclinazione di quella regressione -con metodi di ottimizzazione ad personam vedi testo: matematica innovativa-, che è rappresentativa dell'equity, per dire). Da li mi pare di comprendere come si giustifica l'enorme dispendio hardware.

complimenti.

Si chiaramente non ci sono built in function. Se leggete bene io ottimizzo direttamente il mio modello che ovviamente non è in letteratura. Le funzioni base sono proprio di basso livello.

Il flat sul primo grafico dipende essenzialmente dal fatto che sulle ascisse ci sono i training set ma ogni training set può contenere x runs. Ora nel primo metodo per ogni training set ci sono y runs e nel secondo z runs, ma y>>z e quindi il training set risulta già convergente. Mentre essendo z molto più piccolo di y accade che il singolo training set non converge subito. È chiaro la il plot deriva da un sort (e scusate gli anglicismi), in quanto il ML funziona se e solo se ad ogni min(max) dell in sample ottengo un min(max) dell out-sample. Altrimenti la funzione linear dell out sample non e monotona crescente e nella migliore delle ipotesi ho il caos (metodo 1) e quindi non serve a nulla e nella peggiore addirittura è non ben definita cioè non so neanche cosa sto facendo. Quest ultimo caso c’è l ho quando gli stimatori sono maggiori dei dati. Cioè gradi di libertà negativi e minimo overfitting assicurato. In altri termini non ben definita significa che ogni elemento del condominio ho più di un elements del dominio.
Ora nel metodo 2 ho cambiato semplicemente la funzione obiettivo, la quale essendo che i gradi di liberta sono aumentati significa che fermo restando il numero degli stimatori i dati sono aumentati e quindi anche il costo computazionale.

La cosa interessante è che nel primo metodo ottengo per lo stesso modello risultati nell in sample che sono quasi 4 volte migliori del metodo 2, cioè approssimo nell in sample con il metodo 1 molto molto meglio del metodo 2 eppure mi sto portando appresso una quantità enorme di rumore e ciò si evince nell andamento flat dell out sample. La prova che nel metodo 1 il ML non funziona è che il linear dell dell out sample è davvero flat o meglio una random walk e pertanto l approssimazione lineare tramite regressione è costante. E questo ci da la prova oltre ogni ragionevole dubbio che il ML, o quel ML, non funziona.

Nel metodo 2 si ottiene ciò che si dovrebbe ottenere dal ML e cioè che l approssimazione tramite regressione in questo caso lineare dell insieme degli outcomes dell out sample e’ una funzione monotona crescente.

Senza perdere di generalità si può tranquillamente affermare (e dimostrare) che il ML funziona se e solo se il FIT (di qualsiasi tipo) degli outcomes dell out sample e’ una funzione monotona la cui slope sia di segno concorde al FIT ( dello stesso tipo dell out sample) degli outcomes dei training set nell in sample ordinati.

Nel metodo 2 si vede che mi sono sbarazzato del rumore e in mano mi è rimasto il segnale portante.

In sintesi sono davvero convinto che adesso il ML mi funzioni, ma non lo implementerò a breve perché me lo voglio gustare. Adesso voglio capirne il potenziale cioè quanto mi migliora rispetto alle capacità umane.

Ci vorrà un po’ di tempo.

Spero di aver dato il mio piccolo contributo a questo campo così affascinante ma anche così difficile.
 
Ultima modifica:
Non ho capito nulla ma mi fido ahahahahahahah.
Ma come fanno gli stimatori ad essere maggiori dei dati? Io con dati intendo i samples e con stimatori i features, cioè le colonne nei dataframe per capirci in maniera dozzinale.
Sono perplesso perchè non sono convinto che i prezzi siano random walk, non lo possono essere per logica e per dimostrazioni statistiche, almeno non tutti. Su che sottostante operi?
 
Non ho capito nulla ma mi fido ahahahahahahah.
Ma come fanno gli stimatori ad essere maggiori dei dati? Io con dati intendo i samples e con stimatori i features, cioè le colonne nei dataframe per capirci in maniera dozzinale.
Sono perplesso perchè non sono convinto che i prezzi siano random walk, non lo possono essere per logica e per dimostrazioni statistiche, almeno non tutti. Su che sottostante operi?

In quel caso (sto appunto descrivendo un caso limite ad esempio 20 dati ed una rete neurale a 21 nodi).

Non ho mai detto che i prezzi sono una random walk, ne che non lo sono.

Il modello è indipendente dal sottostante.
 
sistemi di time series analysis non lineari funzionano? Parlo di spectral analysis, wavelet, Gaussian mixture model, Hidden Markov model, bandpass e filtri di segnale vari ecc.
ci sono paper di autori che in quest'ottica mostrano metriche migliori, vedi ad esempio RadialBasisFunction (sono NN che al posto dei neuroni hanno i centroidi gaussiani, non sono la stessa cosa dei Gaussian mixture model che, appunto sono dei modelli, il trattamento non lineare è garantito. Delle wavelet ho conosciuto trader che ci credevano religiosamente, io non vi riponevo molta fiducia e non le ho mai testate ). Cmq se ti va di provare le RBS ti consiglio di implementarle in time series in modo da cogliere le ciclicità, non in data set sequenziali. Metti ad esempio 5 feature (equivalenti ai 5 giorni della settimana) e 5 centroidi hidden + l'ultimo di output, così si ottiene l'effetto dei gradi di libertà negativi. O altra combinazione che assicuri input< centroidi , nel caso delle RBS o input<neuroni nel caso degli altri tipi di reti. I criteri con i quali calcolare i gradi di libertà te li ha menzionati Amartya. E' una architettura che in genere si usa nella classificazione delle immagini, seppur per quest'ultimo scopo si usino altri tipi di reti (convolutional). Ma in finanza , si sa, attingiamo da tutto lo scibile.

Sto testando una delle strategie implementate in Zorro, dopo averla modificata un pochino per adattarla, ed al momento sembra profittevole. Certamente pochi giorni sono nulla, deve arrivare il drawdown e sono tecniche tarate su efficienze di durata breve, però...

si? è una di quelle di RobothWealth?

Volevo pure chiederti se credi che tecniche simili possano essere usate insieme al machine learning puro tipo XGBoost, magari con l'approccio di de Prado tipo: primo modello statistico predittivo (tecniche descritte sopra o ensemble con altri modelli ML) e poi alle previsioni applicare maggiore potenza col modello ML. Il guaio è che non saprei come.
non conosco XGBoost nè ho mai letto nulla di de Prado, comunque ho codice DeepLearning in R da testare, avevo iniziato ma dopo 4 ore era ancora lì tritava la CPU ed ho interrotto e rimandato. Purtroppo in questo ambito l'hardware è determinante.

(Xeon 16 core, 32 gb RAM, NVIDIA che supporta CUDA, ma niente a che vedere con la workstation di Amartya, del resto quando presi questa workstation, i suoi impieghi erano concepiti per tutt'altro)


quando avrai raggiunto 30 3D, manda un mex.
 
Ultima modifica:
In quel caso (sto appunto descrivendo un caso limite ad esempio 20 dati ed una rete neurale a 21 nodi).

Non ho mai detto che i prezzi sono una random walk, ne che non lo sono.

Il modello è indipendente dal sottostante.

Ah ok perfetto, ho capito cosa intendi.
 
ci sono paper di autori che in quest'ottica mostrano metriche migliori, vedi ad esempio RadialBasisFunction (sono NN che al posto dei neuroni hanno i centroidi gaussiani, non sono la stessa cosa dei Gaussian mixture model che, appunto sono dei modelli, il trattamento non lineare è garantito. Delle wavelet ho conosciuto trader che ci credevano religiosamente, io non vi riponevo molta fiducia e non le ho mai testate ). Cmq se ti va di provare le RBS ti consiglio di implementarle in time series in modo da cogliere le ciclicità, non in data set sequenziali. Metti ad esempio 5 feature (equivalenti ai 5 giorni della settimana) e 5 centroidi hidden + l'ultimo di output, così si ottiene l'effetto dei gradi di libertà negativi. O altra combinazione che assicuri input< centroidi , nel caso delle RBS o input<neuroni nel caso degli altri tipi di reti. I criteri con i quali calcolare i gradi di libertà te li ha menzionati Amartya. E' una architettura che in genere si usa nella classificazione delle immagini, seppur per quest'ultimo scopo si usino altri tipi di reti (convolutional). Ma in finanza , si sa, attingiamo da tutto lo scibile.
Interessante. Ne ho sentito parlare ma non ho mai approfondito, lo farò. In sostanza ha la stessa impostazione delle NN, con grossa rilevanza data alla scelta dei feature e i vari rischi overfitting. Questo passaggio però non l'ho capito: " ti consiglio di implementarle in time series in modo da cogliere le ciclicità, non in data set sequenziali". Cioè devo considerarle come un signal filtering non lineare per cercare cicli e stati sottostanti invece che come predittori di prezzo futuro? Considerando la sempre presente leggenda di Renaissance che usava l'Hidden Markov Model per stanare i cicli...sembra buono

si? è una di quelle di RobothWealth?
Guarda è la Z2 implementata gratuitamente in Zorro (e se non sbaglio ne parlava anche Robot Wealth che comunque collabora con financial hacker), me la sono studiata un pochino e alla fine non è altro che spectral analysis ripresa dai testi di Ehlers sui segnali. E' un filtro bandpass poi normalizzato applicato alla serie dei prezzi, ci aggiungi i due threshold superiore e inferiore e individui i cicli sottostanti. Se gli outliers sforano il threshold è segnale di ingresso in mean reversion. Mi ha incuriosito perchè è stato stressato in walk forward optimization che è un sistema solido, l'ho ritestato io su dati recenti e mi da quasi il 100% di gain annuale(si lo so, fa ridere). Siccome la strategia è black box ed è solo in codice eseguibile non ho potuto vederla. L'ho ricostruita in codice in pochissime linee, e sto provando sia quella originale che la mia. Vediamo, sono pochi giorni e barre a 4 ore quindi pochi segnali.

non conosco XGBoost nè ho mai letto nulla di de Prado, comunque ho codice DeepLearning in R da testare, avevo iniziato ma dopo 4 ore era ancora lì tritava la CPU ed ho interrotto e rimandato. Purtroppo in questo ambito l'hardware è determinante.

(Xeon 16 core, 32 gb RAM, NVIDIA che supporta CUDA, ma niente a che vedere con la workstation di Amartya, del resto quando presi questa workstation, i suoi impieghi erano concepiti per tutt'altro)
Deep Learning come detto nel primo commento non l'ho ancora studiato, me lo sono tenuto come asso nella manica da gustarmi fra qualche mese, sperando abbia potenziale vero. Mi intriga moltissimo il Reinforcement, la sua capacità di autoapprendimento e la sua procedura markoviana molto più sovrapponibile ai mercati finanziari.
Capirai, io ho un vecchio 4790k + 16gb di ram e gpu NVIDIA 980, frigge. Forse è anche R che incide però, prova con Python.
Ti ringrazio della proposta, molto volentieri. Considera però che io smanetto in Python, R lo usavo sporadicamente anni fa ma ricordo poco. C l'ho usato questi giorni giusto per scrivere qualcosa in Zorro ma non sono esperto, come non sono esperto di quest'ultimo che ho scoperto qualche settimana fa. E' intuitivo, quello si, quindi implementazioni e variazioni basilari le fai in poche righe e in poco tempo.
 
Questo passaggio però non l'ho capito: " ti consiglio di implementarle in time series in modo da cogliere le ciclicità, non in data set sequenziali".

un esempio di fantasia con dati daily:
Mi riferivo alla trasformazione dei dati in questo modo: da un un'unico vettore bordato in blu -> ai 5 vettori bordati in rosso
ts.png

al posto di x1, x2, .. xn, ci metti lun, mar, .. ven , che alimentano altrettanti centroidi:
RBF_architetture.png
 
un esempio di fantasia con dati daily:
Mi riferivo alla trasformazione dei dati in questo modo: da un un'unico vettore bordato in blu -> ai 5 vettori bordati in rosso
Vedi l'allegato 2741790

al posto di x1, x2, .. xn, ci metti lun, mar, .. ven , che alimentano altrettanti centroidi:
Vedi l'allegato 2741792

Ah molto molto interessante, non ci avevo mai pensato e potrebbe essere un miglioramento rilevante. Dritta fantastica. Pensi che sia implementabile tout court in tutto il ML o sono più adatte le reti neurali?
 
Pensi che sia implementabile tout court in tutto il ML o sono più adatte le reti neurali?

secondo me in ML danno il loro contributo in quanto (con la configurazione di cui sopra, che è una configurazione di classificazione) espongono bassi gradi di libertà, (le reti RBF hanno sempre un solo strato nascosto) quindi messe a loro volta in input ad un MLP, si dovrebbero ottenere le condizioni di tenere sotto controllo l'overfitting, pur aumentando l'informazione. E' una mia ipotesi, beninteso.
 
secondo me in ML danno il loro contributo in quanto (con la configurazione di cui sopra, che è una configurazione di classificazione) espongono bassi gradi di libertà, (le reti RBF hanno sempre un solo strato nascosto) quindi messe a loro volta in input ad un MLP, si dovrebbero ottenere le condizioni di tenere sotto controllo l'overfitting, pur aumentando l'informazione. E' una mia ipotesi, beninteso.
Appena posso la provo, mi hai incuriosito
 
Indietro