Número mágico.
O número mágico é um conceito MetaTrader usado para rastrear as posições abertas de um consultor especializado. O conceito permite que a EA distinga os negócios que ele abriu versus aqueles que não fazia.
Todo carro possui uma placa de matrícula. Quando você vê um carro em um estado diferente ou mesmo em um país diferente, você sabe que todas as placas que você vê são únicas. A polícia pode procurar o número para determinar quem é o dono do carro.
Os números mágicos atuam como placas de licença para EAs. Quando um consultor especialista lê um comércio aberto, chamado de ticket, ele geralmente solicita seu número mágico. Se o número mágico do ticket corresponder ao número que o consultor perito espera, então sabe administrar o comércio.
Os números mágicos são úteis, especialmente quando você deseja trocar vários cronogramas do mesmo par de moedas. Os comerciantes costumam usar configurações que diferem em gráficos M1 versus aqueles que usariam no D1. Se eles aplicassem a EA com o mesmo número mágico em todos os gráficos, o resultado seria o caos. O consultor especialista abriria e fecharia negócios de forma aleatória. Definir cada EA para usar um número mágico diferente evita que os robôs interfiram com os outros.
Fatos dos números mágicos.
O número mágico de um comércio aberto manualmente é 0.
O valor de um número máximo deve estar entre 0 e 2147483647. A linguagem de programação MQL chama esse último número EMPTY_VALUE e reserva o nome como um valor inteiro.
Número mágico no MetaTrader.
O número mágico é um conceito Metatrader usado para rastrear as posições abertas de uma EA. O conceito permite que a Ea distinga os negócios que abriu versus aqueles que não fazia.
Cada carro usa uma placa de matrícula. Quando você detecta um carro em um estado diferente ou mesmo em um país diferente, você observa que todas as placas que você encontra são únicas. A aplicação da lei pode utitlize o número para determinar quem é dono do carro.
Os números mágicos funcionam como placas de licença para consultores especializados. Quando um consultor especialista detecta um comércio aberto, chamado de bilhete, repetidamente pede seu número mágico. Se o número mágico do bilhete é idêntico ao número que o consultor perito espera, então sabe administrar a posição.
Os números mágicos são úteis, especialmente quando você deseja trocar vários quadros temporais do mesmo par forex. Os comerciantes costumam usar configurações que diferem daqueles nos preços M1 versus aqueles que eles usariam no gráfico diário. Se utilizassem o consultor especialista com o mesmo número mágico em todos os intervalos de tempo diferentes, o resultado seria um caos. O consultor especialista abriria e fecharia posições sem rima ou motivo. Configurando cada consultor especialista para emply, um número mágico exclusivo não permite que os robôs interfiram com os outros.
Número mágico de factoids.
O número mágico de um comércio aberto manualmente é 0.
O número que você usa para um número mágico deve ser um número variando de 0 e 2147483647. A linguagem de programação MQL atribui esse último número EMPTY_VALUE e protege o nome como um valor inteiro.
O que é e como definir o número mágico na EA?
O número mágico destina-se a ser usado para identificação comercial. A implementação varia.
É definido quando o comércio é aberto por um EA com o comando OrderSend ().
Você tem dois EA comercializando EURUSD.
Para permitir que cada EA reconheça negócios que "pertencem a ele" Defina um número mágico diferente (ID) com cada EA.
Eu estava claro? desculpe o pobre inglês.
"Mas, se eu tiver apenas um EA, dois gráficos EURUSD em prazos diferentes? Preciso mudar o número mágico? Qual número definir? Alguém? & Quot;
Existe um número mágico específico Se eu quiser que o EA gerencie o comércio aberto manualmente?
Você poderia usar o Comentário para trocas manuais idênticas e adicionar um teste para comentários específicos na EA.
Eu tenho cinco gráficos em uma plataforma para cinco diferentes moedas (um gráfico por moeda).
Eu aplico o mesmo EA para todos os cinco gráficos (mesmo EA para todas as cinco curvas).
Preciso mudar o número mágico da EA para cada gráfico (cada moeda)?
Existe um número mágico específico Se eu quiser que o EA gerencie o comércio aberto manualmente?
Você poderia usar o Comentário para trocas manuais idênticas e adicionar um teste para comentários específicos na EA.
Eu tenho cinco gráficos em uma plataforma para cinco diferentes moedas (um gráfico por moeda).
Eu aplico o mesmo EA para todos os cinco gráficos (mesmo EA para todas as cinco moedas).
Preciso mudar o número mágico da EA para cada gráfico (cada moeda)?
Eu tenho cinco gráficos em uma plataforma para cinco diferentes moedas (um gráfico por moeda).
Eu aplico o mesmo EA para todos os cinco gráficos (mesmo EA para todas as cinco moedas).
Preciso mudar o número mágico da EA para cada gráfico (cada moeda)?
A resposta curta é não. A resposta correta é - depende. Sua EA deve ser inteligente o suficiente para determinar em que medida ela está operando se houver alguma modificação ou exclusão de ordem. O número mágico é uma forma de fazer isso, embora uma boa EA use outros métodos, como a verificação do par de moedas.
Você precisará determinar se o seu código é robusto o suficiente para operar sem uma mudança de número mágico - ou se ele mesmo usa ou não o número mágico.
Número mágico do MetaTrader.
Um número mágico é usado para identificar um comércio.
Quando um comerciante é aberto por um Consultor Especialista, um número mágico pode ser associado ao comércio.
OrderSend tem muitos parâmetros, um deles é chamado de magia. Quando seu Consultor Especial usa a função OrderSend para abrir um pedido, você define o parâmetro mágico para um número exclusivo que você pode usar mais tarde para identificar o comércio.
Aqui está a definição real do OrderSend diretamente do arquivo de ajuda do MetaEditor:
Nota: veja a & # 8220; magic = 0 & # 8221; na definição da função? Isso significa que o parâmetro mágico é opcional: não precisa ser definido. Além disso, quando não está definido, ele terá o valor de 0. Por sinal, as negociações abertas manualmente (não por uma EA) sempre têm um valor de número mágico de 0. Isso é bom saber que você escreve seu Consultor Especialista.
Qual é o objetivo de identificar um comércio com um número mágico?
O objetivo principal de marcar seu comércio com um número mágico é para que você possa gerenciar o comércio com base nas circunstâncias em que foi aberto. Por exemplo, suponha que você tenha essa situação:
Você está executando 2 Expert Advisors: um em um gráfico EURUSD de 1 hora e outro em um gráfico EURUSD de 15 minutos. Uma EA é uma EA de escalação e a outra é uma EA de tendência. Cada uma dessas EAs tem 1 comércio aberto.
Você provavelmente quer administrar a saída desses negócios de forma diferente. Além do padrão Stoploss e takeprofit saída, você pode querer executar um arrastar-parar em um comércio e um canal-stop no outro.
Nesse caso, não é suficiente para identificar o comércio pelo seu par de moedas, uma vez que ambos os negócios são negociações EURUSD. É aí que entra o número mágico. Se um número mágico exclusivo fosse usado quando esses negócios fossem abertos, ele agora pode ser usado para identificar o que EA abriu o comércio. Por exemplo, a EA de escalação poderia usar um número mágico de 100, e a EA de tendência pode usar um número mágico de 200.
Como obter o número mágico de um comércio aberto.
Existe uma função MQL chamada OrderMagicNumber que obterá o número mágico de uma troca. Mas não fique muito animado, não é assim tão fácil.
A função OrderMagicNumber deve ser executada em um loop de seleção de pedidos. A função MQL OrderSelect é usada para selecionar um comércio. Depois que um comércio foi selecionado, a função OrderMagicNumber é usada para obter o número mágico. Normalmente, a função MQL OrderTotal é usada para percorrer todos os negócios abertos para a conta. Aqui está um exemplo de código MQL:
(Não se preocupe, esse código é mais fácil de trabalhar depois de você ter feito isso cerca de milhares de vezes 🙂
Aliás, esta mesma técnica é utilizada para obter qualquer informação sobre um comércio: mercado de trabalho, takeprofit, horário aberto, preço aberto, etc. (Além disso, o histórico comercial de uma conta pode ser consultado da mesma forma. Você pode obter todos da mesma informação sobre negócios fechados).
Então, agora que você pode obter o número mágico de um comércio, você pode executar uma saída comercial específica com base no número mágico. Você pode fazer isso usando a lógica básica if-then:
Usando números mágicos no VTS.
No VTS, uma variável de entrada denominada MagicNumber é criada com todos os sistemas.
A variável MagicNumber é definida e configurada no VTS Input Manager. A variável MagicNumber aparece na guia de entrada quando você inicia o EA, portanto, pode ser configurado sempre que o EA é executado. O valor padrão do parâmetro mágico para todas as funções OrderSend no VTS é a variável MagicNumber. Observe que a função OrderSend no VTS é chamada pela função VTS user-friendly fnOpenOrder.
Então, quando você cria uma EA simples no VTS que usa a função fnOpenOrder e você usa os valores padrão, você terá uma EA que abre negociações usando o número mágico que é mostrado na janela de entrada quando você inicia a EA. Veja este link para obter um exemplo da janela de entrada EA e da janela do Gerenciador de entrada do VTS.
Aqui está uma imagem do parâmetro mágico na configuração da função VTS fnOpenOrder. Observe, está na guia avançada:
Parâmetro do número mágico no fnOpenOrder (OrderSened)
Uma vez que você pode definir o parâmetro mágico na função VTS fnOpenOrder para qualquer valor, não apenas a variável MagicNumber, a capacidade de utilizar um número mágico dentro do VTS é muito flexível.
Você pode ter notado o parâmetro de comentário. O parâmetro de comentário do OrderSend é usado para adicionar um comentário de texto a um comércio. (Nota: você deve ter cuidado se desejar usar o valor do comentário para identificar um comércio porque o valor pode ser alterado pelo corretor. Na verdade, ele é alterado sempre que o comércio é modificado).
De qualquer forma, pode ser extremamente útil ver o número mágico de uma troca na plataforma MetaTrader. Por padrão, o VTS define o nome da EA e o número mágico no parâmetro do comentário. Desta forma, você pode ver visualmente como seus negócios foram abertos na plataforma MT. Aqui está uma imagem de um comércio aberto na guia Comércio:
O nome da EA que abriu este comércio EURUSD é & # 8220; system3 & # 8221 ;, eo número mágico é 123456.
Aqui está uma imagem de um comércio fechado na guia Histórico da conta:
Observe que o campo de comentários foi alterado pelo corretor: eles adicionaram o texto & # 8220; [tp] & # 8221 ;.
Por sinal, se você não vê o campo Comentário na sua plataforma MetaTrader, pode clicar com o botão direito do mouse nas colunas e adicioná-lo.
Como obter o Número Mágico de um Comércio usando VTS.
O fnGetOrderInfo gera todo o código MQL para o loop de seleção de pedidos e retorna o valor solicitado.
Compartilhe esta publicação.
Visit Author: Website All Posts.
3 Comentários.
Oi, se uma configuração está fazendo vários sinais do mesmo lado, como você programa esta EA Para gerar diferentes números mágicos em cada comércio?
Na lógica de sinal onde a função fnOpenOrder é chamada, defina um número mágico exclusivo na magia.
Você pode simplesmente inserir um número como: 8675309, ou você pode criar uma variável para manter o número e definir essa variável como mágica.
Por exemplo, crie 2 variáveis com o nome & # 8220; mymagic1 & # 8221; e mymagic2 & # 8221; e atribua-os à magia.
valor do parâmetro. Então você pode definir essas variáveis como & # 8220; extern & # 8221; e pode configurá-los quando você anexa o EA a um gráfico. Você pode fazer isso para tantos números mágicos únicos que você precisa.
Você pode usar uma variável como o MagicNumer e incrementar cada vez que um comércio é aberto.
Como usar o número mágico no MetaTrader4 MQL4.
Ao trabalhar com scripts e Expert Advisors no MetaTrader4, você pode chegar a uma etapa em que você gerencia muitas ordens ao mesmo tempo. É importante ser capaz de gerenciar os diferentes pedidos executados em diferentes estratégias e é por isso que você precisa de um número mágico! Neste artigo, veremos como usar o Número mágico no idioma MetaTrader4 e MQL4.
O que é The Magic Number.
O número mágico é um identificador para os pedidos. Baiscally quando você abre um pedido no MetaTrader4 usando o código MQL4, você pode associar a ordem com um número.
O mesmo número mágico pode ser usado em muitos pedidos. Em alternativa, com algum código, você pode gerar um número mágico diferente para cada pedido, porém isso não será útil como você verá na próxima seção.
Por que você precisa de um número mágico.
No início da sua jornada de negociação, você provavelmente lida com apenas uma ou algumas ordens por vez. Tornando-se mais especialista, você pode aumentar o número de ordens abertas ou estratégias que você está usando. Quando o Trading Automation através do MQL4 está envolvido, o Número Mágico é necessário para selecionar quais ordens trabalhar.
O número mágico pode ser usado para:
Separar ordens usando diferentes estratégias Separar ordens para o mesmo instrumento executado em diferentes prazos Separar pedidos abertos por diferentes Consultores Expert.
Para mencionar um exemplo, suponha que você tenha dois Expert Advisors e que deseja executá-los no par EURUSD. Um consultor especialista é um scalper trabalhando melhor em um gráfico de 15 minutos, enquanto o outro é mais adequado para um gráfico de 1 hora. Se os consultores especializados estiverem codificados de forma adequada, você poderá atribuir números mágicos diferentes às ordens abertas pelos dois consultores especializados. O uso de dois números mágicos diferentes permitirá que os consultores especialistas trabalhem apenas em seus próprios negócios.
Como usar o Número Mágico com MetaTrader4 e MQL4 Idioma.
Trabalhar com números mágicos no idioma MQL4 é muito fácil. O MQL4 já possui funções nativas para atribuir e ler o Número Mágico.
Quando você abre um pedido com a função OrderSend (), um dos parâmetros opcionais é o Número Mágico, então com esta função você associa um Número Mágico à ordem que você está abrindo.
Quando você seleciona um pedido com OrderSelect (), você pode recuperar o número mágico da ordem selecionada usando a função OrderMagicNumber ().
Quando você escreve um Expert Advisor ou um script que abre e atualiza as ordens, eu sugeriria que sempre use um Número mágico. O exemplo abaixo mostra algum código que você deve incluir em seus programas para permitir que você (ou o comerciante) especifique um número mágico para o código em execução.
Na seção de download, você pode encontrar exemplos de trabalho que estão usando o número mágico.
Conclusão.
O número mágico é um número que ajuda MetaTrader4 e MQL4 a identificar os pedidos. Um número mágico é necessário especialmente quando se executam diferentes consultores especializados e diferentes estratégias. O MQL4 torna muito fácil trabalhar com números mágicos.
Se você tiver dúvidas ou comentários, por favor elogie abaixo.
Lembre-se de gostar e seguir-nos nas mídias sociais.
Комментариев нет:
Отправить комментарий