• Nenhum resultado encontrado

O primeiro passo é criar a estrutura padrão do seu robô

Para começar a criar a estrutura do robô clique no menu Arquivo e  selecione a opção Novo, ou simplesmente utilize a tecla de atalho CTRL  + N. 

 

Irá abrir uma caixa de diálogo solicitando que você escolha o tipo de  arquivo que deseja criar. Selecione a opção Expert Advisor (modelo) e  clique em avançar. 

 

Agora o assistente irá solicitar que você preencha seus dados: Informe  seu nome, o nome do seu robô, seu site (não é obrigatório) e clique em  avançar. 

  Na próxima tela clique em avançar e deixe as duas opções  desmarcadas, como na figura abaixo. 

Agora deixe marcada a opção OnTester e clique em concluir. 

 

Ótimo! Agora já temos a estrutura do nosso robô e podemos começar  a configurá-lo. 

É sempre bom começarmos um robô fazendo comentários explicando  para que ele serve, como ele trabalha. Veja como é fácil: 

Os comentários ficam entre /* seu comentário */ 

Ok! Agora nós precisamos configurar as propriedades:   

   

Legal! No método EUREKA aprendemos que precisamos de Pontos de  Entrada, Pontos de Saída, STOP (parada) e TAKE (alvo de lucro). 

 

Aprendemos também que podemos ter Entradas de Compra e  Entradas de Venda em um mesmo gráfico. 

 

Neste tutorial vou mostrar apenas como fazer para entrada de compra  e você já poderá operar com o seu robô para ordens de compra em  qualquer par de moedas. 

 

Então vamos precisar: 

● Ponto de Entrada de Compra  ● Stop inicial de compra 

● Alvo de Lucro   

 

Essas serão as entradas (inputs) do nosso robô. 

Veja como é fácil configurar os input de entrada do nosso robô.   

Atenção: Não esqueça de ir salvando as alterações durante a  execução.! 

 

input double PontoCompra;  input double StopInicial;  input double AlvodeLucro;   

veja o que significa:   

● input quer dizer entrada. 

● double quer dizer do tipo moeda: Isso quer dizer que vamos  informar valores assim, com ponto: 1.2345. Não utilizamos , 

(vírgula) para valores. Se estivermos utilizando o par de moedas  EURUSD, quer dizer que a cotação do dólar para comprar 1 euro  é de 1.2345. 

● PontoCompra = Foi o nome que eu dei para o Ponto de Compra,  precisa ser tudo junto, pois trata-se de uma variável, ou seja, um  lugar que vai guardar uma informação. Tipo: 1.2345. 

● StopInicial = Foi o nome que eu dei para a variável que guarda o  Ponto inicial de STOP de compra. 

● AlvodeLucro = Foi o nome que eu dei para a variável que guarda  o Take Profit, ou seja, o Ponto do Alvo de Lucro da operação de  compra. 

 

Dá uma olhada como ficou:   

   

Agora vamos fazer o corpo do robô:   

O corpo do robô é onde vamos colocar a nossa estratégia. É lá que  vamos mandar que o robô abra uma ordem automaticamente quando  o preço chegar no ponto de entrada de compra. É no corpo do robô  onde vamos posicionar nossos stops e também nosso alvo de lucro. Aí  ele vai só executar. É mais simples que você pensa. Veja só! 

 

Este é o corpo do robô:    int OnInit()  {    return(INIT_SUCCEEDED);  }   

Vamos entender o que quer dizer:   

int OnInit() /*ao iniciar o robô*/ 

{ /*Iniciando o corpo do robô*/   

/* Espaço onde eu coloco a estratégia*/   

return(INIT_SUCCEEDED); /* Retorno do robô se tudo deu certo*/  } /* Fim do corpo da minha estratégia*/   

   

Vamos colocar a estratégia: 

Observe abaixo a estratégia com os pontos de compra e alvos  marcados. 

 

   

Isso quer dizer que se o preço do EURJPY romper o valor de 119.87,  vamos dar uma entrada de compra, ou seja, seja maior 119.87. 

 

Para isso podemos dizer que:  Se o cotação > 119.87 

abrir um ordem de compra.  } 

 

No código vai ficar assim:    if (Ask > 119.87)  {        }    Se = if 

Ask = Cotação de Compra   

   

Agora se deixarmos somente assim este código vai ser executado  somente uma vez. Precisamos fazer que ele seja executado até que  uma ordem seja aberta. 

 

Enquanto O total de Ordens for igual a zero faça um loop.   

  while (OrdersTotal() == 0)  {  if (Ask > 119.87)  {    }  }   

while quer dizer Enquanto 

OrdersTotal() == 0 quer dizer Total de ordens igual a zero    

   

Bom, já testamos se o número total de ordens for igual a zero e se o  preço for maior que 119.87. Agora é só abrir a ordem com do código  abaixo: 

 

Para abrir uma ordem vamos precisar do volume, da cotação atual, do  STOP e do Take (alvo). 

 

T = OrderSend(Symbol(),OP_BUY,volume,cotação,3,Stop,Take,Comentário’’,255,0,clrNONE); 

 

T é uma variável para o sistema guardar as informações da ordem. É o  ticket. 

OrderSend = Abertura da ordem = Ordem Enviada.  Symbol() = Captura o par de moedas atual. 

OP_BUY = Abre ordem de compra 

Volume = Volume de abertura da ordem. Exemplo: 0.01 

Cotação = Valor do ASK, valor da cotação no momento da abertura da  ordem 

STOP = Ponto de parada  Take = Alvo de Lucro 

Comentário = Qualquer coisa que você quiser colocar   

   

Pronto! Você acabou de fazer seu primeiro robô de investimentos.  Observe que este robô serve para qualquer estratégia que você quiser  colocar. Desde que você tenha o ponto de entrada, take e o stop. 

 

Você deve agora compilar seu robô. Clique no botão compilar e veja se  não retornou nenhum erro. 

   

Agora é só você ir até o metatrader e clicar, segurar e arrastar o seu  robô que está no painel navegador para cima do seu gráfico. Aqui eu  usei o EURJPY, mas ele pode ser usado para qualquer par de moedas.   

   

Observe que o robô só deixa abrir uma ordem de cada vez. Se você  quiser configurá-lo para abrir mais ordens é só alterar para 

 

while (OrdersTotal() <= 4) 

Assim ele abre até quatro ordens. É só mudar o número e configurar.  Mas, atenção! Não se esqueça de calcular se a sua conta aguenta a  abertura de tantas ordens. 

 

Falei! Falei em códigos o tempo todo! O nome desses códigos é 

linguagem MQL4. É uma linguagem de programação para você criar  robôs no MetaTrader4. Não quis falar antes pra não ficar técnico  demais, né!  

 

Acessem o site www.elaineleao.com.br, tem muito conteúdo lá. O canal  do youtube também. 

 

É isso!  Abraços   

   

DISCLAIMER

    

As informações aqui contidas são meramente indicativas, e não  constituem nenhuma declaração ou garantia, de forma expressa ou  implícita. Este material tem caráter meramente informativo e não deve  ser entendido como análise de valor do investimento, material 

promocional, oferta de compra ou venda, recomendação de 

investimentos, sugestão de alocação ou adoção de estratégias por  parte dos destinatários. Nós não nos responsabilizamos por decisões  de investimentos que venham a ser tomadas com base nas 

informações divulgadas. As informações ora veiculadas não levam em  consideração os objetivos de investimento, situação financeira ou  necessidade específicas de cada investidor. Os investidores devem  obter orientação financeira independente, com base em suas 

características pessoais, e avaliar cuidadosamente todas as  informações disponíveis no prospecto e no regulamento de cada  investimento, antes de tomar uma decisão de investimento. Nós nos  eximimos de qualquer responsabilidade por quaisquer prejuízos,  diretos ou indiretos, que venham a decorrer do conteúdo deste  material.                       

Documentos relacionados