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 e Metatrader5 criamos um Expert Advisor para estabelecer uma paragem para um comércio de venda quando os preços avançam na nossa direcção…
Neste vídeo, vamos descobrir como estabelecer uma paragem de equilíbrio para uma transacção de venda quando o preço se desloca na nossa direcção. Vemos aqui a pequena linha vermelha que é a paragem de equilíbrio que foi colocada, por isso vamos descobrir como fazer isso com mql5.
Para começar, por favor clique aqui no pequeno ícone ou prima F4 no seu Metatrader, agora deve ver a janela do Metaeditor e aqui gostaria de clicar em ficheiro, novo ficheiro, modelo de formulário de consultor especializado, continuar. Vou chamar a este ficheiro simples paragem de venda, clicar em continuar, continuar e terminar.
Agora pode apagar tudo o que se encontra por cima da função de tick, e as duas linhas de comentário aqui.
Primeiro, precisamos de utilizar a declaração de inclusão para incluir o ponto de troca do ficheiro mqh. Este vem com mql5 e dar-nos-á algumas funções de troca simples que precisamos para abrir uma amostra de troca.
Criamos uma instância da classe ctrade que será chamada trade.
Dentro da função de troca de tick, precisamos primeiro de obter o preço de oferta porque vamos abrir uma troca de venda. Para obter o preço de oferta usamos o símbolo info double, para o símbolo actual no gráfico, o parâmetro aqui é chamado símbolo underscore bid – tudo em letras maiúsculas – e também uso normalizar dígitos double e underscore para calcular automaticamente o número correcto de dígitos atrás do ponto.
E se não tivermos posições abertas, portanto, se o total de posições for igual a zero, utilizamos o trade dot sell para abrir um trade sell para dez microlotes. Não se faria isso numa conta real, mas precisamos de algo para testar.
E agora vamos chamar uma função chamada check sell breakeven stop e passar o preço de oferta como parâmetro.
Até agora, esta função não existe, pelo que precisamos de a codificar agora.
A nossa função não terá qualquer valor de retorno. Começamos com a função for loop e passamos por todas as posições. Para cada posição, queremos saber o número do bilhete. Isto é feito utilizando a posição get integer, e o parâmetro para obter o número do bilhete é a posição underscore ticket – tudo em letras maiúsculas.
Também queremos saber o preço aberto, ou no meu caso eu chamei-lhe preço de compra.
Isso pode ser feito utilizando a posição get double, posição underscore preço underscore underscore aberto.
Para obter a posição parar de perder, usamos a posição obter o dobro, e usamos a posição sublinhado sl.
E o mesmo se aplica ao take profit, usamos a posição get double, e desta vez a posição underscore tp.
Para descobrir se é uma posição de venda, precisamos de descobrir o tipo de posição usando posição get integer, posição underscore tipo.
E para obter o símbolo de posição, usamos o símbolo de posição get para o valor actual do contador, porque no passo seguinte vamos verificar se o símbolo actual na carga é igual ao símbolo de posição, e se isso for verdade, verificamos se o tipo de posição é igual ao tipo de posição sell, de modo que é uma posição sell.
Só queremos definir uma paragem do breakeven se a perda da paragem da posição actual ainda estiver acima do preço de compra da posição, e no meu caso, quero definir a paragem da perda se o preço de compra da posição actual estiver pelo menos trinta pontos abaixo do preço de compra da posição.
E se todas essas condições aqui forem verdadeiras, podemos agora modificar o stop loss. Isto é feito utilizando a modificação da posição do ponto de troca para o bilhete da posição actual. Quero colocar o ponto de equilíbrio quatro pontos abaixo do preço de compra da posição, e deixamos a posição tomar o valor de lucro tal como está.
Por fim, precisamos de fechar o for loop e a função, e é só isso.
Se não sabe o que todo o código aqui faz, ou se isto foi demasiado rápido para si, talvez queira ver um dos outros vídeos neste curso básico, ou talvez até o curso premium no website seja interessante para si.
Por agora, por favor clique no botão de compilação aqui ou prima F7. Não recebemos nenhum erro aqui, e se for esse o caso, pode clicar no pequeno botão aqui ou premir F4 para voltar a Metatrader.
E em Metatrader, por favor clique em View, Strategy Tester ou pressione Control e r. Por favor escolha o novo ficheiro simples de venda breakeven stop dot ex5, marque o modo visual aqui e inicie um teste.
Aqui está a nossa primeira posição, e ainda agora a paragem de breakeven foi colocada, por isso o nosso pequeno consultor especializado está a trabalhar e neste pequeno vídeo aprendeu como colocar uma paragem de breakeven para vender ofícios quando vai na sua direcção, e codificou-a você mesmo com algumas linhas de código mql5.