Bibliotecas: Algoritmos RL

 

Algoritmos RL:

Biblioteca baseada no artigo "Floresta de decisão aleatória na aprendizagem por reforço".

Algoritmos RL

Autor: Maxim Dmitrievsky

 
Provavelmente, quanto maior for o arquivo de resultados do treinamento, maior será a probabilidade de um ajuste.
[Excluído]  
fxsaber:
Provavelmente, quanto maior for o arquivo de resultados do treinamento, maior será a probabilidade de ajuste.

Se a amostra não for representativa, o que é sempre o caso no forex, então sim. Ela pode ser reduzida diminuindo um pouco a regularização.

Além disso, a questão da superamostragem de alvos ainda não foi resolvida, o que, em combinação com a superamostragem de entrada, deve gerar resultados mais interessantes.

 
Maxim Dmitrievsky:

Se a amostra não for representativa, o que é sempre o caso no forex, então sim. Você pode reduzi-la reduzindo um pouco a regularização

Além disso, a questão da busca de alvos ainda não foi resolvida, o que, juntamente com a busca de entradas, deve gerar resultados mais interessantes.

Quanto mais próximo o tamanho do arquivo de resultado do aprendizado estiver do tamanho do histórico de preços, menos você precisará fazer algo no modelo.

Por exemplo, se o arquivo de aprendizado tiver o mesmo tamanho do arquivo OHLC, o modelo será o próprio histórico. Ou seja, é bom que o arquivo de aprendizado (a parte dele usada) seja ordens de magnitude menor que o tamanho do histórico.

[Excluído]  
fxsaber:

Quanto mais próximo o tamanho do arquivo de resultado do treinamento estiver do tamanho do histórico de preços, menos você precisará fazer algo no modelo.

Por exemplo, se o arquivo de aprendizado tiver o mesmo tamanho do arquivo OHLC, o modelo será o próprio histórico. Ou seja, é bom que o arquivo lean (a parte dele usada) seja ordens de magnitude menor que o tamanho do histórico.

Dessa forma, a floresta aleatória é preservada, sempre com arquivos grandes, que não podem ser reduzidos. Você pode usar linear, então o arquivo conterá apenas coeficientes de regressão, e o retreinamento será menor.

Inicialmente, eu só estava interessado em usar o RF. Mas ele gosta muito de treinamento excessivo em qualquer circunstância

 
Maxim Dmitrievsky:

Dessa forma, a floresta aleatória é salva, sempre em arquivos grandes, que não podem ser reduzidos. Você pode usar linear, então somente os coeficientes de regressão estarão no arquivo, e o retreinamento será menor.

Inicialmente, eu só estava interessado em usar o RF. Mas ele gosta de retreinar demais em qualquer circunstância

A questão é que seria bom salvar apenas as informações usadas em learn=false. Se houver muitas delas, o trabalho será praticamente desperdiçado.

Como analogia, salvar os dados do BestInterval. Se houver poucos deles, você ainda poderá examiná-los sem nenhum truque. Mas se houver muitos deles, somente para fotos.

[Excluído]  
fxsaber:

A questão é que seria bom salvar apenas as informações usadas em learn=false. Se houver muitas delas, o trabalho será praticamente desperdiçado.

Como analogia, salve os dados do BestInterval. Se houver poucos deles, você ainda poderá procurar sem nenhum truque. Mas, se houver muitos deles, isso servirá apenas para fotos.

Bem, sim, especialmente se houver mais informações explicativas do que explicáveis - é uma piada :)

Oferecerei outras variantes da biblioteca mais tarde

 

Testei-o, a impressão é ambígua, testei-o em um gráfico personalizado gerado pela função Weierstrass usando a fórmula.

Em teoria, nesse gráfico personalizado, o RandomForest deveria ter encontrado pontos de entrada muito próximos do ZigZag ou, pelo menos, não ter ordens perdedoras. No TF H1, a periodicidade é claramente traçada, mas o RF meio que encontrou esse padrão, mas as ordens perdedoras também estão presentes.

testei anteriormente no MT4 com os mesmos dados o antigo GoldWarrior Expert Advisor (encontrado no fórum em inglês) - um consultor em ZigZag, no otimizador MT4 em todos os TFs até M15, encontra claramente padrões e exclusivamente em + todas as ordens.

Testei um Expert Advisor indicador no cruzamento de linhas de regressão (infelizmente, fiz o pedido, não posso fornecer o código), e esse Expert Advisor no otimizador encontrou rapidamente regularidades na função Weierstrass.

Por que esses exemplos? - Se os métodos primitivos podem encontrar regularidades, então o aprendizado de máquina é ainda mais obrigado a encontrá-las.

com todo o respeito devido ao autor, mas o resultado é duvidoso, ou melhor, o exemplo de trabalho com o RandomForest é excelente. mas ainda há espaço para colocar seus esforços ;).

ZY: treinado de 2000/01/01 a 2001/01/01 testado de 2001/01/01 a 2002/01/01

ZY: script para gráfico personalizado anexado, biblioteca de símbolos em KB

Arquivos anexados:
 
Igor Makanu:

SZY: script para gráfico personalizado anexado, biblioteca de símbolos em KB

// CustomRatesReplace(WrstName,0,LONG_MAX,rates);
      SymbDB.CloneRates(rates);
 
fxsaber:

aha, obrigado!

Passei 20 minutos lendo sua biblioteca, mas ainda não descobri, não estou atento hoje, e o objetivo era testar o código do autor para ver o que o RandomForest vê.

Atualizei meu script e o anexei novamente acima

[Excluído]  
Igor Makanu:

Testei-o, a impressão é ambígua, testei-o em um gráfico personalizado gerado pela função Weierstrass usando a fórmula

Em teoria, nesse gráfico personalizado, o RandomForest deveria ter encontrado pontos de entrada muito próximos ao ZigZag ou, pelo menos, não ter ordens perdedoras. No H1 TF, a periodicidade é claramente rastreável, mas o RF meio que encontrou esse padrão, mas as ordens perdedoras também estão presentes.

Eu testei anteriormente no MT4 com os mesmos dados o antigo GoldWarrior Expert Advisor (encontrado no fórum em inglês) - ZigZag Expert Advisor, no otimizador do MT4 em todos os TFs até M15, ele encontra claramente regularidades e todas as ordens são exclusivamente em +.

Testei um consultor de indicadores no cruzamento de linhas de regressão (infelizmente, fiz o pedido, não posso fornecer o código), e esse consultor encontrou rapidamente regularidades na função Weierstrass no otimizador.

Por que esses exemplos? - Se os métodos primitivos podem encontrar regularidades, então o aprendizado de máquina é ainda mais obrigado a encontrá-las.

com todo o respeito devido ao autor, mas esse é um resultado questionável, ou melhor, o exemplo de trabalho com o RandomForest é excelente. mas ainda há espaço para melhorias ;)

SZY: treinado de 2000/01/01 a 2001/01/01 testado de 2001/01/01 a 2002/01/01

ZY: script para gráfico personalizado anexado, biblioteca de símbolos em KB

Não, não funciona assim agora. Ele não procura nenhum padrão harmônico. As saídas são amostradas aleatoriamente e com muita frequência e, em seguida, ele tenta aproximar a política da melhor forma possível. Para aproximar quaisquer padrões, ele precisa amostrar as saídas de acordo com alguma outra lógica, talvez o mesmo ziguezague.

Tudo isso pode ser facilmente alterado no reward f-i. Só não tenho muito tempo no momento para fazer centenas de experimentos. Talvez você possa, de alguma forma, fazer isso por meio do Otimizador.

De qualquer forma, você precisa definir um intervalo de condições entre as quais a melhor variante será pesquisada. Porque há um número infinito de variantes.