L'apprendimento automatico nel trading: teoria, modelli, pratica e algo-trading - pagina 196
Ti stai perdendo delle opportunità di trading:
- App di trading gratuite
- Oltre 8.000 segnali per il copy trading
- Notizie economiche per esplorare i mercati finanziari
Registrazione
Accedi
Accetti la politica del sito e le condizioni d’uso
Se non hai un account, registrati
Prenditi il tuo tempo. Indipendentemente dal metodo di clustering. Fare un solo passaggio. Rifinite alcune osservazioni. Fallo di nuovo. Confrontare i risultati.
risultati. Sviluppare un metodo per ulteriori azioni. Altrimenti farete "grails" e poi vi chiederete perché non funziona))))
Stavo pensando di fare un overshoot totale, se inizialmente ce ne fossero 500, poi alla fine potrebbe risultare che un buon modello ne terrà conto solo per 5
ed è tutto quello che terrò...
Se cercate i modelli come mytarmailS, scorrendo per barra, ogni modello conterrà informazioni su quanto può essere l'intervallo dei valori su ogni barra. Più modelli - l'intervallo più piccolo sarà assegnato a ogni barra.....................
Il feed di dati a finestra scorrevole è solo il mio stile di feed di dati e niente di più, buono o cattivo, non so, penso che sia lo stesso di tutti gli altri...
Ma non ha niente a che vedere con l'approccio che ho spiegato...
Questo approccio permette di raggruppare ed estrarre quei pochi percento di dati utili che i MO convenzionali non possono...
potete tranquillamente prendere i vostri predittori come li alimentate nella vostra rete, raggrupparli (ciascuno) ed eseguirli attraverso l'algoritmo che ho descritto
In parole povere, perché una particolare finestra con nuovi dati rientri in qualsiasi modello trovato in precedenza, deve rientrare in tali vincoli veritici inerenti a ciascun modello.
Beh, dipende da quanto vuoi insegnare al modello, se vuoi insegnare debolmente e non fare molti cluster allora le figure nella testa del modello saranno smussate e quel difetto che dici teoricamente dovrebbe scomparire...
Ecco come il modello vede una serie di prezzi di 50 valori raggruppati in 49 cluster
codice...
plot(price,t="l")
# делаем скользящее окно (50 знач) через матрицу хенкеля
hankel <- function(data, r=50) {
do.call(cbind,
lapply(0:(r-1),function(i) { data[(i+1):(length(data)-(r-1-i))]}))}
price <- hankel(price)
# скалирую, центрирую, в общем нормализирую каждую строчку в матрице
price <- t(apply(price,1,function(x){scale(x,center = T,scale = T)}))
# запускаем пакет с кластеризацыей, в дан. случ с кохоненом
# хорошый мануал
#https://cran.r-project.org/web/packages/SOMbrero/vignettes/doc-numericSOM.html
install.packages("SOMbrero")
library(SOMbrero)
# тренируем модель, с матрицей 7 х7 те 49 кластеров
model <- trainSOM(price, dimension=c(7,7), verbose=T)
plot(model,what="prototypes",type="lines",print.title=T)
Beh, dipende da quanto vuoi allenare il modello, se ti alleni debolmente, non fai molti cluster, allora le forme nella testa del modello saranno abbastanza smussate e l'inconveniente che dici teoricamente dovrebbe scomparire...
Ecco come il modello vede una serie di prezzi di 50 valori che sono raggruppati in 49 cluster
codice...
plot(price,t="l")
# делаем скользящее окно (50 знач) через матрицу хенкеля
hankel <- function(data, r=50) {
do.call(cbind,
lapply(0:(r-1),function(i) { data[(i+1):(length(data)-(r-1-i))]}))}
price <- hankel(price)
# скалирую, центрирую, в общем нормализирую каждую строчку в матрице
price <- t(apply(price,1,function(x){scale(x,center = T,scale = T)}))
# запускаем пакет с кластеризацыей, в дан. случ с кохоненом
# хорошый мануал
#https://cran.r-project.org/web/packages/SOMbrero/vignettes/doc-numericSOM.html
install.packages("SOMbrero")
library(SOMbrero)
# тренируем модель, с матрицей 7 х7 те 49 кластеров
model <- trainSOM(price, dimension=c(7,7), verbose=T)
plot(model,what="prototypes",type="lines",print.title=T)
Vo. L'ho fatto anche molto tempo fa. Kohonen è una cosa interessante. Ma ricordate che chiamarlo algoritmo di clustering non è corretto. È un algoritmo di convoluzione. E il clustering viene poi fatto sullo spazio bidimensionale risultante...
Grazie, non lo sapevo.
Ma è possibile usare il modello di uscita come un cluster, vero?
[1] 7 7 7 7 7 7 7 7 6 6 6 5 5 4 4 3 3 2 2 1 1 1 1 1 8 15 15 22 22 29 36
[32] 43 43 43 43 43 43 43 44 44 45 45 45 46 46 46 46 47 47 47 47 48 48 48 49 42 35 35 28 28 21 21
[63] 21 21 21 21 21 21 21 21 21 14 14 14 7 7 7 7 7 7 7 6 5 4 3 3 2 1 1 1 1 1 1
[94] 8 8 15 22 22 29 36
Grazie, non lo sapevo.
Ma si può usare l'output di un modello come cluster, vero?
[1] 7 7 7 7 7 7 7 7 6 6 6 5 5 4 4 3 3 2 2 1 1 1 1 1 8 15 15 22 22 29 36
[32] 43 43 43 43 43 43 43 44 44 45 45 45 46 46 46 46 47 47 47 47 48 48 48 49 42 35 35 28 28 21 21
[63] 21 21 21 21 21 21 21 21 21 14 14 14 7 7 7 7 7 7 7 6 5 4 3 3 2 1 1 1 1 1 1
[94] 8 8 15 22 22 29 36
Sì, certo che puoi... È essenzialmente un'aggregazione di vettori simili in queste cellule.
Può essere così (l'ho fatto io stesso al lavoro e so quello che dico). Ho n milioni di voci. Il vettore degli input è lungo un paio di centinaia. Voglio fare dei cluster, ma non so prima quanti cluster ci sono. Nessun algoritmo può elaborare una tale matrice di dati su un computer ordinario. Quindi, prima collasso lo spazio di input e faccio una griglia di, per esempio, 50*50. Il risultato sono 2500 rappresentanti tipici della popolazione... Su un tale array, il mio computer tira agnes (clustering gerarchico). Costruisce una matrice di vicinanza di tutti a tutti...
E si scopre che io raggruppo questi 2500 in, diciamo, 10 cluster e la metrica di aggregazione è buona.
Sì, certo che puoi... C'è essenzialmente un'aggregazione di vettori simili in quelle cellule.
Potrebbe essere il caso (l'ho fatto io stesso al lavoro e so quello che dico). Ho n milioni di voci. Il vettore degli input è lungo un paio di centinaia. Voglio fare dei cluster, ma non so prima quanti cluster ci sono. Nessun algoritmo può elaborare una tale matrice di dati su un computer ordinario. Quindi, prima collasso lo spazio di input e faccio una griglia di, per esempio, 50*50. Il risultato sono 2500 rappresentanti tipici della popolazione... Su un tale array, il mio computer tira agnes (clustering gerarchico). Costruisce una matrice di vicinanza di tutti a tutti...
E si scopre che io raggruppo questi 2500 in, diciamo, 10 cluster e la metrica di aggregazione è buona.
nel manualehttps://cran.r-project.org/web/packages/SOMbrero/vignettes/doc-numericSOM.html
sotto
Costruire super classi dalla SOM risultante
esattamente quello di cui stai parlando
Per coloro che vogliono sapere cosa è veramente il mercato...
guarda dai vecchi video a quelli nuovi....
https://www.youtube.com/channel/UCsdK6s9i_I0NEMvis6wXhnQ/featured
non sembra difficile, ma programmarlo? per me non è ancora possibile...
Suggerisco di discutere come codificare tali approcci per MoD o semplicemente codificarli
Per informazioni sul linguaggio R e la nuova MetaTrader 5 build 1467:
Distribuzioni statistiche in MQL5 - prendere il meglio da R e renderlo più veloce
Molte nuove funzioni matematiche e statistiche simili a R saranno aggiunte nelle prossime versioni. Questo permetterà più calcoli e visualizzazioni direttamente in MetaTrader 5.Puoi aggiornare alla 1467 dal server MetaQuotes-Demo.