una strategia di trading basata sulla teoria dell'onda di Elliott - pagina 282

 
A Neutron

È chiaro che FZ diminuisce man mano che la finestra di campionamento si restringe, ma le proprietà di smoothing dell'operatore peggiorano. Dobbiamo trovare un compromesso tra la qualità dello smoothing e il ritardo. Ecco perché è corretto confrontare le caratteristiche di lisciatura degli operatori a parametri identici o vicini della loro risposta in frequenza (uniformità nella banda passante, pendenza di taglio). A questo proposito, il filtro Butterworth ha una larghezza di banda minima (non zero!), che aumenta significativamente alla frequenza di taglio. È in questa luce che è interessante confrontare i metodi di filtraggio basati su wavelet e quelli classici.


Qui sono d'accordo con te. A proposito del confronto... Per le wavelet, non è facile calcolare direttamente le caratteristiche di cui parli (AFC, FS, ecc.). Non voglio scavare a fondo nella teoria per questo al momento. Tuttavia, sto progettando alcuni esperimenti con serie di prezzi specifici. Se otterrò un risultato significativo, lo condividerò con voi. Ma ci vuole tempo...

Se dobbiamo estrapolare qualcosa da qualche parte, ci sarà inevitabilmente un FZ. Infatti, sedendosi all'estremità destra della serie temporale ed estrapolando un passo in avanti, si ottiene il valore probabile della serie in questione. Nel prossimo conto alla rovescia, confronta il valore con il valore vero e ricorda l'errore risultante. Ripetete questa procedura ancora una volta, tenendo conto dell'aggiornamento dei dati di ingresso per il secondo punto, e così via. Come risultato abbiamo due serie temporali - iniziale e previsionale. Ovviamente, non coincidono esattamente, ma nemmeno divergono fortemente, solo spostati l'uno rispetto all'altro di FZ! Quindi penso che il termine FZ sia appropriato per questo caso.


In linea di principio sono d'accordo anch'io. È solo che diversi campi hanno la loro terminologia, un set di termini di base e questi set spesso non si sovrappongono.

Un'altra sfumatura sulle previsioni. Possiamo estrapolare la serie originale dei prezzi, per così dire, nel suo insieme - per esempio, approssimandola con un polinomio e continuando questo polinomio nel futuro (questo è l'esempio che date sotto).
Ma c'è un altro approccio. Possiamo prima decomporre la nostra serie in componenti più semplici. Ci sono molte trasformazioni reversibili senza perdita di informazioni - Fourier, wavelets e molte altre. Poi estrapoliamo per ogni componente. E poiché queste parti sono più semplici del tutto, l'estrapolazione sarà più facile o almeno più conveniente ed efficiente. E forse sarà meglio. Il risultato viene arrotolato all'indietro, ottenendo così l'estrapolazione per l'intera serie.
Naturalmente questi due approcci sono equivalenti nella loro essenza, ma io preferisco il secondo. Forse non sono l'unico. Ho incontrato spesso in rete discussioni sulla previsione dei prezzi utilizzando le armoniche di Fourier. Anche se quello che ho visto era piuttosto goffo. Corrispondentemente, lo erano anche i risultati.


Ora, colleghi, criticatemi.
Sostengo che qualsiasi estrapolazione implica che una serie temporale (TP) abbia la proprietà di "seguire" la direzione scelta. Infatti, estrapolando un passo avanti di un polinomio di nono grado, si assume il NEED per la derivata prima, la seconda... n-1 della serie originale, almeno a questo passo... Capite dove voglio arrivare? La quasi-continuità della prima derivata non è altro che un coefficiente di autocorrelazione (AC) positivo di BP al timeframe selezionato (TF). Si sa che è inutile applicare l'estrapolazione ai BP di tipo browniano. Perché? Perché la CA di tale serie è identicamente uguale a zero! Ma, ci sono GR con QA negativo... È semplicemente scorretto estrapolare a loro (se ho ragione) - è probabile che il prezzo vada nella direzione opposta a quella prevista.
E per cominciare: quasi tutti i Forex VR hanno una funzione di autocorrelazione negativa (questa è una funzione costruita dalla KA per tutti i possibili TF) - questo è un fatto medico! Le eccezioni sono alcuni strumenti valutari su piccoli timeframe, e sì Sberbank e azioni EU RAO su TF settimanali. Questo, in particolare, spiega l'inadeguatezza nel mercato moderno del TS basato sullo sfruttamento delle medie mobili - lo stesso tentativo di estrapolare.
Se non mi sbaglio, le wavelet, a priori, si trovano in una zona in cui non potranno svolgere correttamente le loro funzioni.


Se ricordo bene i tuoi post precedenti, prima di tutto differenzi la serie dei prezzi per calcolare la funzione di autocorrelazione. Così, attenzione, si butta fuori una buona parte delle armoniche a bassa e media frequenza della serie! Per la statistica, naturalmente, questo approccio è sensato. Ma non stiamo buttando via il bambino con l'acqua qui?
Ci sono molte cose interessanti nelle basse frequenze. Per esempio, i movimenti di tendenza.
A livello empirico, tutti sono d'accordo che i modelli di mercato si ripetono. Infatti, è facile trovare canali di tendenza o altre cifre sulla storia di qualsiasi strumento finanziario, che sembrano fratelli gemelli, ma sono separati da intervalli di tempo molto significativi (a volte anni). Questo è un fatto. Spero che tu non abbia intenzione di discutere su questo?
E le caratteristiche (frequenze proprie di un canale di tendenza, durata media, ecc. - Non ho intenzione di divulgare ora come li definisco) di questi "fenomeni" spesso coincidono praticamente (su scale comparabili - non ha senso paragonare minuti e giorni), e non cambiano nel tempo a passi da gigante, ma vanno sempre alla deriva. Posso dimostrare chiaramente questo fatto usando i metodi wavelet. Finora usando esempi singoli, ma presto raccoglierò statistiche rappresentative sulla storia.

Cosa può significare questo? Una connessione informativa diretta è improbabile, la memoria a lungo termine del mercato è dubbia, la manifestazione di qualche struttura interna del mercato, le sue proprietà profonde che non conosciamo, è possibile. Sembra che ci sia tutta una serie di serie di frequenze proprie del mercato, che attraversa dolcemente e tranquillamente nel tempo.
Perché tanti canali di tendenza sono così simili? Perché le loro proprietà sono così stabili? Perché strutture simili appaiono a diversi livelli di annidamento e la loro disposizione delle frequenze non è del tutto casuale? Riferirsi semplicemente alla frattalità non è molto costruttivo. E, cosa più importante, non può essere usato per il commercio?

Non sto affatto cercando di sminuire l'approccio statistico qui. Una volta avete calcolato un orizzonte di previsione basato su AK. La cosa meravigliosa è che esiste. Usiamo questo fatto nelle giuste circostanze!
Ma mi sembra che ci sia qualcosa di più sul mercato che le sole proprietà statistiche. Se riusciamo a vedere e cogliere le proprietà, diciamo, "dinamiche" del mercato, ci darà un ulteriore vantaggio. Spero che non ti dispiaccia?

Saluti.
Buona fortuna e buone tendenze!
 
<br/ translate="no"> Ci sono molte cose interessanti nelle basse frequenze. Per esempio, i movimenti di tendenza.


A proposito, l'idea è probabilmente stupida, ma comunque. Per esempio, definiamo per uno strumento una gamma di frequenza (eventualmente fluttuante) che simboleggerà ulteriormente le basse frequenze. Con una finestra scorrevole fissa passiamo attraverso la serie e per ogni campione tracciamo (all'interno delle basse frequenze):

- o qualche fattore totale, per esempio, la somma delle ampiezze,
- o l'energia totale delle basse frequenze
- o consideriamo ogni ampiezza del corrispondente segmento delle basse frequenze
- (ci possono essere varianti).

Inoltre, prevediamo valori futuri per queste quantità, utilizzando alcuni metodi (il più semplice, regressione lineare o parabolica, ci possono essere metodi più complessi, crawler, reti neurali, ecc. non è ancora importante).

Ottenendo i valori armonici previsti sui campioni futuri, ricostruiamo "in qualche modo" il segnale, cioè dalla bassa frequenza prevista, ricostruiamo il segnale a bassa frequenza, come una "tendenza" futura.

Non ci ho messo mano, fino ad ora. Colleghi, cosa ne pensate, capisco che le ampiezze saranno anche valori casuali, ma ancora?
 
Andre69
Ma c'è un altro approccio. Possiamo prima decomporre la nostra serie in componenti più semplici. Ci sono molte trasformazioni reversibili senza perdita di informazioni - Fourier, wavelets e molte altre. Poi estrapoliamo per ogni componente.

grasn
Successivamente, prevediamo i valori futuri per questi valori, utilizzando alcuni metodi (il più semplice, regressione lineare o parabolica, ci possono essere modi più complessi, crawler, reti neurali, ecc non è ancora importante).


Hmmm, non si riferisce forse al rilassamento simultaneo a molte frequenze? :) Comunque, ok, ho promesso di non parlare di 1/f :)
Su questo ho iniziato a provare, ma la semplice estrapolazione non ha dato nulla di buono - apparentemente quando si sommano gli errori di estrapolazione dei singoli componenti non si annullano a vicenda. Forse il punto è che ho estrapolato troppo (di 5 barre o più). Ma è anche possibile che i cambiamenti nelle ampiezze delle componenti non siano indipendenti. Qui, per esempio, FZ - possiamo dire che il filtro in un certo senso non vede le alte frequenze. Ma di fatto reagisce ancora dopo un po' di tempo. Quindi c'è una sorta di pompaggio di energia dalle alte frequenze alle basse frequenze, con una certa velocità finita. Dovremmo cercare delle regolarità qui? Cosa dice la teoria?
 
Andre69
Но есть и другой подход. Можно сначала разложить наш ряд на более простые компонетры. Обратимых преобразований без потери информации полно - Фурье, вейвлеты и масса других. Затем мы делаем экстраполяцию для каждого компонента.

grasn
Poi, prevedere i valori futuri di queste quantità, usando qualche metodo (il più semplice, regressione lineare o parabolica, ci possono essere metodi più complessi, crawler, reti neurali, ecc, non ancora importanti).


Hmmm, non si riferisce forse al rilassamento simultaneo a molte frequenze? :) Comunque, ok, ho promesso di non parlare di 1/f :)
Su questo ho iniziato a provare, ma la semplice estrapolazione non ha dato nulla di buono - apparentemente, quando si sommano gli errori di estrapolazione dei singoli componenti non si annullano a vicenda. Forse il punto è che ho estrapolato troppo (di 5 barre o più). Ma è anche possibile che i cambiamenti nelle ampiezze delle componenti non siano indipendenti. Qui, per esempio, FZ - possiamo dire che il filtro in un certo senso non vede le alte frequenze. Ma di fatto reagisce ancora dopo qualche tempo. Quindi c'è una sorta di pompaggio di energia dalle alte frequenze alle basse frequenze, con una certa velocità finita. Dovremmo cercare delle regolarità qui? Cosa dice la teoria?



Quindi è tutto senza senso e non funziona. :o(((( Ho passato mezzo anno a cercare il trend (per trend intendo HR del canale e stima della sua durata) e non ho trovato niente di buono. Ho provato tutte le statistiche conosciute - non funziona niente. Ho solo una funzione empirica per stimare le lunghezze di questi canali e non sono soddisfatto dei risultati.

E potrebbe volerci tutta la vita per trovare regolarità nel trasferimento di energia tra le frequenze e non trovare nulla. Anche se.... :о))))
 
È solo che tempo fa mi divertivo con quanto segue:

- decomponendo una serie di prezzi in impulsi (in media alcuni per serie di 300-500 conteggi)
- ha usato una rete neurale per prevedere un nuovo impulso
- eseguita la convoluzione di questi impulsi compreso quello previsto

Non sono stato molto soddisfatto dei risultati. Così ho pensato, perché non prevedere le basse frequenze.
 
Aggiungerò anche un'immagine della mia estrapolazione delle componenti di Fourier. Più lontano è l'orizzonte, meno il componente è coinvolto nella previsione.


Questo era in realtà un pallone di prova e non tutti i pensieri sono stati realizzati. Ma improvvisamente un inspiegabile scetticismo mi ha afferrato :), così non ho iniziato a scavare ulteriormente in questo posto. Anche se lo tengo in mente.
 
Finalmente c'è una finestra di tempo libero e voglio continuare il post sulle wavelet.
Scusate il ritardo. Il trambusto della vita distrae...

Prima vi ho parlato molto brevemente della DWT. Ora riguardo alla CWT.
Per poterli confrontare, ripeterò qualcos'altro:
1. Le wavelet DWT devono necessariamente avere una funzione di scala.
2. La DWT dà una ricostruzione completa (PR) della serie originale nella trasformazione inversa e non solo in teoria ma anche in pratica.
3. I coefficienti DWT sono esattamente gli stessi dei termini della serie originale. Di solito sono memorizzati come un insieme di vettori di diverse lunghezze.
4. La scala cambia su ogni passo di trasformazione esattamente due volte (trasformazione diadica - scala delle scale: 1,2,4,8...).
5. In pratica i coefficienti DWT sono calcolati applicando una serie di filtri brevi alla serie originale. Due filtri nella decomposizione e due (altri) nella ricostruzione (algoritmo di Mull).
6. ...Il resto qui e ora è irrilevante...

Quindi, signori, la conversione continua - CWT differisce dalla DWT in tutti i punti precedenti!

1. Le wavelets per CWT non hanno bisogno di avere una funzione di scala. Quindi, quelle wavelets che sono usate in DWT sono abbastanza buone per CWT, ma il contrario non è vero. Cosa significa questo in pratica. Una funzione wavelet per CWT non deve necessariamente convergere a zero al di fuori di un intervallo finito, è sufficiente che decada rapidamente lì. Ecco perché ci sono molte wavelets molto interessanti e utili che possono essere utilizzate in questo caso. Tra questi ci sono il wavelet Morlet (molto semplice e utile), il cappello messicano, la famiglia di wavelet Gaussiani, ecc.
2. La CWT dà una ricostruzione completa solo in teoria - nella sua rappresentazione integrale. In pratica, però, operiamo sempre con un insieme finito di dati e possiamo usare un insieme finito di scale (memoria limitata del computer, tempo di calcolo, ecc.). Ma questo non significa che la trasformazione inversa sia impossibile!
È abbastanza possibile! Se tutto è fatto correttamente, distorceremo solo alcune prime armoniche di frequenza più bassa (componente costante e una o due delle prime) nella trasformazione inversa. La pratica dimostra che questo spesso non ha importanza. Quindi, andiamo avanti.
3. La CWT è una conversione molto ridondante. I coefficienti possono essere ordini di grandezza più grandi dei termini della serie originale. Di solito sono disposti in una matrice rettangolare. La sua larghezza è il tempo (il numero del membro della riga di origine), la sua altezza è la scala.
E cos'è una matrice rettangolare? Corretto. Se i dati sono scalati in modo appropriato, è un'immagine, una foto.
Questo è ciò che personalmente mi piace di più della CWT. Essendo stato abbastanza coinvolto nell'elaborazione delle immagini, anche nel senso del riconoscimento dei modelli, so come elaborare correttamente tali immagini e cercare varie caratteristiche su di esse. La cosa più affascinante è che posso facilmente associare queste caratteristiche alla serie iniziale e dire sempre a quale luogo della serie iniziale corrisponde la caratteristica data. I risultati CWT per le serie di prezzi mostrano la natura multivariata del mercato in tutta la sua gloria, rivelano la frattalità - è facilmente visibile, e molto, molto di più.
4. La scala per il CWT può essere qualsiasi. Più precisamente, può essere qualsiasi serie monotonamente crescente di numeri naturali. Vuoi lineare, vuoi logaritmico, o altro. Quello che è più conveniente per il particolare problema. E questo è buono!
5. Il calcolo pratico del CWT non è difficile. La funzione wavelet viene campionata in modo adeguato, e più si vuole la precisione della trasformazione, più punti devono essere presi. Viene poi allungato secondo la prima scala, e viene fatta la convoluzione con i dati. Per così dire - proviamo il vestito. Ripetiamo tutto finché non abbiamo esaurito il set di scale. Il risultato viene scritto nelle righe appropriate della matrice preparata in via preliminare. Anche la trasformazione inversa non sarà un problema. Procediamo secondo la formula per la CWT inversa presa dalla letteratura.
C'è però uno svantaggio: ci sono troppi calcoli e consumo di memoria. Il mio attuale computer (era un buon computer tre anni fa) impiega 15-20 secondi per elaborare pezzi di serie di prezzi con 2000-3000 conteggi. Anche se il codice C++ è altamente ottimizzato - usa il teorema di convoluzione e una delle librerie di trasformate di Fourier più veloci del mondo. Sì... Non si può programmare questo tipo di codice in MQL.

Ora, voglio parlare dei primi passi fatti in CWT verso l'analisi di mercato e la ricerca di metodi di estrapolazione delle curve di prezzo.

Ho iniziato con il wavelet di Morlet. La CWT con questa wavelet è equivalente a una trasformata di Fourier con una finestra gaussiana. Beh, è scritto in tutti i libri di testo... Regolando un solo parametro della wavelet, potete cambiare il rapporto delle sue larghezze nel dominio del tempo e della frequenza. Questo è conveniente.
Quello che segue è un'illustrazione di un risultato CWT (i coefficienti di decomposizione sono visualizzati in colori convenzionali dove i massimi sono più chiari e i minimi più scuri) per la serie EURUSD - prezzi di chiusura di un'ora. Il pezzo è tratto dalla storia - dove esattamente, credo, non è importante ora. Qui sotto c'è la serie di prezzi data.
Cosa possiamo dire qui? La frattura del mercato è chiaramente visibile. I massimi e i minimi della curva dei prezzi sono ben localizzati. Non è così facile, ma le strutture nell'immagine possono essere associate ai canali di tendenza a diverse scale. Che altro? Nota - si può notare un fatto notevole - il mercato non ama alcune bilance!



Ho mostrato un'immagine abbastanza tipica qui. Se facciamo diverse di queste immagini nel tempo e le mettiamo una accanto all'altra, possiamo vedere come alcune strutture emergono, si sviluppano e poi scompaiono, sostituite da altre. Si può anche ottenere l'illusione di un modello. È anche bene tradurre le immagini in una rappresentazione tridimensionale. Per capire meglio, voglio fare un film con queste immagini. Ma ci vorrà molto tempo...
Altre wavelets danno immagini simili, ma con Morlais la loro interpretazione è più diretta.
Così ho deciso per ora.

Oltre a guardare queste immagini si possono fare cose più significative.
Bene, per esempio per ottenere spettri wavelet. È possibile perché il teorema di Parseval funziona per le wavelets. Nel caso di Morlet wavelet, il suo spettro è un analogo dello spettro di Fourier, ma è altamente lisciato e scalato diversamente. Tuttavia, per l'analisi, è il cielo e la terra. Avevo guardato molti spettri di Fourier per sezioni di serie di prezzi, ma non sono riuscito a giungere a conclusioni certe guardando quei recinti. Qui tutto sembra chiaro e logico. Tuttavia può essere un lungo discorso su questi spettri. Non parliamone qui e non ora. Scusa, non ho ancora postato la foto. Ce l'ho solo in un altro computer - devo prenderlo. Se è interessante lo posterò più tardi.

Ora l'estrapolazione. Estrapoliamo la matrice CWT invece della riga stessa. Non parlerò dei dettagli, rispettando la legge sul copyright. Ma c'è un'idea fresca e molto non banale. Qualcosa mi dice dentro di me che puoi fare una grande cosa qui, o... ...o puoi fare un errore molto grande. In ogni caso, capirete i miei motivi di segretezza. Ho bisogno di implementare le mie idee nel codice, testarle sulla storia e sulla demo, digerire questi risultati - poi possiamo dire qualcosa. Tutto questo, ahimè, è un tempo lungo.
Solo per mostrarvi i risultati dell'estrapolazione di una parte di una serie di prezzi 200 campioni in avanti (curva blu).



Naturalmente non funziona sempre così bene, ma abbastanza spesso. Non ho controllato quanto spesso. Non ha senso. Questo è stato il primo tentativo. L'algoritmo è un primitivo, la prima cosa che mi è venuta in mente. Ora ho rinunciato a tutto.

La fine. Grazie per l'attenzione!
Via al lavoro, il resto è nell'ordine della discussione.

Buona fortuna a tutti e buone tendenze!
 
a Andre69
...Lei sta prima di tutto differenziando le serie di prezzi. Così facendo, notate, buttate fuori una buona parte delle armoniche a bassa e media frequenza della serie! Per la statistica, naturalmente, questo approccio è sensato. Ma non stiamo buttando via il bambino con l'acqua qui...?

Quando si differenzia, le informazioni sulla componente a bassa frequenza del segnale non vengono perse. Infatti, dopo aver integrato la serie residua, si ottiene la serie temporale originale con tutte le tendenze più qualche costante. Quindi, la residualizzazione della serie originale per differenziazione è abbastanza corretta dal punto di vista matematico. Qui, però, c'è un'altra trappola: genera una falsa correlazione dei campioni vicini, ma questa è una storia a parte.
Per il resto, Andre69, sono d'accordo con te. E grazie per le risposte informative.

a Yurixx
Ma se si prende qualcosa di più complicato, un polinomio di grado 2, per esempio, non è proprio la stessa cosa.
Lasciatemi chiarire: stiamo parlando di estrapolazione al futuro prossimo.
Quindi, con una semplice funzione quadratica (supponendo che la serie di numeri lo permetta davvero per natura) si può prevedere l'approssimazione del punto pivot. Ed è esattamente ciò di cui tutti hanno bisogno. Soprattutto polinomi di potenze superiori.

Ho iniziato a scrivere formule per l'interpolazione di serie temporali nel caso generale per polinomi di grado n e sai cosa ho ottenuto come risultato? - L'espansione della serie di Taylor (RT) a un certo punto! Mi sono stupito del mio genio :-) e avendo pensato un po', sono arrivato alla conclusione che doveva essere così. Dopo tutto, infatti RT è un'approssimazione alla funzione iniziale in un punto sommando polinomi di potenze superiori e inferiori con pesi minori e inferiori, che modellano il comportamento della prima, seconda, ..., n-1 derivata. Per definizione, questo apparato può essere usato se la serie iniziale è liscia, cioè le derivate fino a n-1 sono definite ed esistono. La BP degli strumenti finanziari non appartiene alla classe liscia, quindi non possiamo applicare la decomposizione RT o, ciò che è lo stesso, usare l'estrapolazione tramite polinomi.
A proposito, la scorrevolezza della serie non è altro che la positività di CA! Cioè, è più probabile che la serie continui il movimento iniziato piuttosto che cambiare direzione. Sì, è così! Sembra che dobbiamo creare una sezione di matematica nello studio delle funzioni NON lisce e dei metodi della loro analisi...

to Candid
Circa un anno e mezzo fa ero attivamente impegnato nell'estrapolazione della BP utilizzando l'analisi di Fourier. Ho scritto un programma che somma un numero arbitrario e prestabilito di armoniche e le estende di un dato numero di campioni nel futuro. Per controllare la correttezza del codice, ho digitalizzato il suono del primissimo tasto del pianoforte (per i curiosi, il subcontratto LO contiene più di 500 armoniche ed è molto difficile da analizzare), ho inviato un codice a questa serie e ho ottenuto la loro estrapolazione per alcuni periodi della fondamentale avanti. Il risultato mi ha stupito per la sua bellezza - il suono era indistinguibile da quello reale. Cioè, il mio codice prevedeva perfettamente l'ulteriore comportamento di questa maledetta accozzaglia di suoni!!!! Felicissimo, ero pronto a fare a pezzi il Mercato... ma il mercato non mi ha visto. Ha scavalcato me, un soldato pesantemente armato, e ha continuato per la sua strada! Si è scoperto che non c'erano armoniche fisse sul mercato...
 
a Candid
L'intero punto si è rivelato essere che NON ci sono armoniche stazionarie sul mercato...

Pensavo di averne tenuto conto :). I coefficienti di estrapolazione per ogni armonica sono stati ricalcolati su ogni barra. La base era uguale a un quarto del periodo armonico, la lunghezza di estrapolazione un ottavo del periodo. Inoltre, l'obiettivo non era quello di ottenere una previsione continua. L'obiettivo era quello di ottenere una buona previsione per almeno alcune sezioni e poi cercare di capire come queste sezioni differiscono dalle altre. Ahimè, la previsione risultante ha mostrato i prezzi più o meno nello stesso modo in cui un orologio fermo mostra il tempo :)
 
A Neutrone, Candido

In realtà intendevo un po' (anzi, TOTALMENTE) diversamente, non la piegatura armonica. OK, mi prenderò il mio tempo e lo controllerò.