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

 
Maxim Dmitrievsky #:
Há mais aleatoriedade, portanto, é preciso mexer para que funcione.

Você pode decompor a série em componentes, encontrar a aleatoriedade, encontrar a parte determinística. descartar o aleatório, deixar o resto... Um caso padrão para o processamento de BP ...

Mas não, isso também não funciona.

Em algum momento, com novos dados, o aleatório se tornará determinístico e o determinístico se tornará aleatório....

Portanto, também NENHUM)

 
mytarmailS #:

você pode decompor a série em componentes (decomposição), encontrar a parte aleatória, encontrar a parte determinística. descartar o aleatório, deixar o resto... Um caso padrão para o processamento de BP ...

Mas não, isso também não funciona.

Em algum momento, em novos dados, o aleatório se tornará determinístico e o determinístico se tornará aleatório....

Portanto, também não funciona).

É claro que os tutoriais têm BPs simples para facilitar a explicação. Na realidade, é mais complicado do que isso.

Há outros VRs não financeiros que também são difíceis de prever, com algum erro mínimo possível. Mas na negociação é mais fácil, porque não é necessário prever o tempo todo, você pode configurar o modelo para fazer isso seletivamente. Fiz isso no último artigo, mas agora o tópico da seleção de recursos informativos permanece. Já pensei em um método, agora só preciso fazer experimentos.

Quero finalizar minha abordagem e ela deve se tornar universal, de acordo com a ideia, ou seja, deve dar resultados em qualquer moeda

E você, com seus eventos, também faz com que a 3ª classe não negocie em essência, não há nada de novo nisso. Você divide o BP entre o que é previsto e o que não é previsto.
 
Maxim Dmitrievsky #:
E você, com seus eventos, também faz a 3ª classe sem negociação, essencialmente, nada de novo nisso. Você divide o BP entre o que é previsto e o que não é previsto.

Essa é sua fantasia, não a realidade


A maneira como vejo isso até agora é a seguinte:

há dados, digamos 100 mil observações, que chamarei de "X.big".

1) selecionamos (padrão, regra, evento, sinal da TS) o que nos interessa, eu chamo de "regra inicial" (ativação de Alexey Funtz. O nome é extremamente infeliz, mas...).

2) selecionamos a "regra inicial" dos dados e agora temos 100-1000 observações, não 100k, reduzimos o espaço de pesquisa "X.small".

3) em "X.small", iniciamos uma pesquisa em grande escala de recursos, vejo recursos na forma de regras sequenciais, as regras são geradas automaticamente por meio de programação genética, quero uma pesquisa em grande escala, mas não tenho certeza se posso fazer isso

4) uma matriz dos atributos criados é inserida no modelo, digamos, 1000 peças de cada vez.

5) o modelo (algum AMO) seleciona os recursos por importância e salva os bons recursos, obtém uma nova matriz, etc. ....

6) como resultado da pesquisa, obteremos vários milhares de atributos funcionais de acordo com uma " regra inicial " específica.


Portanto, se chamarmos tudo isso de modelo, o próprio modelo apresenta bilhões de recursos e seleciona o que é necessário.

 
mytarmailS #:

É sua fantasia, não a realidade


É assim que estou vendo até agora:

Há dados, digamos 100 mil observações, que chamarei de "X.big".

1) identificamos (padrão, regra, evento, sinal do TS) o que nos interessa, eu o chamo de "regra inicial" (Alexey Funtz. ativação. o nome é extremamente infeliz, mas...).

2) selecionamos a "regra inicial" dos dados e agora temos 100-1000 observações, não 100k, porque reduzimos o espaço de pesquisa "X.small".

3) em "X.small", iniciamos uma pesquisa em grande escala de recursos, vejo recursos na forma de regras sequenciais, as regras são geradas automaticamente por meio de programação genética, quero uma pesquisa em grande escala, mas não tenho certeza se funcionará.

4) uma matriz dos recursos criados é inserida no modelo, digamos, 1.000 peças de cada vez.

5) o modelo seleciona os recursos por importância e salva os bons recursos, obtém uma nova matriz, etc. ....

6) como resultado da pesquisa, obtemos vários milhares de atributos funcionais de acordo com uma " regra inicial " específica.


Portanto, se chamarmos tudo isso de modelo, o próprio modelo apresenta bilhões de recursos e seleciona o que é necessário.

Novamente 25... isso não é diferente de uma classificação de 3 classes em termos de significado.

 
Maxim Dmitrievsky #:

Novamente, 25. não é diferente de uma classificação de 3 classes em termos de significado

Deixe-me criar um conjunto de dados e ver qual algoritmo é melhor.

 
Maxim Dmitrievsky #:
Um diz que eu roubei suas ideias, o outro diz que ele me ensinou... quem são vocês, afinal? ))))

"Roubou" - você acabou de dizer isso? Você não tem vergonha, dá para perceber.

Fórum sobre negociação, sistemas de negociação automatizados e teste de estratégias de negociação.

Aprendizado de máquina na negociação: teoria, prática, negociação e muito mais

Aleksey Vyazmikin, 2020.12.03 19:11

Então a ideia é avaliar o modelo, e o modelo realmente desvenda alvos confusos, e podemos avaliar seu sucesso nesse caso, não apenas para ver como tudo é confuso.

Estou pensando em tentar o método de aprendizado em cascata (um termo que eu mesmo criei - pode haver algo diferente). Os gráficos mostram que há áreas em que o treinamento é bem-sucedido - deixe essa área, e o que for além dessa área para treinar novamente, tendo previamente removido da amostra exemplos que se enquadram na distribuição da área esquerda. Já tentei fazer isso manualmente - o efeito foi bom, agora penso em automatizá-lo, mas no segundo dia ainda não tive sorte - temo que o efeito tenha sido acidental - não quero ficar chateado. Qual é a sua opinião sobre esse assunto? Acho que é fácil fazer isso em Python.

Isso foi discutido no artigo.

Cito:

"

Queremos escrever um algoritmo que seja capaz de analisar e corrigir seus próprios erros, melhorando iterativamente seus resultados. Para fazer isso, propomos pegar um grupo de dois classificadores e treiná-los sequencialmente, conforme sugerido no diagrama abaixo.

"

"

A intuição dessa abordagem é que as negociações perdedoras são erros de classificação do primeiro tipo para o modelo subjacente, na terminologia da matriz de confusão. Ou seja, são casos que ele classifica como falsos positivos. O metamodelo filtra esses casos e dá uma pontuação de 1 para os verdadeiros positivos e 0 para todo o resto. Ao filtrar o conjunto de dados do metamodelo para treinar o modelo básico, aumentamos sua precisão, ou seja, o número de acionadores de compra e venda corretos. Ao mesmo tempo, o metamodelo aumenta seu Recall (completude) ao classificar o maior número possível de resultados diferentes.

"

As ideias são as mesmas, mas você fez a implementação e elaborou os detalhes - eu apenas disse o conceito e não tenho certeza se publiquei meus experimentos e o código de implementação.

Lembrei-o disso no contexto de que você pode não entender do que se trata agora e usá-lo mais tarde, quando entender. E o fato de não entender não é motivo para se comportar de forma inadequada e expressar seus julgamentos de valor sobre a personalidade das pessoas e sua lógica.

 
mytarmailS #:

Vou criar um conjunto de dados e ver qual algoritmo é melhor.

Qual será a composição do conjunto de dados? Eu só aceito citações como entrada.

 
Aleksey Vyazmikin #:

"Roubou" - você acabou de dizer isso? Ele não tem vergonha, posso dizer.

É sobre isso que o artigo estava falando.

Citação:

"

Queremos escrever um algoritmo que seja capaz de analisar e corrigir seus próprios erros, melhorando iterativamente seus resultados. Para fazer isso, propomos pegar um grupo de dois classificadores e treiná-los sequencialmente, conforme proposto no diagrama abaixo.

"

"

A intuição dessa abordagem é que as negociações perdedoras são erros de classificação do primeiro tipo para o modelo subjacente, na terminologia da matriz de confusão. Ou seja, são os casos que ele classifica como falsos positivos. O metamodelo filtra esses casos e dá uma pontuação de 1 para os verdadeiros positivos e 0 para todo o resto. Ao filtrar o conjunto de dados do metamodelo para treinar o modelo básico, aumentamos sua precisão, ou seja, o número de acionadores de compra e venda corretos. Ao mesmo tempo, o metamodelo aumenta seu Recall (completude) ao classificar o maior número possível de resultados diferentes.

"

As ideias são as mesmas, mas você fez a implementação e elaborou os detalhes - eu só disse o conceito e não tenho certeza se publiquei meus experimentos e o código de implementação.

Lembrei-me disso dentro da estrutura de que você pode não entender agora sobre o que estamos falando e usá-lo mais tarde, quando entender. E o fato de não entender não é motivo para se comportar de forma inadequada e expressar seus julgamentos de valor sobre a personalidade das pessoas e sua lógica.

Então, vamos pegar o código do artigo e verificá-lo. Por que eu deveria entender do que estamos falando se ainda não há nada?

Tenho muitas variantes de tais implementações, incluindo aquelas com retreinamento em vez de retreinamento novamente, retreinamento por linhas de base e assim por diante.

Especialmente quando você começa a fazer isso, o resultado é diferente da fantasia que foi originalmente planejada

 
Maxim Dmitrievsky #:

Qual será a composição do conjunto de dados? Eu só aceito citações como entrada

Preços OHLS para as últimas 200 peças e um rótulo, você pode adicionar o tempo.

 
mytarmailS #:

Os preços do OHLS duram 200 unidades e uma etiqueta, e o tempo pode ser adicionado.

200 unidades? O que é tão pouco assim? Não tenho etiquetas, tenho o autoparticionamento.

Terei que reescrevê-lo.