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

 
gobirzharf:

Não importa) Assim que um nadador aprende a nadar e começa a salpicar, chamando a atenção, ele terá imediatamente um peso de 200kg à volta do pescoço, e não há maneira de alguém descer)

Não estás a fazer sentido nenhum.

 
mytarmailS:

Você pode facilmente ...

Mas que tipo de erro você tem na criação dos dados, você não pode ter estes resultados ...

Parece não haver erro. Não o vejo de vista, só escrevi o que tinha em mente no arquivo.

Pergunta ao Maxim, quando estava a prever o sinal + - -, estava a treinar num número que estava no ficheiro? Ou na fila 0 - 1 normalizada?

 
Evgeniy Chumakov:


É um algoritmo complicado? Pode ser implementado imediatamente em mql4/5 ou o que estou a perguntar é um disparate?

é possível

Há, digamos, uma pilha bem estabelecida de tecnologias. Você pode ir direto para mt5 ou pode começar com python e depois exportá-lo para mt5. Você pode começar com Python, mas negocie no MT5. Em qualquer caso, você pode fazê-lo de qualquer maneira.

 
Evgeniy Chumakov:

Parece não haver erros. Não o vejo a olho nu, o que eu tenho em mente é o que está escrito no arquivo.

Pergunta ao Maxim, ao prever que o treino de sinais + - - teve lugar na fila que está no ficheiro? Ou na fila 0 - 1 normalizada?

na mesma linha, mas as respostas são normalizadas 0-1

 
Maxim Dmitrievsky:

você pode

há, digamos assim, uma pilha de tecnologia bem estabelecida. Você pode ir direto para mt5, você pode primeiro em python, depois exportar para mt5. Você pode usar apenas Python, mas troque no MT5. Podes fazer o que quiseres.


Não é amigável com os 4?

É difícil instalar python no win 10 x64, sem pandeiro?

 
Evgeniy Chumakov:


Não é de todo amigável com 4?

É difícil instalar o Python no win 10 x64, sem pandeiro?

4 é um atavismo.

Provavelmente não, a menos que sejas um xamã Buryat.

 
Maxim Dmitrievsky:

4 é um atavismo.

Provavelmente não, a não ser que sejas um xamã Buryat.

Basta fazer dele um modelo sob a forma de regras de exploração madeireira, deixá-lo incorporar no seu código, porquê torturar o homem com píton?

Ou devo fazê-lo?

 
Evgeniy Chumakov:
 condition                                                                                                       
 [1,] "X[,10]<=-0.025 & X[,10]>-0.08201612905"                                                                        
 [2,] "X[,9]>-0.057983871 & X[,9]<=-0.01129032255 & X[,10]>0.0219354839"                                              
 [3,] "X[,9]<=-0.057983871"                                                                                           
 [4,] "X[,9]>0.0702419355"                                                                                            
 [5,] "X[,8]>0.01362903225 & X[,8]<=0.0564516129 & X[,9]>0.00153225805"                                               
 [6,] "X[,8]<=0.0564516129 & X[,8]>-0.01153225805 & X[,9]<=0.0040322581 & X[,10]<=-0.00596774195"                     
 [7,] "X[,8]>-0.03370967745 & X[,8]<=-0.00403225805 & X[,10]>0.00032258065"                                           
 [8,] "X[,8]<=-0.03370967745 & X[,10]>0.02814516125"                                                                  
 [9,] "X[,8]<=-0.03370967745 & X[,10]<=0.02443548385"                                                                 
[10,] "X[,7]>-0.025 & X[,7]<=-0.00403225805 & X[,8]>-0.03370967745"                                                   
[11,] "X[,8]>-0.0266935484 & X[,8]<=-0.025"                                                                           
[12,] "X[,9]>0.0091129032 & X[,9]<=0.0277419355 & X[,10]<=-0.00096774195"                                             
[13,] "X[,9]<=0.0564516129 & X[,9]>0.03935483875"                                                                     
[14,] "X[,8]>0.02346774195 & X[,9]>-0.057983871 & X[,9]<=-0.0212903226"                                               
[15,] "X[,8]>-0.03370967745 & X[,8]<=0.0233870968 & X[,9]<=0.0233870968 & X[,10]>0.0091129032 & X[,10]<=0.02766129035"
[16,] "X[,8]>-0.03370967745 & X[,9]<=-0.00120967745 & X[,10]>-0.00596774195 & X[,10]<=0.0229032258"                   
[17,] "X[,10]>0.0012903226"                                                                                           
[18,] "X[,1]==X[,1]"                                                                                                  
      pred
 [1,] "1" 
 [2,] "-1"
 [3,] "1" 
 [4,] "-1"
 [5,] "-1"
 [6,] "-1"
 [7,] "1" 
 [8,] "-1"
 [9,] "-1"
[10,] "1" 
[11,] "-1"
[12,] "1" 
[13,] "1" 
[14,] "-1"
[15,] "1" 
[16,] "1" 
[17,] "-1"
[18,] "1"

Os dados são representados como uma janela deslizante de tamanho 10, as regras são baseadas nestes dados...

o primeiro elemento X[ , 1] ....... X[ , 10] último (vela actual)

pred

isto é o que a regra prediz

o modelo prevê um sinal, mais de zero "1", menos de "-1

modelo tem uma precisão de 97-99%.


======================================================================================

aqui está todo o código em R... tão grande e incompreensível ))))

d <- read.csv(file = "C:\\..........\\EURUSD_returns.csv")
d <- d[,1]

X <- embed(d, 10)[ , 10:1]  
Y <- as.factor(sign(  c(X[-1,ncol(X)] , 1)  ))

library(inTrees)
library(RRF)
rf <- RRF(X,Y,ntree=100) 
treeList <- RF2List(rf)
ruleExec <- unique(extractRules(treeList,X,maxdepth = 10))
ruleMetric <- getRuleMetric(ruleExec,X,Y) #  measure rules
ruleMetric <- pruneRule(ruleMetric,X,Y) #  prune each rule
learner <- buildLearner(ruleMetric,X,Y)

learner
 

mytarmailS:

tão grande e incompreensível ))))


Isso nem sequer tem piada))) não sei o que fazer com ele.

 
Evgeniy Chumakov:

Nem sequer tem piada)) Não sei o que fazer com ele.

Não te rias, mas entende melhor...

Você não precisa de um código, você precisa de regras de registro (este é um modelo), você pega essas regras e as coloca no seu código, a quantidade de previsões das regras será a resposta do modelo - "1" ou "-1".

Se não o entendes, pergunta.

enquanto eu estou bem))