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

 
Alexey Burnakov:

Mais uma vez, eu também tenho dezenas de modelos, eu também falsifico os preditores e os parâmetros. E estes modelos têm um lucro sólido por um período de 8 anos cada! E esse é o período de teste. Mas quando os "melhores" modelos selecionados pelo teste são testados por amostragem retardada, há surpresas. E isto chama-se - Validação cruzada de encaixe do modelo.

Por exemplo, você fez uma validação em uma amostra atrasada. Suponha que o modelo nos dados diferidos se tenha fundido. O que você faz neste caso? Se você começar a ajustar os parâmetros novamente para passar a validação na amostra pendente, você estará essencialmente incluindo os dados da amostra pendente na sua validação cruzada, e a validação cruzada também será ajustada. Isto pode ser corrigido com a adição de uma nova amostra diferida. E se o modelo também falhar nisso? Devemos ajustar os parâmetros para passar a nova amostragem retardada também? É uma corrida interminável.

Incluir uma amostra diferida na validação cruzada, e criar uma nova amostra diferida não é a resposta, mas um loop infinito até que você tenha sorte e o modelo passe a validação diferida. Então você pode parar, mas esta não é uma solução forex, é apenas sorte sorrindo para você, o que, no entanto, estatisticamente seria um dreno.

Então a questão é - digamos que o modelo sobre os dados pendentes despencou. O que se faz num caso desses?

 
Dr.Trader:

Então a questão é - digamos que o modelo sobre os dados pendentes se fundiu. O que você faz nesse caso?

Eu pensei que essa pergunta era muito pessoal :)

Melhor assim - se o seu modelo falhar no teste da amostra pendente, você inclui a amostra pendente na validação cruzada e cria uma nova amostra pendente? Ou você faz isso de maneira diferente?


Eu, por exemplo, tomo como base o que San Sanych já repetiu 1000 vezes - você precisa avaliar a qualidade dos preditores. "Qualidade" é um termo elástico. Eu, por exemplo, faço isso através dessa validação cruzada e é mais uma seleção de preditores do que de parâmetros do modelo. Se o modelo durante o treinamento encontrar as mesmas dependências em dados em qualquer área - é um forte argumento de que os preditores estão bem.
Eu não gosto na minha abordagem que eu tenho que trocar de conjunto. Se as dependências forem constantes, basta treinar um modelo nos preditores selecionados no final e ele encontrará novamente as mesmas dependências e poderá negociar por si mesmo. Mas falta-me algo na selecção dos preditores, um modelo falha.

 
Dr.Trader: qualidade dos prognosticadores....
Do exemplo primitivo, segue-se que as propriedades do alvo são igualmente importantes...
 
Eu até vou mais longe que isso. A função alvo é um ponto MUITO importante na construção de um modelo, porque é a função alvo que ajudará o algoritmo a fazer a divisão. Enfrentei este problema muitas vezes, mas ainda não o resolvi, por isso deixei o valor alvo de 50 pips. Mesmo por cima da propagação...
 
Alexey Burnakov:

Mais uma vez, também tenho dezenas de modelos, também estou a mexer com preditores e parâmetros. E estes modelos entram em mais sólidos durante um período de 8 anos cada! E esse é o período de teste. Mas quando os "melhores" modelos selecionados pelo teste são testados por amostragem retardada, há surpresas. E isto chama-se - Validação cruzada de encaixe do modelo.

Quando isto está claro, a pura experimentação continua. Se não estiver claro, você verá uma queda múltipla na qualidade no mundo real. Que é o que se vê em 99% das vezes.

Tudo isto acontece porque o mercado vai muitas vezes contra as suas próprias mega estatísticas...

1) Primeiro vou mostrar-te porque penso assim e provar-te isso.

2) Então eu explicarei porque isso acontece, a mecânica do processo

Dá-me um par de horas...

Não lhe darei nenhuma solução pronta, porque eu próprio não tenho nenhuma, mas a própria compreensão do processo é algo...

1)

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

A primeira coisa que fiz foi treinar duas redes profundas com saídas probabilísticas, na verdade, qualquer rede fará, o principal é que a saída da rede não é uma resposta clara de classe - "1", "0". Esse é o resultado será por exemplo "0,13" e significará que os dados atuais pertencem à classe "1" com probabilidade de "0,13%".

Uma rede treinei exclusivamente para comprar, a outra exclusivamente para vender.

O sinal (libra alvo) para a venda é o ponto a partir do qual houve uma queda de pelo menos 0 ,2% do preço,


й

O alvo parece ser "000000000010000000000" onde "1" é uma inversão em baixa e "0" não é.

Para uma inversão para cima tudo é igual, respectivamente ...

Todos os preços dos três últimos castiçais OHLC foramutilizados como preditores e todas as combinações possíveis das diferenças entre eles foram construídas

Assim, as redes são treinadas, pegamos as previsões da rede (suas saídas) e desenhamos gráficos abaixo do preço. Os gráficos abaixo mostram as saídas de duas redes tanto para compra como para venda. A saída da rede, por exemplo, indica a probabilidade de inversão para baixo na próxima vela. Ver FIG. 1, o mesmo para a Buy.

Verde indica uma saída para comprar, e vermelho indica uma saída para vender.

ф

Se você olhar com atenção para o FIG. 2 você pode notar que o gráfico de preços vai contra essas probabilidades, quando a probabilidade de reversão para cima é maior que a probabilidade de reversão para baixo (o gráfico verde é maior que o vermelho) o preço sempre cai, embora na verdade ensinamos o contrário à rede, vamos tentar apresentar os dados de uma forma mais demonstrativa. Para começar, vamos construir somas cumulativas de compra e venda de produtos

Cumsum(compra.neural); Cumsum (venda.neural)

я

figo. 3

E agora vamos construir a diferença entre a soma acumulada da rede de compra e a soma acumulada da rede de venda

Cumsum(compra.neural)- Cumsum (venda.neural)


ц

Como pode ser visto no FIG. 4 do gráfico azul e do gráfico de preços, o preço está completamente correlacionado inversamente com as previsões da rede (gráfico azul). Para que fique ainda mais claro, vou inverter (inverter) o sinal do gráfico azul.

Cumsum(compra.neural)- Cumsum (venda.neural)/ -1

к

Olhando para a FIG. 5 não temos dúvidas, o preço vai contra as previsões das redes e também podemos fazer uma conclusão interessante de que usando redes neurais e suas probabilidades estatísticas somos capazes de reconstruir totalmente o preço apenas com base no conhecimento da probabilidade se a inversão for feita na próxima vela ou não.

É muito legal, mas na verdade é inútil porque nosso gráfico azul não tem capacidade de previsão, não supera o preço, mas o acompanha. Significa que na verdade não há diferença em olhar o preço ou o gráfico azul, mas a mecânica do mercado é clara- "se a probabilidade de descer é maior do que a probabilidade de subir, o preço subirá"...

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

Mudando em....

Eu estava treinando um modelo de markov escondido SMM ou HMM - modelo de markov escondido

É um modelo probabilístico aplicado especialmente para dados não estacionários, há rumores de que também pode ser aplicado a mercados...

Da mesma forma, dois modelos foram construídos, mas o modelo alvo não mostra inversões, mas simplesmente capta a tendência, então um modelo identifica a tendência ascendente e dá uma estimativa probabilística, enquanto o outro modelo mostra uma probabilidade de tendência descendente.

н

Não preste atenção aos ofícios, eu estava a experimentar...

Assim, abaixo temos dois vectores com as probabilidades de um verde tendência ascendente e um vermelho tendência descendente, a linha preta é apenas o pico de probabilidades que o modelo apresenta, é apenas o desvio padrão, mais simples ainda é o Bollinger

Então olha - quando o modelo começa a produzir probabilidades de pico de algum evento (indo além da linha preta para baixo), ele faz o oposto...
Então, aqui também temos, essencialmente, um movimento de preços contra as nossas próprias estatísticas...

Agora vamos pensar se o mercado é uma besta) com tal comportamento, os algoritmos MO podem prever o mercado? Se de facto a RF, a rede, o SMM, etc. fazem as suas previsões de uma forma ou de outra estatisticamente....

Basicamente,esta é a resposta porque o modelo quebra praticamente no segundo dia após a sua optimização, mesmo que (optimização) seja três vezes genético e quatro vezes procrosvalidado...

O que fazer? ainda não sei

 
mytarmailS:

1)

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

A primeira coisa que fiz foi treinar duas redes profundas com saídas probabilísticas; na verdade, qualquer rede fará, o principal é que a saída da rede não é uma resposta clara da classe - "1", "0". Esse é o resultado será por exemplo "0,13" e significará que os dados atuais pertencem à classe "1" com probabilidade de "0,13%".

Uma rede treinei exclusivamente para comprar, a outra exclusivamente para vender.

O sinal (libra alvo) para a venda é o ponto a partir do qual houve uma queda de pelo menos 0 ,2% do preço,


O alvo parece ser "000000000010000000000" onde "1" é uma inversão em baixa e "0" não é.

Para uma inversão para cima tudo é igual, respectivamente ...

Todos os preços dos três últimos castiçais OHLC foramutilizados como preditores e todas as combinações possíveis das diferenças entre eles foram construídas

Assim, as redes são treinadas e nós pegamos as previsões da rede (suas saídas) e desenhamos gráficos abaixo do preço.

Se você olhar com atenção para o FIG. 2, você pode ver que o gráfico de preços vai contra estas probabilidades.

Olhando para a FIG. 5 você não tem dúvidas, o preço vai contra as previsões das redes e também é interessante, usando redes neurais e suas probabilidades estatísticas somos capazes de reconstruir totalmente o preço apenas com base no conhecimento da probabilidade se a inversão é esperada na próxima vela ou não.

Eu sou uma pessoa inteligente que desenvolve e treina redes neurais de todos os tipos, mas ainda não vê coisas simples. Eu li o seu post e fiquei bastante surpreendido. Se eu entendi corretamente, você, grosso modo, encontrou todas as reduções de preços de 0,2% após alguma alta, então pegou três castiçais perto dessa alta e fez algumas manipulações com seus preços e finalmente os reduziu a uma certa probabilidade com a ajuda de uma rede neural. Mas desculpe-me, não acha que tal abordagem é demasiado primitiva? :) Estás a cavar em todos os lugares errados. É por isso que o resultado é o oposto da realidade. Eu caracterizaria a sua abordagem desta forma: você está tentando tirar 3 pixels de uma imagem FullHD e fazer uma idéia da imagem inteira com base nesses três pixels. OK, não o quadro completo, mas qual é a probabilidade de prever corretamente pelo menos 10% da área da imagem? Espero que o meu exemplo seja claro. Não é preciso olhar para os pixels para ver a imagem. Em outras palavras, você não precisa olhar para barras individuais para entender o gráfico, você precisa olhar para o gráfico inteiro. E a solução para o problema está mais no domínio da geometria do que na álgebra, física ou biologia, por exemplo. Embora, quando leio algumas das pesquisas que as pessoas fazem aqui, tenho a forte sensação de que estão tentando compreender a estrutura humana usando a geografia. :)
 

BlackTomcat:
1) Li o seu post e fiquei bastante surpreendido. Se eu entendi bem,

2) eventualmente levando-os a uma certa probabilidade com a ajuda de uma rede neural. Mas desculpe-me, não acha que tal abordagem é demasiado primitiva? :) Estás a cavar no sítio errado. É por isso que o resultado é exactamente o oposto da realidade.

3) Eu caracterizaria a sua abordagem desta forma: você está tentando tirar 3 pixels de uma imagem FullHD e fazer uma idéia da imagem inteira com base nesses três pixels. OK, não o quadro completo, mas qual é a probabilidade de prever corretamente pelo menos 10% da área da imagem? Espero que o meu exemplo seja claro. Não é preciso olhar para os pixels para ver a imagem.

4) Em outras palavras, você não precisa olhar para barras individuais para entender o gráfico, você precisa olhar para o gráfico inteiro. E a solução para o problema está mais no domínio da geometria do que na álgebra, física ou biologia, por exemplo. Embora, quando leio algumas das pesquisas que as pessoas fazem aqui, tenho a forte sensação de que estão tentando compreender a estrutura humana usando a geografia. :)

1) Certo...

2) ok, mas então porque são as probabilidades opostas, é suposto ser uma simples correlação aleatória e não inversa

3) Concordo, preciso tomar o máximo de informação na forma máxima comprimida, é por isso que tenho falado ultimamente sobre o perfil do volume, ou algumas alternativas...

Você tem alguma sugestão sobre como apresentar dados da rede? por favor, compartilhe, é para isso que estamos todos aqui.

4) Estou absolutamente de acordo contigo, tenho estado intrigado sobre como fazê-lo, por exemplo, preciso memorizar todos os níveis que se enquadram no intervalo do preço actual, como faço isso? Como alimento os níveis para a rede? Além do seu número em cada vela ser diferente, não é uma tarefa trivial, especialmente para mim.

p.s. por favor não cite todo o meu post, apenas algumas palavras são suficientes para entender que você está se dirigindo a mim, por favor apague coisas desnecessárias

 
BlackTomcat:
Pessoas inteligentes, elas desenvolvem e treinam redes neurais, mas não vêem coisas simples. Eu li o seu post e fiquei bastante surpreendido. Se eu acertei, você, mais ou menos falando, encontrou todas as descidas de preços de 0,2% depois de alguma alta, então pegou três castiçais perto dessa alta e fez algumas manipulações com seus preços e finalmente os reduziu a uma certa probabilidade com a ajuda de uma rede neural. Mas desculpe-me, não acha que tal abordagem é demasiado primitiva? :) Estás a cavar em todos os lugares errados. É por isso que o resultado é o oposto da realidade. Eu caracterizaria sua abordagem desta forma: você está tentando tirar 3 pixels de uma imagem FullHD e com base nesses três pixels você pode fazer uma idéia da imagem inteira. OK, não o quadro completo, mas qual é a probabilidade de prever corretamente pelo menos 10% da área da imagem? Espero que o meu exemplo seja claro. Não é preciso olhar para os pixels para ver a imagem. Em outras palavras, você não precisa olhar para barras individuais para entender o gráfico, você precisa olhar para o gráfico inteiro. E a solução para o problema está mais no domínio da geometria do que na álgebra, física ou biologia, por exemplo. Embora, quando leio algumas das pesquisas que as pessoas fazem aqui, tenho a forte sensação de que estão tentando compreender a estrutura humana usando a geografia. :)

Eu concordo. Você tem que olhar para o quadro todo.

Mas isso só é bom para uma imagem estática. Ou seja, podemos dividir condicionalmente o quadro inteiro em 100 partes, aprender com 70 partes e obter excelentes capacidades de previsão a partir de 30. Isso é aproximadamente o que fazemos com a previsão no mercado. Então, qual é o problema? Porque é que já existem problemas em tempo real?

E o senão é que a imagem não é estática. É um filme. Claro que, tendo estudado e aprendido a fazer previsões num dos quadros de um filme, é inútil prever as áreas vizinhas do quadro na vida real - o próximo quadro já é diferente! E nenhum dos quadros do filme tem cópias absolutas e mesmo que você encontre quadros semelhantes no futuro como no passado, esses quadros são seguidos por outros, não os mesmos que seguiram um quadro semelhante no passado. O problema é esse.

Assim, se olharmos para os frames individuais de um filme, podemos até concluir que os frames são aleatórios, assim como muitos estão convencidos de que o mercado é muito aleatório, se não 100% aleatório. Sabemos que ver um filme faz sentido, podemos até prever o que vai acontecer no final do filme! Então qual é o objectivo? - Talvez seja porque temos de olhar mais longe, para investigar padrões mais globais, que nunca mudam - por exemplo, uma vez verifiquei quantos % em média o preço volta, e bem, acontece que cerca de 30% (se a memória me serve correctamente), mas a questão é que este valor é quase o mesmo para todos os TFs e para todos os instrumentos (pares de moedas e metais, para CFD e outros que não verifiquei, mas parece que é o mesmo)! Isto é incrível. Este é exactamente o tipo de padrões constantes a usar, mas muitas vezes é mais fácil fazê-lo sem redes neurais, andaimes, etc., porque para usar MO você precisa de ser capaz de identificar o significado no filme, e isso não é fácil, se não for possível de todo.

 
Andrey Dik:

E o senão é que a imagem não é estática. É um filme.

Aqui está outra analogia.

Quase toda a gente tem um teclado inteligente no seu smartphone. Se você digitar uma palavra, o teclado sugere a palavra seguinte. Depende da palavra e das palavras anteriores digitadas. Eu tentei, você pode até digitar um texto bastante significativo a partir das palavras sugeridas pelo teclado. As palavras são padrões, um grupo de palavras é um grupo de padrões.

Mas esta tecnologia será impotente no mercado, tal como os MOs aqui considerados, porque no mercado as "palavras" mudam com o tempo (a ordem e a combinação de letras individuais), e o significado das "palavras" individuais muda. Resta apenas algum significado superior de todo o texto, o qual, naturalmente, não está disponível para nós.

Agora as pessoas vão me perguntar: O que fazemos agora? - Não sei o que fazer com o MO, o resultado ainda será uma porcaria.

Ou mesmo alguém dirá: "Você simplesmente não sabe cozinhar MO!" - Acho que não tenho. Mas quem sabe como? Quem tem sido capaz de usar MO no mercado? Alguém sabe de algum exemplo de sucesso? Sim, agora vão citar o exemplo do Batter, mas ele também falhou no tempo que se seguiu...

 
mytarmailS:

2) ok, mas então porque é o oposto, na verdade deve ser uma simples correlação aleatória e não inversa

Você tem alguma sugestão sobre como representar os dados da rede? por favor, compartilhe, é para isso que estamos todos aqui.

Peço desculpas por uma citação tão grande, mas estou escrevendo do meu telefone no momento e as opções de edição são limitadas aqui. Você pode começar a mastigar uma cotação e depois não conseguir voltar a um campo limpo para o seu texto. Isto é fácil de corrigir num PC, mas será um problema num telefone.
No ponto 2 - Concordo com você que deve ser completamente aleatório, mas na verdade não tenho certeza se você tem o período do teste para frente onde você obteve o resultado inverso imediatamente após o período em que o treinamento foi feito. Você tem um intervalo de tempo entre esses períodos? Normalmente o padrão (se estivesse no mercado) deixa de funcionar gradualmente: o gráfico de equilíbrio no testador diminui primeiro a sua inclinação, e depois cai. O padrão está esgotado, é reconhecido e muitas pessoas começam a explorá-lo. Por causa disto, transforma-se num padrão inverso. No entanto, se houvesse uma lógica (de mercado) por trás do padrão, depois de algum tempo ele poderia começar a funcionar novamente. Mas aqui o seguinte parece-me justo: quanto mais tempo a regularidade tiver funcionado antes, mais longo será o período de "esquecimento". Mas eu ainda não testei isto completamente.
Eu não trabalho com redes neurais, por isso não tenho ideia de como preparar os dados para treiná-las. Os métodos gráficos(geométricos) são bem reconhecidos a olho nu, mas são difíceis de formalizar. Neste momento, estou a trabalhar num TS que usa métodos gráficos. Na minha opinião, se há alguma regularidade de trabalho, é aqui.
Eu gostaria de fazer mais alguns comentários ao meu post anterior. Parecia ter endurecido a minha análise das barras individuais lá. Mas, na verdade, não é assim. A análise das barras individuais tem o direito de existir, mas estas barras chave normalmente não se encontram na área dos topos.
Razão: