Tutti gli indicatori di John Ehlers... - pagina 59

 

per quanto riguarda Fisher transform la valutazione è qui. È solo un compressore/decompressore di gamma e non dà alcun valore aggiunto

secondo questo articolo. Dall'altra parte ci sono alcune persone che stanno cercando di guadagnarsi da vivere vendendo 'Fisher modificati' ....

Ensign Software - Studi: Trasformata inversa di Fisher

Krzysztof

 

nel caso di Close smoothing anche nessuna differenza. Si può sostenere che per alcune serie temporali funzionerà meglio della SMA ma credo che debba essere dimostrato prima.

Quindi nuovo libro, nuove teorie, nuovo sito e almeno per me sembra un po' scamyyyyy

Krzysztof

File:
3.jpg  332 kb
4.jpg  286 kb
 

Grazie mille per queste risposte. Sto sfogliando l'ultimo libro del signor Ehler. Su un altro argomento, verso la fine del libro, egli afferma che "la trasformazione inversa di Fisher dell'indicatore stocastico adattivo dà indicazioni chiare e inequivocabili dei punti di acquisto e di vendita adeguati".

Il codice è anche dato (in formato di codice semplice) come:

Passo 1 il codice dell'indicatore stocastico adattivo è:

{

Stocastico adattivo

(c) 2013 John F. Ehlers

}

Vars:

AvgLength(3),

M(0),

N(0),

X(0),

Y(0),

alpha1(0),

HP(0),

a1(0),

b1(0),

c1(0),

c2(0),

c3(0),

Filt(0),

Lag(0),

count(0),

Sx(0),

Sy(0),

Sxx(0),

Syy(0),

Sxy(0),

Periodo(0),

Sp(0),

Spx(0),

MaxPwr(0),

DominantCycle(0);

Array:

Corr[48](0),

CosinePart[48](0),

SinePart[48](0),

SqSum[48](0),

R[48, 2](0),

Pwr[48](0);

//Filtro passa alto sulle componenti cicliche i cui periodi sono più brevi di 48 battute

alpha1 = (Coseno(.707*360 / 48) + Seno (.707*360 / 48) - 1) / Coseno(.707*360 / 48);

HP = (1 - alpha1 / 2)*(1 - alpha1 / 2)*(Close - 2*Close[1] + Close[2]) + 2*(1 - alpha1)*HP[1] - (1 - alpha1)*(1 - alpha1)*HP[2];

//Smussare con un filtro Super Smoother dall'equazione 3-3

a1 = expvalue(-1.414*3.14159 / 10);

b1 = 2*a1*Coseno(1.414*180 / 10);

c2 = b1;

c3 = -a1*a1;

c1 = 1 - c2 - c3;

Filt = c1*(HP + HP[1]) / 2 + c2*Filt[1] + c3*Filt[2];

/Correlazione di Pearson per ogni valore di lag

Per Lag = da 0 a 48 Iniziare

//Imposta la lunghezza della media come M

M = AvgLength;

Se AvgLength = 0 Allora M = Lag;

Sx = 0;

Sy = 0;

Sxx = 0;

Syy = 0;

Sxy = 0;

Per il conteggio = da 0 a M - 1 Iniziare

X = Filt[count];

Y = Filt[Lag + count];

Sx = Sx + X;

Sy = Sy + Y;

Sxx = Sxx + X*X;

Sxy = Sxy + X*Y;

Syy = Syy + Y*Y;

Fine;

Se (M*Sxx - Sx*Sx)*(M*Syy - Sy*Sy) > 0 Allora Corr[Lag] = (M*Sxy - Sx*Sy)/SquareRoot((M*Sxx - Sx*Sx)*(M*Syy - Sy*Sy));

Fine;

Per Periodo = da 10 a 48 Iniziare

CosinePart[Period] = 0;

SinePart[Periodo] = 0;

Per N = da 3 a 48 Iniziare

CosinePart[Period] = CosinePart[Period] + Corr[N]*Coseno(360*N / Period);

SinePart[Period] = SinePart[Period] + Corr[N]*Sine(360*N / Period);

Fine;

SqSum[Periodo] = CosinePart[Periodo] *CosinePart[Periodo] + SinePart[Periodo] *SinePart[Periodo];

Fine;

Per Periodo = da 10 a 48 Iniziare

R[Periodo, 2] = R[Periodo, 1];

R[Periodo, 1] = .2*SqSum[Periodo]*SqSum[Periodo] + .8*R[Periodo, 2];

Fine;

//Trova il livello di potenza massima per la normalizzazione

MaxPwr = .995*MaxPwr;

Per Periodo = da 10 a 48 Iniziare

Se R[Periodo, 1] > MaxPwr Allora MaxPwr = R[Periodo, 1];

Fine;

Per Periodo = da 3 a 48 Iniziare

Pwr[Periodo] = R[Periodo, 1] / MaxPwr;

Fine;

//Computa il ciclo dominante usando il CG dello spettro

Spx = 0;

Sp = 0;

Per Periodo = da 10 a 48 Iniziare

Se Pwr[Periodo] >= .5 Allora inizia

Spx = Spx + Periodo*Pwr[Periodo];

Sp = Sp + Pwr[Periodo];

Fine;

Fine;

Se Sp 0 Allora DominantCycle = Spx / Sp;

Se DominantCycle < 10 Allora DominantCycle = 10;

Se DominantCycle > 48 Allora DominantCycle = 48;

/Il calcolo stocastico inizia qui

Vars:

HighestC(0),

LowestC(0),

Stoc(0),

SmoothNum(0),

SmoothDenom(0),

AdaptiveStochastic(0);

HighestC = Filt;

LowestC = Filt;

Per count = 0 a DominantCycle - 1 Inizio

Se Filt[count] > HighestC allora HighestC = Filt[count];

Se Filt[count] < LowestC allora LowestC = Filt[count];

Fine;

Stoc = (Filt - LowestC) / (HighestC - LowestC);

AdaptiveStochastic = c1*(Stoc + Stoc[1]) / 2 + c2*AdaptiveStochastic[1] + c3*AdaptiveStochastic[2];

Plot1(AdaptiveStochastic);

Plot2(.7);

Plot6(.3);

Passo 2 per implementare la trasformata di Fisher inversa sull'indicatore stocastico adattivo:

Vars:

IFish(0) ;

Value1 = 2*(AdaptiveStochastic - .5) ;

IFish = (ExpValue(2*3*Value1) - 1) / (ExpValue(2*3*Value1) + 1) ;

Plot1(IFish) ;

Plot4(.9*IFish[1]) ;

Passo 3 Aggiungere i segnali di acquisto e vendita:

Si aggiunge una linea di trigger che è la trasformata di Fisher ritardata di una barra e attenuata al 90%.

Passo 4 Uno sviluppo aggiunto da me:

Se possibile si dovrebbe sviluppare una variante del suddetto (indicatore stocastico inverso di Fisher adattivo) che sia MTF in modo che possano essere visualizzate anche versioni a time-frame più alti.

Penso che questi 2 indicatori, l'indicatore stocastico adattivo Fisher inverso e l'indicatore stocastico adattivo Fisher inverso MTF sarebbero potenzialmente indicatori molto interessanti da testare se qualcuno è in grado di produrre in MT4?

Cordiali saluti

Nigel

 

Non c'è bisogno di convertire in MT4, basta usare tradestation o Multicharts e fare un'analisi Walk Forward per verificare se funziona, il codice che hai pronto. Puoi prendere una prova di Multicharts, ha un analizzatore Walk Forward integrato. Ho anche controllato il filtro di copertura di recente e ha un enorme overshoot dopo il cambio di direzione della tendenza che è squalificante.

Tutti questi autori di libri vogliono vendere i loro libri, non il commercio, questa è una ragione per cui non fanno una valutazione adeguata delle loro idee, la carta accetta tutto...

Krzysztof

 
Nigel99:
Mladen,

Grazie per la vostra risposta.

Se non mi sbaglio, a circa 27 minuti (del video allegato in precedenza) il signor Ehler introduce lo "stocastico preceduto da un filtro di copertura" dicendo che "...metto il filtro di copertura davanti allo stocastico...". La mia comprensione è che questo raggiunge una media zero e rimuove anche la dilatazione spettrale (cioè ciò che fa sì che una stocastica normale si scontri con la parte superiore e inferiore della finestra dell'indicatore). Ho preso il filtro di copertura precedente su questo sito grazie per il riferimento.

Quindi mi sembra ancora che mettere un filtro di copertura davanti alla trasformata inversa di Fisher e visualizzare in forma istogrammatica approssimi l'indicatore MESA momentum proprio.

C'è qualche possibilità che tu possa avere un'idea di come sia il:

1. Filtro di copertura davanti a uno stocastico, o

2. Filtro Roofing di fronte a una trasformata inversa di Fisher in forma histo, potrebbero essere derivati?

Penso che potrebbero essere preziosi

Cordiali saluti

Nigel

Ciao Nigel,

mladen ha codificato "SuperSmoother" come funzione. Puoi usarla per pre-smussare una serie temporale e secondo me funziona bene per questo. Ho allegato un indicatore scritto da mladen dove ho aggiunto il presmoothing come esempio. Questo potrebbe avvicinarsi a quello che stai cercando. In caso contrario, è certamente possibile modificare la maggior parte degli indicatori in questo modo.

L'indicatore è "Phase Change Index originariamente da M.H. Pee. Ecco GPBUSD daily impostato su 16 periodi con 5 periodi di pre-smoothing.

L'indicatore è sensibile alla lunghezza del periodo. È meglio usarlo se si ha un'idea di quale dovrebbe essere la lunghezza del periodo.

Edit: Ho cancellato l'indicatore perché non riesco a ricordare se originariamente proveniva dalla sezione Elite. È possibile. Se per mladen va bene, lo posterò di nuovo.

Cordiali saluti,

Alex

File:
gbpusddaily.png  35 kb
 

Questo è mama oscillatore con un segnale t3 linea tratteggiata l'indicatore è anche compatibile con le più recenti build mt4.

 
fajst_k:
nel caso di Close smoothing anche nessuna differenza. Si può sostenere che per alcune serie temporali funzionerà meglio della SMA ma credo che debba essere dimostrato prima.

Quindi nuovo libro, nuove teorie, nuovo sito e almeno per me sembra un po' scamyyyy

Krzysztof

Krzysztof

Perché stai confrontando periodi di calcolo brevi?

Più breve è il periodo di calcolo e più simili saranno i risultati (finendo nel periodo di calcolo 1 quando tutte le medie / smussamenti / filtri saranno esattamente gli stessi). Perché non confrontare periodi più lunghi e periodi uguali?

Anche le medie adattive / gli smussatori / i filtri non possono adattarsi correttamente per periodi molto brevi e anche quelli daranno risultati molto simili a una semplice media mobile se il periodo di calcolo è abbastanza breve

 

Secondo John E. lo scopo di SS è di uccidere il rumore ad alta frequenza, cioè periodi =< 10 barre. Confronto con SMA(5) perché SMA(5) ha lo stesso ritardo di SS(10) e la sua banda passante è 2*n. Poi si può controllare quale dei due sta lisciando meglio e lisciano lo stesso. Basta tracciare entrambi e si può vedere che la trama è la stessa.

Ciò significa che almeno per USDJPY 1 min il rumore ad alta frequenza (se esiste) è smussato allo stesso livello da SMA(l/2) e SS(l). Per altre lunghezze

si usa il filtro HP. Vedi anche il capitolo 'Market Data Structure' nel suo documento 'Predictive Indicators' e l'immagine con il rumore di aliasing e il rumore di dilatazione specrtale. Sono solo molto curioso di sapere come l'ha ottenuto e come appare, ad esempio, per i dati FOREX.

Krzysztof

 
fajst_k:
Secondo John E. lo scopo di SS è di uccidere il rumore ad alta frequenza, cioè periodi =< 10 barre. Confronto con SMA(5) perché SMA(5) ha lo stesso ritardo di SS(10) e la sua banda passante è 2*n . Poi si può controllare quale dei due sta lisciando meglio e lisciano lo stesso. Basta tracciare entrambi e si può vedere che la trama è la stessa.

Ciò significa che almeno per USDJPY 1 min il rumore ad alta frequenza (se esiste) è smussato allo stesso livello da SMA(l/2) e SS(l). Per altre lunghezze

si usa il filtro HP. Vedi anche il capitolo 'Market Data Structure' nel suo documento 'Predictive Indicators' e l'immagine con il rumore di aliasing e il rumore di dilatazione specrtale. Sono solo molto curioso di sapere come l'ha ottenuto e come appare, ad esempio, per i dati FOREX.

Krzysztof

Krzysztof

Confrontare diversi lisciatori / filtri / medie di lunghezza diversa non è (almeno a mio parere) un confronto equo. Ma questa è la mia opinione. Potremmo semplicemente decidere di usare un filtro e usarlo su tutto ciò che facciamo più e più volte, ma come dovremmo decidere cosa usare per quello scopo e come dovremmo decidere che qualcosa è il meglio che c'è se non sperimentiamo, indaghiamo e tentiamo diversi approcci?

Anch'io ho detto molte volte che John Ehlers tende a raccontare prima e poi cerca di produrre una prova per quello che ha detto e non per quello che possiamo vedere ad occhi nudi. Ma almeno sta sperimentando. Se sia buono o meno non ha molta importanza: ha semplicemente il coraggio di affermare e fare qualcosa e di essere criticato per questo (se merita di essere criticato), quindi dovremmo dargli il merito di cercare di spingere i limiti

Non ho mai capito i tentativi di usare filtri di 2-3 barre nel tentativo di scoprire una tendenza (qualunque cosa si consideri una "tendenza"). Ma di nuovo, questa è solo la mia opinione

 
hughesfleming:

Ciao Nigel,

mladen ha codificato "SuperSmoother" come funzione. Puoi usarla per pre-smussare una serie temporale e secondo me funziona bene per questo. Ho allegato un indicatore scritto da mladen dove ho aggiunto il presmoothing come esempio. Questo potrebbe avvicinarsi a quello che stai cercando. In caso contrario, è certamente possibile modificare la maggior parte degli indicatori in questo modo.

L'indicatore è "Phase Change Index originariamente da M.H. Pee. Ecco GPBUSD daily impostato su 16 periodi con 5 periodi di pre-smoothing.

L'indicatore è sensibile alla lunghezza del periodo. È meglio usarlo se si ha un'idea di quale dovrebbe essere la lunghezza del periodo.

Edit: Ho cancellato l'indicatore perché non riesco a ricordare se originariamente proveniva dalla sezione Elite. È possibile. Se per mladen va bene, lo posterò di nuovo.

Cordiali saluti,

Alex

Alex,

Molte grazie per il tuo aiuto.

Saluti

Nigel