Indice Hearst - pagina 5

 
Yurixx:

Ci sono effettivamente diversi metodi per calcolare Hearst, ma vi metterei in guardia dal presumere che solo grasn abbia quello giusto. In realtà non c'è molta matematica, quindi qualsiasi metodo può essere capito. Devi solo prendere il codice e sperimentare con diverse righe.
La domanda principale è se usare il rapporto logaritmo o l'approssimazione della linea retta?
Tutti (in particolare Peters) e dappertutto (trovato sulle dissertazioni Web) tranne Federer (e anche implicitamente) usano il rapporto dei logaritmi. Anche se nella discussione quasi tutti hanno riconosciuto che è necessario approssimare la linea retta. Non sono un matematico, solo un lettore :)
Quindi non è una matematica ahchy...
 
Gorillych писал (а):
Yurixx:

Ci sono effettivamente diversi metodi per calcolare Hearst, ma vi metterei in guardia dal presumere che solo grasn abbia quello giusto. In realtà non c'è molta matematica, quindi qualsiasi metodo può essere capito. Devi solo prendere il codice e sperimentare con diverse righe.
La domanda principale è se usare il rapporto logaritmo o l'approssimazione della linea retta?
Tutti (in particolare Peters) e dappertutto (trovato sulle dissertazioni Web) tranne Federer (e anche implicitamente) usano il rapporto dei logaritmi. Anche se nella discussione quasi tutti hanno riconosciuto che è necessario approssimare la linea retta. Non sono un matematico, solo un lettore :)
Quindi non è una matematica ahchy...

Peters ha l'esponente di Hearst = il coefficiente angolare della linea di regressione tracciata su un insieme di punti (Log(R/S),Log(N/2)).
Un semplice rapporto di questi logaritmi darà il coefficiente angolare non della linea approssimata, ma del raggio-vettore di un punto con coordinate (Log(R/S),Log(N/2)). La differenza può essere sostanziale, specialmente se ci sono pochi punti nella sequenza.
 
Non mi ispira il calcolo di Hearst con il metodo di Grasn. Con tutto il mio rispetto per lui (non ho un po' della sua esperienza e conoscenza), non è così che dovrebbe essere un indicatore basato sull'indice di Hearst:


. Poiché il significato geometrico dell'indice di Hearst è il coefficiente angolare della linea di regressione, sembra molto strano che questo coefficiente cambi con la velocità reattiva. Perciò ho deciso di scrivere un mio indicatore basato sull'indice di Hearst. Nella prima variante l'ho costruito sulla base delle serie dei prezzi di chiusura. Se consideriamo l'indicatore sulla base di tutte le serie simultaneamente, il risultato sembra lo stesso ma è più veloce di diverse barre. Sembra già migliore, anche se un po' strano per il coefficiente angolare della linea di regressione:) In generale, abbiamo il seguente indicatore:



Hearst Ratio che va da 0,2 a 0,9. Fluttua senza problemi, ma non è molto buono dove varia. Anche se l'indicatore è interessante in generale).

L'algoritmo è dato di seguito per gli intenditori di Hearst:
.
for(int j=limit;j>=0;j--)
      {
         int max_index=ArrayMaximum(Close,HerstPeriod+j,j);
         int min_index=ArrayMinimum(Close,HerstPeriod+j,j);
         MaxH=Close[max_index];
         MinH=Close[min_index];
         R=MaxH-MinH;
         Average=iMA(NULL,0,HerstPeriod,0,0,0,j);
         sum=0;
         for (int i=1;i<=HerstPeriod;i++)
             sum+=MathPow((Average-Close[i+j]),2);
         double S=MathSqrt(sum/(HerstPeriod-1));
         if (S>0)
            ExtMapBuffer1[j]=(MathLog(R/S))/(MathLog(HerstPeriod*a));    
      }

Sembra essere corretto.
File:
 
Dopo di che ho calcolato l'indice Hearst per la differenza di prezzo, come ha cercato di fare Grasn. La serie dei prezzi è stata presa come la serie dei prezzi di chiusura. Algoritmo:
      for(int j=limit;j>=0;j--)
      {
         ExtMapBuffer2[j]=Close[j]-Close[j+1];
         int max_index=ArrayMaximum(ExtMapBuffer2,HerstPeriod+j,j);
         int min_index=ArrayMinimum(ExtMapBuffer2,HerstPeriod+j,j);
         MaxH=ExtMapBuffer2[max_index];
         MinH=ExtMapBuffer2[min_index];
         R=MaxH-MinH;
         for (i=1;i<=HerstPeriod;i++)
            sum+=ExtMapBuffer2[i+j];
         Average=sum/HerstPeriod;
         sum=0;
         for (i=1;i<=HerstPeriod;i++)
             sum+=MathPow((Average-ExtMapBuffer2[i+j]),2);
         double S=MathSqrt(sum/(HerstPeriod-1));
         if (S>0)
            ExtMapBuffer1[j]=(MathLog(R/S))/(MathLog(HerstPeriod*a));    
      }

rimane lo stesso. L'unica differenza è che il calcolo non si basa su una serie di prezzi di chiusura, ma sulla loro differenza. Il risultato è stato sbalorditivo:





Il risultato è quello che dovrebbe essere - 0,5. Significa che la serie è davvero caotica! E si presenta così su tutte le valute e i timeframe inferiori a D1. È 0,3-0,4 sui timeframe giornalieri. Significa persistenza, cioè ritorno alla media. Il periodo per il calcolo dell'indice è 500. In termini di H1 è circa per un mese.

La conclusione basata sull'indicatore Hurst è che le serie di prezzi sul Forex sono caotiche e imprevedibili :)
Se i miei calcoli sono sbagliati - per favore correggete.

Tuttavia, ho fatto troppe poche ricerche per trarre tali conclusioni. Quelli che indagheranno - per favore postateli tutti in un ramo o inviateli a favoritefx [woof-woof] mail.ru.

File:
 
>>le serie di prezzi forex sono caotiche e imprevedibili
Qui in questo thread l'autore fa alcune ricerche sulle serie di prezzi caotici nel Forex. Forse sarete interessati a dare un'occhiata, se decidete di occuparvi seriamente di ciò di cui ci occupiamo a Forex. Secondo me è molto informativo.
 

Ciao a tutti.

Sono arrivato a questo thread completamente per caso, non sapevo nemmeno che la mia ricerca sull'indice Hearst fosse di interesse per qualcuno. Se posso, aggiungo i miei commenti. Di tutte le cose che ho cercato di fare, le ho fatte tutte. Il calcolo dell'indice dato su https://www.mql5.com/ru/forum/50458 non lo uso più da molto tempo. Notate anche che non ho pubblicato tutto e per vari motivi non lo farò (se lo farò, lo pubblicherò in forma abbreviata).

Per quanto riguarda il valore di Hearst tutto il tempo 0,5, è un risultato eccellente che permette ai commercianti di risparmiare tutti i loro soldi.

In generale, Hirst ha scoperto il fenomeno e l'indice (che porta il suo nome) è la sua quantificazione. E questa è la cosa principale! E il risultato dello 0,5 è solo un punto di vista su un processo molto complesso. Spiegando semplicemente, dipende dal tipo di movimento che si sta studiando. A proposito, cosa stai cercando e cosa vuoi da Hirst? Non devo dirvelo io, ma dovete farvi un'idea da soli.

Una cifra molto liscia di Hearst è un errore di calcolo o una stima molto approssimativa. Non può essere intrinsecamente super liscio.

La "semplice matematica" che vedete nei link su internet non è del tutto corretta (non sto scrivendo che sia sbagliata). Bisogna aggiungere un po' di semplice matematica.

Non in termini di vanto, ma come risultato del mio modello utilizzando l'indice Hearst: https: //www.mql5.com/ru/forum/50458 "grasn 11.01.07 16:16". Pubblicherò presto un seguito, se ovviamente il forum non "muore".

Buona fortuna.

 
grasn:

Ciao a tutti.

Sono arrivato a questo thread completamente per caso, non sapevo nemmeno che la mia ricerca sull'indice Hearst fosse di interesse per qualcuno. Se posso, aggiungo i miei commenti. Di tutte le cose che ho cercato di fare, le ho fatte tutte. Il calcolo dell'indice dato su https://www.mql5.com/ru/forum/50458 non lo uso più da molto tempo. Notate anche che non ho pubblicato tutto e per vari motivi non lo farò (se lo farò, lo pubblicherò in forma abbreviata).

Ciao!
Molto lieto, era scomodo fare domande in quel ramo e sporcarlo con la mia ineducazione.
Sto leggendo attentamente quel thread e ora sto cercando di capire qualcosa il più possibile.
Forse stai dicendo da qualche parte che pensi che la versione di Sergei dell'indice Hearst sia corretta. Si prega di spiegare.
Grazie!
Buona fortuna!
 
Gorillych:
grasn:

Ciao a tutti.

Sono arrivato a questo thread completamente per caso, non sapevo nemmeno che la mia ricerca sull'indice Hearst fosse di interesse per qualcuno. Se posso, aggiungo i miei commenti. Di tutte le cose che ho cercato di fare, le ho fatte tutte. Il calcolo dell'indice dato su https://www.mql5.com/ru/forum/50458 non lo uso più da molto tempo. Notate anche che non ho pubblicato tutto e per vari motivi non lo farò (se lo farò, lo pubblicherò in forma abbreviata).

Ciao!
Molto contento, era scomodo fare domande in quel thread e ingombrarlo con la mia ignoranza.
Sto leggendo attentamente quel thread e ora sto cercando di capire qualcosa il più possibile.
Forse stai dicendo da qualche parte che pensi che la versione di Sergei dell'indice Hearst sia corretta. Si prega di spiegare.
Grazie!
Buona fortuna!
Lei è molto autocritico e penso che abbia ragione. Questo è lo scopo dei forum, comunicare, fare domande, discutere, ecc. Il metodo di calcolo dell'indice Hurst proposto da Sergei è davvero molto interessante. Vi consiglio di dare un'occhiata anche a questo.
 
favoritefx писал(а) >>
Dopo di che ho calcolato l'indice Hearst per la differenza di prezzo, come ha cercato di fare Grasn. Una serie di prezzi di chiusura è stata presa come serie di prezzi. Algoritmo:

Rimane lo stesso. L'unica differenza è il calcolo non per serie di prezzi di chiusura ma per le loro differenze. Il risultato è stato semplicemente stupefacente:





È uscito come dovrebbe essere - 0,5. Cioè la serie è davvero caotica! E si presenta così su tutte le valute e i timeframe inferiori a D1. È 0,3-0,4 sui timeframe giornalieri. Significa persistenza, cioè ritorno alla media. Il periodo per il calcolo dell'indice è 500. In termini di H1 è circa per un mese.

La conclusione basata sull'indicatore Hurst è che le serie di prezzi sul Forex sono caotiche e imprevedibili :)
Se i miei calcoli sono sbagliati - per favore correggete.

Tuttavia, ho fatto troppe poche ricerche per trarre tali conclusioni. Quelli che faranno ricerche - per favore scrivete tutto su questo sito o inviate a favoritefx [woof-woof]mail.ru

Questo non è Hearst.

         ExtMapBuffer2[ j]=Close[ j]-Close[ j+1];
         int max_index=ArrayMaximum( ExtMapBuffer2, HurstPeriod+ j-1, j);
         int min_index=ArrayMinimum( ExtMapBuffer2, HurstPeriod+ j-1, j);
         MaxH= ExtMapBuffer2[ max_index];
         MinH= ExtMapBuffer2[ min_index];

Come potete vedere dal codice, il massimo e il minimo sono presi per la serie originale, non per quella riscalata (con la scala modificata).

Più avanti, sembra esserci anche un errore. La formula R/S=c*n^H dopo la logaritmia dovrebbe essere così: log(R/S)=log(c)+H*log(n), dove H=[log(R/S)-log(c)]/log(n)

ExtMapBuffer1[j]=(MathLog(R/S))/(MathLog(HurstPeriod*a));

La costante c si è in qualche modo spostata su n invece che su R/S.

Perché la costante dei rendimenti del mercato dovrebbe essere improvvisamente due? Cos'è questo segreto che non conosco? ;)

Comunque, aiuta un ritardato, qualcuno ha un calcolo dell'esponente di Hurst in mql4 o qualsiasi altra cosa comune? grasn?

Caro Metaquotes, il calcolo dell'esponente di Hurst sarà implementato in MQL5?

 

Hirst ha scoperto la sua legge empirica studiando il Nilo. Molti altri fenomeni naturali si sono rivelati in seguito ben descritti da questa legge. Si scopre che le sequenze temporali di misure come la temperatura, il deflusso dei fiumi, le precipitazioni, lo spessore degli anelli degli alberi o l'altezza delle onde del mare possono essere studiate utilizzando la diffusione normalizzata o il metodo Hearst. Tali sequenze sono caratterizzate dall'esponente H, l'indice di Hurst.

Le sequenze temporali con H superiore a 0,5 sono riferite alla classe dei persistenti - mantenendo la tendenza esistente. Se gli incrementi sono stati positivi per qualche tempo nel passato, cioè c'è stato un aumento, continueranno ad aumentare in media. Così, per un processo con H > 0,5 una tendenza all'aumento nel passato significa una tendenza all'aumento nel futuro. Al contrario, una tendenza decrescente nel passato significa, in media, una continua tendenza decrescente nel futuro. Maggiore è l'H, più forte è la tendenza.

Con H=0,5 non c'è una tendenza significativa del processo e non c'è ragione di credere che ce ne sarà una in futuro.

Il caso di H < 0,5 è caratterizzato dall'antipersistenza - la crescita nel passato significa una diminuzione nel futuro e una tendenza al ribasso nel passato rende probabile un aumento nel futuro. E più piccolo è H, maggiore è la probabilità. In tali processi, dopo un aumento di una variabile di solito c'è una diminuzione, e dopo una diminuzione di solito c'è un aumento.

PS ...se qualcuno è interessato

Motivazione: