APRENDER O TUTORIAL BÁSICO MQL5 – 91 OBJETO DE CANAL SIMPLES

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.

YouTube privacy policy

If you accept this notice, your choice will be saved and the page will refresh.

 

Com MQL5 para Metatader5 criamos um Expert Advisor para desenhar um objecto de Canal directamente no gráfico.

Neste vídeo, vamos criar um objecto de canal para a vela mais alta e mais baixa no gráfico, portanto vamos descobrir como fazê-lo com mql5.

 

Para começar, clique no pequeno ícone aqui ou prima F4 no seu teclado, agora deve ver a janela do Metaeditor e aqui quer clicar em ficheiro, novo ficheiro, consultor especializado de modelo, continuar, vou chamar a este ficheiro objecto de canal simples, clique em continuar, continuar e terminar.

Agora pode remover tudo acima da função ontick e vamos também remover aqui as duas linhas de comentário.

Queremos começar por calcular as velas no gráfico que é feito usando o gráfico obter o inteiro para o gráfico id zero e usamos a primeira barra visível do gráfico, o último parâmetro aqui é para a sub-janela, aquele com as velas é a janela zero, se quiser inserir osciladores como o MACD verá que estes são desenhados numa janela separada abaixo, mas queremos que o nosso objecto de canal seja desenhado na janela principal.

Vamos criar uma variável para a vela mais baixa e também precisamos de uma matriz que se chama baixa e que irá manter os preços mais baixos das velas para todas as velas no gráfico. Repetimos isto e criamos uma variável para a vela mais alta e uma matriz para os preços mais altos das velas no gráfico.
E agora usamos o conjunto de velas como séries para ambos os conjuntos para as ordenar a partir da vela actual para baixo, para que possamos preenchê-las com dados que são feitos usando a cópia baixa, se marcarmos isso e pressionarmos F1 veremos que obteremos os dados históricos e os preços mínimos para cada vela para o símbolo actual no gráfico e o período actualmente seleccionado nesse gráfico a partir da vela actual zero para todas as velas no gráfico e os resultados serão armazenados no conjunto baixo que é para os preços mais baixos.
E como já deve ter adivinhado, existe outra função chamada cópia alta que nos dará os preços de barra mais altos para os dados do histórico para o símbolo actual no gráfico e o período actualmente seleccionado a partir da vela zero para todas as velas no gráfico.
E é assim que armazenamos esses valores de preços na nossa alta gama, mas agora queremos encontrar os preços extremos.
Para a vela mais baixa que pode ser feita utilizando a função mínima da matriz que irá procurar o valor mais baixo em toda a matriz, no nosso caso na matriz chamada baixa a partir da vela zero para todas as velas na tabela e o preço para a vela mais baixa será armazenado nesta variável.
Para a vela mais alta usamos o máximo de velas que nos dará o maior elemento ou o preço mais alto no nosso array e este é o array alto a partir da vela zero para todas as velas no gráfico, por isso agora temos o número para a vela mais baixa e para a vela mais alta mas precisamos de mais dados, por isso usamos taxas mql para criar um array de informação sobre preços, se marcar taxas mql e pressionar F1 verá que armazena informação sobre preços, volumes e spread e também o tempo e é disso que precisamos, por isso vamos usar o array definido como série para ordenar o array de informação de preços a partir da vela actual para baixo e com taxas de cópia preenchemos o array para o símbolo actual no gráfico e o período actualmente seleccionado nesse gráfico a partir da vela zero para todas as velas no gráfico e armazenamos os valores no nosso array de informação de preços.

Antes de podermos desenhar o objecto, queremos utilizar a eliminação de objectos para o símbolo actual no gráfico para eliminar qualquer objecto formal chamado objecto de canal simples. Não teremos tal objecto logo na primeira vez que chamarmos o código, mas depois, queremos ter a certeza de remover os valores antigos antes de desenharmos um novo objecto e para desenharmos esse objecto que usamos o objecto criado, se marcarmos isso e premirmos F1 aprenderemos que pode ter até trinta coordenadas, precisamos de passar alguns parâmetros, por isso, vamos passar os valores um a um.

O primeiro parâmetro é para o símbolo actual no gráfico, o segundo é para o nome do objecto, eu chamei-lhe objecto de canal simples, pode chamar-lhe o que quiser desde que use o mesmo nome em todo o lado, o parâmetro três é chamado canal de objecto no nosso caso e se marcar isso e premir F1 verá que temos muitos tipos de objectos diferentes, mesmo tipos de canais diferentes, neste caso, estamos a utilizar esta e queremos desenhar a primeira linha para a vela mais baixa e este é o momento em que queremos começar, neste caso, seria esta vela porque aqui temos os valores de data e hora e a linha deve ser desenhada para o preço mais baixo da vela mais baixa.

 

Quero que seja desenhada até à vela actual, este é o segundo momento e aqui repito o parâmetro que aqui utilizei que a tornará uma linha horizontal, a segunda linha deve começar no momento em que a vela mais alta foi desenhada. Neste exemplo, seria aqui, esta vela.