Skip to main content

Forex Neural Network Inputs


Descrição: Dois Forex - usando neurônio indicador rede de distribuição direta (feedforward rede neaural), que é o aprendizado por trás propagação de erros (backpropagation). A rede é carregada através de um arquivo DLL, código-fonte C que está anexado. A rede de neurônios não é nada mais do que um modelo não-linear produz em função das entradas. Nas entradas servidas dados do usuário, tais como a série de tempo de amostra. O significado da saída também é definido pelo usuário, por exemplo, sinais 1 comprar 0 vender. A estrutura da rede, novamente definida pelo usuário. A camada de entrada (camada de entrada), cujos elementos são entradas, camadas ocultas (camadas ocultas), consistindo de nós computacionais chamados neurônio s e A camada de saída (camada de saída), que consiste em um ou mais Neurônio s, rendimentos são rendimentos através da rede. Todos os nós de camadas vizinhas são ligados. Essas conexões são chamadas sinapses. Cada sinapse tem um peso (peso w i, j, k), que são multiplicados pelos dados transmitidos pelas sinapses. Os dados movem-se da esquerda para a direita são entradas da rede para suas saídas. Daí o nome rede de distribuição direta. A amostra total desta rede é representada na imagem abaixo Os dados são processados ​​neurônio s em duas etapas: 1. 1. Todas as entradas multiplicado pelo peso adequado, você é adicionado 2. 2. Em seguida, a quantidade resultante manipulado ativação (Função de ativação ou disparo) e (ativação ou função de disparo) e enviado para a única saída. O significado da função de ativação neurônio como é o neurônio de trabalho de modelagem eo cérebro: neurônio é acionado apenas após a informação atingiu um certo limite. Nos aspectos matemáticos, apenas dá a rede de não linearidade. Sem ele, a perda líquida de neurônios seria um modelo linear auto-regressivo (modelo de predição linear). O neurônio da função de ativação mais comum é uma função sigmóide f (x) 1 (1exp (-x)) f (x) 1 (1 exp (-x)) O limiar de ativação dessa função é 0. Esse limiar pode ser deslocado No eixo horizontal à custa de um neurônio de entrada adicional (entrada de polarização), e chamado de entrada de polarização (entrada de polarização), que é atribuído um certo peso da mesma forma que outras entradas do neurônio. Assim, o número de entradas, camadas, neurônios s em cada camada e os pesos de neurônio de entrada de toda a rede de neurônios, ou seja, modelo não-linear, que ele cria. Para usar este modelo, você precisa saber o peso. Os pesos são calculados treinando a rede em dados passados, isto é, com quaisquer dados de entrada anteriores eram valores conhecidos do sinal de saída. Os pesos da rede são otimizados para corresponder à sua saída com a solução de teste. Tipicamente, as entradas para a rede arquivaram vários conjuntos de entrada e dados de saída correspondentes e calculou o desvio de erro médio da saída do teste de rede. A rede de treinamento é para reduzir esse problema, otimizando os pesos. Existem vários métodos de otimização, entre os quais o principal caminho de volta propagação de erros (ALO) eo método de melhoria genética. Arquivos anexados: Train () Test (). Biblioteca BPNN. cpp arquivo contém duas funções: Train () e Test (). Train () foi projetado para treinar a rede para fornecer dados de entrada e saída. Test () é para calcular dados de saída com base nos pesos obtidos após executar Train (). Entrada (cor verde) e saída (azul) parâmetros da função Train () são: double inpTrain - entrada (mais antigo primeiro) double outTarget - Imprint (mais antigo primeiro) double outTrain - sai da rede após o treinamento int ntr - o número de treinamento Conjuntos de entrada-saída int UEW - Gerenciando valores externos chave para inicializar os pesos (1 use extInitWt, 0 use números aleatórios) extInitWt - valores originais de pesos duplos trainingWt - os valores de pesos após o treinamento numLayers - número de camadas na rede Incluindo entrada, oculto e saída int lSz - tamanho do array numLayers, que manteve o número de neurônios s em cada camada. LSz0 lSz 0 especifica o número de entradas de rede int OAF - uma característica chave na ativação do neurônio de saída s (1 função ativada, 0 não) dupla LR - treinamento de velocidade MF duplo - o momento da taxa de aprendizado int nep - o número máximo de Etapas de treinamento (épocas). Epoch consiste em verificar todos os conjuntos de treinamento. MaxMSE duplo - erro médio, no qual a aprendizagem pára. Os parâmetros de entrada (verde) e de saída (azul) da função Test () são: double inpTest - dados de entrada (mais antigo primeiro) double outTest - Imprint int ntt - conjuntos de dados de entrada e saída double extInitWt - valores originais de pesos numLayer - número De camadas na rede, incluindo entrada, oculto e de saída int lSz - tamanho do array numLayers, que manteve o número de neurônios s em cada camada. L lsz 0 especifica o número de entradas de rede int OAF - uma característica chave na ativação do neurônio de saída s (1 função habilitada, 0 não) A ativação dos neurônios de saída depende da natureza da saída. Se os sinais de saída da rede forem binomiais (0 1), então você deve usar a função de ativação (OAF 1). Se a saída é uma previsão de preço, a função de ativação na camada de saída não é necessária (OAF 0). Exemplos de indicadores utilizados neurônio Rede: BPNN Predictor. mq4 - previsão de preços futuros. Os parâmetros de entrada de rede são os incrementos relativos de preços: x i Barra de teste aberta Atraso de barra de teste i -1.0 em que retardo i retirado da série Fibonacci. A produção da rede prevê um aumento relativo dos preços futuros. A função de ativação na camada de saída é desativada. Os parâmetros de entrada são um indicador extern int lastBar - número da última barra extern int futBars - o número de barras previstas no futuro extern int numLayers - número de camadas na rede incluindo entrada, ocultos e saída extern int numInputs - o número de entradas de rede extern Int numNeurons1 - o número de neurônios em uma camada número 1 extern int numNeurons2 - o número de neurônios s na camada número 2 extern int numNeurons3 extern int numNeurons4 externo int numNeurons5 extern int ntr - o número de conjuntos de treinamento de entrada-saída extern - o número máximo de etapas de treinamento (epochs) extern int maxMSEpwr - expoente usado para calcular o máximo de erro de quadrado médio permitido maxMSE maxMSE 10 maxMSEpwr Compra-Venda Classificator. mq4 - buysell. Buy-Sell Classificator. mq4 - indicador preditivo comprar vender sinais. Como no exemplo anterior, a rede de entrada servia xiOpentestbarOpentestbardelayi-1.0 x i Barra de teste aberta Atraso da barra de teste i -1.0 para barras, que no passado receberam sinal para comprar ou vender. Estes últimos sinais são ideais como sinais de entrada para obter um determinado lucro. Sinal de saída de rede é 1 ou 0 comprar vender. A função de ativação da camada de saída. Extern int lastBar - número da última barra extern int minProfit - o lucro mínimo para encontrar o ponto de entrada ideal no passado limite duplo externo - o limite para reconhecer os sinais de saída como 0 ou 1 externo int numLayers - número de camadas em A rede, incluindo a entrada, oculto e saída externa int numInput - o número de entradas de rede externa int numEnterons1 - o número de neurônios em uma camada número 1 extern int numNeurons2 - o número de neurônios s na camada número 2 extern int numNeurons3 extern int NumNeurons3 extern int numNeurons4 externo int numNeurons4 extern int ntr - o número de conjuntos de treinamento de input-output (depende do número de sinais de compra de compra no passado, 0 seleciona todos os sinais válidos) external double LR - a velocidade de aprendizagem Rede externa MF duplo - coeficiente da rede de aprendizagem do tempo extern int nep - o número máximo de etapas de treinamento (epochs) extern int maxMSEpwr - expoente usado para calcular o máximo de todos Owable mean-square erro de aprendizagem maxMSE 10 maxMSEpwr Seta à direita das linhas verdes verticais indicam comprar vender sinais gerados pela rede para testar as futuras barras. As setas à esquerda mostram o ponto de entrada ideal no passado. Arquivos de MetaTrader 4 bibliotecas de especialistas Permite o uso de DLL em metatrader: Ferramentas - Opções - Expert Advisors - Permitir importação DLL Se o arquivo DLL não funcionar, compile você mesmo. Todos os arquivos necessários estão contidos em BPNN. zip. Hybrid Neural Network Estratégias Stop-and-Reverse para Forex As redes neurais têm sido utilizadas em sistemas de negociação por muitos anos com graus variados de sucesso. Sua principal atração é que sua estrutura não linear é mais capaz de captar as complexidades do movimento de preços do que as regras de negociação padrão, baseadas em indicadores. Uma das críticas foi que as estratégias de negociação baseada em redes neurais tendem a ser excessivas e, portanto, não funcionam bem em novos dados. Uma possível solução para este problema é combinar redes neurais com a lógica de estratégia baseada em regras para criar um tipo híbrido de estratégia. Este artigo irá mostrar como isso pode ser feito usando Adaptrade Builder. Em particular, este artigo irá ilustrar o seguinte: Combinação de rede neural e lógica baseada em regras para entradas de comércio Uma abordagem de dados de três segmentos será usada, com o terceiro segmento usado para validar as estratégias finais. O código de estratégia resultante para MetaTrader 4 e TradeStation será mostrado, e será demonstrado que os resultados de validação são positivos para cada plataforma. Redes Neurais como Filtros de Entrada no Comércio Matematicamente, uma rede neural é uma combinação não linear de uma ou mais entradas ponderadas que gera um ou mais valores de saída. Para negociação, uma rede neural é geralmente usada em uma de duas maneiras: (1) como uma previsão de movimento de preços futuro, ou (2) como um indicador ou filtro para negociação. Aqui será considerada a sua utilização como indicador ou filtro comercial. Como indicador, uma rede neural atua como uma condição ou filtro adicional que deve ser satisfeita antes que uma negociação possa ser inserida. As entradas para a rede são tipicamente outros indicadores técnicos, tais como impulso, estocástica, ADX, médias móveis, e assim por diante, bem como os preços e combinações dos anteriores. As entradas são dimensionadas e a rede neural é projetada de modo que a saída é um valor entre -1 e 1. Uma abordagem é permitir uma entrada longa se a saída for maior ou igual a um valor de limite, como 0,5 e a Entrada curta se o resultado for menor ou igual ao negativo do limiar, por exemplo -0,5. Esta condição seria adicional às condições de entrada existentes. Por exemplo, se houvesse uma condição de entrada longa, ela teria que ser verdadeira ea saída de rede neural teria que ser pelo menos igual ao valor de limite para uma entrada longa. Ao configurar uma rede neural, um comerciante seria tipicamente responsável pela escolha das entradas e da topologia de rede e para quottrainingquot a rede, que determina os valores de pesos óptimos. Como será mostrado a seguir, o Adaptrade Builder executa essas etapas automaticamente como parte do processo de construção evolutiva em que o software é baseado. Usando a rede neural como um filtro de comércio permite que ele seja facilmente combinado com outras regras para criar uma estratégia de negociação híbrida, que combina as melhores características tradicionais, com base em regras abordagens com as vantagens das redes neurais. Como um exemplo simples, o Construtor pode combinar uma regra de crossover de média móvel com uma rede neural de modo que uma posição longa seja tomada quando a média de movimento rápido cruza acima da média de movimentação lenta ea saída de rede neural é igual ou acima de seu limite. Estratégias de negociação Stop-and-Reverse Uma estratégia de negociação stop-and-reverse é aquele que está sempre no mercado, seja longo ou curto. Estritamente falando, quotstop-e-reversequot significa que você inverter o comércio quando sua ordem de parar é atingido. No entanto, eu usá-lo como um curto-mão para qualquer estratégia de negociação que inverte de longo a curto a longo e assim por diante, de modo que você está sempre no mercado. Por esta definição, não é necessário que as ordens sejam ordens de parada. Você pode entrar e reverter usando ordens de mercado ou limite também. Também não é necessário que cada lado use a mesma lógica ou mesmo o mesmo tipo de ordem. Por exemplo, você pode inserir long (e sair em curto) em uma ordem de parada e digitar short (e sair long) em uma ordem de mercado, usando diferentes regras e condições para cada entryexit. Este seria um exemplo de uma estratégia assimétrica stop-and-reverse. A vantagem principal de uma estratégia stop-and-reverse é que por estar sempre no mercado, você nunca perde nenhum grande movimento. Outra vantagem é a simplicidade. Quando há regras e condições separadas para entrar e sair de negócios, há mais complexidade e mais que pode dar errado. A combinação de entradas e saídas significa que menos decisões de cronometragem têm de ser feitas, o que pode significar menos erros. Por outro lado, pode-se argumentar que as melhores condições para sair de um comércio são raramente as mesmas que para entrar na direção oposta que entrando e saindo de ofícios são decisões inerentemente separadas que devem, portanto, empregar regras e lógica separadas. Outro inconveniente potencial de estar sempre no mercado é que a estratégia irá negociar através de cada lacuna de abertura. Uma abertura grande abertura contra a posição pode significar uma grande perda antes que a estratégia é capaz de reverter. Estratégias que entram e saem mais seletivamente ou que saem até o final do dia pode minimizar o impacto de abrir lacunas. Uma vez que o objetivo é construir uma estratégia de forex, MetaTrader 4 (MT4) é uma escolha óbvia para a plataforma de negociação dado que MetaTrader 4 é projetado principalmente para forex e é amplamente utilizado para a negociação desses mercados (ver, por exemplo, MetaTrader vs TradeStation : Uma comparação de línguas). No entanto, nos últimos anos, TradeStation tem como alvo os mercados de forex muito mais agressivamente. Dependendo do seu nível de andor de volume de negociação, é possível negociar os mercados de forex através de TradeStation sem incorrer em quaisquer taxas de plataforma ou pagar quaisquer comissões. Os spreads são relatados apertados com boa liquidez nos pares principais do forex. Por estas razões, ambas as plataformas foram segmentadas para este projeto. Vários problemas surgem ao segmentar múltiplas plataformas simultaneamente. Primeiro, os dados podem ser diferentes em diferentes plataformas, com diferenças em fusos horários, cotações de preços para algumas barras, volume e intervalos de datas disponíveis. Para suavizar essas diferenças, os dados foram obtidos de ambas as plataformas, e as estratégias foram construídas ao longo de ambas as séries de dados simultaneamente. As melhores estratégias foram, portanto, as que funcionaram bem em ambas as séries de dados, apesar de quaisquer diferenças nos dados. As configurações de dados usadas no Construtor são mostradas abaixo na Fig. 1. Como pode ser inferido a partir da tabela Dados do Mercado na figura, o mercado de câmbio Eurodollar foi segmentado (EURUSD) com um tamanho de barra de 4 horas (240 minutos). Outros tamanhos de bar ou mercados teria servido tão bem. Eu só era capaz de obter tantos dados através da minha plataforma MT4 como indicado pelo intervalo de datas mostrado na Fig. 1 (série de dados 2), de modo que o mesmo intervalo de datas foi utilizado na obtenção das séries de dados equivalentes da TradeStation (série de dados 1). 80 dos dados foram utilizados para Construção (combinado em amostra e quotout de amostra), com 20 (62014 a 21015) reservado para validação. 80 do original 80 foi então ajustado para quotin-amostra com 20 ajustado para quotout-de-amostra, como mostrado na Fig. 1. O spread de bidask foi fixado em 5 pips, e os custos de negociação de 6 pips ou 60 por lote full-size (100.000 ações) foram assumidos por rodada. Ambas as séries de dados foram incluídas na compilação, conforme indicado pelas marcas de seleção na coluna da esquerda da tabela Dados do Mercado. Figura 1. Configurações de dados de mercado para a construção de uma estratégia de Forex para MetaTrader 4 e TradeStation. Outro problema potencial ao direcionar várias plataformas é que o Builder foi projetado para duplicar a maneira como cada plataforma suportada calcula seus indicadores, o que pode significar que os valores dos indicadores serão diferentes dependendo da plataforma selecionada. Para evitar esta possível fonte de discrepância, quaisquer indicadores que avaliem diferentemente no MetaTrader 4 do que no TradeStation devem ser eliminados da compilação, o que significa que os seguintes indicadores devem ser evitados: Todos os outros indicadores disponíveis para ambas as plataformas são calculados da mesma forma em Ambas as plataformas. TradeStation inclui todos os indicadores que estão disponíveis no Construtor, enquanto o MetaTrader 4 não. Portanto, para incluir apenas os indicadores disponíveis em ambas as plataformas, a plataforma MetaTrader 4 deve ser selecionada como o tipo de código no Construtor. Isso removerá automaticamente todos os indicadores do conjunto de compilação que não estão disponíveis para o MT4, o que deixará os indicadores disponíveis em ambas as plataformas. Além disso, desde que eu observei diferenças nos dados de volume obtidos de cada plataforma, eu removi todos os indicadores dependentes do volume do conjunto de compilação. Por fim, o indicador de hora do dia foi removido devido a diferenças nos fusos horários entre os arquivos de dados. Na fig. 2, abaixo, a lista de indicadores usada no conjunto de compilação é mostrada ordenada por se ou não o indicador foi considerado pelo processo de construção (quotConsiderquot coluna). Os indicadores removidos da consideração pelas razões discutidas acima são mostrados no topo da lista. Os indicadores restantes, começando com o quotSimple Mov Avequot, faziam parte do conjunto de compilação. Figura 2. Seleções de indicadores no Construtor, mostrando os indicadores removidos do conjunto de compilação. As opções de avaliação usadas no processo de construção são mostradas na Fig. 3. Conforme discutido, MetaTrader 4 foi selecionado como a escolha de saída de código. Após as estratégias serem criadas no Construtor, qualquer das opções na guia Opções de avaliação, incluindo o tipo de código, pode ser alterada e as estratégias reavaliadas, que também reescreverão o código em qualquer idioma selecionado. Esse recurso foi usado para obter o código TradeStation para a estratégia final depois que as estratégias foram criadas para o MetaTrader 4. Figura 3. Opções de avaliação no Builder para a estratégia de divisas da EURUSD. Para criar estratégias stop-and-reverse, todos os tipos de saída foram removidos do conjunto de compilação, como mostrado abaixo na Fig. 4. Todos os três tipos de ordens de entrada - mercado, stop e limite - foram deixados como quotconsiderquot, o que significa que o processo de compilação poderia considerar qualquer um deles durante o processo de compilação. Figura 4. Tipos de ordens selecionados no Construtor para criar uma estratégia de parar e inverter. O software Builder gera automaticamente condições lógicas baseadas em regras para entrada e / ou saída. Para adicionar uma rede neural à estratégia, só é necessário selecionar a opção quotInclude uma rede neural em condições de entrada na guia Opções de Estratégia, como mostrado abaixo na Fig. 5. As configurações de rede neural foram deixadas em seus padrões. Como parte da lógica stop-and-reverse, a opção Market Sides foi definida como LongShort, ea opção para quotWait para sair antes de entrar no novo tradequot foi desmarcada. Este último é necessário para permitir que a ordem de entrada para sair da posição atual em uma reversão. Todas as outras configurações foram deixadas nos padrões. Figura 5. Opções de estratégia selecionadas no Builder para criar uma estratégia híbrida usando condições de rede baseadas em regras e de redes neurais. A natureza evolutiva do processo de construção no Construtor é orientada pela aptidão. Que é calculado a partir dos objectivos e condições definidos no separador Métricas, como mostrado abaixo na Fig. 6. Os objetivos de construção foram mantidos simples: maximizar o lucro líquido minimizando a complexidade, que foi dado um pequeno peso em relação ao lucro líquido. Mais ênfase foi colocada nas condições de construção, que incluíram o coeficiente de correlação ea significância para a qualidade da estratégia geral, bem como a média das barras nos comércios eo número de negócios. Inicialmente, apenas as barras médias em negócios foram incluídas como uma condição de construção. No entanto, em algumas das primeiras construções, o lucro líquido estava sendo favorecido ao longo da duração do comércio, de modo que a métrica de número de negócios foi adicionada. A faixa especificada para o número de negócios (entre 209 e 418) é equivalente ao comprimento médio de comércio entre 15 e 30 barras com base no número de barras no período de construção. Como resultado, adicionando esta métrica colocar mais ênfase na meta de comércio de comprimento, o que resultou em mais membros da população com a gama desejada de comprimentos comerciais. Figura 6. Criar objetivos e condições definidas na guia Métricas determinam como a aptidão é calculada. As condições para a seleção de estratégias de topo duplicam as condições de compilação, exceto que as condições de estratégias de topo são avaliadas em toda a faixa de dados (não incluindo o segmento de validação, que é separado), e não apenas sobre o período de compilação, como é o caso do Condições de construção. As melhores condições de estratégias são usadas pelo programa para deixar de lado quaisquer estratégias que atendam a todas as condições em uma população separada. As configurações finais são feitas na guia Build Options, como mostrado abaixo na Fig. 7. As opções mais importantes aqui são o tamanho da população, o número de gerações ea opção de redefinição com base no desempenho do quotout-of-samplequot. O tamanho da população foi escolhido para ser grande o suficiente para obter boa diversidade na população, enquanto ainda é pequeno o suficiente para construir em um período razoável de tempo. O número de gerações foi baseado em quanto tempo demorou durante algumas compilações preliminares para que os resultados começassem a convergir. Figura 7. As opções de construção incluem o tamanho da população, o número de gerações e as opções para redefinir a população com base no desempenho quotout-of-samplequot. A opção para quotReset no Desempenho Out-of-Sample (OOS) inicia o processo de compilação após o número especificado de gerações se a condição especificada for atendida nesse caso, a população será redefinida se o lucro líquido quotout-of-samplequot for Menos de 20.000. Este valor foi escolhido com base em testes preliminares para ser um valor suficientemente alto que provavelmente não seria alcançado. Como resultado, o processo de compilação foi repetido a cada 30 gerações até manualmente interrompido. Esta é uma maneira de deixar o programa identificar estratégias baseadas nas condições Top Strategies durante um período de tempo prolongado. Periodicamente, a população Top Strategies pode ser verificada e o processo de compilação cancelado quando estratégias adequadas são encontradas. Note que eu coloquei quotout-of-samplequot entre aspas. Quando o período de quotout da amostra é usado para reiniciar a população dessa maneira, o período de quotout da amostra não é mais verdadeiramente fora da amostra. Desde que esse período está sendo usado agora para guiar o processo de construção, sua efetivamente parte do período de amostragem. É por isso que é aconselhável reservar um terceiro segmento para validação, como foi discutido acima. Após várias horas de processamento e uma série de reconstruções automáticas, uma estratégia adequada foi encontrada na população Top Strategies. Sua curva fechada de equidade comercial é mostrada abaixo na Fig. 8. A curva de equidade demonstra desempenho consistente em ambos os segmentos de dados com um número adequado de negócios e essencialmente os mesmos resultados em ambas as séries de dados. Figura 8. Curva de equity de fechamento para a estratégia de stop-and-reverse do EURUSD. Para verificar a estratégia durante o período de validação, os controles de data na guia Mercados (ver Figura 1) foram alterados para a data final dos dados (2112015) e a estratégia foi reavaliada selecionando o comando Avaliar da Estratégia Menu no Construtor. Os resultados são mostrados abaixo na Fig. 9. Os resultados de validação na caixa vermelha demonstram que a estratégia se manteve em cima de dados não utilizados durante o processo de compilação. Figura 9. Curva de equity de negociação fechada para a estratégia stop-and-reverse EURUSD, incluindo o período de validação. A verificação final é para ver como a estratégia realizada em cada série de dados separadamente usando a opção de saída de código para essa plataforma. Isto é necessário porque, como explicado acima, pode haver diferenças nos resultados dependendo de (1) o tipo de código, e (2) as séries de dados. Precisamos verificar se as configurações escolhidas minimizam essas diferenças, conforme pretendido. Para testar a estratégia do MetaTrader 4, a série de dados da TradeStation foi desmarcada na guia Mercados e a estratégia foi reavaliada. Os resultados são mostrados abaixo na Fig. 10, que duplica a curva inferior na Fig. 9. Figura 10. Curva de capital fechado para a estratégia de stop-and-reverse EURUSD, incluindo o período de validação, para o MetaTrader 4. Finalmente, para testar a estratégia para TradeStation, foi selecionada a série de dados da TradeStation ea série para MetaTrader 4 foi desmarcado na guia Mercados, a saída de código foi alterada para quotTradeStation, quot ea estratégia foi reavaliada. Os resultados são mostrados abaixo na Fig. 11 e parecem ser muito semelhantes à curva do meio na Fig. 9, como esperado. Figura 11. Curva de capital fechado para a estratégia de stop-and-reverse EURUSD, incluindo o período de validação, para a TradeStation. O código para ambas as plataformas é fornecido abaixo na Fig. 12. Clique na imagem para abrir o arquivo de código da plataforma correspondente. Examinar o código revela que a parte baseada em regras da estratégia usa diferentes condições relacionadas à volatilidade para os lados longo e curto. As entradas de rede neural consistem em uma variedade de indicadores, incluindo dia-de-semana, tendência (ZLTrend), alta intraday, osciladores (InvFisherCycle, InvFisherRSI), bandas Bollinger e desvio padrão. A natureza híbrida da estratégia pode ser vista diretamente na instrução de código (a partir do código TradeStation): Se EntCondL e NNOutput gt 0,5, em seguida, começar a compra (quotEnMark-Lquot) partes NShares próxima barra no mercado A variável quotEntCondLquot representa a entrada baseada em regras Condições, e quotNNOuputquot é a saída da rede neural. Ambas as condições têm de ser verdadeiras para colocar a ordem de entrada longa. A condição de entrada curta funciona da mesma maneira. Figura 12. Código da estratégia de negociação para a estratégia stop-and-reverse EURUSD (à esquerda, MetaTrader 4 à direita, TradeStation). Clique na figura para abrir o arquivo de código correspondente. Faça o download de um arquivo de projeto Builder (.gpstrat) contendo as configurações descritas neste artigo. Este artigo analisou o processo de construção de uma estratégia de rede híbrida baseada em regras para o EURUSD, utilizando uma abordagem de stop-and-reverse (sempre no mercado) com o Adaptrade Builder. Foi mostrado como o código de estratégia pode ser gerado para múltiplas plataformas selecionando um subconjunto comum dos indicadores que funcionam da mesma maneira em cada plataforma. Foram descritas as configurações necessárias para gerar estratégias que revertem de longo para curto e para trás e foi demonstrado que a estratégia resultante foi positiva em um segmento de dados de validação separado. Verificou-se também que a estratégia gerou resultados semelhantes com os dados e opção de código para cada plataforma. Como discutido acima, a abordagem stop-and-reverse tem várias desvantagens e pode não ser atraente para todos. No entanto, uma abordagem sempre-no-mercado pode ser mais atraente com dados forex porque os mercados de forex comercializam o tempo todo. Como resultado, não há abertura de abertura de abertura e as ordens de negociação estão sempre ativas e disponíveis para reverter o comércio quando o mercado muda. O uso de dados intradiários (barras de 4 horas) forneceu mais barras de dados para uso no processo de construção, mas foi de outra forma bastante arbitrário, pois a natureza sempre-no-mercado da estratégia significa que os negócios são realizados de um dia para o outro. O processo de construção foi deixado evoluir diferentes condições para entrar longas e curtas, resultando em uma estratégia assimétrica stop-and-reverse. Apesar do nome, a estratégia resultante entra em operações longas e curtas em ordens de mercado, embora as ordens de mercado, parada e limite fossem consideradas pelo processo de construção de forma independente para cada lado. Na prática, inverter de longo para curto significaria vender curto duas vezes o número de ações no mercado como a estratégia era atualmente longo, e. Se a posição longa atual era 100.000 partes, você venderia 200.000 partes curtas no mercado. Da mesma forma, se a posição curta atual fosse 100.000 partes, você compraria 200.000 partes no mercado para inverter de curto a longo. Um histórico de preços mais curto foi usado do que seria ideal. No entanto, os resultados foram positivos no segmento de validação, sugerindo que a estratégia não era excessiva. Isso suporta a idéia de que uma rede neural pode ser usada em uma estratégia de negociação sem necessariamente superar a estratégia para o mercado. A estratégia apresentada aqui não se destina a negociação real e não foi testada em tempo real de rastreamento ou negociação. No entanto, este artigo pode ser usado como um modelo para o desenvolvimento de estratégias semelhantes para o EURUSD ou outros mercados. Como sempre, qualquer estratégia de negociação que você desenvolver deve ser testado completamente em tempo real de rastreamento ou em dados separados para validar os resultados e familiarizar-se com as características de negociação da estratégia antes da negociação ao vivo. Este artigo foi publicado na edição de fevereiro de 2015 do boletim Adaptrade Software. OS RESULTADOS DE DESEMPENHO HIPOTÉTICOS OU SIMULADOS TÊM CERTAS LIMITAÇÕES INERENTES. DESCONHECIDO UM REGISTO DE DESEMPENHO REAL, OS RESULTADOS SIMULADOS NÃO REPRESENTAM A NEGOCIAÇÃO REAL. TAMBÉM, SENDO QUE OS COMÉRCIOS NÃO REALMENTE SÃO REALIZADOS, OS RESULTADOS PODERÃO TER OU NÃO COMPENSADO PARA O IMPACTO, SE HOUVER, DE CERTOS FATORES DE MERCADO, COMO A FALTA DE LIQUIDEZ. OS PROGRAMAS SIMULADOS DE NEGOCIAÇÃO EM GERAL SÃO TAMBÉM SUJEITOS AO FATO QUE SÃO PROJETADOS COM O BENEFÍCIO DE HINDSIGHT. NENHUMA REPRESENTAÇÃO ESTÁ SENDO SENDO QUE QUALQUER CONTA PODERÁ OU É POSSÍVEL CONSEGUIR GANHOS OU PERDAS SEMELHANTES AOS MOSTRADOS. Se você gostaria de ser informado sobre novidades, novidades e ofertas especiais da Adaptrade Software, por favor junte-se à nossa lista de e-mails. Obrigado. Redes neurais na negociação: Escolhendo entradas e saídas Quando você constrói uma rede neural uma das primeiras coisas que você precisa decidir é quais valores serão as entradas e quais valores serão as saídas de sua rede. As saídas são os valores que você deseja predizer 8211 para fazer lucro dentro de um sistema de negociação 8211 e as entradas são os valores que lhe permitirão prever as saídas com precisão suficiente como para constituir uma ineficiência. Agora escolher insumos e saídas não é tarefa trivial, pois isso constitui a maioria do sucesso ou fracasso de uma rede de negociação neural. Dentro today8217s post vou compartilhar com você algumas dicas sobre como escolher as entradas e saídas e como eles podem levar a ineficiências de maneiras que podem não ser muito intuitivo. Também vou explicar por que as soluções de inputoutput mais computacionalmente sadias podem não ser as melhores e por que esse é o caso. Uma rede neural é formada por um conjunto de camadas de funções que transformam um determinado conjunto de variáveis ​​de entrada (a camada de entrada) em um dado conjunto de valores de saída (a camada de saída). Entre as camadas de entrada e de saída, você encontrará uma quantidade variada de camadas e funções (neurônios) dependendo do que escolher 8211, que tentará transformar entradas em saídas com o menor erro possível. Isto é feito com a ajuda de conjuntos de treino que permitem à rede ajustar os seus coeficientes de camadas ocultas para se ajustar a um conjunto de dados para os quais os dados de entrada e de saída já são conhecidos. A esperança, é claro, é que a rede mantenha pelo menos o mesmo poder preditivo dentro de um conjunto não treinado. The first thing you need to choose when you build a neural network for trading is exactly what values you want to predict. Do you want to predict the next day8217s close The next week8217s close The next support or resistance level Choosing the output of the network first allows you to know how you8217re going to build your inputs as you need to choose values that are able to predict the desired output. A very important thing here is to consider how you will normalize the output and if the output falls into what the neural network is 8220best at doing8221. Remember that in neural networks output values need to range from -1 to 1 (when using efficient sigmoid symmetric functions) since arbitrary outputs require the use of linear functions which are 8220very bad8221 at fitting the network. Once you choose the output you want the next logical step is to build inputs that you believe are predictive towards this output. Certainly before building the network there is no way of telling if one input will be better than another but you can obviously reduce the amount of variables you will use by doing a PCA (Principal Component Analysis) to filter out those variables which are evidently and heavily correlated. For example you might be interested in predicting the next week8217s close and you decide to use as inputs past weekly closes, open, highs and lows but it turns out that a PCA analysis 8211 as an example, I don8217t know if this is the case 8211 tells you that the close and open are very correlated and therefore it makes sense to only use the close, high and low. The PCA technique allows us to eliminate those variables which might be redundant within the network and therefore only increase complexity without increasing the quality of the results. Once you have a set of variables which are not correlated it is time to test how much predictive power they actually have against your desired output. If the results are initially discouraging it may be because you are missing an important piece of information within your inputs or because the shape of your output isn8217t appropriate. For example if you want to predict the weekly close and you have attempted to normalize it by diving it over the last week8217s close and then dividing it by two then doing a different mathematical operation over the output might increase the predictive quality of your network. Sometimes including information related with all inputs within the output can be a handy trick to 8220force8221 the network into 8220using8221 every piece of knowledge it has although the results will vary and you will need to assess which one works better. A very difficult aspect of neural network development for trading systems is to actually choose outputs which are useful for trading system development and yet accurate enough. For example you may be tempted to choose outputs and inputs that are very efficient for the neural network 8211 such as an output between 0 an 1 attempting to predict a week8217s change 8211 but it turns out that this is not predicted as well as predicting the week8217s close because predicting the weekly change using weekly change data makes the network loose a very important piece of information (absolute support and resistance levels) which are derived from direct price information. From a computational point of view it seems like the best solution but from a trading point of view you8217re missing a vital piece of information which is not included in weekly change data. A very interesting thing I have found out in the networks I have developed for Sunqu is that the use of absolute price values is very good since the network learns about support and resistance levels as they develop, actually trading around them in a certain way. Obviously the actual calculations done by the networks and their meaning are not known (remember that a neural network is for all practical purposes a black box) but looking at how trades are executed by the network shows a certain 8220taking into account8221 of things such as support and resistance. Since price is what you want to capture then taking into account absolute price values and basing predictors on them is a more straighforward way to system building than attempting to develop indicator output based networks. However this doesn8217t mean that you couldn8217t get good results in this way. Predicting things like RSI extremes will allow you to take advantage of rapid price movements before they happen and predicting moving average shifts in the long term will allow you to take long term trend following positions. Nonetheless whatever you want to predict (your output choice) needs to be accompanied by a very judicious decision of which inputs you will use, reinforced by an adequate PCA analysis which can show you the quality of your inputs and how well separated they are from one another. The pair choice will also be very important as certain pairs need fundamental inputs as they deeply affect the way in which they behave (a good example is a USDCAD neural network using US oil futures data). If you would like to learn more about my work in automated trading and how you too can get a true education in this field please consider joining Asirikuy. a website filled with educational videos, trading systems, development and a sound, honest and transparent approach towards automated trading in general. I hope you enjoyed this article. o)Neural Networks I personally feel that in order for us to create a truly robust Trading System we need to think outside the box. I also feel that we need to develop new tools rather than try to optimize old methods. It is amazing to see everyone here work so hard at building systems and for the benefit of all. I guess thats why I stopped lurking and would like to contribute. A few things I have been interested in and have been working on. Spectral Analysis. I have some software to create digital filters of raw price action. Neural Networks: cool but still boggles my mind. Market Sentiment: ideas in PDFs Attached Is anyone interested in brainstorming I think I will start with a lagging digital filter on the 30 minute euro. Neural Network Indicators Development Im trying to make some neural network indicators for metatrader4, and would like some sugestions, mostly regarding inputs and outputs of the net, and maybe the structure or type of net that you consider the best for this application. As far as in know the best outputs for financial series forecasting, are price range forcasting, tops or bottoms forecasting, and that tipe of things. Forecasting directly the price (open, close) doesnt get good results because to numerous reasons, for example a little shift on the time between the open time and the close time could change their values considerately. If anyone has a sugestion ill be glad to listen to it and try it. By the way, im no expert neural network programmer, i just have a good overall idea on the subject P. Thanks in advance, Im trying to make some neural network indicators for metatrader4, and would like some sugestions, mostly regarding inputs and outputs of the net, and maybe the structure or type of net that you consider the best for this application. As far as in know the best outputs for financial series forecasting, are price range forcasting, tops or bottoms forecasting, and that tipe of things. Forecasting directly the price (open, close) doesnt get good results because to numerous reasons, for example a little shift on the time between the open time and the close time could change their values considerately. If anyone has a sugestion ill be glad to listen to it and try it. By the way, im no expert neural network programmer, i just have a good overall idea on the subject P. Thanks in advance, NN is my thesis couple years ago. but almost forgotten now This idea can refresh my mind again. I think NN based on pattern recognition using backpropagation is good for forex data mining. Im prefer using high low data to feed the NN in order to predict the next daily range data.. I also think using high and low is much better than using open or close, to be truth i dont really like the open and close values for intraday analisis, as they seem rather inestable values if you make a displacement on when you place your start point. Median price also looks good, but i prefer highlow as the information loss in less. Ill probably use a moving average of the high and one of the low. Ive found the JMA to be a really good filter in comparison to regular MAs so ill do my first tests using a short period JMA without phase changes to avoid distorsion. So far the inputs im considering for predicting future ranges are: - JMA of High JMA of Low. - Date (Day of Month, ex. Monday, Thuesday. ). The other idea i have in mind is to use NN to forecast news events direction. I have a quite big database of forex fundamentals since some years, so i may use those as inputs. As for what type of neural network to use, im still doing some research, backpropagation NNs are the common standard for NNs, but there are others that seem to have very good results, like the time lagged recurrent networks (but they are hard to train and understand). Other idea i had, was to use a Fukushima NN, those are mainly made for image processing, but with some modifications i think they could be used for pattern recognition on timeseries. It is the thread where people are developing Neural Networks indicator for MT4. In Russian language, sorry. - they started with some e-books and articles - then some library files for Delphi 4 (NeuralBase, Neural Network Wizard, GeneBase, SOMBase, WavUtils) - then they coded many versions of indicator NeuroProba. mql4 (author is Rosh) - then they tested it and found many bugs and mistakes in calculation. This thread is not closed yet and seems they are continuing to development (it is necessary to register on their forum to see the attachments). Besides I found this link about Neural Networks (in English). It is the thread where people are developing Neural Networks indicator for MT4. In Russian language, sorry. - they started with some e-books and articles - then some library files for Delphi 4 (NeuralBase, Neural Network Wizard, GeneBase, SOMBase, WavUtils) - then they coded many versions of indicator NeuroProba. mql4 (author is Rosh) - then they tested it and found many bugs and mistakes in calculation. This thread is not closed yet and seems they are continuing to development (it is necessary to register on their forum to see the attachments). Besides I found this link about Neural Networks (in English). Awsome New Digital Ill look at the material in a few minutes. gotta break out the russian..which isnt so great, but I think that coupled with AltaVista ill be able to make a decent attempt. Im currently coding in CORTEX on other Neural Networks (NN from now on) and im planning to convert into MQ4. I think we should DEFINATLY keep this thread going because (and this is an opinion) NN are THE future of tecnical anaylsis. NNs, for those who arent geek enough to know..are basically algorythms that mimic the brain (not nessisarily the human brain..cuz that would be Mind bustingly complicated) in that it learns as it goes. Im writing the EAs to give advice on whether or not to take a particular signal based on small patterns that have come before when a similer signal was given. Thats what most NNs do, they search data for small patterns that would be meaningless to us, or even other algorthms and see what those patterns do over time. The first EA will feature Brain Trend. I ask that everyone be patient though, CORTEX coding takes time. rather, it takes time to train the NNs and perfect them. If anyone here is familier with CORTEX or Code conversion, any help would be appreciated. I understand why russian forum would go commercial. NNs are the current style with big money traders. Assim. what do you guys say i say take 2 moving averages, few sup-res lines and 1 or two filters and trade if you cant make money of simple system like this than dont expect from some NN to make you rich from my 3 years forex expirience i know how i would build perfect system but it will be long long coding. at leats 3 time frames to look, covering all possible situations, range, trend. and then aplying few systems together to get perfect results my advice to you is if you know how to trade than first trade, make money and one day when you have enaugh you can try to make NN JUST JOKING but botom line you dont need some NN to make money trading i spent second year of my trading making programms and testing dosens of systems and one day i realise i am not trading any of them and lot was good, profitable. i had first to reprogramm my brain to avoid fear, greed. and to discipline myself (and lost almost 70 of my account during that time) first find good system (there is several good here) make money, learn and than try to teach this NN to trade this system or just make EA to autotrade for you and when you make enaugh money you can buy comercial NN i say take 2 moving averages, few sup-res lines and 1 or two filters and trade if you cant make money of simple system like this than dont expect from some NN to make you rich from my 3 years forex expirience i know how i would build perfect system but it will be long long coding. at leats 3 time frames to look, covering all possible situations, range, trend. and then aplying few systems together to get perfect results my advice to you is if you know how to trade than first trade, make money and one day when you have enaugh you can try to make NN JUST JOKING but botom line you dont need some NN to make money trading i spent second year of my trading making programms and testing dosens of systems and one day i realise i am not trading any of them and lot was good, profitable. i had first to reprogramm my brain to avoid fear, greed. and to discipline myself (and lost almost 70 of my account during that time) first find good system (there is several good here) make money, learn and than try to teach this NN to trade this system or just make EA to autotrade for you and when you make enaugh money you can buy comercial NN I know what you mean I spend months going over historical data for all kinds of indicators and systems. and the bottom line is that any number of them could make pips on any given trade. All im saying here is that it would be nice to have an INDIPENDANT system, that works in a DIFFERENT way to either confirm or deny what your indicator or system is telling you. I trade with Brain Trend, MTFMACD, MoneyMap (MQ4 version) and I do pretty well. But it would still be nice to have that secondary system running in the background to say based on 15 years of historical data, this signal when occuring with this currency pair, in this time frame, with this volume, has proven to be unreliable, I cant advice this trade Yes, some might call it overkill. but I call it having a FOREX pro wathcing over my shoulder. For as long as humans are creatures of habit and continue to create cycles (of any size) I would argue that this is what a well trained FOREX NN would be. I dont call that overkill if it keeps me from losing some chips. Our experiances seem strikingly similer, though, im a newbie. just starting my second year as a trader trading with real money. I spent the last several months just going over indicators THAT I KNEW WORKED. and just spinning my wheels..for fear of making bad trades. But..I guess thats why I want to develope the NN. it doesnt know fear, and responds to market data the way no human can. They can find meaning in the smallest of price patterns. things that our ordinary indicators cant. If MQ4 indicators are binoculars..then the NN is the hubble. I think its worth developing here. Thanks NewDigital, I found a copy of neuroproba. It looks interesting. I dont see any bugs in the MQ4 file, but without seeing the script for the NN I cant say if it is accurate or not. one reason people might have given up on it is that for it to do anything but show two horizontal lines (one red and one yellow, with the version I have) you have to set the StudyNumber to above 100. I tweaked it and got it to match the signals that Brain Trend gives. That setting is 200. Im not sure about the NN aspect of this indicator though. Do you possibly know where a copy of the script file for the NN might be floating around Oh, and the second link you gave is to snowseed, where they talk about CORTEX, which is a very good freeware program for programming NNs. Thanks New Digital Join us download MetaTrader 5 Copyright 2000-2016, MQL5 Ltd.

Comments

Popular posts from this blog

Is Binário Opções Legais

É Binário Trading Legal nos EUA. Saiba mais sobre esses corretores em nossos comentários Você pode encontrar os detalhes básicos, ver capturas de tela e aprender os nossos editores pensamentos sobre o corretor antes de depositar o seu próprio money. BinaryMate listados Live webcam conta gerentes Novo toque interessante sobre Como o comércio EUA amigável e ótimo serviço ao cliente. Nadex listados Agora listando Nadex como um dos nossos confiáveis ​​corretores binários Eles são uma troca dos EUA com HQ em Chicago Estes caras são regulamentados pelos EUA CFTC. BOL Financial Conhecido como um honesto apostas desportivas site Betonline Está oferecendo agora um produto binário da opção Eu recomendo-os altamente para o comerciante ocasional que apenas quer apostar em que o preço da maneira está movendo Você começa um bônus da qualidade se você o quer, retornos enormes e quando você ganha você começ pagado. Os corretores que são regulados por CySec muitos deles parem de aceitar negociantes nov

Binário Opção Estratégia Ebook

Opções binárias Estratégia PDF. Where você pode encontrar opções binárias Estratégia em PDF. Amongst os vários eBooks disponíveis on-line, um dos mais procurados após um é Os blocos de construção para ter sucesso com negociação de opções binárias O livro coloca ênfase em aprender as dicas comerciais para que Os comerciantes fazem menos erros e don t perder dinheiro Esta estratégia de opções binárias PDF também fala sobre as ferramentas para negociação e também as técnicas de análise de mercado e como usar essas análises enquanto negociação Um aprende as várias estratégias de negociação e pegar o caminho certo para Este livro diz-lhe a importância das plataformas de negociação e como escolher um para o melhor lucro Esta estratégia de opções binárias PDF oferece orientação passo a passo sobre a criação de comércios O eBook oferece orientação profissional livre de tempo para seus usuários registrados. Você pode aprender o Truques de negociação de opções binárias de seus especialistas e lê

Marvel Vs Sistema Trading Card Game

Marvel Trading Card Game. Marvel Trading Card Game é um popular, jogo livre apenas disponível para Windows, que pertence à categoria PC jogos com subcategoria Cards. More sobre Marvel Trading Card Game. Desde o jogo foi adicionado ao nosso catálogo em 2007, Tem conseguido 93.063 downloads, e na semana passada ele tinha 17 downloads. Marvel Trading Card Game está disponível para usuários com o sistema operacional Windows 98 e versões anteriores, e está disponível em diferentes idiomas, como Inglês, Espanhol e Chinesetrad Seu número de versão atual Não está disponível e foi atualizado em 2 26 2007.Sobre o download, Marvel Trading Card Game é um jogo de peso que ocupa mais espaço do que o jogo médio na categoria jogos de PC É um jogo frequentemente baixado na Índia, Estados Unidos, E Romania. Author revisão s. Marvel Trading Card Game é um cartão baseado em estratégia de jogo de vídeo com o Universo Marvel para o Nintendo DS, PSP PlayStation sistema portátil e PC Com base no best-seller t