Please accept YouTube cookies to play this video. By accepting you will be accessing content from YouTube, a service provided by an external third party.
If you accept this notice, your choice will be saved and the page will refresh.
Com a MQL5 para Metatrader5 criamos um Expert Advisor para o Indicador de Desvio Padrão que pode abrir negócios de compra e venda com base nos valores do indicador.
Neste vídeo, vamos calcular o valor do desvio padrão para duzentas velas, por isso vamos descobrir como fazer isso com MQL5. Para começar, clique num pequeno ícone aqui ou pressione F4 no seu teclado.
Agora deve ver a janela do Metaeditor e aqui quer clicar em ficheiro, novo ficheiro, Expert Advisor from template, continuar. Vou chamar a este ficheiro desvio padrão simples. Clique em continuar, continuar e terminar. Agora pode apagar tudo acima da função ontick e vamos também remover aqui as duas linhas de comentário. Começamos com uma declaração para incluir o ficheiro Trade.mqh. Este vem com algumas funções de comércio simplificadas. E criamos uma instância da classe Ctrade e chamamos-lhe trade. Dentro da função ontick, queremos criar uma variável para o sinal.
Mas não vamos atribuir qualquer valor, porque vamos calcular isso mais tarde. Depois, queremos calcular o preço Ask e o preço Bid, que é feito usando Symbolinfodouble para o símbolo actual no gráfico, usamos ou o símbolo underscore, ask ou underscore bid. E com a normalização de dígitos duplos e sublinhados, asseguramos que calculamos o número correcto de dígitos por detrás do ponto. Vamos continuar e criar uma matriz para o desvio padrão Expert Advisor.
Podemos utilizar a função integrada iSTDDEV para o símbolo actual no gráfico e o período actualmente seleccionado nesse gráfico.
Queremos calcular os resultados para vinte velas, sem qualquer deslocamento para uma simples média móvel. É por isso que usamos o ModeUnderscoreSMA e o resultado deve ser calculado com base no preço de fecho. Agora usamos arrays definidos como séries para ordenar a nossa matriz a partir da vela actual para baixo.
E com copybuffer preenchemos a nossa matriz de desvio padrão de acordo com a definição que criámos aqui para zero tampão.
Começamos com a vela actual zero e copiamos os valores para duzentas velas. Portanto, vamos escrever isso no comentário. Isso torna agora possível calcular o número mais alto de velas, utilizando o máximo de matriz. O máximo de velas dar-nos-á o maior elemento da nossa matriz e na realidade é o número da vela, não o valor. Queremos procurar na matriz de desvio padrão a partir do zero da vela e queremos procurar em toda a matriz. Vamos também fazer isso para o número de vela mais baixo, que pode ser calculado utilizando o mínimo de matriz.
O resto é o mesmo e precisamos de mais uma coisa, que é o valor do desvio padrão para a vela actual.
Conseguimo-lo utilizando o dobro de Normalizar para a matriz de desvio padrão. Queremos o valor para o zero da vela com seis dígitos atrás do ponto. Agora podemos verificar se o número mais baixo da vela é igual a zero.
Isso significaria que o valor de desvio para vela zero é o mais baixo de duzentas velas. Se for esse o caso, consideramos que se trata de um sinal de compra. Assim, atribuímos a palavra comprar ao nosso sinal. Caso contrário, se o valor da vela zero for o mais alto, isso significaria que temos um sinal de venda e agora atribuímos a palavra vender ao nosso sinal. E se tivermos um sinal de venda e o valor de retorno para PositionsTotal for inferior a um, isso significaria que não temos posições abertas e um sinal de venda. E agora usamos trade.Sell para vender 10 Microlot. No outro caso, se o sinal for igual a comprar e também não tivermos posições abertas, é quando usamos trade.Buy e por 10 Microlotes.
Finalmente, acrescentamos uma declaração de comentário que emitirá o valor do desvio actual, o número da vela mais alta e mais baixa e o sinal calculado. É tudo, se isto foi demasiado rápido para si ou se não tem ideia do que todo o código aqui faz, talvez queira ver um dos outros vídeos da série básica de vídeo. Ou talvez até o Curso Premium possa ser interessante para si. Pode encontrar esse no nosso website. E é também aí que temos agora algumas ofertas de códigos-fonte para os vídeos básicos como este.
Por agora, por favor clique em Ver, barra de ferramentas e prima o botão de compilação ou prima F7 no seu teclado.
Não deve receber aqui quaisquer erros. E se for esse o caso, pode clicar num pequeno botão aqui ou premir F4 para voltar ao Metatrader. E em Metatrader clicamos em View, Strategy tester ou Control e R.
Por favor escolha o novo ficheiro desvio padrão simples.ex5, marque aqui a opção para o modo Visual e comece o seu teste. Aqui estamos nós, o Expert Advisor está a funcionar. E assim que um desses valores aqui é para vela zero, devemos ver a nossa primeira troca. Isso aconteceu agora mesmo. Portanto, o nosso pequeno Expert Advisor está a trabalhar como esperado. E neste pequeno vídeo aprendeu como calcular o valor do desvio padrão com MQL5. E codificou-o você mesmo com algumas linhas de código no Metaeditor.