Strategie di trading basate su filtri digitali - pagina 55

 
dvarrin:
Quindi gli indicatori che hai implementato sono basati su MESA e anche DFG è basato su MESA?

Sì, ma non so che tipo di pre-elaborazione esegue DFG sulle serie temporali.

E il numero di barre che possiamo scegliere in DFG è lo stesso del numero di barre che stai usando nel tuo indicatore per eseguire l'analisi dello spettro?

Sì.

Riguardo al numero di barre da utilizzare. Perché vuoi prendere la storia del prezzo più recente? Sembra davvero rumoroso, senza un ciclo ben definito. Quello che sto facendo è prendere sempre più barre, aumentando di 1000 o 2000 barre, finché l'analisi dello spettro non sembra quasi la stessa. Questo significherebbe che i picchi in quello spettro sono stati significativi per un lungo periodo e poi non dovrebbero essere così male?

Siete nel cuore del problema! E questo è il motivo principale per cui ho condiviso i miei indicatori.

Il MESA è quasi perfetto per estrarre cicli stazionari da una lunga serie temporale arbitraria, gaussiana-rumorosa (mentre uno dei vincoli della FFT è la lunghezza 2^n. Potete sempre azzerare le vostre serie temporali, ma è un workaround).

Quando si tratta di serie temporali del mercato reale, come sapete, non avete né rumore gaussiano né cicli stazionari.

Hai "qualcosa" che puoi chiamare segnale + rumore. Il segnale ha un certo comportamento ciclico. La tesi di chi sostiene che si possono commerciare i cicli, è che si può separare il segnale dal rumore e che si possono riconoscere i cicli all'interno del segnale e trarre vantaggio dal comportamento ciclico per mezzo di una sorta di previsione. Questo è l'approccio dei cicli NOXA, per esempio, e di parte delle soluzioni di trading e degli indicatori originali di Ehlers (MESA8).

L'approccio di ATCF e di altri (ad esempio Codebreaker) è che si può fare trend following in modo migliore se si sa come filtrare il segnale dal rumore. Questo è il motivo per cui è necessario conoscere lo spettro delle serie temporali ed è quello su cui ho lavorato.

Detto questo, devi scoprire se è meglio per la tua strategia di trading avere un set di filtri digitali mediati, più stabili, basati sull'ipotesi che alcuni cicli siano ricorrenti su una lunga serie temporale.

Quando osservate una lunga serie temporale (2000 barre) con il MESA, allora state facendo la media di tutti i cicli all'interno di quella serie temporale ed estraete le bande in cui si condensa la maggior parte della potenza spettrale. Se ci sono cicli ricorrenti ben noti, allora hai dei picchi puliti. Più spesso, quando si esaminano serie temporali più lunghe, i picchi tendono ad allargarsi e ad abbassarsi (quindi stanno convergendo, come dici tu). Ciò significa che puoi avere solo un'idea delle bande in cui hai potenza spettrale, ma non dei cicli puliti.

Se preferisci un adattamento più reattivo ai mercati che cambiano, o se vuoi catturare un ciclo temporaneo ben definito, devi accorciare la finestra di osservazione (che è il mio peculiare campo di studio, e per il quale avevo bisogno di un analizzatore in linea invece di uno fuori linea come DFG)?

Il problema che sorge in quest'ultimo approccio è: come cambia lo spettro barra per barra e come si comporta MESA nell'analisi a breve termine?

Nonostante il fatto che sono convinto che il denoising e il detrending non siano molto utili con MESA (almeno in una lunga finestra di osservazioni e con rumore gaussiano), sto facendo alcune prove in questo approccio a breve termine su serie temporali reali. Sembra che il detrending possa aiutare a catturare meglio i cicli di media lunghezza (quelli tra 60 e 150 barre), il che potrebbe portare a una migliore curva SATL.

In ogni caso puoi scegliere qualsiasi arco di tempo, purché tu abbia delle barre nella storia per le tue analisi in linea con i miei indicatori.

Se guardiamo l'indicatore adattivo che mostra i valori di P1 e D1, possiamo vedere che la curva è abbastanza liscia, tranne in alcuni punti dove i valori fanno un grande salto verso un altro valore, prima di tornare a quello normale. Non pensate che la cosa migliore sia ignorare questi salti?

Facendo scorrere la finestra di osservazione (cioè col passare del tempo) i picchi si spostano all'interno dello spettro. Non solo cambiano il loro centro, ma diventano più alti o più bassi. Quando succede che un vecchio ciclo predominante viene superato in nitidezza da uno nuovo, si ha un salto.

Ho sviluppato un algoritmo per ottenere il picco più significativo (quello con il più alto rapporto altezza/larghezza) ed è così che scelgo il ciclo predominante.

Poiché prendo in considerazione solo il picco più rappresentativo, i salti avvengono quando un nuovo ciclo diventa predominante.

Quando hai dei salti significa che il vecchio picco sta diminuendo e un nuovo picco sta salendo. Si potrebbe rimanere con quello vecchio, ma per quale motivo?

 

di nuovo

richcap:
Krzysztof,

forse sarebbe meglio avere un segnale più lento per una simulazione significativa.

Come potete vedere, MESA può estrarre perfettamente i picchi del segnale, anche senza denoising o detrending, ma succede che sono troppo veloci per una strategia di trading basata sui cicli.

Se avete un periodo di 8 barre (frequenza 0.125) o anche un periodo di 13.3 barre (frequenza 0.075), significa che avete 4 (6.5) barre per un uptrend veloce e 4 (6.5) per un downtrend veloce. Anche un filtro digitale spettacolare introduce un certo ritardo, diciamo almeno 2 barre, quindi avete solo 2 (4,5) barre per negoziare un trend veloce. Sommatelo con un rumore di ampiezza maggiore del segnale (4 verso 3) e avrete un segnale completamente non negoziabile.

Mi piace l'idea di testare un segnale con 2 o 3 sinusoidi + componente DC+tendenza lineare+rumore di diverso tipo. Suggerirei qualcosa come 20 barre (0.05 freq), 50 barre (0.02 freq), 100 barre (0.01 freq).

Qui è

t = (0:5000)';

f0 = 0.05;

ph0 = pi/6;

f1 = 0.02;

ph1 = -pi/6;

f2 = 0.01;

x = 10+0.1*t+2.5 * cos(2*pi*f0*t + ph0) + 3 * cos(2*pi*f1*t + ph1) + cos(2*pi*f2*t) + 4 * randn(size(t));

Guarda lo spettro da MATLAB. Goertzel e FFT sono morti senza detrending.

Krzysztof

File:
1_1.jpg  50 kb
2.jpg  49 kb
3.jpg  45 kb
4.jpg  51 kb
usdsek5.rar  60 kb
 
richcap:
Sì, ma non so che tipo di pre-elaborazione esegue DFG sulle serie temporali.

Sì.

Siete al centro del problema! E questo è il motivo principale per cui ho condiviso i miei indicatori.

MESA è quasi perfetto per estrarre cicli stazionari da una serie temporale arbitrariamente lunga e rumorosa come una gaussiana (mentre uno dei vincoli della FFT è la lunghezza 2^n. Potete sempre azzerare le vostre serie temporali, ma è un workaround).

Quando si tratta di serie temporali del mercato reale, come sapete, non avete né rumore gaussiano né cicli stazionari.

Hai "qualcosa" che puoi chiamare segnale + rumore. Il segnale ha un certo comportamento ciclico. La tesi di chi sostiene che si possono commerciare i cicli, è che si può separare il segnale dal rumore e che si possono riconoscere i cicli all'interno del segnale e trarre vantaggio dal comportamento ciclico per mezzo di una sorta di previsione. Questo è l'approccio dei cicli NOXA, per esempio, e di parte delle soluzioni di trading e degli indicatori originali di Ehlers (MESA8).

L'approccio di ATCF e di altri (ad esempio Codebreaker) è che si può fare trend following in modo migliore se si sa come filtrare il segnale dal rumore. Questo è il motivo per cui è necessario conoscere lo spettro delle serie temporali ed è quello su cui ho lavorato.

Detto questo, devi scoprire se è meglio per la tua strategia di trading avere un set di filtri digitali mediati, più stabili, basati sull'ipotesi che alcuni cicli siano ricorrenti su una lunga serie temporale.

Quando osservate una lunga serie temporale (2000 barre) con il MESA, allora state facendo la media di tutti i cicli all'interno di quella serie temporale ed estraete le bande in cui si condensa la maggior parte della potenza spettrale. Se ci sono cicli ricorrenti ben noti, allora hai dei picchi puliti. Più spesso, quando si esaminano serie temporali più lunghe, i picchi tendono ad allargarsi e ad abbassarsi (quindi stanno convergendo, come dici tu). Ciò significa che puoi avere solo un'idea delle bande in cui hai potenza spettrale, ma non dei cicli puliti.

Se preferisci un adattamento più reattivo ai mercati che cambiano, o se vuoi catturare un ciclo temporaneo ben definito, devi accorciare la finestra di osservazione (che è il mio peculiare campo di studio, e per il quale avevo bisogno di un analizzatore in linea invece di uno fuori linea come DFG)?

Il problema che sorge in quest'ultimo approccio è: come cambia lo spettro barra per barra e come si comporta MESA nell'analisi a breve termine?

Nonostante il fatto che sono convinto che il denoising e il detrending non siano molto utili con MESA (almeno in una lunga finestra di osservazioni e con rumore gaussiano), sto facendo alcune prove in questo approccio a breve termine su serie temporali reali. Sembra che il detrending possa aiutare a catturare meglio i cicli di media lunghezza (quelli tra 60 e 150 barre), il che potrebbe portare a una migliore curva SATL.

In ogni caso puoi scegliere qualsiasi arco di tempo, purché tu abbia delle barre nella storia per le tue analisi in linea con i miei indicatori.

Facendo scorrere la finestra di osservazione (cioè col passare del tempo) i picchi si spostano all'interno dello spettro. Non solo cambiano il loro centro, ma diventano più alti o più bassi. Quando succede che un vecchio ciclo predominante viene superato in nitidezza da uno nuovo, si ha un salto.

Ho sviluppato un algoritmo per ottenere il picco più significativo (quello con il più alto rapporto altezza/larghezza) ed è così che scelgo il ciclo predominante.

Poiché prendo in considerazione solo il picco più rappresentativo, i salti avvengono quando un nuovo ciclo diventa predominante.

Quando ci sono dei salti significa che il vecchio picco sta diminuendo e un nuovo picco sta salendo. Si potrebbe mantenere quello vecchio, ma per quale motivo?

Come fai a fare trading utilizzando i segnali ACTF? Abbiamo una posizione aperta per più di due barre? Vorrei vedere un grafico con le entrate e quale indicatore ci dice di entrare. SATL per esempio potrebbe avere un grande ritardo e il prezzo può muoversi già molto lontano prima che SATL si appiattisca. E se seguiamo FATL, allora possiamo sbagliarci. Sarebbe davvero bello vedere un grafico con queste entrate ACTF.

 

CHIRP non stazionario?

richcap:

MESA è quasi perfetto per estrarre cicli stazionari da una serie temporale arbitrariamente lunga, gaussiana-rumorosa (mentre uno dei vincoli della FFT è la lunghezza 2^n. Potete sempre azzerare le vostre serie temporali, ma è un workaround).

Mi piace questa faccenda della stazionarietà/non stazionarietà. CHIRP è stazionario o non stazionario? Cambia la frequenza e l'ampiezza, quindi come processo non è stazionario, ma MESA ha funzionato comunque... Forse quando farete il test DF allora mostrerà che è stazionario.

Krzysztof

 
fajst_k:
Mi piace questa faccenda della stazionarietà/non stazionarietà. CHIRP è stazionario o non stazionario? Cambia la frequenza e l'ampiezza, quindi come processo non è stazionario, ma MESA ha funzionato lo stesso... Forse quando farete il test DF allora mostrerà che è stazionario. Krzysztof

Ciao Krzysztof

Non hai idea di quanto mi stia divertendo il nostro brainstorming (o forse tu condividi il mio divertimento ;-) )

Sì, il tuo segnale chirp è sicuramente non stazionario ma...

...poiché cambia lentamente, posso definirlo quasi-stazionario in una finestra di osservazione e MESA può fare il suo lavoro, come hai visto.

Se ho una finestra di 400 barre in cui la frequenza del segnale chirp (o il suo inverso: periodo) cambia da 260 a 220 barre, MESA non avrà problemi a restituire un picco abbastanza pulito a qualcosa tra 220 e 260 (vedi post #496).

Se si prende una finestra più grande, si avrà un picco meno definito, tenendo conto del fatto che le frequenze sono distribuite su una banda più ampia (vedi post #495).

Questo è il compromesso tra nitidezza e stabilità dello spettro di cui parlava dvarrin.

Più corta è la finestra, maggiore è la quasi-stazionarietà del segnale.

 
fajst_k:
Qui è

t = (0:5000)';

f0 = 0.05;

ph0 = pi/6;

f1 = 0.02;

ph1 = -pi/6;

f2 = 0.01;

x = 10+0.1*t+2.5 * cos(2*pi*f0*t + ph0) + 3 * cos(2*pi*f1*t + ph1) + cos(2*pi*f2*t) + 4 * randn(size(t));

Guarda lo spettro da MATLAB. Goertzel e FFT sono morti senza detrending.

Krzysztof

Ho applicato la stessa semplice strategia usata prima. Avete due frequenze principali da tradare (periodo di 20 e 50 barre mentre quella con 100 barre di periodo ha un'ampiezza molto piccola rispetto al rumore ed è difficilmente tradabile).

Nella prima immagine vedi la strategia applicata alla trendline lenta (50 barre) e nella seconda la strategia applicata alla trendline veloce.

Sono entrambe redditizie. Devo dire che questo rumore aiuta perché dopo un incrocio tra la trendline e il suo riferimento c'è un'alta probabilità di ottenere un arrivo di prezzo rumoroso e profittevole dall'altra parte per cavalcare il trend.

Come sempre quando si ha un trend primario (up in questo caso), sarebbe più redditizio fare trading solo verso l'alto

File:
 
dvarrin:
Come si fa a fare trading usando i segnali ACTF? Abbiamo una posizione aperta per più di due barre? Vorrei vedere un grafico con le entrate e quale indicatore ci sta dicendo di entrare. SATL per esempio potrebbe avere un grande ritardo e il prezzo può muoversi già molto lontano prima che SATL si appiattisca. E se seguiamo FATL, allora possiamo sbagliarci. Sarebbe davvero bello vedere un grafico con queste entrate ACTF.

Lasciatemi citare la risposta a una domanda simile che mi è stata posta via e-mail:

Ciao G.,

ho solo detto che sono interessato alle finestre medio-corte (200) perché voglio che i miei filtri cambino appena il mercato cambia. Ma è possibile utilizzare gli indicatori per finestre più lunghe. Sono felice che tu stia sperimentando. L'unico limite è la potenza del tuo PC (anche se c'è un massimo di 500 per il grado, ma puoi cambiare la costante che lo definisce nella libreria, se vuoi) e il fatto che il grado deve essere inferiore alla lunghezza, altrimenti MESA non riesce a trovare i poli.

Puoi giocare con i parametri e capire cosa significano:

Max (80) e satlmin (15) significano che non siete interessati a picchi con periodo più grande di 80 e più piccolo di 15 per il vostro satl.

Min (10) significa che non ti interessano i picchi con periodo inferiore a 10 per il tuo fatl.

Credo che tu non abbia dato abbastanza spazio tra satl min e fatl min, ma forse hai ragione.Raramente cambio il parametro del grado, ma naturalmente puoi provare. È in questo processo di prove ed errori che vedo una situazione win/win nel condividere il codice (se condividete i vostri risultati, ovviamente)

Notate che se l'algoritmo non riesce a trovare i picchi importanti con i vincoli che avete messo, le impostazioni predefinite vengono utilizzate per calcolare fatl e satl. Date sempre un'occhiata all'output nella scheda esperti della finestra del terminale.

Riccardo

G. ha scritto:

> Ciao di nuovo, ho provato molte configurazioni per i tuoi indicatori adattativi per lavori in H1 ho ottenuto quello che voglio più o meno, ma ho letto nel tuo ultimo post su TSD che è meglio usare un parametro lenght poco, perché? inoltre vorrei sapere come funziona il parametro degree.

> Ho modificato il parametro tempo iniziale e non ho visto nessun cambiamento nelle linee.

>

> Cosa posso fare per ottenere una FATL e una RSTL come l'originale?

>

> Il miglior set che ho trovato è per h1 è nell'ordine:

> grado 100

> lunghezza 1000

> max 80

> min 10

> salmin 15

>

> Saluti
 

metodologia

Nella prima immagine vedi la strategia applicata alla trendline lenta (50 barre) e nella seconda vedi la strategia applicata alla trendline veloce.

They are both profitable. I must say that this noise is helping because after a cross between trendlline and it's reference there is a high probability of getting a noisy and profitable price arrival on the other side to ride the trend.

Ciao,

Per prima cosa spero che la metodologia sia a posto. Basta riesaminare ancora una volta il modo delle impostazioni dei parametri per essere sicuri che la conoscenza che stiamo cercando non influenzi le tue impostazioni. Altrimenti avremo future perdite o raccordi di curve.

Come sempre quando si dispone di una tendenza primaria (fino in questo caso), sarebbe più redditizio per il commercio solo verso l'alto

Questo è il problema. 'Modalità ciclo' e 'Modalità trend' usando la terminologia di Ehlers.

Possiamo provare a sbarazzarci di questo, ma forse più tardi.

Forse tu detrenderai questo per differenza di log e vedremo se le prestazioni sono migliorate.

Poi farò il test per CSSA sugli stessi dati, vediamo.

Spero che il team Goertzel, che legge tutte le mail di questo forum, pubblicherà i suoi EAs

risultati anche su questi dati.

Krzysztof

 

Quindi l'idea è:

Il grado è come un moltiplicatore del valore della lunghezza.

Il valore di lunghezza è la quantità di barre che l'indicatore usa per lisciare i dati, più barre, più liscio, e l'indicatore diventa meno adattabile.

È corretto?

 
richcap:
Ho applicato la stessa semplice strategia usata in precedenza. Hai due frequenze principali da scambiare (20 e 50 barre di periodo mentre quella con 100 barre di periodo ha un'ampiezza molto piccola rispetto al rumore ed è difficilmente scambiabile).

Nella prima immagine vedi la strategia applicata alla trendline lenta (50 barre) e nella seconda vedi la strategia applicata alla trendline veloce.

Sono entrambe redditizie. Devo dire che questo rumore aiuta perché dopo un incrocio tra la trendline e il suo riferimento c'è un'alta probabilità di ottenere un arrivo di prezzo rumoroso e redditizio dall'altra parte per cavalcare il trend.

Come sempre quando si ha un trend primario (up in questo caso), sarebbe più redditizio fare trading solo verso l'alto

Richcap,

Se non mi sbaglio, credo che tu stia fondamentalmente commerciando i cambi di pendenza FTLM e STLM nel loro stato devoluto, ma ottimizzato, che può benissimo essere redditizio (è il modo in cui commercio ATCF). Mi chiedo cosa succederebbe se li scambiassi in congiunzione l'uno con l'altro.

Non ho ancora avuto la possibilità di entrare veramente in quegli indies che hai postato (J.O.B.), ma meglio credere che non li ho nemmeno dimenticati. Voi ragazzi avete un ruolo. Farò del mio meglio per postare di più (anche se non mi viene in mente molto che possa contribuire). Grazie ancora a tutti per aver tenuto vivo questo thread.