Discussão do artigo "Reamostragem avançada e seleção de modelos CatBoost pelo método de força bruta" - página 13

 
Evgeni Gavrilovi:

Sim, ele é.

Ele diz

#include <MT4Orders.mqh>

#include <Trade\AccountInfo.mqh>

#include <cat_model.mqh>

e o mais importante é que, ao carregar o mqh diretamente do notebook do jupyter, tudo funciona bem, fiquei surpreso com isso

Entendo... bem, algo está errado com a transferência para o colab... ainda não dei uma olhada nisso, estou ocupado com outro artigo)
 
Maxim Dmitrievsky:
Entendo... bem, algo está errado com a transferência para o colab... Ainda não dei uma olhada, estou ocupado com outro artigo.)

Fiz uma gravação da minha tela, então no colab carrego o cat_model.mqh


 
Evgeni Gavrilovi:

fiz uma gravação da minha tela, então, no colab, carrego o cat_model.mqh.


E ao salvar o arquivo no computador e no colab, as configurações de look_back e a lista com máscaras coincidem? Devem ser as mesmas, caso contrário, o número errado de recursos será salvo no modelo e haverá um erro de excesso de matriz como o seu
 
Maxim Dmitrievsky:
Ao salvar o arquivo no computador e no colab, as configurações de look_back e a lista com MAs coincidem? Devem ser as mesmas, caso contrário, o número errado de recursos será salvo no modelo e haverá um erro de sair da matriz, como você fez.

Sim, é uma correspondência perfeita.

O problema é que, sem a função get_prices, o registro apresenta um erro, talvez o problema esteja no arquivo de teste?

o número de dias lá é 2 vezes maior em comparação com o de teste, o de teste tem os últimos 6 meses e o de treinamento tem apenas os últimos 3 meses.

 
Evgeni Gavrilovi:

Sim, é uma combinação perfeita.

O problema é que sem a função get_prices o registro falha, talvez o problema esteja no arquivo de teste?

O número de dias é 2 vezes maior do que no arquivo de teste, o arquivo de teste tem os últimos 6 meses, mas o trayning só tem os últimos 3 meses.

Não, acho que é o analisador. Em algum lugar, o número de características é definido incorretamente quando o modelo é salvo. Ou seja, ele aprende um número, mas o analisador salva outro. Vamos descobrir isso mais tarde. Só não tenho tempo para pesquisar.
 
Maxim Dmitrievsky:
Não, acho que é o analisador. Em algum lugar, o número de recursos é definido incorretamente ao salvar o modelo. Ou seja, ele aprende um número, mas o analisador salva outro. Vamos descobrir isso mais tarde. Ainda não tenho tempo para resolver isso.

OK)

 

Resolvi o problema com o carregamento de dados no colab pesquisando todas as variantes.

É necessário escrever pr = pd.read_csv('file.csv', sep=';') diretamente na função get_prices e, em seguida, retornar esse valor return pr.dropna()

 

Aparafusado em uma floresta aleatória. Começa a funcionar de forma estável com 10.000 amostras e 100 árvores.

 
welimorn:

Aparafusado em uma floresta aleatória. Começa a funcionar de forma estável com 10.000 amostras e 100 árvores.

É uma abordagem curiosa. Para equilibrar as classes. Poderia ser usada para nossos propósitos. Apenas chamou minha atenção.

https://towardsdatascience.com/augmenting-categorical-datasets-with-synthetic-data-for-machine-learning-a25095d6d7c8

Augmenting categorical datasets with synthetic data for machine learning.
Augmenting categorical datasets with synthetic data for machine learning.
  • Egor Korneev
  • towardsdatascience.com
Consider a hypothetical but common scenario. You need to build a classifier to assign a sample to a opulation group. You have a sizable training dataset of one million samples. It has been cleaned, prepared and labeled. The few continuous variables are already normalized, and categorical variables, representing the majority of features, are...
 
Maxim Dmitrievsky:

Karoch Não sei, talvez eu tenha um gmm errado ))) Mas não vejo diferença entre com ele e sem ele, em minha opinião tudo é decidido pelo alvo e nada mais....


Tenho 60 mil dados no total.

Pego os primeiros 10 mil e seleciono aleatoriamente 500 pontos deles.

Treino o modelo com eles imediatamente ou treino o gmm e, em seguida, treino o modelo.

Eu o testo nos 50.000 restantes

E mesmo da maneira usual, você pode encontrar modelos como o gmm e, com a mesma frequência, eles são genetisados.

Por exemplo

modelo sem gmm treinado em 500 pontos, teste em 50k.


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

Vi uma coisa interessante para se pensar....

Há um ponto de vista de que o mercado deve ser dividido em estados e negociar em cada estado de sua estratégia, mas todas as tentativas conhecidas por mim não tiveram êxito, ou o estado não é visto ou o modelo negocia mal mesmo em um estado "mais ou menos um".

Mas, com essa abordagem, você pode ver claramente de qual mercado o modelo "gosta". e de qual ele não gosta.

Provavelmente por causa dos retornos do mashka como sinais, o modelo funciona melhor em flat.