Saturday 14 October 2017

Free Neural Network Forex Trading


Redes Neurais: Previsão de Lucros As redes neurais são algoritmos de última geração, que podem imitar determinados aspectos importantes no funcionamento do cérebro humano. Isso lhes dá uma capacidade única de auto-treinamento, a capacidade de formalizar informações não classificadas e, o mais importante, a capacidade de fazer previsões com base na informação histórica que eles possuem à sua disposição. As redes de neurônios têm sido usadas cada vez mais em uma variedade de aplicativos de negócios, incluindo soluções de pesquisa de previsão e marketing. Em algumas áreas, como detecção de fraude ou avaliação de risco. Eles são líderes indiscutíveis. Os principais campos em que as redes neurais encontraram aplicações são operações financeiras, planejamento empresarial, negociação, análise de negócios e manutenção de produtos. As redes neurais podem ser aplicadas de forma lucrativa por todos os tipos de comerciantes, por isso, se você é um comerciante e você ainda não foi introduzido em redes neurais, bem, leve-o através deste método de análise técnica e mostre como aplicá-lo ao seu estilo de negociação. Delirios comuns A maioria das pessoas nunca ouviu falar de redes neurais e, se eles não são comerciantes, eles provavelmente não precisam saber o que são. O que é realmente surpreendente, no entanto, é o fato de que um grande número de pessoas que poderiam se beneficiar ricamente com a tecnologia da rede neural nunca ouviram falar sobre isso, levam-no para uma ideia científica elevada ou pensam nisso como um truque de marketing liso. Há também aqueles que depositam todas as suas esperanças nas redes neurais, que são as redes de redes depois de uma experiência positiva com elas e as consideram como uma solução de bala de prata para qualquer tipo de problema. No entanto, como qualquer estratégia de negociação. As redes neurais não são uma solução rápida que lhe permitirá acertar em nada clicando em um ou dois botões. Na verdade, a compreensão correta das redes neurais e seu propósito é vital para a sua aplicação bem sucedida. No que diz respeito às negociações, as redes neurais são um método novo e exclusivo de análise técnica, destinado a quem leva uma abordagem de pensamento aos seus negócios e está disposto a contribuir com algum tempo e esforço para que este método funcione para eles. O melhor de tudo, quando aplicado corretamente, as redes neurais podem gerar lucro regularmente. Use redes neurais para descobrir oportunidades Um grande equívoco é que muitos comerciantes erraram redes neurais para uma ferramenta de previsão que pode oferecer conselhos sobre como atuar em uma determinada situação de mercado. As redes neurais não fazem previsões. Em vez disso, eles analisam dados de preços e descobrem oportunidades. Usando uma rede neural, você pode tomar uma decisão comercial com base em dados cuidadosamente analisados, o que não é necessariamente o caso quando se usam métodos tradicionais de análise técnica. Para um comerciante sério e pensativo, as redes neurais são uma ferramenta de próxima geração com grande potencial que pode detectar interdependências sutis e não lineares e padrões que outros métodos de análise técnica não conseguem descobrir. Os melhores redes Assim como qualquer tipo de excelente produto ou tecnologia, as redes neurais começaram a atrair todos aqueles que estão procurando por um mercado em desenvolvimento. Torrents de anúncios sobre software de próxima geração inundaram o mercado - anúncios comemorando o mais poderoso de todos os algoritmos de rede neural já criados. Mesmo naqueles casos raros, quando reivindicações publicitárias se assemelham à verdade, tenha em mente que um aumento de 10 em eficiência é provavelmente o máximo que você obterá de uma rede neural. Em outras palavras, ele não produz retornos milagrosos e, independentemente de quão bem ele funciona em uma situação particular, haverá alguns conjuntos de dados e classes de tarefas para as quais os algoritmos utilizados anteriormente são superiores. Lembre-se disso: não é o algoritmo que faz o truque. Informações de entrada bem preparadas sobre o indicador segmentado são o componente mais importante do seu sucesso com as redes neurais. A Convergência mais rápida é melhor Muitas das pessoas que já utilizam redes neurais acreditam erroneamente que quanto mais rápido sua rede fornece resultados, melhor será. Isso, no entanto, é uma ilusão. Uma boa rede não é determinada pela taxa em que produz resultados e os usuários devem aprender a encontrar o melhor equilíbrio entre a velocidade na qual a rede treina e a qualidade dos resultados que produz. Aplicação correta de redes neurais Muitos comerciantes aplicam redes neurais de forma incorreta porque depositam muita confiança no software que usam todos sem terem fornecido instruções adequadas sobre como usá-lo corretamente. Para usar uma rede neural do jeito certo e, portanto, de forma lucrativa, um comerciante deve prestar atenção a todas as etapas do ciclo de preparação da rede. É o comerciante e não a sua rede que é responsável por inventar uma ideia, formalizando essa idéia, testando e melhorando, e, finalmente, escolhendo o momento certo para descartar quando não é mais útil. Consideremos as etapas deste processo crucial com mais detalhes: 1. Encontrar e formalizar uma idéia de negociação Um comerciante deve entender completamente que sua rede neural não se destina a inventar idéias e conceitos de negociação vencedores. Destina-se a fornecer a informação mais confiável e precisa possível sobre a eficácia da sua idéia ou conceito de negociação. Portanto, você deve apresentar uma idéia comercial original e definir claramente o propósito desta idéia e o que você espera alcançar ao empregá-la. Esta é a etapa mais importante no ciclo de preparação da rede. (Para leitura relacionada, veja Lessons From A Traders Diary.) 2. Melhorando os parâmetros do seu modelo Em seguida, você deve tentar melhorar a qualidade geral do modelo modificando o conjunto de dados usado e ajustando os diferentes parâmetros. Figura 1: Especificando o algoritmo de otimização e suas propriedades 3. Eliminação do modelo quando se torna obsoleto Todo modelo baseado na rede neural possui uma vida útil e não pode ser usado indefinidamente. A longevidade de um período de vida de modelos depende da situação do mercado e de quanto tempo as interdependências do mercado refletidas nele permanecem atualizadas. No entanto, mais cedo ou mais tarde, qualquer modelo se torna obsoleto. Quando isso acontece, você pode redirecionar o modelo usando dados completamente novos (ou seja, substituir todos os dados que foram usados), adicionar alguns dados novos ao conjunto de dados existente e treinar o modelo novamente, ou simplesmente retirar o modelo completamente. Muitos comerciantes cometem o erro de seguir o caminho mais simples - eles dependem fortemente e usam a abordagem para a qual seu software fornece a funcionalidade mais amigável e automatizada. Essa abordagem mais simples é prever um preço de alguns bares à frente e basear seu sistema de negociação nesta previsão. Outros comerciantes prevêem variação de preço ou porcentagem da mudança de preço. Esta abordagem raramente produz melhores resultados do que prever o preço diretamente. Ambas as abordagens simplistas não conseguem descobrir e explorar de forma lucrativa a maior parte das importantes interdependências a longo prazo e, como resultado, o modelo torna-se rapidamente obsoleto à medida que as forças motrizes globais mudam. A Abordagem Global Mais Ótima para o Uso de Redes Neurais Um comerciante bem sucedido focalizará e passará um pouco de tempo selecionando os itens de entrada governamentais para sua rede neural e ajustando seus parâmetros. Ele ou ela passará de (pelo menos) várias semanas - e às vezes até vários meses - implantação da rede. Um comerciante bem sucedido também ajustará sua rede para as condições em mudança ao longo de sua vida útil. Como cada rede neural só pode cobrir um aspecto relativamente pequeno do mercado, as redes neurais também devem ser usadas em um comitê. Use tantas redes neurais quanto apropriado - a capacidade de empregar várias de uma só vez é outro benefício desta estratégia. Desta forma, cada uma dessas redes múltiplas pode ser responsável por algum aspecto específico do mercado, oferecendo-lhe uma grande vantagem em toda a linha. No entanto, recomenda-se que você mantenha o número de redes que você usa dentro do intervalo de cinco a 10. Finalmente, as redes neurais devem ser combinadas com uma das abordagens clássicas. Isso permitirá que você melhor aproveite os resultados obtidos de acordo com suas preferências comerciais. Conclusão Você experimentará sucesso real com redes neurais somente quando parar de procurar a melhor rede. Afinal, a chave para o seu sucesso com as redes neurais não está na própria rede, mas na sua estratégia comercial. Portanto, para encontrar uma estratégia rentável que funcione para você, você deve desenvolver uma idéia forte sobre como criar um comitê de redes neurais e usá-las em combinação com filtros clássicos e regras de gerenciamento de dinheiro. Para a leitura relacionada, verifique Neural Trading: as chaves biológicas para lucrar e o Tutorial de codificação de sistemas de negociação. O comércio com inteligência usando TradingSolutions TradingSolutions combina análise técnica com tecnologias de inteligência artificial (AI) usando redes neurais e algoritmos genéticos para aprender padrões de dados históricos e otimizar Parâmetros do sistema. Este software de negociação funciona com ações, futuros, moedas (FOREX) e muitos outros instrumentos financeiros. Também pode construir sistemas para os mercados dos EUA e internacionais. Mais de 300 dos indicadores técnicos mais populares. Prova comprovada e desempenho do cliente. Suporte de dados líder na indústria da eSignal. Interactive Brokers e muitos outros proprietários Optimal Signal tecnologia. Suporte técnico gratuito. 100 sistemas gratuitos e modelos de rede neural pré-construídos. Usado com sucesso em mais de 66 países ao redor do mundo. Garantia de devolução de dinheiro de 30 dias. Finalmente, uma rede de neurônios real EA Free - Something New Commercial Member Juntou-se a setembro de 2008 911 Posts Olá a todos, tem sido um tempo. Normalmente, não tomo pausas tão longas de participar neste fórum, mas há mais de um ano que trabalhei em um projeto muito intensivo e depois de um ano de teste para frente estou aqui para compartilhá-lo com todos vocês. Meus amigos com muitos comerciantes profissionais e um grupo de nós se juntaram, combinaram nossa experiência e criaram um sistema automatizado de rede neural para o Metatrader que realmente funciona. Uma vez que estavam conscientes de que a maioria dos EAs são absolutamente inúteis ou pior, fraudes, pensamos que estarão fornecendo algo único ao comerciante de varejo médio de pessoas que realmente podem ser confiáveis. Este grupo é chamado de Metaneural. Nós usamos redes neurais e as aplicamos para negociar Forex com êxito no passado e decidimos traduzir esse método em um sistema Metatrader. É amplamente conhecido que as grandes empresas comerciais e os fundos de hedge usam inteligência artificial sofisticada e sistemas de rede nueral para lucrar com os mercados financeiros com uma precisão surpreendente. Nós pensamos, por que esse poder também não está disponível para nós - os investidores de pequeno dinheiro Então eu tirei uma pausa de todas as minhas outras atividades e trabalhei duro com a Metaneural para desenvolver esse sistema, o que eu acredito ser a única rede neural REAL EA. Na verdade, ele nem precisa ser EA, o código pode ser escrito em C para funcionar exatamente da mesma forma em tradestação, esignal, neuroshell ou qualquer plataforma que permita a importação de DLL e a coleta de dados, porque a criação da rede neural ocorre em Neurosolutions. Eu fiz indicadores e sistemas de negociação para a comunidade forexfactory por anos, então eu queria dar a vocês a única versão gratuita da Metaneural EA na internet. Quero receber seus comentários e impressões. Se esse tópico for bem e não se distrair, estenderei o teste. Tive me divertido decifrar o mercado forex com as grandes mentes neste fórum há anos e tenho o prazer de devolver. As redes de neurônios em EAs são o futuro, espero que vocês possam perceber isso e desenvolver seus próprios sistemas. O primeiro passo na criação de um cérebro da rede neuronal artificial é reunir os dados em torno dos quais a estrutura do cérebro será formada. Uma vez que estamos tentando criar um cérebro que saiba como negociar os mercados, devemos reunir dados de mercado. No entanto, não podemos simplesmente coletar uma massa de dados e despejá-la em nosso mecanismo neural para criar a estrutura do nosso cérebro. Devemos reunir os dados no formato que queremos que o cérebro processe esses dados e, eventualmente, o mesmo formato em que queremos que ele crie saída. Em outras palavras, não estavam apenas dizendo ao nosso cérebro o que pensar, dando-lhe dados brutos, Mas devemos dizer-lhe COMO pensar, formulando esses dados brutos em uma configuração inteligível. Nesse caso, nossa configuração inteligível é um padrão. Nós reunimos dados em segmentos, cada segmento consiste em uma série de barras definidas pelo comerciante em nosso indicador de coleção proprietário que vem com todos os nossos pacotes. Esse agrupamento de barras é coletado em relação ao próximo bar que vem após o agrupamento - chamaremos isso de barra futura. Quando estavam colecionando dados de mercado, a barra futura é conhecida, porque é todo o histórico, é o próximo bar após o agrupamento. A idéia é que o cérebro da rede neural encontre padrões complexos no agrupamento de barras e use as informações coletadas, incluindo a próxima barra após o agrupamento, para determinar quais padrões complexos precedem o resultado da próxima barra. Durante a negociação real, esse resultado será a barra futura que, de fato, permite saber com um alto grau de precisão a direção do mercado antes que isso aconteça. Os dados coletados são extraídos em uma planilha que exibe dados de preço como aberto, alto, baixo, fechado (OHLC). A OHLC de cada barra é coletada separadamente e colocada em sua própria coluna. No exemplo acima, cada linha representa 3 barras no total. Portanto, as colunas representam centenas ou milhares de barras coletadas voltando à história. Além de OHLC, você também pode coletar os valores de quase qualquer indicador que você selecionar, o que essencialmente dará a esse indicador a capacidade de pensar com base na mudança das condições de mercado e prever O próximo valor. Construção e Treinamento de Rede Neural Agora que temos nossos dados coletados, extraídos em um arquivo de planilha em uma configuração inteligível, podemos carregá-lo em nosso mecanismo de rede neural que criará a estrutura do cérebro artificial, treiná-lo e testar sua precisão antes Salvando a estrutura. Uma vez que os dados coletados são importados para o programa de construção de rede, você escolhe selecionar quais bits de dados você deseja usar para criar seu cérebro. Esta é uma característica importante porque permite que o usuário crie muitas estratégias diferentes com base em qualquer peça de dados que seja considerada necessária. O que estava fazendo essencialmente nesta etapa é determinar o que o motor usará para criar os padrões complexos mencionados anteriormente, o que acabará por decidir a capacidade de projeção da EA da rede neural. Por exemplo, diga que queria dizer à rede neural que apenas procure padrões nos preços abertos das barras em relação aos valores dos indicadores do seu indicador favorito. Você selecionaria então seu indicador no coletor e escolheria apenas as entradas abertas e de dados no software de construção descrito acima. Você também pode selecionar todas as entradas, exceto para a coluna output1, que significa seu valor de saída - selecionar todas as entradas criará o padrão de aprendizado mais complexo possível e, assim, permitir que seu cérebro responda a muitos cenários diferentes. Uma vez que as entradas e saídas desejadas são selecionadas, o software criará a estrutura do seu cérebro da rede neural e você pode começar a treiná-la. Uma parcela dos dados coletados é reservada e usada para treinar e testar a precisão do seu cérebro artificial, você verá que a saída desejada começa a estar de acordo com os dados de teste que aprende. Uma vez concluído este processo, você poderá exportar o cérebro artificial estruturado na forma de uma DLL que será usada pela MetaNeural EA. Uma vez que o cérebro é construído, treinado, testado e exportado como uma DLL, você pode começar a negociar com um cérebro de rede neural automatizado que verá padrões complexos que são impossíveis para um ser humano alcançar. Obtenha o Metaneural EA FREE agora, financiando uma conta na FinFX com qualquer quantidade e usando nosso serviço de copiadora comercial para refletir nossas tradições vencedoras profissionais em sua conta. Depois de 50 lotes completos são negociados, você receberá o EA Metaneural com funcionalidade completa para LIVRE. As contas devem ser financiadas com o link fornecido na seção de preços do site Metaneural. Coloque esses arquivos nas seguintes pastas no Metatrader: Expert Advisor - Metatrader 4experts Indicador do coletor (DatacollectorV2a) - Metatrader 4expertsindicators Indicador de rede neuronal (Metaneural NN Indicator) - Metatrader 4expertsindicators MQLLock e MT4NSAdapter Arquivos DLL - Metatrader 4expertslibraries Você precisará instalar o Neurosolutions 6 e Visual Studio 6 para o trabalho, as instruções sobre essas instalações podem ser encontradas no manual detalhado anexado a esta publicação. Você deve ler o manual Sim, ele pode ser aplicado em várias moedas simultaneamente porque pode ser treinado em cada moeda individualmente e uma estrutura de rede neural pode ser criada para cada moeda. Eu diria que a única dependência do corretor seria a integridade de seus preços, quanto mais estáveis ​​e consistentes, melhorariam os dados de treinamento e, posteriormente, os negócios. Não foram escalar necessariamente, de modo que a velocidade de execução não é muito importante. Obrigado pelo seu interesse. Parabéns pelo desenvolvimento de um sistema que ofereça retornos saudáveis. Sempre melhor do que imaginar EAs que normalmente acabam explodindo a conta. Eu sou um membro comercial, compartilhando meu sistema Fibonacci Makeover (ForexFibs) aqui para que eu possa entender por que você está oferecendo uma EA gratuita. A minha pergunta é que esta EA pode ser aplicada em múltiplas moedas, pois esta é baseada em Redes Neurais Real. É dependente do corretor e da velocidade de execução. Algoritmo Genético de Observação em Sistemas de Negociação FOREX Usando o Algoritmo Genético para criar Estratégia de Negociação FOREX lucrativa. Algoritmo genético no sistema de Redes Neurais do Cortex FeedFair Backpropagation Neural Network Application para computação baseada em cálculos baseados em Forex. Este exemplo usa conceitos e idéias do artigo anterior, então leia Algoritmo Genético de Rede Neural em Sistemas de Negociação FOREX primeiro, embora não seja obrigatório. Sobre este texto Antes de tudo, leia o aviso legal. Este é um exemplo de usar a funcionalidade do algoritmo de algoritmo de algoritmo de redes neurônicas do Cortex, não um exemplo de como fazer negociações lucrativas. Eu não sou seu guru, nem eu deveria ser responsável por suas perdas. O software Cortex Neural Networks possui redes neurais, e a FFBP que discutimos antes é apenas uma maneira de escolher uma estratégia de negociação forex. É uma boa técnica, poderosa e quando aplicada corretamente, muito promissora. No entanto, tem um problema - para ensinar a Rede Neural. Precisamos saber o resultado desejado. É bastante fácil de fazer quando fazemos a aproximação da função, nós apenas tomamos o valor real de uma função, porque sabemos o que deveria ser. Quando fazemos a previsão da rede neural. Nós usamos a técnica (descrita em artigos anteriores) de ensinar a Rede Neural na história, novamente, se prevermos, digamos, uma taxa de câmbio, sabemos (durante a formação) qual é a previsão correta. No entanto, quando estamos construindo um sistema de negociação, não temos idéia de qual é a decisão de negociação correta, mesmo que conheçamos a taxa de câmbio. Como fato, temos muitas estratégias de negociação forex que podemos usar em qualquer ponto do tempo e Nós precisamos encontrar um bom - como o que devemos alimentar como o resultado desejado da nossa Rede Neural Se você seguiu o nosso artigo anterior, você sabe, que nos enganamos para lidar com esse problema. Ensinamos a Rede Neural a fazer uma previsão de taxa de câmbio (ou taxa de câmbio), e então usamos essa previsão para fazer negociação. Então, fora da parte da rede Neural do programa, tomamos uma decisão sobre a qual a Rede Neural é a melhor. Algoritmos genéticos podem lidar diretamente com este problema, eles podem resolver o problema declarado como encontrar os melhores sinais comerciais. Neste artigo, vamos usar o software Cortex Neural Networks para criar esse programa. Usando Algoritmos Genéticos Algoritmos Genéticos estão muito bem desenvolvidos e muito diversos. Se você quiser aprender tudo sobre eles, sugiro que você use a Wikipedia, pois este artigo é apenas sobre o que o Cortex Neural Networks Software pode fazer. Com o software Cortex Neural Networks. Podemos criar uma Rede Neural que adquire algum valor, digamos, valores de um indicador e produz algum resultado, digamos, sinais de negociação (comprar, vender, manter) e parar a perda, obter níveis de lucro para posições a serem abertas. Claro, se semearmos os pesos desta Rede Neural ao acaso, os resultados comerciais serão terríveis. No entanto, digamos que criamos uma dúzia de tais NNs. Então podemos testar o desempenho de cada um deles, e escolher o melhor, o vencedor. Esta foi a primeira geração de NNs. Para continuar a segunda geração, precisamos permitir que o nosso vencedor procria, mas para evitar a obtenção de cópias idênticas, vamos adicionar alguns sons aleatórios aos pesos das suas descendentes. Na segunda geração, temos o nosso vencedor da primeira geração e as cópias imperfeitas (mutadas). Vamos fazer testes novamente. Teremos outro vencedor, o que é MELHOR e qualquer outra Rede Neural na geração. E assim por diante. Nós simplesmente permitimos que os vencedores criem, e eliminem os perdedores, assim como na evolução da vida real, e nós teremos nossa Rede Neural de melhor negociação. Sem qualquer conhecimento prévio sobre o que o sistema de negociação (algoritmo genético) deveria ser. Algoritmo Genético da Rede Neural: Exemplo 0 Este é o primeiro exemplo do algoritmo genético. E muito simples. Nós vamos passar por isso passo a passo, para aprender todos os truques que os exemplos a seguir usarão. O código tem comentários em linha, então vamos apenas nos concentrar nos momentos-chave. Primeiro, criamos uma rede neural. É usar pesos aleatórios, e ainda não foi ensinado. Então, no ciclo, fazemos 14 cópias dele, usando a fumagem MUTATIONNN. Esta função faz uma cópia de uma rede neural de origem. Adicionando valores aleatórios de 0 para (no nosso caso) 0,1 para todos os pesos. Mantivemos alças para 15 NNs resultantes em uma matriz, podemos fazê-lo, pois o identificador é apenas um número inteiro. A razão pela qual usamos 15 NNs não tem nada a ver com a negociação: o software Cortex Neural Networks pode traçar até 15 linhas em um gráfico simultaneamente. Podemos usar diferentes abordagens para o teste. Primeiro, podemos usar o conjunto de aprendizagem, tudo ao mesmo tempo. Em segundo lugar, podemos testar, digamos, 12000 resores (de 100000), e caminhar através do conjunto de aprendizagem, do começo ao fim. Isso tornará os learnigs diferentes, pois buscaremos redes de redes neuronais que sejam rentáveis ​​em qualquer parte de dados, e não apenas em todo o conjunto. A segunda abordagem pode nos dar problemas, se a mudança de dados, desde o início até o fim. Em seguida, a rede evoluirá, obtendo a capacidade de trocar no final do conjunto de dados e perdendo a capacidade de trocar no seu início. Para resolver esse problema, vamos levar aleatoriamente 12000 fragmentos de registros de dados e alimentá-lo para a Rede Neural. É simplesmente um ciclo sem fim, já que 100000 ciclos nunca serão alcançados em nossa velocidade. Abaixo, adicionamos uma criança para cada rede, com pesos ligeiramente diferentes. Note-se que 0,1 para o tange de mutação não é a única escolha, como questão de fato, mesmo este parâmetro pode ser otimizado usando o algoritmo genético. NNs recém-criados são adicionados após 15 existentes. Desta forma, temos 30 NNs em uma matriz, 15 antigos e 15 novos. Então, vamos fazer o próximo ciclo de testes e matar perdedores, de ambas as gerações. Para fazer testes, aplicamos a Rede Neural aos nossos dados, para produzir saídas, e depois chamamos a função Test, que usa essas saídas para simular a negociação. Os resultados da negociação são usados ​​para desidir, quais NNs são melhores. Usamos um intervalo de registros nLearn, de nStart para nStart nLearn, onde nStart é um ponto aleatório dentro do conjunto de aprendizado. O código abaixo é um truque. A razão pela qual usamos é ilustrar o fato de que o algoritmo genético pode criar algoritmos genéticos. Mas não será necessariamente o melhor, e também, sugerir, que podemos melhorar o resultado, se implicarmos algumas limitações ao processo de aprendizagem. É possível que nosso sistema de negociação funcione muito bem em negócios longos, e muito pobre em curto, ou vice-versa. Se, digamos, os negócios longos são muito bons, esse algoritmo genético pode ganhar, mesmo com grandes perdas em transações curtas. Para evitá-lo, atribuímos mais peso a negócios longos em trocas ímpares e curtas em ciclos pares. Este é apenas um exemplo, não há garantia, que irá melhorar alguma coisa. Mais sobre isso abaixo, em discussão sobre correções. Tecnicamente, você não precisa fazê-lo, ou pode fazê-lo de forma diferente. Adicione lucro a uma matriz ordenada. Ele retorna uma posição de inserção, então usamos essa posição para adicionar identificadores de rede Neural, aprendendo e testando lucros para arrays não classificados. Agora, temos dados para a Rede Neural atual no mesmo índice de matrizes que seu lucro. A idéia é chegar à matriz de NNs, ordenados por rentabilidade. Como a matriz é classificada por lucro, para remover 12 das redes, que são menos rentáveis, precisamos apenas remover NNs 0 a 14 As decisões de negociação são baseadas no valor do sinal da Rede Neural, deste ponto de vista o programa é idêntico aos exemplos de Artigo anterior. FOREX Estratégia de negociação: exemplo de discussão 0 Em primeiro lugar, vamos examinar os gráficos. O primeiro gráfico para o lucro durante a primeira iteração não é bom, como seria de esperar, a Rede Neural perde dinheiro (imagem evolution00gen0.png copiado após a primeira iteração da pasta de imagens): a imagem com lucro no ciclo 15 é melhor, às vezes , O algoritmo genético pode aprender muito rápido: no entanto, observe a saturação em uma curva de lucro. É interessante também olhar para a forma como os lucros individuais mudam, tendo em mente, esse número de curva, digamos, 3 nem sempre é para a mesma Rede Neural. Como eles estão nascendo e terminaram o tempo todo: note também que o pequeno sistema de negociação automatizado forex é pobre em transações curtas e muito melhor em longos, o que pode ou não estar relacionado ao fato de que o dólar estava caindo em comparação com Euro durante esse período. Também pode ter algo a ver com os parâmetros do nosso indicador (talvez, precisamos de um período diferente para shorts) ou a escolha de indicadores. Aqui está o histórico após 92 e 248 ciclos: para nossa surpresa, o algoritmo genético falhou completamente. Procuremos descobrir o porquê, e como ajudar a situação. Em primeiro lugar, nenhuma geração deveria ser melhor do que a anterior. A resposta é não, pelo menos não dentro do modelo que usamos. Se tomarmos TODO o aprendizado definido ao mesmo tempo, e o usamos repetidamente para ensinar nossos NNs, então sim, eles melhorarão em cada geração. Mas, em vez disso, tomamos fragmentos aleatórios (12000 registros no tempo) e os usamos. Duas perguntas: por que o sistema falhou em fragmentos aleatórios de conjunto de aprendizado, e por que não usamos todo o conjunto de aprendizado bem. Para responder a segunda pergunta, eu fiz. NNs apresentaram um grande desempenho - no aprendizado definido. E eles falharam no conjunto de testes, pelo mesmo motivo que falha quando usamos o aprendizado da FFPB. Para dizer de maneira diferente, nossos NNs se especializaram demais, eles aprenderam a sobreviver no ambiente ao qual eles costumam, mas não fora dele. Isso acontece muito na natureza. A abordagem que tomamos em vez disso foi destinada a compensar isso, ao forçar NNs a ter um bom desempenho em qualquer fragmento aleatório do conjunto de dados, de modo que, espero, eles também possam realizar em um conjunto de testes desconhecido. Em vez disso, eles falharam tanto no teste quanto no conjunto de aprendizado. Imagine animais, vivendo em um deserto. Muito sol, sem neve. Este é um mercado de metafor para rizing, pois os nossos dados NNs desempenham o papel de meio ambiente. Os animais aprenderam a viver em um deserto. Imagine animais, que vivem em clima frio. Neve e sem sol. Bem, eles se ajustaram. No entanto, em nosso experimento, colocamos aleatoriamente nossos NNs em um deserto, na neve, na água, nas árvores. Apresentando-lhes diferentes fragmentos de dados (aumentando aleatoriamente, caindo, plano). Os animais morreram. Ou, de modo diferente, selecionamos a melhor Rede Neural para o conjunto de dados aleatórios 1, que, digamos, era para o mercado em expansão. Então apresentamos, aos vencedores e seus filhos, uma queda dos dados dos mercados. NNs funcionou mal, nós melhoramos os melhores artistas, talvez, uma das crianças mutantes, que perderam a capacidade de negociar no mercado em expansão, mas conseguiram ter capacidade para lidar com a queda de um. Então, voltamos a mesa novamente e, novamente, conseguimos o melhor desempenho -, mas o melhor entre os artistas pobres. Nós simplesmente não damos a nossos NNs chances de se tornarem universais. Existem técnicas que permitem ao algoritmo genético aprender novas informações sem perder o desempenho em informações antigas (afinal, os animais podem viver no verão e no inverno, certo, então a evolução é capaz de lidar com mudanças repetitivas). Podemos discutir essas técnicas mais tarde, embora este artigo seja mais sobre o uso do software Cortex Neural Networks. Do que sobre a construção de um sistema de negociação automatizado forex bem sucedido. Algoritmo Genético da Rede Neural: Exemplo 1 Agora é hora de falar sobre correções. Um algoritmo genético simples que criamos durante o passo anterior tem duas falhas principais. Primeiro, não conseguiu negociar com lucro. Está tudo bem, podemos tentar usar sistema parcialmente treinado (foi lucrativo no início). A segunda falha é mais séria: não temos controle sobre as coisas, que esse sistema faz. Por exemplo, pode aprender a ser rentável, mas com grandes remessas. É um fato bem conhecido que, na vida real, a evolução pode otimizar mais de um parâmetro simultaneamente. Por exemplo, podemos obter um animal, que pode correr rápido E ser resistente ao frio. Por que não tentar fazer o mesmo no nosso sistema de negociação automatizado forex. Isso é quando usamos correções, que são apenas o conjunto de punições adicionais. Digamos, o nosso sistema comercial com drawdown 0.5, enquanto queremos confirmá-lo para 0 a 0.3 intervalo. Para dizer ao sistema que cometeu um erro, diminuímos seu lucro (um usado para determinar, qual algoritmo genético ganhou) ao grau, que é proporcional ao tamanho do DD. Então, o algoritmo de evolução cuida do resto. Existem alguns outros fatores que queremos levar em consideração: podemos querer ter um número maior ou menor de operações de compra e venda, queremos ter mais operações lucrativas, e depois de falhas, podemos querer que a tabela de lucros Ser linear e assim por diante. Na evolution01.tsc implementamos um conjunto simples de correções. Em primeiro lugar, usamos um número grande para um valor de correção inicial. Nós o multiplicamos a um pequeno (geralmente, entre 0 e 1) valores, dependendo da punição que queremos aplicar. Então, multiplicamos nosso lucro por esta correção. Como resultado, o lucro é corrigido, para refletir o quanto o algoritmo genético corresponde aos nossos outros critérios. Então usamos o resultado para encontrar uma Rede Neural de vencedores. FOREX Estratégia de Negociação: Discutir o exemplo 1 O exemplo 1 funciona muito melhor do que o exemplo 0. Durante os primeiros 100 ciclos, ele aprendeu muito, e os gráficos de lucro parecem tranquilizadores. No entanto, como no exemplo 0, os negócios longos são muito mais rentáveis, o que provavelmente significa que existe um problema em nossa abordagem. No entanto, o sistema encontrou um equilíbrio entre algumas das condições iniciais contraditórias: há algumas dinâmicas positivas tanto no conjunto de aprendizado como, mais importante, no conjunto de testes. As for further learning, at cycle 278 we can see, that our system got overtrained. It means, we still have progress on learning set: But testing set shows weakness: This is a common problem with NNs: when we teach it on learning set, it learns to deal with it, and sometimes, it learns too well - to the degree, when it looses performance on testing set. To deal with that problem, a traditional solution is used: we keep looking for the Neural Network . that performs best on testing set, and save it, overwriting previous best one, every time new peak is reached. This is the same approach, we used in FFBP training, except, this time we have to do it ourselves (adding code, that looks for a best Neural Network on a testing set, and calling SAVENN, or exporting weights of Neural Network to a file). This way, when you stop your training, youll have the best performer ON TESTING SET saved and waiting for you. Note also, that it is not the max. profit you are after, but optimal performance, so consider using corrections, when looking for a best performer on a testing set. Genetic Algorithm for FOREX Technical Analysis: Where now After you got your winner Neural Network . you can follow the steps, described in previous article, to export weights of that Neural Network . and then to use them in your real time trading platform, like Meta Trader, Trade Station and so on. Alternatively, you can focus on other ways of optimizing the Neural Network . unlike with FFBP algorithm, here you can get avay from using learning and testing sets, and move sequential learning. Download Cortex Order Cortex View Price List Visibility is very important for this site. If you like it please link to this URL

No comments:

Post a Comment