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

 
Maxim Dmitrievsky #:
Divida o trem principal em 5 a 10 subtrens, cada um dos quais dividido em uma trilha e um eixo. Treine em cada um deles por tipo de cv e, em seguida, faça a previsão em todo o trem principal. Você compara os rótulos originais de todos os modelos com os rótulos previstos. Os que não adivinharam são colocados na lista negra. Em seguida, você remove todos os exemplos ruins ao treinar o modelo final, calculando a aspiração média de cada amostra. Opcionalmente, você pode ensinar o segundo modelo a separar as amostras brancas das amostras pretas, seja por meio da 3ª classe.
.

3 linhas de código, resultados no nível de... bem, não tenho nada para comparar com... bem, em algum nível.

O objetivo aqui é cv, o que significa que você determina estatisticamente quais amostras são ruins e quais são boas, usando vários modelos, cada um treinado em diferentes partes do histórico. Isso é chamado de pontuação de propensão, ou seja, a propensão de cada amostra para desempenhar um papel no treinamento.

É claro que os rótulos podem ser muito ruins, e essa abordagem pode remover quase tudo. Por isso, no início, usei amostragem aleatória de transações para adicionar diferentes variantes de marcação. Considerando que não queremos ou não sabemos como pensar em como marcar um gráfico.

Esta é, grosso modo, a aparência de um AMO com elementos kozol que busca TCs por conta própria.

Os rótulos (professor, variável-alvo) NÃO podem ser lixo por definição. A citação é marcada a partir de algumas considerações externas aos preditores. Uma vez que os rótulos tenham sido decididos, há o problema dos preditores que são relevantes para o conjunto de rótulos encontrados. É fácil ter o problema de que um conjunto de rótulos é bonito, mas não conseguimos encontrar preditores para eles e temos de procurar outro conjunto de rótulos. Por exemplo, as marcas são reversões de ZZ. Marcas bonitas. E como encontrar preditores para esses rótulos?

Assim que começamos a filtrar os rótulos por preditores - isso é superajuste, que é o que tudo que você mostra aqui, inclusive o mercado - não funciona em um arquivo novo e externo em um modo natural passo a passo.

 
mytarmailS #:
Sim, é interessante.

Informo que em um teste de amostra separado - 7467, e no exame - 7177, mas não há um pequeno número de folhas sem nenhuma ativação - eu não as contei de uma vez.

0

Essa é a distribuição das folhas que mudaram de classe de acordo com seu valor para a amostra de teste.

1

e este é o exame.

E esta é a divisão em classes - há três delas, a terceira é "-1" - nenhuma ativação.


Para a amostra de treinamento.


Para a amostra de teste


Para a amostra do exame.

Em geral, você pode ver que os pesos das folhas não correspondem mais à lógica da classe - abaixo está o gráfico da amostra de teste - não há um vetor claro.


Em geral, esse método de treinamento se aproxima de qualquer coisa, mas não garante a qualidade dos preditores.

Em geral, admito que as "barras" distintas no gráfico acima são folhas muito semelhantes por local e frequência de ativação.


mytarmailS #:

Na verdade, encontrei uma maneira de encontrar esses sinais que não se deslocam em relação ao alvo nem no treinamento nem no teste... Mas o problema é que esses sinais são catastroficamente poucos e o método de triagem é extremamente caro em termos de potência e, em geral, o método é implementado por meio de treinamento sem um professor, só assim consegui evitar o ajuste.

É difícil discutir o que você não sabe. Portanto, só posso ficar feliz por seu sucesso. Se eu tivesse um método assim, eu o usaria :)

Meu método, até o momento, não apresenta resultados tão qualitativos, mas é bastante semelhante.

 
Maxim Dmitrievsky #:
E qual foi o papel da quantificação nesse processo? Em uma escala de 10 pontos

É difícil isolar completamente os processos de pensamento.

Há problemas em várias frentes, portanto, é preciso analisar o que pode ser melhorado com menos esforço e mais resultados. Passar periodicamente de "dados" para "processo de aprendizado" e fazer experimentos.

A ideia original é estimar a correlação, mas não encontrei nenhum método pronto, estou modernizando o meu. Acho que se as folhas forem semelhantes, elas distorcem a estimativa.

Maxim Dmitrievsky #:
Passei por Starfield e, em pouco tempo, a singularidade começou. Entrei no multiverso e encontrei uma cópia de mim mesmo. Agora estou correndo em diferentes versões de universos. E não há como sair disso. Agora tenho que encontrar novos significados.

Quando o cérebro ou a rede neural atinge os limites da razoabilidade, começa a singularidade.

Essa é uma ideia interessante. Esse jogo, talvez eu o jogue algum dia depois. Eu trato os jogos como criatividade, os jogos são muito mais lentos para ficarem desatualizados graficamente agora.

Executei God of War (2018) em uma placa de vídeo HD7950 antiga (joguei-a em um computador separado, que é puramente para cálculos) abaixo de dez, coloquei os gráficos no mínimo e fiquei chocado com a imagem. Mas o principal interesse é a elaboração do relacionamento entre pai e filho - é difícil encontrar análogos na indústria de computadores, onde esse tópico é levantado.

Maxim Dmitrievsky #:
Divida a pista principal em 5 a 10 subtrechos, cada um deles dividido em uma pista e um eixo. Em cada um deles, você treina no tipo cv e, em seguida, faz a previsão em toda a trilha principal. Você compara os rótulos originais de todos os modelos com os rótulos previstos. Os que não adivinharam são colocados na lista negra. Em seguida, você remove todos os exemplos ruins ao treinar o modelo final, calculando a aspiração média de cada amostra. Opcionalmente, você pode ensinar o segundo modelo a separar amostras brancas de amostras pretas, seja por meio da 3ª classe.
.

3 linhas de código, resultados no nível de... bem, não tenho nada para comparar com... bem, em algum nível.

O objetivo aqui é cv, o que significa que você determina estatisticamente quais amostras são ruins e quais são boas, usando vários modelos, cada um treinado em diferentes partes do histórico. Isso é chamado de pontuação de propensão, ou seja, a propensão de cada amostra para desempenhar um papel no treinamento.

É claro que os rótulos podem ser muito ruins, e essa abordagem pode remover quase tudo. É por isso que, no início, usei amostragem aleatória de transações para adicionar diferentes variantes de marcação. Considerando que não queremos ou não sabemos como pensar em como marcar um gráfico.

Esta é, grosso modo, a aparência de um AMO com elementos kozol que busca TCs por conta própria.

Mas aqui também trabalhamos com dados por meio de modelos. Ou você vê alguma diferença?

 
Aleksey Vyazmikin #:

Mas também está trabalhando com dados por meio de modelos. Ou você vê alguma diferença?

É meio automático, você não precisa pensar e (o que é importante) fazer nada :)
 
Maxim Dmitrievsky #:
Bem, como no automático, não é necessário pensar e (o que é importante) fazer nada :)

Levando em conta a aleatoriedade excessiva do CatBoost no método de treinamento, é difícil avaliar a abordagem em si. Lá eles interferem com as cadeias de caracteres ao construir uma árvore e alimentam os dados com bachami, bem, se não for proibido tudo...

É interessante avaliar quantas planilhas mudam de classe em novos dados, por analogia, como escrevi acima no ramo. Isso poderia ser uma métrica da qualidade da abordagem/modelo.

 
Aleksey Vyazmikin #:

Levando em conta a aleatoriedade excessiva do CatBoost no próprio método de treinamento, é difícil avaliar a abordagem em si. Lá eles interferem com strings ao criar uma árvore e alimentam os dados com bacham, bem, se isso não for proibido...

É interessante avaliar quantas planilhas mudam de classe em novos dados, por analogia, como escrevi acima no ramo. Isso poderia ser uma métrica para a qualidade da abordagem/modelo.

O ideal é que essa aleatoriedade não seja tão ruim quanto a aleatoriedade do conjunto de dados
 
Maxim Dmitrievsky #:
O ideal é que essa aleatoriedade não seja tão ruim quanto a aleatoriedade do conjunto de dados

É possível obter um belo modelo por acaso a partir da aleatoriedade - esse é o problema, mas, se fosse impossível, isso não teria importância.

Não é um problema treinar um modelo - o problema é escolher aquele que tem mais potencial para funcionar corretamente em novos dados.

Essa é a abordagem interessante que permite aumentar esse potencial. E para avaliar a eficácia do modelo, precisamos de algum tipo de métrica, não apenas uma estatística de precisão de classificação, mas algo mais, por exemplo, a avaliação das folhas individualmente. É claro que os indicadores nos preditores mudam - é por isso que as folhas são tão ruidosas, "mudando" as classes reais. É por isso que se trata de uma tarefa complexa: você precisa de bons rótulos e preditores estáveis, e as combinações deles não devem criar folhas com valores raros no modelo.

Na produção, já é necessário monitorar as alterações na distribuição dos valores dos preditores usados no modelo e frear o modelo se as alterações forem significativas e extensas. No entanto, essa abordagem exige o acúmulo de estatísticas, o que, para nós, equivale ao acúmulo de perdas, e isso não é bom. Precisamos de um método mais rápido para excluir o modelo, mas um método razoável, que não seja puramente baseado no drawdown.

Há muitos problemas e, sem resolvê-los, não queremos dar dinheiro ao modelo para gerenciamento.

 
Aleksey Vyazmikin #:

Sim, o binário é mais complicado. Mas não entendo como o racionamento pode ajudar nesse caso.

O sinal binário com 0 e 1 já está normalizado, e o restante também deve ser normalizado.

 
Forester #:

O recurso binário com 0e1 já está normalizado, e os outros também precisam ser normalizados.

Espero ter entendido seu pensamento.

Mas, na quantificação uniforme pelos mesmos 32 segmentos, podemos considerar que o segmento "1" é 0 e o segmento "32" é 1. E o mesmo acontece com qualquer outro dígito. É por isso que não entendo qual é a diferença fundamental aqui.

 
Aleksey Vyazmikin #:

Espero que tenha entendido sua linha de raciocínio.

Mas, em uma quantificação uniforme nos mesmos 32 segmentos, é possível considerar que o segmento "1" é 0, e o segmento "32" é 1. E o mesmo acontece com qualquer outro dígito. É por isso que não entendo qual é a diferença fundamental aqui.


Se você reduzir para 32, então estenda o binário 0 e 1 para 0 e 32 (e outros, por exemplo, com 5 quanta de 0...5 para 0...32). Para tornar tudo proporcional. Ou, classicamente, comprimir tudo em um único hipercubo (como no caso das redes neurais, que exigem normalização.) A essência é a mesma: em ambas as variantes, obtemos a mesma escala.