Aprendizado de máquina no trading: teoria, prática, negociação e não só - página 172
Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
PS.
Para fervorosos apoiantes do MCL, observo que sem todas as acções e ferramentas discutidas neste tópico, o testador não dá qualquer razão para especular sobre o comportamento futuro do sistema de negociação. O testador diz: "Estes são os resultados para este período de tempo". É tudo. O testador dá exactamente um valor, por exemplo, o factor de lucro que está relacionado com um determinado período histórico. E você só pode obter estatísticas em R. E o testador é a parte final do design do modelo, mas não um substituto para todo o processo de desenvolvimento.
Tolices e disparates!
O testador vai dar exactamente isso e o que lhe foi pedido. Você pediu o fator de lucro? - aqui está o factor lucro. Se pedirmos mais alguma coisa ou várias, também haverá uma resposta. E estatísticas podem ser obtidas chamandoTesterStatistics() emOnTester(), e tudo isso tem estado disponível por muito tempo. Quaisquer outras estatísticas podem ser adicionadas, se necessário.
Seu R também não poderá responder se você não tiver nada ou não souber o que perguntar.
Por exemplo, você fez uma validação em uma amostra diferida. 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, vou tentar explicar com uma fotografia. Não se preocupe, este é um problema complexo, mas pode ser resolvido. Você não deve fazer o que sugere ou haverá um ciclo vicioso.
E mais uma coisa, eu vou gradualmente envolver a actividade neste fio. Estou a ficar cansado do fórum. Melhor em privado e com exemplos.
Então:
Seleção de Modelos para Previsão e Comercialização de Séries Temporais Ruído
Passo a passo:
Aprender o modelo - o modelo mostra características granulosas
Teste de um modelo - os modelos já têm um desempenho visivelmente pior. Mas há alguns modelos que funcionam bem.
Este é o ponto em que você precisa selecionar os modelos. Você e eu escolhemos modelos que têm melhor desempenho no teste (podem ser blocos de validação em validação cruzada). E fica imediatamente claro que se escolhermos um modelo por período, onde a sua característica já é conhecida, estamos a fazer uma escolha optimista.
Se tivermos validação cruzada (os dados para diferentes modelos são mistos) não podemos fazer deles um comitê no teste (o teste é misto). Em vez disso, pegue os "melhores" modelos selecionados no teste e teste-os em uma amostra retardada. O que esperamos ver? Uma vez que na aplicação real vamos contar com o desempenho dos modelos em blocos de validação cruzada (ou teste único, se não quisermos nos preocupar com a validação cruzada), precisamos saber se os melhores modelos selecionados mostrarão desempenhos semelhantes no futuro (na amostra diferida 1). Se existe uma relação, já é muito boa. Em essência, podemos parar o estudo neste ponto e selecionar os melhores modelos através da validação cruzada no futuro.
Mas se ainda queremos fazer um comité, temos de descobrir quais os modelos a seleccionar para o comité. Fazemos isto na amostra 1 atrasada, mas não apenas aleatoriamente. Mais uma vez nos lembramos que na vida real nós só vamos confiar nos dados de teste (os últimos dados disponíveis). Assim, vamos incluir no comitê, um a um, os modelos que mostram os melhores resultados no TESTE. Nós maximizamos o desempenho da comissão na amostra atrasada.
Neste ponto, você está sujeito a múltiplo viés de seleção de modelos, pois estamos avaliando a escolha do comitê sobre dados sobre os quais sua característica já é conhecida.
A amostra final é necessária para validar o comitê.
Se na etapa de validação dos modelos selecionados (no teste) na amostra atrasada vemos que as características dos modelos estão flutuando - isso já é fatal, pois não temos a chance de selecionar o modelo no teste. Neste passo, precisamos de mudar alguma coisa na abordagem.
Se o comitê montado cair sobre a última amostra diferida (este é um teste único), então o comitê se ajustou à amostra anterior.
Repetir todo o procedimento com parâmetros diferentes, conseguindo a maximização do carisma. nas amostras finais diferidas é impossível, já que esta seria também uma escolha otimista de modelos.
Se mesmo tudo funcionou bem nas amostras diferidas (ou seja, minimizamos o viés de seleção do modelo), geralmente é bom repetir em loop com os mesmos parâmetros todo o procedimento e obter a distribuição do trabalho do comitê na última amostra. É claro que cada vez que precisamos de dados diferentes (pelo menos parcialmente). E isto já é muito caro...
Por favor, lembre-se deste esquema. Ele conduz a sua estimativa de negociação em tempo real a um possível absoluto.
Tudo verdade, mas este padrão é muito barbudo, todos o conhecem há muito tempo, por isso...
E agora o classificador mais simples teria encontrado, para uma série esta interpretação de preço, volume e OI não são dados suficientes, você precisa pelo menos de um livro de ordens e uma faixa com direções de negociação, e no caso do forex, porque esta informação não existe, ela deve ser retirada dos mercados futuros líquidos ocidentais.
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 entendi corretamente, você, grosso modo, encontrou todas as descidas 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 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 foto FullHD e com base nesses três pixels você pode fazer uma idéia da imagem inteira. OK, não o quadro todo, 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. :)
+1
Eu nem sequer diria "gráfico", mas gráficos, além de preços, mas...
A analogia de 3 pixels e HD, é muito relevante na minha opinião para o que a maioria das pessoas faz aqui.
Andrey Dik:
Ou mesmo alguém dirá: "Você simplesmente não sabe cozinhar MO!" - Provavelmente sim, não posso. Mas quem sabe como? Quem tem sido capaz de usar MO no mercado?
Você já pensou o que aconteceria se alimentássemos as redes com os padrões que serão no futuro? A questão é como encontrá-los. Que dias devo escolher para ensinar a rede para saber que eles estarão no dia atual? Aqui está a resposta. Seleccionamos os dias que tiveram o volume actual e o OM, respectivamente, na esperança de que o contexto do dia seja semelhante ao daqueles dias que estiveram na amostra de formação. Eu não envio os valores de volume e OI para a entrada da rede, só escolho estes dias, e a entrada é AD, Zscore, Kelli, etc. Em outras palavras, a idéia é selecionar tal conjunto de padrões sobre a história e a reação do mercado a eles, como nos dias atuais. Se existem teorias sobre este tipo de seleção usando outras técnicas, eu adoraria ouvir....
É exactamente assim que é feito, de que outra forma poderia ser feito? No caso trivial, o conjunto de dados de treinamento é uma seqüência vetorial de incrementos normalizados de preço de volume e OI, vamos chamar vectorSet[][] uma rede neural ou algum outro classificador de entrada =vectorSet [t][], teach output = vectorSet [t+1][]
Se eu entendi bem a pergunta...
A questão é como escolher exatamente esse conjunto de padrões que será durante o próximo dia de negociação ou semana?????