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

 
Aleksey Vyazmikin:

Questo è il modo in cui le caratteristiche saranno generate - dobbiamo preparare un costruttore sotto forma di regole di base.

Per esempio, descrivi una volta come si comporta un prezzo in un canale e poi cambia solo canale, e così via.

Ho capito che questo fa parte delle regole, se è così, può essere implementato.

 
Aleksey Vyazmikin:

Durante il clustering, molte righe sono state assegnate a diverse aree, ed è stata generata una mappa, che presumo possa essere chiamata tramite:

E poi pesare ogni riga e assegnarla all'uno o all'altro centro di cluster. Non capisco proprio come una singola riga sia pesata...


Questa mappa è chiamata o prototipi o centri di cluster, i nuovi dati vengono confrontati con ogni centro e ottiene l'etichetta del centro più vicino

Per ogni funzione, c'è un aiuto incorporato, basta scrivere "?" nella console e nominare la funzione come "?Kmeans".

ci sono sempre esempi in fondo.

come prevederehttps://stackoverflow.com/questions/53352409/creation-prediction-function-for-kmean-in-r


Ho deciso di guardare le inversioni di mercato significative. Significative inversioni a U come obiettivo. Pensavo che sarebbe stato un caos, ma no.

Qual è la regola per classificare un'inversione come significativa?

Ginocchio a zig zag.


Quindi, molto interessante. Grazie per il suggerimento.

Puoi condividere il codice for dummies?

Vladimir ha pubblicato il codice. Potresti aver bisogno di imparare le basi, altrimenti potresti avere troppe domande e aggiungere poco aiuto.


Grazie, sono riuscito a scaricare il clustering.

.

 
Aleksey Vyazmikin:

Quindi in che modo il tuo metodo è migliore del mio - raccogliere foglie è essenzialmente nuovi predittori derivati da dati esistenti. Hai solo bisogno di costruire alberi non solo usando il confronto, ma anche la trasformazione e la combinazione dei livelli dell'obiettivo, in generale puoi implementare questo sulla base di un albero regolare e trascinare le foglie da lì.

Se il vostro metodo può generare tali regole come ho scritto a Maxim, niente.

 
mytarmailS:

Se il vostro metodo può generare tali regole come ho scritto a Maxim, allora niente

Il mio metodo permetterà di generare non in modo casuale, ma in modo significativo - più rendimento, per così dire, ma basato su un albero regolare.

In generale voglio dire che possiamo aggiungere una serie di procedure di trasformazione all'algoritmo dell'albero per l'addestramento, come il confronto di un predittore con un altro, la moltiplicazione, la divisione, l'aggiunta, la sottrazione e altre operazioni. Il punto è che durante la costruzione genetica dell'albero la variante sarà selezionata non a caso, ma dando qualche descrizione del campione, il che ridurrà il periodo di ricerca della soluzione. Gettando via predittori casuali dal campione saremo in grado di costruire diversi alberi tenendo conto di queste trasformazioni.

 
Rorschach:
Non hai trovato da nessuna parte degli studi su come normalizzare al meglio gli input: incrementale, sottrazione ma, finestra scorrevole?

Cosa intende per "normalizzare"? Portare la distribuzione della variabile il più vicino possibile alla normalità?

 
Aleksey Vyazmikin:

Il mio metodo permetterà di generare non in modo casuale, ma in modo significativo - più rendimento, per così dire, ma basato su un albero regolare.

In generale, voglio dire che possiamo aggiungere una serie di procedure di trasformazione all'algoritmo dell'albero durante la formazione, come il confronto di un predittore con un altro, la moltiplicazione, la divisione, l'aggiunta, la sottrazione, altre azioni. Il punto è che durante la costruzione genetica dell'albero la variante sarà selezionata non a caso, ma dando qualche descrizione del campione, il che ridurrà il periodo di ricerca della soluzione. Gettando fuori i predittori dal campione a caso, saremo in grado di costruire diversi alberi tenendo conto di queste trasformazioni.

leggete la regola che ho dato come esempio e provate a costruire un generatore di regole di questo tipo nell'albero

 
Vladimir Perervenko:

Cosa intende per "normalizzare"? Portare la distribuzione di una variabile il più vicino possibile alla normalità?

Portare l'intervallo della variabile a +-1

 
Vladimir Perervenko:

In continuazione di una conversazione personale

la tua versione

umap_transform(X = X[tr,], model = origin.sumap, n_threads = 4 L, 
               verbose = TRUE) -> train.sumap
head(train.sumap)
[1,] 22.196741
[2,] 14.934501
[3,] 17.350166
[4,]  1.620347
[5,] 17.603270
[6,] 16.646723

variante semplice

train.sumap <- umap_transform(X = X[tr,], model = origin.sumap, n_threads = 4 L, 
               verbose = TRUE)
head(train.sumap)
[1,] 22.742882
[2,]  7.147971
[3,]  6.992639
[4,]  1.598861
[5,]  7.197366
[6,] 17.863510

Come puoi vedere i valori sono abbastanza diversi, puoi controllarli tu stesso


Nel mio modello

n_components = 1

quindi solo una colonna, ma non ha molta importanza.

===================UPD

Amico, sono diversi ogni volta che si esegue umap_tranform, non dovrebbe essere così

 
mytarmailS:

Leggete la regola che ho dato come esempio e provate a costruire questo tipo di generatore di regole nell'albero.

Qual è il problema - creare componenti all'inizio dei quali le regole saranno impilate.

 
Aleksey Vyazmikin:

Qual è il problema - creare componenti all'inizio per creare le regole.

Non lo so, non riesco a metterci il dito.