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

 

All'inizio, quando avevano solo un paio di centinaia di persone che offrivano le loro prognosi, tutto andava bene, mi pagavano persino i posti. C'erano almeno altre due persone sul forum che hanno anche mostrato grandi risultati con i premi.

Ho avuto almeno altre due persone che hanno mostrato grandi risultati anche sul forum. Poi hanno cominciato a mandare ogni sorta di spazzatura al posto dei modelli e sono apparsi tutti i tipi di imbroglioni con centinaia di conti che stupidamente hanno brutalizzato le previsioni. Gli amministratori erano stufi di questo circo e l'hanno reso molto semplice - "Se vuoi un premio in denaro, lascia un deposito. Se il modello è fasullo, e il deposito andrà via, e i profitti non lo saranno.
Secondo me, gli amministratori hanno preso la strada più facile per loro. Non hanno imparato a identificare i modelli potenzialmente buoni, e nemmeno a preparare le caratteristiche, e hanno trasformato tutto in una lotteria. Io farei le cose in modo diverso se fossi in loro.

 
Ildottor Trader:

All'inizio, quando avevano solo un paio di centinaia di persone che offrivano le loro prognosi, tutto andava bene, mi pagavano persino i posti. Ci sono almeno altre due persone sul forum che hanno anche mostrato grandi risultati con i premi.

Era abbastanza facile per gli amministratori del numeraire selezionare i migliori risultati e fare trading su di essi. Non sono soddisfatti di come sono quando comprano una voce, o quando non vogliono dare una voce. Gli amministratori erano stufi di tutto questo circo e l'hanno reso molto semplice - "Se vuoi un premio in denaro, lascia un deposito. Se il modello è fasullo, e il deposito andrà via, e i profitti non lo saranno.
Secondo me, gli amministratori hanno preso la strada più facile per loro. Non hanno imparato a identificare i modelli potenzialmente buoni, e nemmeno a preparare le caratteristiche, e hanno trasformato tutto in una lotteria. Io farei diversamente se fossi in loro.

Forse hai ragione, ma ora IMHO tutto troppo arbitrario, cambiando i loghi come strano, poi sono stati più della metà sotto (meglio) di casuale (0.96315) sulla vita, ora improvvisamente quasi tutti diventano il tuo (peggio) casuale ... brevemente arbitrario IMHO, non mi fido di loro per "rischiare" quando non si può controllare nulla, e tutta l'idea è stupida, la classificazione stessa non è un soggetto per chelenges, non ha senso delegarla, un'altra cosa è fare chip e obiettivi dai dati grezzi...

 

Non lascerò che questo ramo cada fuori dal Top tier.

Signori della rete neurale - la gente comune sta aspettando il Graal da voi. Non rovinare tutto.

 

Sperimentato con randomUniformForest - non mi è piaciuto.

L'importanza dei predittori continua a saltare su e giù nella lista.

Ecco un esempio riproducibile sui dati dell'articolo https://www.mql5.com/ru/articles/4227 :
Avviare RStudio, scaricare il file Cotir.RData da GitHub/Part_I, con le citazioni ottenute dal terminale, e il file FunPrepareData.R con le funzioni di preparazione dei dati daGitHub/Part_IV.
Allora:

evalq({
  dt <- PrepareData(Data, Open, High, Low, Close, Volume)
}, env)

 prep <- caret::preProcess(x = env$dt[, -c(1,ncol(env$dt))], method = c("spatialSign"))
 x.train <- predict(prep, env$dt[, -c(1,ncol(env$dt))])#удалить время и класс
 x.train <- as.matrix(x.train,ncol=(ncol(env$dt)-1))
 
 y.train <- as.matrix(env$dt[, ncol(env$dt)],ncol=1)
 require(randomUniformForest)

ruf <- randomUniformForest( X = x.train,Y = y.train,mtry = 1, ntree = 300,threads = 2, nodesize = 2,  regression = FALSE)
ruf$forest$variableImportance

ruf <- randomUniformForest( X = x.train,Y = y.train,mtry = 1, ntree = 300,threads = 2, nodesize = 2,  regression = FALSE)
ruf$forest$variableImportance

ruf <- randomUniformForest( X = x.train,Y = y.train,mtry = 1, ntree = 300,threads = 2, nodesize = 2,  regression = FALSE)
ruf$forest$variableImportance

ruf <- randomUniformForest( X = x.train,Y = y.train,mtry = 1, ntree = 300,threads = 2, nodesize = 2,  regression = FALSE)
ruf$forest$variableImportance

Qui l'importanza globale dei predittori è calcolata 4 volte sugli stessi dati. Il risultato è quasi casuale:

----------------------------------------------------------------------------------------------
1 ftlm 9204 2 0.52 100.00 8
2 rbci 9197 2 0.52 99.92 8
3 stlm 9150 2 0.52 99.41 8
4 v.fatl 9147 2 0.51 99.38 8
5 v.rftl 9122 2 0.52 99.11 8
6 v.satl 9110 2 0.51 98.98 8
7 v.stlm 9096 2 0.51 98.82 8
8 v.rbci 9084 2 0.51 98.69 8
9 pcci 9082 2 0.52 98.68 8
10 v.rstl 9049 2 0.52 98.31 8
11 v.pcci 8980 2 0.51 97.57 8
12 v.ftlm 8953 2 0.52 97.28 8
----------------------------------------------------------------------------------------------

1 v.fatl 9130 2 0.51 100.00 8
2 ftlm 9079 2 0.52 99.45 8
3 v.rbci 9071 2 0.52 99.35 8
4 v.rftl 9066 2 0.52 99.30 8
5 stlm 9058 2 0.51 99.21 8
6 v.satl 9033 2 0.51 98.94 8
7 pcci 9033 2 0.51 98.94 8
8 v.stlm 9019 2 0.51 98.78 8
9 v.rstl 8977 2 0.51 98.33 8
10 rbci 8915 2 0.52 97.64 8
11 v.pcci 8898 2 0.51 97.46 8
12 v.ftlm 8860 2 0.51 97.04 8
----------------------------------------------------------------------------------------------

1 v.fatl 9287 2 0.51 100.00 9
2 stlm 9191 2 0.52 98.96 8
3 v.rbci 9172 2 0.52 98.76 8
4 v.rftl 9134 2 0.51 98.35 8
5 v.satl 9115 2 0.51 98.14 8
6 ftlm 9109 2 0.51 98.08 8
7 v.stlm 9072 2 0.51 97.69 8
8 v.rstl 9072 2 0.51 97.68 8
9 v.ftlm 9036 2 0.51 97.30 8
10 pcci 9014 2 0.52 97.05 8
11 rbci 9002 2 0.52 96.93 8
12 v.pcci 8914 2 0.51 95.98 8
----------------------------------------------------------------------------------------------

1 v.satl 9413 2 0.51 100.00 8
2 ftlm 9389 2 0.52 99.75 8
3 v.stlm 9371 2 0.51 99.55 8
4 v.rftl 9370 2 0.51 99.54 8
5 v.rbci 9337 2 0.51 99.19 8
6 v.pcci 9314 2 0.51 98.95 8
7 v.fatl 9311 2 0.52 98.91 8
8 stlm 9295 2 0.52 98.75 8
9 pcci 9281 2 0.51 98.60 8
10 v.rstl 9261 2 0.51 98.39 8
11 v.ftlm 9257 2 0.51 98.35 8
12 rbci 9238 2 0.52 98.14 8

Per gli altri 2 pacchetti testati, l'importanza dei predittori è determinata nello stesso modo sulle pre-serie.

Глубокие нейросети (Часть VI). Ансамбль нейросетевых классификаторов: bagging
Глубокие нейросети (Часть VI). Ансамбль нейросетевых классификаторов: bagging
  • 2018.03.01
  • Vladimir Perervenko
  • www.mql5.com
В предыдущей статье этой серии мы оптимизировали гиперпараметры модели DNN, обучили ее несколькими вариантами и протестировали. Качество полученной модели оказалось довольно высоким. Также мы обсудили возможности того, как можно улучшить качество классификации. Одна из них — использовать ансамбль нейросетей. Этот вариант усиления мы и...
 
elibrario:

Sperimentato con randomUniformForest - non mi è piaciuto.

L'importanza dei predittori continua a saltare su e giù nella lista.

Non lo vedo.

Ma non è questo il punto, il punto è questo principio.

L'importanza dei predittori, che è definita in questo modello e in altri modelli, è qualche caratteristica dell'uso di un particolare predittore in un particolare modello.

E si può porre il problema come l'importanza del predittore per la variabile obiettivo, non in un modello particolare.

Queste sono le funzioni di caret sono esattamente questo. Potete usarli per generare un insieme generale di predittori che sono "utili" per la variabile obiettivo. Detto questo, c'è una sfumatura molto interessante: se spostiamo la finestra e riselezioniamo nei predittori già selezionati, per esempio relativi a un particolare algoritmo, questo insieme cambierà costantemente.

In generale, avete bisogno di una risposta alla domanda: perché avete bisogno dell'importanza dei predittori? Per la selezione in un particolare algoritmo? Quindi l'algoritmo ha già espresso la sua opinione su questo e ti ha informato su di esso. quindi i numeri che mostri non sono assolutamente nulla, se cambiano o meno è irrilevante. Ciò che conta è la previsione del modello al di fuori del campione di addestramento e la relazione della lista dei predittori con il successo della previsione al di fuori del campione

 
elibrarius:

Sperimentato con randomUniformForest - non mi è piaciuto.

Prova a caricare i tuoi predittori qui

https://www.mql5.com/ru/articles/3856

e poi vedere le loro importazioni su una matrice generata automaticamente, dopo l'addestramento dell'agente

Ho +- risultati sul mio finora, ma c'è ancora spazio per migliorare

Penso che sia inutile aggiustare gli obiettivi ai predittori sul mercato non stazionario da soli, l'importanza cambia anche stocasticamente

Random Decision Forest в обучении с подкреплением
Random Decision Forest в обучении с подкреплением
  • 2018.04.12
  • Maxim Dmitrievsky
  • www.mql5.com
Random Forest (RF) с применением бэггинга — один из самых сильных методов машинного обучения, который немного уступает градиентному бустингу.  Случайный лес состоит из комитета деревьев решений (которые также называются деревьями классификации или регрессионными деревьями "CART" и решают одноименные задачи). Они применяются в статистике...
 
SanSanych Fomenko:

Non lo vedo.

Ma non è questo il punto, il punto è questo principio.

L'importanza dei predittori, che è definita in questo modello e in altri modelli, è qualche caratteristica dell'uso di un particolare predittore in un particolare modello.

E si può porre il problema come l'importanza del predittore per la variabile obiettivo, non in un modello particolare.

Queste sono le funzioni di caret sono esattamente questo. Potete usarli per generare un insieme generale di predittori che sono "utili" per la variabile obiettivo. C'è una sfumatura molto interessante: se spostiamo la finestra e riselezioniamo in predittori già selezionati, per esempio relativi a un particolare algoritmo, questo insieme cambierà costantemente.

In generale, avete bisogno di una risposta alla domanda: perché avete bisogno dell'importanza dei predittori? Per la selezione in un particolare algoritmo? Quindi l'algoritmo ha già espresso la sua opinione su questo e ti ha informato su di esso. quindi i numeri che mostri non sono assolutamente nulla, se cambiano o meno è irrilevante. Ciò che conta è la previsione del modello al di fuori del campione di addestramento e la relazione della lista dei predittori con il successo della previsione al di fuori del campione

seed - fisserebbe semplicemente uno di questi insiemi casuali. Ma sarebbe ancora casuale, anche se riproducibile. Penso che il punto sia che i pesi di importanza (3a colonna) differiscono solo del 3% tra il minimo e il massimo, quindi con piccoli cambiamenti nella foresta saltano facilmente sulla lista. In altri pacchetti questi pesi differiscono di volte o di ordini di grandezza.

L'importanza dei predittori è necessaria per eliminare quelli non importanti e rumorosi, e per usarli in NS o in ensemble.

In questo set di dati stlm - degrada molto il risultato dell'allenamento, lo uso come marker - se non cade allora il pacchetto di selezione dei predittori - ha fallito.

 
Maxim Dmitrievsky:

Prova a caricare i tuoi predittori qui

https://www.mql5.com/ru/articles/3856

e poi vedere le loro importazioni sulla matrice già generata automaticamente, dopo aver addestrato l'agente

Ho +- risultati sul mio finora sull'OOS, ma c'è ancora spazio per migliorare

Penso che sia inutile prendere gli obiettivi ai predittori su un mercato non stazionario perché gli impattern cambiano stocasticamente

Oh - nuovo articolo. Interessante...
 
elibrario:
Oh - nuovo articolo. Interessante...

Sì, il problema della selezione degli obiettivi viene eliminato con questo approccio, ma è necessario imparare a fare revisioni significative all'agente

Funziona bene su qualsiasi predittore, ma per farlo funzionare su OOS, è necessario fare un casino con la loro selezione

 
Alexander_K2:

Non lascerò che questo ramo cada fuori dal Top tier.

Signori della rete neurale - la gente comune sta aspettando il Graal da voi. Non rovinare tutto.

Ero preoccupato io stesso quando l'ho perso :-)