Monday 18 September 2017

Audacity Machine Learning Trading Forex


A aprendizagem de máquinas é um campo de inteligência artificial onde os programas de computador aprendem em vez de seguir cegamente um script. Com dados de treinamento suficientes, você pode ensinar esses algoritmos para dirigir um carro, pilotar um helicóptero ou criar o melhor mecanismo de busca do mundo. Aqui estão os resultados que obtive com a minha abordagem inicial na aplicação de aprendizagem de máquinas para negociação forex. Uma variedade de algoritmos são implementados para tentar prever a evolução de um instrumento com dados de apenas 8 barras diárias para o passado. Para cada dia, quatro valores são gravados, as três primeiras informações de registro no movimento do dia anterior próximo ao dayrsquos alto, baixo e próximo, em percen t enquanto o quarto registra o volume do dia. Isso faz 32 variáveis ​​independentes no total. Os dados são obtidos a partir de três instrumentos na base de dados dukascopy, EURUSD, AUDJPY e GBPCHF diariamente Pergunte as barras de 1 de janeiro de 2008 a 31 de dezembro de 2011, com os fins de semana misturados na segunda-feira seguinte. Para cada um dos algoritmos testados, os dois primeiros anos foram utilizados para treinar os modelos enquanto o ano de 2012 foi usado para testá-los. A biblioteca java aberta para algoritmos de aprendizado de máquina usados ​​vem da WEKA: Data Mining Software em Java i. Você pode baixar a biblioteca ou o programa amigável ao usuário em cs. waikato. ac. nzmlweka. Previsão da direção do mercado. Esses testes avaliam em que medida, se houver, é possível prever o movimento global de amanhã (de perto para fechar) com base em dados de oito dias anteriores usando uma variedade de algoritmos de aprendizado de máquina. Uma correlação alta significa que o modelo prevê o bom movimento global do dia seguinte. Nesse caso, as correlações são muito próximas de zero, de modo que os modelos não podem prever o movimento global do mercado. Previsão da faixa do mercado Para o forex, o intervalo é definido aqui como a diferença entre o dayrsquos alto e o dayrsquos baixo como porcentagem do fechamento anterior (para que diferentes instrumentos sejam comparáveis). Um dos métodos mais simples e melhores, os vizinhos mais próximos, é o melhor para esta tarefa. Este método, para cada caso, simplesmente analisa os n casos no conjunto de treinamento que se parecem mais e prevê uma média ponderada de seu alcance. Previsão do movimento absoluto de um instrumento O movimento absoluto de um instrumento é o movimento geral por um dia, mas sempre positivo. Isso é um pouco semelhante ao intervalo. É impossível prever a direção do mercado para o dia seguinte com base apenas em oito barras e volumes anteriores, pelo menos usando esses algoritmos. No entanto, a primeira falha desta abordagem é talvez que ela tente prever todos os dias. Talvez algum processo de eliminação possa remover uma grande quantidade de dados que é principalmente imprevisível. Por outro lado, existem outros algoritmos como redes neuronais recorrentes que são mais apropriados para a tarefa em questão. É possível prever, até certo ponto, o intervalo do dia seguinte e, de forma bastante lógica, o movimento absoluto (do próximo ao próximo). Este tipo de informação pode não ser relevante para os comerciantes que seguem as tendências, mas pode ser relevante para os escaladores que precisam prever o alcance de um par de moedas. Eu acredito que esses algoritmos superam os indicadores de alcance como o ATR no sentido de serem preditivos e não indicativos. 1 Mark Hall, Eibe Frank, Geoffrey Holmes, Bernhard Pfahringer, Peter Reutemann, Ian H. Witten (2009) O software de mineração de dados da WEKA: uma atualização Explorações SIGKDD, Volume 11, Edição 1. Aprendizagem de máquina aplicada ao aprendizado de máquinas Forex pode nos ajudar Otimizar as estratégias de negociação automática. Ao estudar a enorme quantidade de informações passadas, podemos identificar padrões que nos ajudem a prever a evolução do mercado em uma extensão suficiente. Isto é, naturalmente, o que alguns comerciantes têm feito há muito tempo, mas a automatização do processo nos permite encontrar estratégias muito melhores e muito mais rápido do que seria um ser humano. Aqui propomos uma estratégia especulativa que foi testada com sucesso e demonstra as possibilidades trazidas pela máquina de aprendizagem em forex. Encontrar automaticamente uma estratégia especulativa vencedora no eurusd EURUSD é um par muito lucrativo para uma estratégia especulativa construída a partir de algoritmos de aprendizado de máquinas, embora nosso método seja capaz de encontrar estratégias vencedoras em outros instrumentos e alguns que funcionem em vários instrumentos, as estratégias desenvolvidas para o EURUSD Dê os melhores retornos. É assim que as estratégias são criadas. Não podemos alimentar o preço real do algoritmo porque queremos que ele reconheça padrões independentemente de sua altura em um gráfico. Nós, portanto, alimentamos os movimentos de preços, de alto para alto e baixo para baixo (melhor do que abrir para fechar). Este é um tipo simples de indicador com um poder discriminativo surpreendente entre os padrões forex. Mas que intervalos devemos escolher para nossos indicadores e usar o alto e o baixo em que período Nosso algoritmo responde esta questão para nós, otimizando um conjunto de indicadores e marcando por uma boa estratégia que podemos construir sobre ele. O método utilizado para otimização é um algoritmo genético. Construímos alguns conjuntos de indicadores, os mais fortes (maior pontuação) têm uma melhor chance de ldquoreproducingrdquo e ldquomutatingrdquo enquanto os mais fracos são substituídos. Este método tende a otimizar os conjuntos de indicadores e é milhares de vezes mais rápido do que simplesmente experimentar todas as possibilidades. Nós marcamos um conjunto de indicadores com a boa estratégia que podemos construir com ele. As estratégias são construídas automaticamente usando um segundo passo de otimização e uma estrutura de dados, a rede neural artificial. A rede neural toma como entrada os valores dos indicadores por um determinado período e produz algumas informações sobre o futuro do instrumento. O que a rede neural artificial prevê As redes neurais tentam prever um fator de lucro normalizado (lucro bruto dividido pela perda bruta) em um único comércio durante um certo período no futuro. O período em questão pode variar entre 3 e 10 dias, é um parâmetro otimizável da estratégia. Portanto, nossa estratégia não necessariamente usa stop loss and take profit, em vez disso, abrimos uma posição por um período de tempo predeterminado e fechamos a posição no final desse período, seja lá o que acontecesse. A rede é classificada pela porcentagem de previsões corretas pesadas pela precisão de Itrsquos. Alternativamente, nossas redes neurais podem prever o que a parcela do saldo da conta deve ser investida, as redes são então classificadas pelo saldo final da conta ou pelo fator de lucro global. Armadilhas comuns em estratégias de troca automática Existem algumas armadilhas comuns a serem conscientes de tais estratégias onde a estratégia parece oferecer lucros incríveis, mas não vale a pena na vida real. A precaução mais importante é que o período em que a estratégia for testada não deve ser o mesmo período em que foi construído. Caso contrário, podemos simplesmente gerar milhares de estratégias aleatórias complexas e escolher aquele que funcione melhor em um determinado período, mas somente para nós, quando temos um resultado positivo em um conjunto de dados independente, podemos começar a confiar em nossa estratégia. Na realidade, usamos três conjuntos de dados independentes, o conjunto de treinamento é usado para construir o sistema, o conjunto de validação é usado para evitar o aprendizado excessivo e o conjunto de teste é usado para os resultados relatados. No nosso caso, chegamos a 60 apostas corretas no conjunto de testes que abrange no último ano. Também é uma má prática otimizar um lucro com vantagem e parar a perda desde o início. Ao otimizar uma estratégia em um período que é muito curto, pode-se facilmente obter um lucro global incrível, estabelecendo o lucro obtido muito perto e a perda de parada muito longe. Quando a perda de parada é eventualmente alcançada em um período mais longo, as consequências são devastadoras. Uma vez que uma estratégia rentável é encontrada, no entanto, o lucro de tirar proveito e a perda de parada podem ser otimizados, mas nunca devem estar tão distantes uns dos outros. A colocação de um lucro obtido e a perda de parada nunca são uma estratégia em si, mas sim uma maneira de controlar o risco. Uma estratégia ótima testada com um simulador reconhecido. Nossa estratégia obtém uma aposta teórica 62.5 na EURUSD. Mas podemos obter uma avaliação melhor da estratégia com uma boa simulação e uma aplicação da estratégia da vida real. Por esse motivo, implementamos a estratégia usando a API JForex e testávamos na plataforma jForex. Mais uma vez, tínhamos cuidado de não misturar o período que usávamos para otimizar nossa estratégia e o período que costumávamos testá-la. Nós também refinamos nossa estratégia mais um ajuste do montante investido em cada posição para refletir as previsões do strategyrsquos. Isso melhorou muito o fator de lucro (lucro bruto dividido pela perda bruta) de nossa estratégia. Usamos uma alavancagem para aumentar ou diminuir o risco e o retorno esperado. Mais de 161 negócios, o fator de lucro de nossa estratégia no período de teste é de 2,87, o que significa que obtemos 2,87 vezes mais lucro do que a redução nos negócios. Embora tenhamos apenas 60,24 negócios lucrativos, eles são muito mais rentáveis ​​do que os negócios perdidos não são lucrativos. As estatísticas finais que consideramos muito contundentes são a redução máxima consecutiva, 5 e o lucro máximo consecutivo, 18 do patrimônio líquido. Nós temos uma conta ao vivo executando a estratégia, mas tem feito isso por um período muito pequeno para avaliar isso dessa maneira. Nós também otimizamos um lucro com vantagem e uma perda de parada. Uma vez que nos recusamos ver esses fatores como parâmetros de estratégia, mas preferimos vê-los como parâmetros de controle de risco, sempre os manteremos iguais uns aos outros. O contrário cria um desequilíbrio que torna difícil avaliar a estratégia. Mais uma vez, esses parâmetros foram otimizados em um período diferente do período de teste. Os resultados mostram que um stop-loss e take-profit devem de fato ser usados ​​e que ele deve ser colocado muito perto, em cerca de 18 pips. Colocar aqueles mais perto do preço de abertura melhora o fator de lucro geral, mas nesses níveis, as comissões e as taxas se tornam problemáticas. O stop-loss e o take-profit melhoram o fator de lucro e a estabilidade geral da estratégia enquanto impedem o lucro total, mas a alavancagem pode remediar a situação. Desvantagens de uma estratégia de negociação automática Uma crítica comum sobre estratégias de caixa preta, como a nossa, é que o mercado pode sempre mudar de repente e as estratégias que funcionaram antes de ganhar trabalho indefinidamente. Temos de admitir que isso é totalmente fundado, e é nossa convicção que nada pode ser feito para evitar isso sem uma bola de cristal para prever o futuro. No entanto, também é nosso sentimento que esta é a verdade com qualquer estratégia especulativa, feita pelo homem ou de outra forma. É claro que o forex sofreu grandes mudanças no passado. O volume é um ótimo indicador para essa questão que realmente nos dá uma visão sobre o momento em que a forma como um instrumento é negociado muda. No gráfico abaixo, você pode observar a evolução do volume de EURUSD nos últimos 16 anos. Uma estratégia construída usando dados que é muito distante não funciona mais. No entanto, a nossa estratégia funcionou igualmente bem no EURUSD nos últimos anos e nada sugere que irá mudar em breve. Há duas coisas que podemos fazer para evitar uma mudança súbita na forma como os instrumentos de divisas são negociados. Primeiro, podemos monitorar o mercado e aguardar esse momento em que nossa estratégia não funciona mais usando as estatísticas que a estratégia deve seguir, como a redução máxima consecutiva e monitorando o volume. Em segundo lugar, podemos fazer o whatrsquos chamado on-line learning onde nossa estratégia está continuamente sendo otimizada em novos dados. Esta segunda opção é uma boa prática, mas não se protege contra as mudanças súbitas que são típicas no forex a cada poucos anos. A melhor solução é implementar esses dois métodos, otimizando regularmente nossas estratégias, ao mesmo tempo em que é necessária uma mudança de estratégia mais profunda. A outra crítica é que nunca entendemos realmente o que faz um modelo de caixa preta. Esse não é o caso para nós, pois nosso modelo é bastante simples, no entanto, devemos tomar o segredo para o nosso túmulo ou, pelo menos, até que a estratégia não seja mais lucrativa. Obrigado pela leitura, Traduzir para russo

No comments:

Post a Comment