Dalla teoria alla pratica - pagina 336

 
Alexander_K2:

Ultimo post per oggi.

Quindi. La domanda più scottante che Novaja ha fatto una volta:

Perché convertire l'attuale flusso di tick, che è di fatto un flusso Erlang, in un flusso esponenziale, per poi tornare allo stesso flusso, ma già chiaramente distorto?

Sono d'accordo - qui è stato fatto un errore. Si dovrebbe lavorare con il flusso di zecche esistente ed eseguire ulteriori trasformazioni su questo flusso naturale, non artificiale.

Quindi, l'algoritmo di trasformazione si presenta come segue:

1. prendiamo il flusso di tick iniziale ma leggiamo invece ogni secondo tick - guardiamo le distribuzioni ottenute per intervalli di tempo e incrementi.

2. ... ogni terza spunta viene letta - guardiamo le distribuzioni.

3. ...

Finché la distribuzione degli intervalli di tempo acquisisce un flusso Erlang chiaro e pronunciato che soddisfa le formule della funzione di densità di probabilità, e la distribuzione degli incrementi si avvicina sempre più a una distribuzione normale.

Questo è quello che farò, e vi farò sapere i risultati.

Grazie per l'attenzione.

questo è solo l'inizio di anni di ricerche dolorose, basate su ipotesi e con molti due punti

e le conclusioni sono come un graal...

è come un graal...

 
Alexander_K2:

Ultimo post per oggi.

Quindi. La domanda più scottante che Novaja ha fatto una volta:

Perché convertire l'attuale flusso di tick, che è di fatto un flusso Erlang, in un flusso esponenziale, per poi tornare allo stesso flusso, ma già chiaramente distorto?

Sono d'accordo - qui è stato fatto un errore. Si dovrebbe lavorare con il flusso di zecche esistente ed eseguire ulteriori trasformazioni su questo flusso di origine naturale, non artificiale.

Quindi, l'algoritmo di trasformazione si presenta come segue:

1. prendiamo il flusso di tick iniziale ma leggiamo invece ogni secondo tick - guardiamo le distribuzioni ottenute per intervalli di tempo e incrementi.

2. ... ogni terza spunta viene letta - guardiamo le distribuzioni.

3. ...

Finché la distribuzione degli intervalli di tempo acquisisce un flusso Erlang chiaro e pronunciato che soddisfa le formule della funzione di densità di probabilità, e la distribuzione degli incrementi si avvicina sempre più a una distribuzione normale.

Questo è quello che farò, e vi farò sapere i risultati.

Grazie per l'attenzione.

Leggendo ogni 2°, poi 3° e così via ogni n-esimo tick si ottiene effettivamente un grafico delle gamme di prezzo di chiusura.

E le distribuzioni di questo grafico le ho già riempite.

All'inizio avrete il picco centrale che diminuisce, comincerà a sfocare più vicino alla normalità e poi la distribuzione diventerà bimodale.

Per capire il processo bisogna studiarlo ai bordi e le misure dei bordi sono che con n=1 ci si avvicina a una distribuzione log-normale e con l'aumento di n vicino a n=100 si ha una distribuzione bimodale. Questo significa che la distribuzione è sempre stata bimodale, è solo che a causa della discrepanza a piccoli n si sovrappongono e il quadro non è chiaro.

Quindi la tua ricerca è un'invenzione della bicicletta.

 
Yuriy Asaulenko:

No, non è così che si vende un elefante.

A_K2 è caratterizzato da una completa mancanza di approccio sistematico e di scavo nei dettagli. Quali dettagli quando non c'è una visione d'insieme?

Inoltre.

Vorrei sinceramente che A_K2 producesse qualcosa che funzioni davvero. Tuttavia, a giudicare dai suoi post, anche questa volta sarà un colpo a vuoto.

Il progresso, la scienza e la tecnologia sono sempre passati da forme semplici (descrizioni) a forme più complesse. E, bisogna dirlo, già quelli semplici funzionavano abbastanza bene.

Se non hai mai progettato un'auto, non c'è la possibilità di iniziare con una Mercedes. Dovresti iniziare con qualcosa di semplice, qualcosa come Zhiguli - i principi sono gli stessi della Mercedes, ma tutto è molto più semplice. Quando il tuo Zhigul comincia a muoversi, puoi migliorare, modernizzare, complicare e portare al livello della Mercedes. Ricordate come erano le auto coreane 15 anni fa: non potete non piangere.

Sembra che A_K2 abbia di nuovo iniziato a progettare Mercedes). Potrebbe essere costruita almeno Zhigul per 4 mesi precedenti - non ha bisogno di alcuna scienza per progettarla, e le soluzioni tecniche sono sufficienti).

 
Alexander_K2:

Devi lavorare con il flusso di zecche che hai e fare ulteriori trasformazioni su questo flusso naturale, non su uno artificiale.

Vi ho già scritto su questo, ma a quanto pare la mia voce non è sufficiente.
I suoi "veri tic" sono qualcosa di insolito. Non so cosa ci sia dietro quel "DDE", ma non è affatto la spazzatura a casaccio che il forex dilling dà di solito. Almeno le zecche sono 10 volte meno frequenti del solito, il che è già allarmante. La prima tasca dell'istogramma dovrebbe essere ~200ms, non un secondo.

Si prega di mettere in csv un paio di migliaia di zecche ricevute per ultime, nessun diradamento, nessun riempimento di spazi vuoti con valori passati, ma solo i prezzi che sono venuti. Forse qualcuno può usarli e confermare che questi valori sono molto più accettabili per il trading del solito. E poi forse l'intelligenza collettiva in questo thread suggerirà come fare un graal con loro in una dozzina di righe di codice mql.

 
Alexander_K2:

E non devi convertire nulla? Non ci credo!!!!!!!! Non è interessante.

Il principio dell'elaborazione dei grandi dati è sempre quello di lavorare con dati grezzi che hanno la massima informazione, ma di aggiungervi diverse metriche, o di rimpicciolirli senza perdere informazioni.

Se si inizia a mischiare le informazioni, è ovvio che il valore e l'adeguatezza di tali algoritmi si abbassa immediatamente.

 
Alexander_K2:

Ma sei mesi fa abbiamo discusso che, dato che diversi broker hanno diversi flussi di tick, la priorità è quella di portarli in una singola vista universale. No?

Uno non contraddice l'altro.

Una visione universale non significa che sia necessario portarli allo stesso flusso di tic...
 

Grazie, ecco un confronto delle distribuzioni dei guadagni e delle autocorrelazioni per gli ultimi 1000 valori delle offerte di audcad. La riga superiore è quella delle tue zecche. La riga inferiore è quella che si trova nel terminale. C'è una differenza, ma non posso dire dai grafici cosa sia meglio. Mi piace che il picco dell'istogramma non sia abbreviato come nel terminale.

Alcuni test di stazionarietà:

Le tue zecche sono.

> Box.test(pricesDiff, lag=20, type="Ljung-Box")

        Box-Ljung test

data:  pricesDiff
X-squared = 39.466, df = 20, p-value = 0.005832

> adf.test(pricesDiff, alternative = "stationary")

        Augmented Dickey-Fuller Test

data:  pricesDiff
Dickey-Fuller = -11.556, Lag order = 9, p-value = 0.01
alternative hypothesis: stationary

> kpss.test(pricesDiff)

        KPSS Test for Level Stationarity

data:  pricesDiff
KPSS Level = 0.44326, Truncation lag parameter = 7, p-value = 0.05851


E quelli del terminale:

        Box-Ljung test

data:  pricesDiff
X-squared = 29.181, df = 20, p-value = 0.08426

> adf.test(pricesDiff, alternative = "stationary")

        Augmented Dickey-Fuller Test

data:  pricesDiff
Dickey-Fuller = -10.252, Lag order = 9, p-value = 0.01
alternative hypothesis: stationary

> kpss.test(pricesDiff)

        KPSS Test for Level Stationarity

data:  pricesDiff
KPSS Level = 0.3404, Truncation lag parameter = 7, p-value = 0.1


Il p-value nel tuo test di Box-Ljung è di un ordine di grandezza inferiore, il che è bello.


E soprattutto, le tue zecche sono un processo con memoria, è molto poco marcato. Non so come esprimerlo in numeri, ma nel mio modello le tue zecche sono più facili da prevedere di quelle normali.


Mi sto chiedendo se ci sono altri test per valutare la prevedibilità?

 

Distanze tra i tick dal file di Alexander 01AUDCAD_Real 14400 (incrementi di 1 secondo)


 
Alexander_K2:

Se questo è il caso, allora ovviamente tutti dovrebbero lavorare in un flusso discreto di citazioni come il mio e basta. Non è così?

È quello che pensavo anch'io un mese fa. Dato che avevi una distribuzione logaritmica (o pascal), volevo ottenerne una anch'io assottigliando per ottenere bene. Dopo un paio di settimane e provando "cambierò p a 0,71 invece di 0,72 e andrà bene". - Non ho mai capito bene, è tutto un metro, non una scienza.

La distribuzione dei guadagni di prezzo e le pause di tempo sono solo conseguenze. La cosa più importante è ottenere un processo stazionario non markoviano. E più è stazionario e non markoviano, meglio è. Penso che questa sia la prima trasformazione necessaria con il requisito della stazionarietà non markoviana e non importa quali distribuzioni produce.
Non ho idea di come ottenere questa stazionarietà non markoviana, ma sembra il modo giusto.

Poi per una serie così diradata si può tentare di fare una seconda conversione secondo la strategia di trading. Come ottenere una gamma di ritorni, come volevi per il tuo modello. Qui la trasformazione dipende dalla vostra strategia, potete creare delle caratteristiche e allenare il neurone invece del secondo diradamento.


p.s. -"stazionarietà non markoviana" è un nome profano puramente personale per questa proprietà. Nella scienza probabilmente si chiama in modo diverso.

 
Novaja:

Distanze tra i tic dal file di Alexander 01AUDCAD_Real 14400 (discrezione di 1 sec.)

A giudicare dal grafico di un paio di pagine fa - il picco si è spostato da 0 a 1. Credo che dipenda dalla coppia scambiata (audcad e cadjpy)


Alexander_K2:

Penso che sia una distribuzione di Pascal con r=2, p=0,5, q=0,5

Ho provato a disegnare la distribuzione di Pascal con tali parametri in R, non ha coinciso. Ma ci sono altre notazioni al posto di r,p,q, forse ho sbagliato qualcosa.