L'apprendimento automatico nel trading: teoria, modelli, pratica e algo-trading - pagina 131

 

È stata rilasciata la versione 10 del classificatore ternario di jPrediction

La validazione incrociata è implementata nella nuova versione.

Grazie alla convalida incrociata, la capacità di generalizzazione su OOS rispetto alla versione 9 è migliorata notevolmente, soprattutto su dati non stazionari. Allo stesso tempo, la capacità di generalizzazione secondo i risultati dei test su diverse parti del campione, che è data come caratteristiche del modello nella versione 9 e 10, è rimasta quasi invariata.

Poiché i cambiamenti non hanno interessato l'interfaccia utente, le istruzioni per gli utenti della versione 9 rimangono valide. I link per scaricare le nuove versioni di jPrediction e il suo codice sorgente si trovano nelle istruzioni.

 

Scrittore di Awl:
1) confronta semplicemente le due serie temporali per valori assoluti, cioè è necessario uno spostamento e una scala di pre-normalizzazione sull'asse verticale, e dipende molto dalla particolare implementazione.

2) Per esempio, qui https://www.mql5.com/ru/code/10755 prende 2 pezzi di lunghezza fissa per il confronto

3) e non tiene conto che uno di essi può essere più lungo, l'altro più corto

4), e la quantità di calcolo può essere notevolmente ridotta, ecc. Possiamo parlare di clustering con parametri specifici di DTW - non solo il "grado di somiglianza" di due frammenti può essere calcolato, ma anche il rapporto delle scale orizzontali.

1) Bene, prima di un confronto di similarità di due serie tramite l'algoritmo DTW, la normalizzazione è ovviamente fatta solo nel modo usuale... cioè sostituire i valori assoluti dei prezzi nell'intervallo diciamo da 0 a 1, cosa intendi per normalizzazione dellospostamento e della scala? spiega per favore

2) Grazie per il link, sono davvero scioccato a dir poco, ho esattamente la stessa idea dell'autore, ho fatto esattamente la stessa ricerca, ho fatto esattamente lo stesso percorso evolutivo, dalla correlazione regolare al DTW, mi fa venire la pelle d'oca ... stavamo facendo la stessa cosa, pensando alla stessa cosa solo in momenti diversi in luoghi diversi, formicolio...

3) Sì non preso in considerazione, anche se sarebbe corretto considerare, ma immagino perché l'autore non ha implementato, il fatto è che se si inizia a pensare più profondo tipo: "ma come implementarlo" poi viene fuori un sacco di domande che non hanno risposte ...

perché non è solo la ricerca di somiglianze con DTW a segmenti di lunghezza fissa, come ho fatto nel clustering o l'algoritmo dell'autore di questo articolo, ma è molto più complicato...

Ecco alcune domande che vengono fuori

1. Come confrontare la somiglianza del pattern di prezzo attuale con i pattern storici, se non solo dobbiamo percorrere la storia e cercare la somiglianza, ma anche espandere/diminuire dinamicamente il pattern attuale e quello storico con cui ci stiamo confrontando?

2. come lottare con insufficiente potenza dedotta personalmente per DTW anche su lunghezza fissa di due sezioni non ho abbastanza potenza in pieno, e con la variante ( 1.) il carico aumenta migliaia di volte senza esagerare....

4) Come?

 
mytarmailS:

1. Puoi portare i valori della serie nell'intervallo [0;1], ma è meglio imho eliminare la componente costante sottraendo la media (MA) da ogni elemento, e dividendo ogni elemento per la deviazione standard. Il browser, un parassita del genere, ha distrutto parte del testo.

3-4. Se si esamina l'essenza dell'algoritmo, come viene riempita la matrice, molto diventerà chiaro. Confrontiamo due segmenti di uguale lunghezza, che hanno inizio e fine fissi. Possiamo fissare l'inizio e rendere la fine fluttuante, e introdurre una restrizione del fattore di scala da 0,5 a 2 nell'algoritmo - si otterrà DTW con vincoli. Il risultato non sarà uno ma due numeri, e questo ci darà un ulteriore predittore. Come ridurre la quantità di calcoli - trovare "punti singolari" (extrema), tirarli l'uno verso l'altro e quindi buttare fuori una gran parte dell'area della matrice, vedere i link per maggiori dettagli. Vedi anche wikipedia Dynamic Time Warping, sezione Riferimenti.

 
Alexey Burnakov:

Signori, un nuovo compito da parte mia:

Ecco un set di dati in formato .R: https://drive.google.com/open?id=0B_Au3ANgcG7CcjZVRU9fbUZyUkE

Ci sono circa 40.000 righe e 101 colonne nel set. La colonna più a destra è la variabile di destinazione. Sul lato sinistro ci sono 100 ingressi.

Vi suggerisco di provare a costruire un modello di regressione che preveda il valore della 101esima colonna in base alle 100 colonne rimanenti, sulle prime 20.000 osservazioni.

Sulle rimanenti 20.000+ osservazioni, il modello costruito dovrebbe mostrare un R^2 di almeno 0,5.

Poi rivelo il modo in cui i dati sono generati e do la mia soluzione.

L'indizio sono i dati delle serie temporali. L'input è di 100 campioni, predetto 1 avanti. Non si tratta di prezzi o quotazioni o dei loro derivati.

Alexei

Chi ci ha provato? Io e i miei colleghi vogliamo addestrare una convoluzione NS. C'è una mappatura in corso. Speriamo.

Una specie di applicazione non convenzionale del metodo. D'altra parte, presentiamo semplicemente una "immagine" unidimensionale come input e possiamo smazzare i "pixel" vicini e le loro varie interazioni.

 
Alexey Burnakov:

Chi ha provato? Io e i miei colleghi vogliamo addestrare una convoluzione NS. C'è una mappatura in corso. Lo speriamo.

Una specie di applicazione non convenzionale del metodo. D'altra parte, presentiamo semplicemente una "immagine" unidimensionale come input e possiamo smazzare i "pixel" vicini e le loro varie interazioni.

Quindi lasciate che i colleghi lo provino, o è debole?
 
Alexey Burnakov:

Io e i miei colleghi vogliamo addestrare una convoluzione NS. C'è una mappatura in corso. Lo speriamo.

Interessante, in attesa di impressioni...
 
mytarmailS:


1. Come possiamo confrontare la somiglianza del modello di prezzo attuale con i modelli storici, se non solo dobbiamo camminare attraverso la storia e cercare somiglianze, ma anche espandere/diminuire dinamicamente sia il modello attuale che quello storico con cui ci stiamo confrontando?


Che bisogno c'è di questo? Se un modello ha un'analogia nella storia, allora dovrebbe essere lo stesso in termini di durata. Almeno io cercavo sezioni commisurate quando ho fatto una ricerca di modelli.
 
Youri Tarshecki:
Perché un tale bisogno? Se un modello ha un'analogia nella storia, allora dovrebbe corrispondere anche nella sua durata. Almeno io cercavo sezioni proporzionali quando ho fatto una ricerca di modelli.

1) Beh, almeno perché nessun modello è esattamente lo stesso sul mercato,

2) e perché dtw offre una così grande opportunità

3) e perché tutti conosciamo il risultato della ricerca di modelli identici per taglia, te compreso... o mi sorprenderai? :)

 
Evento:
Quindi lasciate che i vostri colleghi facciano una prova, o è debole?
Dove vuoi arrivare, passeggero? Non vuoi provare, o a modo tuo. Sto lavorando al mio compito e sono interessato.
 
mytarmailS:
Interessante, in attesa delle impressioni...
Che altro direbbe? State aspettando i risultati?