Advanced Price Movement Predictor Pro Edition MT4 Ele prevê o movimento de preço de curto prazo mais provável baseado em cálculos matemáticos avançados. Estimação do movimento imediato dos preços Cálculo da tendência do mercado real Cálculo dos níveis mais importantes de suporte e resistência Algoritmos otimizados para fazer cálculos matemáticos complexos com um escoamento mínimo de recursos do sistema Autoajuste para melhor desempenho, por isso é capaz de funcionar corretamente em qualquer símbolo (Não importa o quão exótico é) e qualquer período de tempo Compatível com qualquer plataforma MetaTrader, independentemente do número de dígitos ou outros parâmetros Compatível com qualquer outra ferramenta (indicador, EA ou script) sem diminuir o desempenho do terminal e as operações de negociação. Introdução A maioria dos indicadores clássicos que compõem as estratégias de negociação comuns são baseadas em matemática simples, não porque, quando esses indicadores foram criados, não havia matemáticos destacados (na verdade, provavelmente havia provavelmente os melhores matemáticos do que agora), mas porque os computadores não existiam Ou eles simplesmente tinham um baixo poder de processamento para executar operações matemáticas complexas consistentemente. Hoje em dia, qualquer smartphone ultrapassa irresistivelmente o computador mais poderoso há poucas décadas atrás. Portanto, a capacidade de processar enormes quantidades de informações não é uma limitação nestes dias, exceto para simulações de processos extremamente complexas. O indicador de Predictor de Movimento de Preço Avançado (APMP) tira proveito da capacidade de processamento atual para capturar a essência dos balanços de preços através de alguns dos conceitos matemáticos, estatísticos e probabilísticos mais avançados. O APMP não fornece uma predição em si, já que o movimento de preços é um processo estocástico não estacionário e, portanto, não é previsível. No entanto, faz uma estimativa dinâmica e altamente confiável do movimento imediato dos preços. Com base na mesma análise, a APMP exibe a atual tendência real do mercado. Por que a tendência real não é real, a tendência obtida com outros indicadores Até agora, a tendência é quase sempre obtida a partir de indicadores clássicos como Moving Averages, Bollinger Bands ou Parabolic SAR, ou simplesmente pelo método tradicional de desenhar manualmente uma linha (ou duas linhas paralelas) Entre dois ou mais pontos significativos. Obviamente, esses indicadores e métodos ainda são válidos, especialmente porque eles são usados pela maioria dos comerciantes, mas a maioria deles obtém lucros sustentados. Nós temos a intuição de que eles não. Com este indicador, você pode fortalecer ou melhorar o seu método de negociação atual, ou você pode simplesmente ignorá-lo, porque você verá que mesmo o comportamento mais caótico, como o preço do mercado, respeita os grandes números e se limita ao rigor de todos os poderosos Leis matemáticas. Como usá-lo basicamente, o uso da APMP não é diferente de como você usa regularmente tendências e níveis de suporte e resistência. A diferença fundamental é a confiabilidade e robustez dos valores calculados por este indicador. O uso regular da APMP é o seguinte: para as estratégias de negociação com base na tendência, os comerciantes devem comprar em áreas próximas aos níveis de suporte, enquanto a tendência é alta e vender em áreas próximas aos níveis de resistência, enquanto a tendência está baixa. Para estratégias de negociação baseadas em correções de tendência (contra tendência), os comerciantes devem comprar em áreas próximas aos níveis de suporte enquanto a tendência está baixa e vender em áreas próximas aos níveis de resistência, enquanto a tendência está em alta. Observe que níveis significativos podem atuar como suporte ou resistências, por isso é importante ter isso em mente ao projetar nossa estratégia comercial e prestar especial atenção ao comportamento dos preços sempre que estiver próximo desses níveis. A Stop Loss poderia estar localizada a uma distância do preço aberto igual à separação entre o suporte e os níveis de resistência, e a distância Take Profit pode ser o dobro da separação anterior. Além disso, seria uma boa idéia usar um recurso de Trailing Stop para mover a Stop Loss quando o suporte e os níveis de resistência estão se movendo em favor da posição. A estratégia descrita acima é apenas uma sugestão básica, mas a APMP fornece informações suficientes para criar uma variedade de estratégias de negociação e melhorar as existentes. Será interessante ouvir sobre diferentes estratégias derivadas desse indicador. Como funciona O APMP mostra as seguintes informações: níveis de suporte e resistência mais próximos do preço de mercado no prazo atual e para o resto dos períodos mais altos. A tendência real e o movimento de preço de curto prazo mais provável no atual período de tempo e para o resto de períodos mais elevados. Alertas quando aparecem zonas de congestionamento e quando o preço cruza qualquer um dos níveis importantes. As zonas de congestionamento são aquelas em que dois ou mais níveis coincidem. Os usuários também podem ativar os alertas de caixa de diálogo e e-mail. Ambos os alertas APMP e MetaTrader são acompanhados por bip (alerta sonoro). Além disso, todos os alertas são impressos na guia de especialistas para permitir futuras referências e análises. Nota: quando o APMP está ligado a um símbolo pela primeira vez ou depois de um longo período de tempo, pode demorar até um minuto para processar todos os dados dos diferentes cronogramas para avaliar, por isso recomendamos que você atualize todos os períodos do símbolo ( S) que você deseja usar e, assim, o APMP funcionará corretamente desde o início. Somos uma pequena equipe de coderstraders que fornecem serviços de programação profissional para o mundo comercial, principalmente para a plataforma MetaTrader. Nossa equipe tem cerca de 7 anos (como média) de experiência comercial e cerca de 6 anos (como a média) dedicada à programação no MetaTrader. Desenvolvemos Scripts, Indicadores e Assessores Especialistas para muitos clientes em todo o mundo e para uso próprio, como é o caso do indicador de Predictor de Movimento de Preço Avançado (APMP). MetaTrader 4 - Indicadores Próximo preditor de preços usando Neural Network - indicador para MetaTrader 4 06262009 - adicionou um novo indicador BPNN Predictor com Smoothing. mq4, em que os preços são alisados usando EMA antes de previsões. 08202009 - corrigiu o código que calcula a função de ativação do neurônio para evitar a exceção aritmética atualizada BPNN. cpp e BPNN. dll 08212009 - adicionado limpeza da memória no final da execução da DLL atualizada BPNN. cpp e BPNN. dll Breve teoria das redes neurais: Neural A rede é um modelo ajustável de saídas como funções das entradas. Consiste em várias camadas: camada de entrada. Que consiste na camada escondida de dados de entrada. Que consiste em processar nós chamados de camada de saída de neurônios. Que consiste em um ou vários neurônios, cujas saídas são as saídas da rede. Todos os nós das camadas adjacentes estão interligados. Essas conexões são chamadas de sinapses. Toda sinapse tem um coeficiente de escala designado, pelo qual os dados propagados através da sinapse são multiplicados. Esse coeficiente de escala é chamado de pesos (wijk). Em uma Rede de Neural Feed-Forward (FFNN), os dados são propagados a partir de entradas para as saídas. Aqui está um exemplo de FFNN com uma camada de entrada, uma camada de saída e duas camadas ocultas: a topologia de uma FFNN é muitas vezes abreviada da seguinte forma: lt de inputsgt - lt de neurônios na primeira camada escondida - lt de neurônios no segundo escondido Layergt -. - Lt de outputsgt. A rede acima pode ser referida como uma rede 4-3-3-1. Os dados são processados pelos neurônios em duas etapas, correspondentemente mostradas dentro do círculo por um sinal de soma e um sinal de etapa: Todas as entradas são multiplicadas pelos pesos associados e somadas. As somas resultantes são processadas pela função de ativação de neurônios. Cuja saída é a saída do neurônio. É a função de ativação de neurônios que proporciona não-linearidade ao modelo de rede neural. Sem ele, não há nenhuma razão para ter camadas ocultas, e a rede neural se torna um modelo automático autorregressivo (AR). Os arquivos de biblioteca fechados para funções NN permitem a seleção entre três funções de ativação: o limite de ativação dessas funções é x0. Esse limite pode ser movido ao longo do eixo x, graças a uma entrada adicional de cada neurônio, denominada entrada de polarização. Que também tem um peso atribuído a ele. O número de entradas, saídas, camadas ocultas, neurônios nessas camadas e os valores dos pesos de sinapse descrevem completamente um FFNN, ou seja, o modelo não-linear que ele cria. Para encontrar pesos, a rede deve ser treinada. Durante um treinamento supervisionado. Vários conjuntos de entradas passadas e as correspondentes saídas esperadas são alimentados na rede. Os pesos são otimizados para alcançar o menor erro entre as saídas de rede e as saídas esperadas. O método mais simples de otimização de peso é a propagação traseira de erros, que é um método de descida gradiente. A função de treinamento fechada Train () usa uma variante deste método, chamado Enhantage Resilient Back-Propagation Plus (iRProp). Este método é descrito aqui. A principal desvantagem dos métodos de otimização baseados em gradientes é que muitas vezes eles acham um mínimo local. Para séries caóticas, como uma série de preços, a superfície do erro de treinamento tem uma forma muito complexa com muitos mínimos locais. Para essas séries, um algoritmo genético é um método de treinamento preferido. BPNN. dll - arquivo de biblioteca BPNN. zip - arquivo de todos os arquivos necessários para compilar BPNN. dll em C BPNN Predictor. mq4 - indicador prevendo futuros preços abertos BPNN Predictor com Smoothing. mq4 - indicador que predica os preços abertos lisos O arquivo BPNN. cpp tem dois Funções: Train () Test (). Train () é usado para treinar a rede com base na entrada passada fornecida e nos valores de saída esperados. Test () é usado para calcular as saídas de rede usando pesos otimizados, encontrados por Train (). Aqui está a lista de parâmetros de saída de entrada (verde) de Train (): dados de treinamento de entrada inpTrain - dados de treinamento de entrada (matriz 1D que transportam dados 2D, primeiros) outTarget duplo - Dados de destino de saída para treinamento (dados 2D como matriz 1D, Mais antigo primeiro) outTrain duplo - Saída 1D array para armazenar saídas líquidas do treinamento int ntr - de conjuntos de treinamento int UEW - Use Ext. Pesos para inicialização (1use extInitWt, 0use rnd) double extInitWt - Entrada 1D array para armazenar matriz 3D de pesos iniciais externos double trainedWt - Saída 1D array para manter matriz 3D de pesos treinados int numLayers - de camadas incluindo entrada, oculto e saída int lSz - de neurônios em camadas. LSz0 é de entradas líquidas int AFT - Tipo de função de ativação de neurônio (0: sigm, 1: tanh, 2: x (1x)) int OAF - 1 permite a função de ativação para a camada de saída 0 desabilita int nep - Max das épocas de treinamento duplo maxMSE - O treinamento Max MSE pára quando o maxMSE é alcançado. Aqui está a lista de parâmetros de saída de entrada (verde) de Teste (): dados de teste de entrada inpTest - dados de teste de entrada (dados 2D como matriz de 1D, o mais antigo primeiro) offTest duplo - matriz de saída 1D para manter as saídas líquidas do treinamento (o primeiro primeiro ) Int ntt - de conjuntos de teste double extInitWt - Entrada 1D array para armazenar matriz 3D de pesos iniciais externos int numLayers - de camadas incluindo entrada, oculto e saída int lSz - de neurônios em camadas. LSz0 é de entradas líquidas int AFT - Tipo de função de ativação do neurônio (0: sigm, 1: tanh, 2: x (1x)) int OAF - 1 permite a função de ativação para a camada de saída 0 desabilita se a função de ativação na saída é usada Camada ou não (valor do parâmetro OAF) depende da natureza das saídas. Se as saídas são binárias, o que geralmente acontece nos problemas de classificação, a função de ativação deve ser usada na camada de saída (OAF1). Por favor, preste atenção que a função de ativação 0 (sigmoid) tem 0 e 1 níveis saturados, enquanto que as funções de ativação 1 e 2 têm -1 e 1 níveis. Se as saídas de rede forem uma previsão de preço, então não será necessária nenhuma função de ativação na camada de saída (OAF0). Exemplos de utilização da biblioteca NN: BPNN Predictor. mq4 - prevê preços abertos futuros. As entradas da rede são mudanças de preços relativos: onde delayi é calculado como um número de Fibonacci (1,2,3,5,8,13,21 ..). A saída da rede é a variação relativa prevista do próximo preço. A função de ativação está desligada na camada de saída (OAF0). Extern int lastBar - Última barra nos dados passados extern int futBars - de futuras barras para prever extern int numLayers - de camadas, incluindo entrada, saída de amplificador oculto (2..6) extern int numInputs - de entradas externas int numNeurons1 - de neurônios em A primeira camada oculta ou de saída externa int numNeurons2 - dos neurônios na segunda camada oculta ou externa extern int numNeurons3 - dos neurônios na terceira camada oculta ou de saída externa int numNeurons4 - dos neurônios na quarta camada oculta ou externa extern int numNeurons5 - of Neurônios na quinta camada escondida ou externa extern int ntr - de conjuntos de treinamento extern int nep - Máx. De épocas externas int maxMSEpwr - conjuntos maxMSE10maxMSEpwr treino pára lt maxMSE extern int AFT - Tipo de atividade. Função (0: sigm, 1: tanh, 2: x (1x)) O indicador traça três curvas no gráfico: cor vermelha - previsão de preços futuros cor preta - preços de treinamento prévios passados, que foram usados como saídas esperadas para a rede Cor azul - saídas de rede para entradas de treinamento BPNN Predictor. mq4 - prevê futuros preços abertos suavizados. Ele usa o alisamento EMA com o período smoothPer. Copiar fechado BPNN. DLL para C: Program FilesMetaTrader 4expertslibraries Em metatrader: Ferramentas - Opções - Expert Advisors - Permitir importações de DLL Você também pode compilar seu próprio arquivo DLL usando códigos-fonte em BPNN. zip. Uma rede com três camadas (numLayers3: uma entrada, uma escondida e uma saída) é suficiente para a grande maioria dos casos. De acordo com o Teorema de Cybenko (1989), uma rede com uma camada oculta é capaz de aproximar qualquer função contínua e multivariada a qualquer grau de precisão desejado, uma rede com duas camadas ocultas é capaz de aproximar qualquer função descontínua e multivariada: o número ótimo de Os neurônios na camada oculta podem ser encontrados através de tentativa e erro. As seguintes quotrules de polegar podem ser encontradas na literatura: de neurônios escondidos (de entradas de saídas) 2 ou SQRT (de entradas de saídas). Acompanhe o erro de treinamento, informado pelo indicador na janela de especialistas do metatrader. Para a generalização, o número de conjuntos de treinamento (ntr) deve ser escolhido 2-5 vezes o número total de pesos na rede. Por exemplo, por padrão, BPNN Predictor. mq4 usa uma rede 12-5-1. O número total de pesos é (121) 5671. Portanto, o número de conjuntos de treinamento (ntr) deve ser pelo menos 142. O conceito de generalização e memorização (sobreposto) é explicado no gráfico abaixo. Os dados de entrada para a rede devem ser transformados em estacionários. Os preços de Forex não são estacionários. Também é recomendável normalizar as entradas para o intervalo -1..1. O gráfico abaixo mostra uma função linear ybx (entrada x, saída y) cujas saídas são corrompidas por ruído. Este ruído adicionado faz com que a função de saídas medidas (pontos pretos) se desvie de uma linha reta. A função yf (x) pode ser modelada por uma rede neural de avanço. A rede com um grande número de pesos pode ser ajustada aos dados medidos com erro zero. Seu comportamento é mostrado como a curva vermelha passando por todos os pontos negros. No entanto, esta curva vermelha não tem nada a ver com a função linear original ybx (verde). Quando esta rede superavelada é usada para prever valores futuros da função y (x), isso resultará em grandes erros devido à aleatoriedade do ruído adicional. Em troca de compartilhar esses códigos, o autor tem um pequeno favor a pedir. Se você pudesse criar um sistema de negociação lucrativo com base nesses códigos, compartilhe sua idéia comigo enviando o email diretamente para o vlad1004yahoo.
No comments:
Post a Comment