curfr@ ha scritto:
Riprenderemo lo studio armonico con FFT, ma non sui mercati classici (indici), che ovviamente sono sporchi,
ma sui mercati Omogenei (e tu sai quali sono).
Beh...che dire, a parte la cripticità sul termine "omogenei" che mi piacerebbe comprendere meglio, direi che l'approccio armonico "finanziario" tramite FFT è sostanzialmente un approccio incorretto per una serie di osservazioni che contrastano evidentemente con gli assioni del teorema di FOURIER!
Quello a cui si riferisce Alan è a questo argomento affrontato tanto tempo fa qui o sul FOL non ricordo.
Se fai una ricerca lo trovi.
A quel tempo avevo fatto dei piccoli studi proprio in funzione di capire l'armonicità del mercato. Quello che feci allora è in breve quello che ti ho descritto sopra ed è tutto pubblico.
Ora non ho molto tempo per cercarti i link...puoi farlo pure te altrimenti lo farò io fra qualche giorno.
Cmq è tutto pubblico quello che non ricordo è se ho postato qui o sul FOL.
E così avrai anche soddisfatto la tua curiosità su "classi omogenei"
curfr@ ha scritto:
Il segnale finanziario è di per se un segnale non stazionario, pertanto l'approccio, che desumo tu hai intenzioni di fare, presenta contraddizioni in termini evidenti con la teoria del segnale aleatorio!
Spiegherò brevemente perchè..e poi chiuderò con il 3d!
L’elaborazione numerica del segnale tratta in particolare dell’analisi in frequenza, elaborazione il cui scopo è quello di ottenere lo spettro del segnale. Lo spettro è un diagramma che riporta in ordinata i decidel (dB) e in ascissa le frequenze (f).
Per ottenere lo spettro di un segnale bisogna compiere 3 passi:
- Campionamento
- Elaborazione FFT
- Post-Processing
Il campionamento consente di ottenere un segnale a tempo discreto, cioè una successione o sequenza x[n] di numeri rappresentabile con una funzione di variabile intera relativa avente valori reali o complessi, partendo dal segnale analogico.
Campionare un generico segnale x(t) significa “estrarre” dal segnale stesso i valori che esso assume a istanti temporali equispaziati, cioè multipli di un intervallo T detto periodo di campionamento. Con questa operazione viene a crearsi una sequenza il cui valore n-esimo x[n] è il valore assunto dal segnale a tempo continuo all’istante nT: x[n] = x(nT).
Una volta discretizzato il segnale nel tempo, che come abbiamo visto è molto semplice perché basta avere un CLOCK che scandisca gli istanti ai quali effettuare la lettura, bisogna discretizzarlo in ampiezza.Per fare ciò il valore viene mandato in ingresso ad un circuito chiamato convertitore analogico – digitale (A/D) che produce in uscita una sequenza di bit. Per ogni campione dal convertitore vengono emessi un certo numero di bit che ne rappresentano la risoluzione.
In sostanza abbiamo "digitalizzato" il segnale!
Un segnale digitale è piu facilmente leggibile di uno analagico in quanto la frequenza di avanzamento è data e le frequenze stabilizzate per ogni clock di avanzamento!
Di questo stream di dati si dovrà effettuare l’elaborazione per poter visualizzare lo spettro del segnale.
L’algoritmo matematico che calcola lo spettro a partire dai campioni quantizzati si chiama FFT (Fast Fourier Transform):esso produce un andamento lineare sull’asse delle frequenze. Una rappresentazione di questo tipo attribuisce la stessa importanza a tutte le frequenze sia basse che alte.
Ottenuto lo spettro in banda stretta si applica il post-processing, cioè un’elaborazione successiva alla realizzazione dello spettro che permette di cambiare l’asse delle frequenze da lineare in terzi di ottava e nel tempo produce una costante di tempo Fast o Slow in modo da non avere tanti spettri, ognuno senza memoria del passato, ma di mediarli nel tempo e di visualizzare le bande che variano in maniera più graduale, più morbida.
MA DOVE E' IL PROBLEMA...!?!?!
Il problema è la stessa definizione del teorema omonimo: esso enuncia che qualunque suono periodico è sempre rappresentabile come sovrapposizione di un opportuno numero d'onde sinusoidali (toni puri) di determinate ampiezze, frequenze e fasi! Con un numero sufficientemente grande di sinusoidi è possibile rappresentare qualsiasi segnale purché periodico; questo vuol dire che se si suddivide il flusso di dati proveniente dal convertitore A/D e si prende un blocco di N campioni, la periodicità implica che il blocco successivo e il blocco precedente devono essere perfettamente uguali.
Il problema è che in genere i segnali non sono periodici: ed il segnale di cui vorresti fare il passa banda con FFT, ossia le serie storiche finanziarie, è per sua natura un segnale APERIODICO COMPLESSO!
I problemi, peraltro, possono insorgere anche per un segnale periodico.
Nel campionamento anche del segnale periodico deve comunque tenersi in buon conto il FATTORE DI CRESTA: fattore di cresta è importante per la scelta del convertitore A/D perché il valore istantaneo non deve eccedere il valore massimo di fondo scala altrimenti si ha una saturazione del sistema che porta ad una distorsione della forma d’onda...che potrebbe non essere piu neanche periodica come il segnale analogico originario!
Se il campionamento è iniziato per caso in corrispondenza di un passaggio per lo zero, non è detto che anche al termine del periodo si abbia un campione che sia uno zero crossing. Quindi tra una finestra che contiene N campioni e la successiva la forma d’onda potrebbe essere discontinua. In termini di analisi di frequenza questa discontinuità produce uno spettro bianco, cioè uno spettro piatto che si sovrappone a quello della sinusoide. Questo fenomeno ci dice che l'energia si distribuirà su tutto lo spettro FFT conseguente e che pertanto la trasformata di FOURIER non è profittevolmente utilizzabile per individuare un segnale prevalente.
Una soluzione potrebbe essere quella di campionare il segnale con un numero di campioni tali da terminare esattamente ogni finestra in uno zero crossing, ma non è possibile sapere a priori la lunghezza del periodo.
Il vero problema è che i segnali in genere sono grandezze non periodiche e per poter sfruttare l’analisi di Fourier bisognerebbe renderli tali!
Per fare ciò è necessario portare progressivamente a zero i campioni alle estremità della finestra applicando una ponderazione (pesatura dei campioni): la forma d’onda più semplice con cui andare a pesare i campioni è quella del “mezzo seno” . Con tale sistema il segnale campionato viene viene forzato ad andare a zero : cosi si riesce a rendere periodico il segnale e a ridurre il fenomeno di diffusione dell'energia sul conseguente spettro FFT.
C'è però un grosso problema: tutto ciò che accade nell’intorno del passaggio da una finestra alla successiva viene ignorato dal sistema perché moltiplicato per un coefficiente praticamente nullo. Quindi se tra due finestre consecutive si verifica un evento importante ai fini dell’analisi, questo evento viene perso.
Potrebbe capiatre che la assoluta non stazionarietà del "segnale finanziario" crei salti nel campionamento del segnale a causa di grosse variazioni puntuali? Beh...la risposta mi sembra ovvia...no?
Inoltre ammesso che si effettui un detrend appropriato del segnale...beh...c'èsempre la soggettività dell' operatore che scegli il modo appropriato di eliminare il noise di fondo...e pertanto il segnale analizzato potrebbe non essere piu quello di partenza!
Ecco perchè l'analisi con spettro di FOURIER è un ottimo modo di valutare la dissipazione dell'energia sulle serie storiche...ma non puo essere utilizzata per fare passa banda profittevoli per il trading....!
Con questo ho chiuso...!
Buon lavoro al team.... ;-)
Quello che dici tu in parte è vero ma non dimenticare che per i segnali aperiodici esiste la trasformata di Laplace e la corrispettiva discreta Z.
La trasformata di fourier serve per compiere analisi su segnali tipicamente periodici mentre la trasformata di laplace ti permette di compiere analisi sui segnali non periodici.
Nel caso tu applichi la trasformata di laplace a un segnale periodico hai come caso particolare la trasformata di fourier.
Al tempo delle mie prove usai FFT per capire se nel mercato (al di là dell'utilizzo per fare trading) c'era qualche tipo di periodicità.
La risposta fu un si un pò stirato...allora capii che l'argomento andava approfondito.
Cosa che poi non feci per mancanza di tempo e perchè sono stato preso da progetti un pò più immediati.
Cmq se hai voglia ne possiamo discutere e qualche prova si può pure fare ma come ti ha detto Alan c'è un pò di lavoro da fare col team.
Con questo non voglio affatto tirarmi indietro.
Infine un'ultima considerazione.
Alan non mi ha certamente richiamato all'ordine. Ha solo detto che non ci possiamo dedicare a tempo pieno. E io già di mio di tempo ne ho poco.
Però l'argomento mi interessa.
Se Alan mi avesse voluto richiamare all'ordine non pensi che bastava una email privata e io sarei sparito?
Se guardi la frequenza dei miei post ti accorgi che non sono sempre presente....
Non vivo di trading...
Spero di risentire te e tontolina e di iniziare qualcosa di bello e stimolante.
Ciao
G.