Aprendizado de máquina no trading: teoria, prática, negociação e não só - página 839

 

No início, quando eles tinham apenas algumas centenas de pessoas oferecendo seus prognósticos, tudo estava bem, eu até fui pago por lugares. Havia pelo menos mais duas pessoas no fórum que também mostraram grandes resultados com prêmios.

Eu tive pelo menos mais duas pessoas mostrando grandes resultados no fórum, também. Então eles começaram a enviar todo tipo de lixo em vez de modelos e todo tipo de trapaceiros apareceram com centenas de relatos que estupidamente fizeram a previsão. Os administradores estavam fartos deste circo e tornaram-no muito simples - "Se queres um prémio em dinheiro, deixa um depósito. Se o modelo for falso, e o depósito desaparecer, e os lucros não o serão.
Na minha opinião, os administradores tomaram o caminho mais fácil para eles. Eles não aprenderam como identificar modelos potencialmente bons, ou mesmo preparar recursos, e transformaram tudo em uma loteria. Eu faria as coisas de forma diferente se fosse eles.

 
Dr. Trader:

No início, quando eles tinham apenas algumas centenas de pessoas oferecendo seu prognóstico, tudo estava bem, eu até fui pago por lugares. Há pelo menos duas outras pessoas no fórum que também mostraram grandes resultados com prêmios.

Foi bastante fácil para os administradores numéricos seleccionar os melhores resultados e negociar com eles. Eles não estão satisfeitos com a forma como estão quando compram uma entrada, ou quando não querem dar uma entrada. Os administradores estavam fartos de todo este circo e tornaram tudo muito simples - "Se você quer um prêmio em dinheiro, deixe um depósito. Se o modelo for falso, e o depósito desaparecer, e os lucros não o serão.
Na minha opinião, os administradores tomaram o caminho mais fácil para eles. Eles não aprenderam como identificar modelos potencialmente bons, ou mesmo preparar recursos, e transformaram tudo em uma loteria. Eu fá-lo-ia de forma diferente se fosse eles.

Talvez você esteja certo, mas agora IMHO tudo muito arbitrário, mudando logos como estranho, então estavam mais da metade abaixo (melhor) do que aleatório (0,96315) na Vida, agora de repente quase tudo se torna seu (pior) aleatório ... curto IMHO arbitrário, não confio neles para "correr riscos" quando não se pode verificar nada, e toda a ideia é parva, a classificação em si não é um assunto para chelenges, não faz sentido delegar, outra coisa é fazer fichas e alvos a partir de dados brutos...

 

Não vou deixar este ramo cair do topo da lista.

Cavalheiros da rede neural - as pessoas comuns estão esperando o Graal de vocês. Não estragues tudo.

 

Experimentei com oUniformForest aleatório - não gostei.

A importância dos preditores continua pulando para cima e para baixo na lista.

Aqui está um exemplo reprodutível dos dados do artigo https://www.mql5.com/ru/articles/4227 :
Inicie o RStudio, baixe o arquivo Cotir.RData do GitHub/Parte_I, com citações obtidas do terminal, e o arquivo FunPrepareData.R com funções de preparação de dados doGitHub/Parte_IV.
Então:

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

Aqui a importância global dos preditores é calculada 4 vezes sobre os mesmos dados. O resultado é quase aleatório:

----------------------------------------------------------------------------------------------
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 péslm 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

Para os outros 2 pacotes testados, a importância dos preditores é determinada da mesma forma nas prévias execuções.

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

Experimentei com oUniformForest aleatório - não gostei.

A importância dos preditores continua pulando para cima e para baixo na lista.

Eu não vejo isso.

Mas não é essa a questão, a questão é este princípio.

A importância dos preditores, que é definida neste modelo e em outros modelos, é alguma característica do uso de um determinado preditor em um determinado modelo.

E você pode colocar o problema como a importância do preditor para a variável alvo, não em um modelo em particular.

Estas são as funções do caret são exactamente essas. Você pode usá-los para gerar algum conjunto geral de preditores que são "úteis" para a variável alvo. Há uma nuança muito interessante: se movermos a janela e re-selecionarmos em preditores já selecionados, por exemplo, relacionados a um algoritmo em particular, este conjunto mudará constantemente.

Em geral, você precisa de uma resposta para a pergunta: por que você precisa de previsão de importância? Para seleção em um algoritmo particular? Portanto, o algoritmo já expressou a sua opinião sobre isto e informou-o sobre o assunto. Por isso, os números que mostra não são nada, sejam eles alterados ou não é irrelevante. O que importa é a predição pelo modelo fora da amostra de treinamento e a relação da lista de preditores com o sucesso da predição fora da amostra.

 
elibrarius:

Experimentei com oUniformForest aleatório - não gostei.

Tente fazer o upload dos seus preditores aqui

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

e depois ver suas importações em uma matriz gerada automaticamente, após o treinamento do agente

Eu tenho +- resultados no meu até agora, mas ainda há espaço para melhorias

penso que é inútil ajustar os objectivos aos preditores num mercado não estacionário, a importância também muda estocasticamente

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

Eu não vejo isso.

Mas não é essa a questão, a questão é este princípio.

A importância dos preditores, que é definida neste modelo e em outros modelos, é alguma característica do uso de um determinado preditor em um determinado modelo.

E você pode colocar o problema como a importância do preditor para a variável alvo, não em um modelo em particular.

Estas são as funções do caret são exactamente essas. Você pode usá-los para gerar algum conjunto geral de preditores que são "úteis" para a variável alvo. Dito isto, há uma nuança muito interessante: que se movermos a janela e selecionarmos novamente nos preditores já selecionados, por exemplo, relacionados a um algoritmo em particular, este conjunto mudará constantemente.

Em geral, você precisa de uma resposta para a pergunta: por que você precisa de previsão de importância? Para seleção em um algoritmo particular? Portanto, o algoritmo já expressou a sua opinião sobre isto e informou-o sobre o assunto. Por isso, os números que mostra não são nada, sejam eles alterados ou não é irrelevante. O que importa é a predição pelo modelo fora da amostra de treinamento e a relação da lista de preditores com o sucesso da predição fora da amostra.

sementes - simplesmente consertaria um desses conjuntos aleatórios. Mas ainda assim seria aleatório, embora reprodutível. Penso que a questão é que os pesos de importância (3ª coluna) diferem apenas 3% entre o mínimo e o máximo, por isso com pequenas mudanças na floresta eles saltam facilmente sobre a lista. Em outros pacotes estes pesos diferem por tempos ou ordens de magnitude.

A importância dos preditores é necessária para eliminar os não importantes e ruidosos, e para usá-los em NS ou em conjunto.

Neste conjunto de dados - degradando muito o resultado do treinamento, eu o uso como um marcador - se ele não desistir então o pacote de seleção do preditor - falhou.

 
Maxim Dmitrievsky:

Tente fazer o upload dos seus preditores aqui

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

e depois ver suas importações na matriz já gerada automaticamente, após o treinamento do Agente

Eu tenho +- resultados no meu até agora sobre o OOS, mas ainda há espaço para melhorias

Acho que é inútil apanhar os alvos para os preditores num mercado não estacionário porque os impatrões mudam estocasticamente.

Oh - novo artigo. Interessante...
 
elibrarius:
Oh - novo artigo. Interessante...

Sim, o problema da seleção de alvos é eliminado com esta abordagem, mas você precisa aprender como fazer revisões significativas para o agente

funciona bem em qualquer preditor, mas para que funcione no OOS, você precisa fazer uma bagunça com a seleção deles

 
Alexander_K2:

Não vou deixar este ramo cair do topo da lista.

Cavalheiros da rede neural - as pessoas comuns estão esperando o Graal de vocês. Não estragues tudo.

Eu próprio fiquei preocupado quando o perdi :-)