Friday, 16 March 2018

Erro de forex 130


Erro 130.


Oi, sou novo no MT4 e preciso de ajuda com o Error 130. Estou tentando usar um código muito simples para testar como o MT4 funciona com meu corretor (Forex). No entanto, estou preso no Erro 130 para a minha EA. Eu tentei mudar o SL e o TP, mas isso não ajuda. Eu também verifiquei o STOPLEVEL para o meu corretor é 10. Mas, não importa o que eu altere o número, ele sempre me diz o erro 130. Aqui está o código. Eu sei que o código parece retardado, é porque eu modifiquei apenas para depurar o erro. Por favor ajude!


Obrigado pela sua resposta. Eu entendi o que você quer dizer. Eu cometi esse erro durante a revisão do código. No entanto, este não é o problema real em. Eu mudei o código para isso e imprima o SL e TP no erro, a impressão é:


2012.03.15 09:39:42 MACD Amostra EURUSD, M1: Erro ao abrir COMPRAR ordem: 130 Pergunte: 1.3011 SL: 1.2996 TP: 1.3026.


Entendi. Meu corretor não aceita SL e TP com a função OrderSend. Tem que ser modificação posterior.


Isso não é especificado pelo corretor ou pela documentação. Recomendo fortemente isso para ser notado no doc.


Obrigado pela sua resposta. Eu entendi o que você quer dizer. Eu cometi esse erro durante a revisão do código. No entanto, este não é o problema real em. Eu mudei o código para isso e imprima o SL e TP no erro, a impressão é:


2012.03.15 09:39:42 MACD Amostra EURUSD, M1: Erro ao abrir COMPRAR ordem: 130 Pergunte: 1.3011 SL: 1.2996 TP: 1.3026.


Seu corretor poderia ser o ECN e, em seguida, você não tem permissão para fazer novos negócios com configuração definida de Stoploss e TakeProfit.


Aqui mql5 / pt / code / 10317 você encontra um exemplo de como lidar com isso.


Obrigado pela sua resposta. Eu entendi o que você quer dizer. Eu cometi esse erro durante a revisão do código. No entanto, este não é o problema real em. Eu mudei o código para isso e imprima o SL e TP no erro, a impressão é:


2012.03.15 09:39:42 MACD Amostra EURUSD, M1: Erro ao abrir COMPRAR ordem: 130 Pergunte: 1.3011 SL: 1.2996 TP: 1.3026.


Como vencer o Ordersend Error 130 no MetaTrader 4.


Pela demanda popular, estratégias comprovadas sobre como vencer o pesadelo de todos os comerciantes algorítmicos & # 8217; # 8217; Erro 130.


De onde vem esse erro? O que significa para o seu consultor especialista? Como você pode encontrar a parte do seu código que está causando o erro? Nós abordamos tudo isso e mais & # 8230;


Para começar, uma definição formal do nosso amigo, Documentação MQL4:


Isso é certo! Isso é tudo o que você obtém do MetaQuotes. E o resto & # 8230; Vai saber!


Ordersend O erro 130 é mencionado brevemente em outras seções da documentação. No entanto, não há um guia completo para o que # 8220; Invalid Stops & # 8221; realmente significa e como lidar com isso, talvez, o problema mais comum na programação de Forex.


Mas não é uma preocupação! É por isso que escrevi este artigo. Deixe-se passar por isso juntos!


O assassino silencioso.


Então, & # 8230; você lançou seu consultor especialista e # 8230; nada acontece. Não COMPRAR pedidos, sem encomendas, sem pedidos pendentes, nem mesmo mensagens de erro nos logs & # 8230 ;. Apenas silêncio. Você decide esperar algumas horas / dias / semanas, e nada realmente muda & # 8211; as tabelas vão para cima e para baixo, mas você não vê nenhum lucro. Isso pode continuar para sempre # 8230;


A verdadeira razão é simples & # 8211; Você realmente está recebendo ERR_INVALID_STOPS (qual é o termo técnico correto para o problema), mas você não pode vê-lo. Isso é porque 130 é um assassino silencioso. Um assassino de sangue frio do seu cérebro e calma interior 🙂


Não há como extrair esse erro por meio de logs de consultores especializados ou mesmo registros de terminal. A única maneira de capturá-lo é adicionando os mecanismos de segurança corretos em seu código. Aqui, um exemplo que você pode adaptar ao seu código:


O que estamos fazendo aqui é tomar o número do ticket e que o OrderSend () retorna e verificando se ele é menor do que zero. Se sim, então é um sinal do MetaTrader 4 que nos diz que houve um problema com o pedido.


O código de erro é impresso na tela usando Alert () e a função GetLastError () incorporada. Este código dará uma janela pop-up como na imagem acima na parte superior deste artigo.


Nota: você pode usar Print () em vez de Alert () para redirecionar a mensagem diretamente para o registro EA & # 8217; s em vez de exibi-la na tela.


Core of Ordersend Erro 130.


Paradas inválidas é o nome real para o culpado com o qual estamos lidando hoje. Então, o que as paradas inválidas no MetaTrader 4 realmente significam?


Para um pedido de mercado (COMPRAR ou VENDER), as paradas inválidas significam que o StopLoss e / ou o TakeProfit que você solicitou não foram possíveis para o seu pedido. Portanto, uma vez que um pedido não pode ser preenchido apenas parcialmente, o pedido não foi executado. Para um pedido pendente (COMPRAR STOP, COMPRAR LIMITE, VENDENDO STOP ou LIMIT DE VENDA), as paradas inválidas significam que (1) houve problemas com o SL / TP (o mesmo que acima) OU (2) o problema foi com o preço de entrada que você especificou para a própria ordem.


Como podemos ver, o problema é sempre com um (ou muitos) dos preços que seu Forex Robot especificou em sua solicitação ao servidor de comércio. Agora que conhecemos o nosso inimigo # 8211; Deixe-o vencer!


1) StopLoss & amp; TakeProfit são preços.


Existem várias causas possíveis de ERR_INVALID_STOPS e uma das mais frequentes entre iniciantes é especificar o StopLoss e TakeProfit em pips em vez de níveis de preços reais. Como isso:


Esta pessoa tentou definir um StopLoss de 20 pips e um TakeProfit de 40 pips. Big NO-NO & # 8230; .. A maneira correta e única de especificar seu SL e TP é através dos níveis de preços:


A propósito, assumimos que o preço atual do ASK é 1.1606 e o ​​preço atual do BID é 1.1605 (ou seja, 1 pip spread).


2) 4 dígitos versus 5 dígitos.


Outra razão pela qual você poderia obter ERR_INVALID_STOPS é se você estiver configurando os parâmetros de entrada de sua EA em Pips (pontos de 4 dígitos) quando o Robot está antecipando pontos de 5 dígitos. Vamos ver um exemplo:


Este código funcionará bem em um corretor de 4 dígitos, no entanto, falhará em um corretor de 5 dígitos. O motivo é que, em um corretor de 4 dígitos, Point () equivale a 0.0001, enquanto que em um ponto de correção de 5 dígitos (igual a 0,00001).


Basicamente, sem ajustes adicionais, em um corretor de 5 dígitos, a EA tentará configurar o StopLoss e TakeProfit em apenas 2 e 4 pips longe do preço da Oferta, respectivamente!


Por isso, no caso de um corretor de 5 dígitos, você deve aumentar os seus parâmetros StopLoss e TakeProfit dez vezes. Como isso:


No entanto, tenha cuidado! Alguns EA & # 8217; s já possuem módulos que detectarão o número de dígitos após o decimal e ajustarão automaticamente seus parâmetros de entrada para você. Nessas situações, multiplicar os insumos em 10 pode realmente levar a uma performance errônea.


Nota: Planejo publicar um artigo separado onde discutiremos como criar nossos próprios módulos para detectar o número de dígitos após o decimal.


3) corretores ECN.


As contas ECN têm suas próprias especificidades. Um deles é & # 8211; Ao negociar através de um corretor ECN você não poderá definir um StopLoss e / ou TakeProfit com seu Pedido de Mercado (COMPRAR ou VENDER). Se você tentar fazer isso & # 8211; você obterá o erro 130.


No entanto, é claro, você precisa definir um StopLoss (e talvez TakeProfit) para o seu pedido, e isso deve ser feito o mais rápido possível após o pedido ter sido executado. Experimente este código:


Você pode adicionar esta função ao seu código (no final) e depois usá-lo em vez de OrderSend () em seu código principal. Esta função adiciona uma etapa extra no processo de envio de um pedido de mercado.


Em primeiro lugar, ele envia o pedido para executar uma ordem de mercado retirando o StopLoss e o TakeProfit. Em seguida, ele modifica o pedido de mercado recém-aberto, adicionando o SL e o TP desejados.


Existe, é claro, o risco de a ordem ser executada, mas a modificação falhará. No entanto, nesse caso, a função notificará prontamente o comerciante de que o StopLoss e o TakeProfit não foram configurados.


Sinta-se à vontade para modificar esta função de acordo com suas necessidades e estilo de negociação.


4) Stop-Levels.


Stop-Levels é um mecanismo para que os corretores se protejam de certos riscos relacionados com a volatilidade e a liquidez. Em termos simples, você não poderá configurar seu StopLoss ou TakeProfit OU qualquer ordem pendente mais próxima do que um número predeterminado de Pips para o preço atual do mercado.


Para descobrir o que o Stop Level é para um par de moedas específico, você precisa pressionar CTRL + U no seu teclado, selecione o par de moedas desejado e clique em & # 8220; Propriedades & # 8221; como mostrado na ilustração abaixo:


Neste exemplo, Stop Level for AUDUSD é 3 Pips. Isso significa que você não poderá configurar o StopLoss para seu pedido mais próximo do que 3 Pips para o preço no qual o pedido será aberto.


Isso também significa que qualquer pedido pendente terá que ser definido pelo menos 3 Pips longe do preço atual do mercado.


Se você Robot tentar quebrar essas regras e definir um StopLoss / TakeProfit ou Pending Order dentro do intervalo Stop Level, então ele obterá Erro 130 & # 8220; Invalid Stops & # 8221 ;. Então, fique atento ao Nível de Parada da moeda onde o seu EA & # 8217; s está negociando # 8211; não especifique parâmetros de StopLoss e TakeProfit excessivamente pequenos.


Também vale a pena notar que os pares de moedas mais exóticas podem ter níveis de parada muito mais significativos. Por exemplo, para AUDNZD, o Nível de Parada com o mesmo corretor que no exemplo acima é de 20 Pips. Para GBPSEK (British Pound vs Swedish Krone) e # 8211; 100 Pips.


5) Normalização de duplas.


Com alguns corretores, você encontrará que, por uma razão desconhecida, os preços Ask e Bid são transferidos para o comerciante com dígitos insignificantes adicionais após a decimal. Por exemplo:


Em vez de 1.1606, o corretor lhe daria 1.160600001.


Agora, esse fenômeno não tem efeito sobre o comércio manual, além disso, uma vez que o terminal MT4 está conectado para exibir um certo número de dígitos após o ponto decimal (4 ou 5) e # 8211; você não poderá notar nenhuma diferença!


No entanto, estes & # 8216; insignificantes & # 8217; dígitos após o decimal podem ter um efeito dramático sobre Expert Advisors causando & # 8230; & # 8230; & # 8230; Isso é certo! Nosso velho amigo, OrderSend Error 130!


Aqui é uma estratégia que eu uso pessoalmente para proteger meus robôs desta questão:


Este pequeno truque limpo permite que você normalize (em termos simples & # 8211; Round) todos os preços que você está inserindo na função OrderSend (). Desta forma, você cortou todos os # 8216; insignificantes & # 8217; dígitos após o ponto decimal.


Conclusão.


Hoje, vimos que pode haver várias causas (pelo menos 5) para o erro 130. Embora isso seja bastante, as questões subjacentes são triviais e podem ser corrigidas em questão de minutos.


Portanto, o Erro 130 não deve ser temido! Se você encontrou este culpado, é apenas uma questão de passar pela lista acima, encontrando a situação que se aplica a você e aplicando a solução prescrita.


Espero que você tenha encontrado este artigo útil!


Deixe-me saber se você tem alguma dúvida usando a seção de comentários abaixo.


COMEÇAR COM A ACADEMIA DE NEGOCIAÇÃO FOREX.


Eu sou um comerciante de Forex, um cientista de dados, um empreendedor, um treinador online. Essas são minhas principais ocupações. Estive no Forex Trading desde 2007 e, como eles dizem, eu vi o bom, o ruim e o feio. Eu sobrevivi ao GFC e aprendi muito ao longo do caminho. Hoje eu quero compartilhar todos os meus conhecimentos e idéias com você.


Graças a Kirill, essas informações me ajudaram a resolver o erro de preço de entrada pendente.


A qualquer momento! Feliz por ajudar.


então eu entendo que você não pode definir um SL e TP para o seu pedido de mercado ao negociar com um ECN Broker.


Você pode talvez explicar o porquê? Qual é a razão pela qual você não pode fazer isso?


E por que você pode fazer isso com o resto dos corretores (Market Makers)?


Na execução do mercado (ECN), você não garante um preço certo no qual seu pedido será preenchido. O seu pedido será executado no próximo preço disponível, que pode ser de 10 pips ou mesmo 100 pips longe do que você especificou. Essa é a principal razão pela qual o SL e o TP não podem ser configurados imediatamente.


Na execução instantânea, você pode configurar o SL e o TP imediatamente porque você pode controlar a derrapagem máxima. Se o preço estiver muito longe do que você deseja, o pedido não será executado.


Espero que isto ajude,


sim, definitivamente ajudou.


Obrigado pela sua resposta e pelo link para o artigo.


As coisas são claras para mim saber.


Você pode talvez também recomendar um bom corretor que ofereça a Execução do Mercado?


Tanto quanto eu entendi, os negociantes da Dealing Desk geralmente manipulam o preço, então eles são mais perigosos do que os corretores ECN que oferecem a execução do mercado.


Estou feliz por poder ajudar! Aqui, minha revisão dos corretores de Forex:


RoboForex tem uma boa solução ECN. Além disso, estou no processo de reavaliar esta lista, então as mudanças virão em breve (provavelmente maio). Enquanto isso, sinta-se livre para participar das discussões no Fórum ForexBoat:


Ele acabou de lançar na semana passada, então não podemos prometer que você receberá uma resposta rápida. Mas com o tempo as pessoas vão compartilhar suas experiências.


O SimpleSystem v8.9 é capaz de lidar com o Erro 130 e conter todos os códigos mencionados acima?


Obrigado Kirill por sua postagem. Parece que meu problema é o corretor da ECN. Tentei o seu script, mas o meu Mt4 parece não reconhecer o & # 8221; MarketOrderSend & # 8221;.Todos os conselhos?


Categorias.


Curso de negociação algorítmica (1): Forex Trading for Beginners (6) Curso: MQL4 para iniciantes completos (48) Curso: Testador de estratégia para iniciantes (11) FOREX (90) Estratégia Forex (90) Forex Trading para iniciantes (74) Forex VPS (1) Análise Fundamental (3) Entrevistas (1) Diversas (4) MQL4 (2) Análise Técnica (13)


Postagem recente.


Tags populares.


COMEÇAR COM A ACADEMIA DE NEGOCIAÇÃO FOREX.


Forexboat Pty Ltd (ABN: 29 609 855 414), um Representante Autorizado Corporativo (AR No. 001238951) da HLK Group Pty Ltd (ACN: 161 284 500) que detém uma Licença Australiana de Serviços Financeiros (AFSL nº 435746). Qualquer informação ou conselho contida neste site é de natureza geral e não constitui um conselho pessoal ou de investimento. Não aceitamos nenhuma responsabilidade por qualquer perda ou dano, incluindo, sem limitação, qualquer perda de lucro, que possa surgir direta ou indiretamente do uso ou dependência de tais informações. Você deve procurar um conselho financeiro independente antes de adquirir um produto financeiro. Todas as operações de produtos e instrumentos financeiros e de valores mobiliários envolvem riscos. Lembre-se de que os resultados do desempenho passado não são necessariamente indicativos de resultados futuros.


A informação neste site pode ser acessada em todo o mundo, no entanto, não é direcionada a residentes em qualquer país ou jurisdição onde tal distribuição ou uso seja contrário à lei ou regulamento local. Forexboat Pty Ltd não está registrado com qualquer regulador dos EUA, incluindo a National Futures Association (& # 8220; NFA & # 8221;) e Commodity Futures Trading Commission (& # 8220; CFTC & # 8221;); portanto, produtos e serviços oferecidos neste site não são destinado a residentes dos Estados Unidos.


Blog Forex.


Experiência de negociação de Forex em primeira mão e informações sobre o mercado de câmbio que serão úteis para os comerciantes.


Inscreva-se para obter atualizações diárias diretamente na sua caixa de entrada de e-mail.


Manipulação do pedidoEnviar erro 131 no MetaTrader 4.


OrderSend O erro 131 é um problema muito popular que normalmente é encontrado ao testar os consultores especializados do MT4. O que causa esse erro? Ele é chamado ERR_INVALID_TRADE_VOLUME no código MT4. Isso significa que seu consultor especialista está tentando enviar um pedido com volume comercial inválido. Na maioria absoluta dos corretores MT4 definindo alguns EA para abrir uma ordem, 0.123 lotes gerarão esse erro. Mas às vezes ele é gerado quando a EA, criada para mini ou micro contas, é usada na conta padrão. Se você tropeçar no OrderSend Error 131 durante o seu teste, você pode descobrir rapidamente as configurações erradas do seu EA & # 8212; encontre a função init () padrão dentro do código da EA e insira essas linhas de código lá:


A primeira linha lhe dará informações sobre o número de unidades que um lote detém quando você troca essa conta (100000 significa um lote de tamanho padrão). Lembre-se de que, no registro do seu consultor especialista, esta linha será iniciada primeiro de baixo para cima, e não vice-versa. A segunda linha irá dizer-lhe a quantidade mínima de lotes que você pode trocar (este é o erro mais comum, provavelmente você precisará corrigir o montante de lotes que sua EA faz de 0,1 a 1). O terceiro dará o passo mínimo para o volume comercial em lotes. A quarta linha informará a quantidade máxima de lotes que sua EA pode negociar.


Por exemplo, a conta de demonstração no FXOpen gera essa informação quando inseri essas linhas no código:


2008.07.10 15:13:37 MACD Sample EURUSD, H1: 10000.


2008.07.10 15:13:37 MACD Sample EURUSD, H1: 0.01.


2008.07.10 15:13:37 MACD Sample EURUSD, H1: 0.01.


2008.07.10 15:13:37 MACD Amostra EURUSD, H1: 100000.


Isso significa que 1 lote é de 100.000 unidades (um tamanho padrão), o volume mínimo de comércio é de 0,01 lot (então, um pode negociar a partir de US $ 10 em 1 posição em um par de dólares com base em dólares), o passo de volume mínimo de comércio também é de 0,01 lotes ( pode-se negociar volumes de 0.33, 0.4 ou 1.25 lotes, mas pode enviar pedidos com tamanho de 0,333 lotes e o volume máximo que se pode usar para abrir uma posição é de 10.000 lotes.


Você pode incorporar a função MarketInfo () em um nível mais complexo em sua EA, portanto, pode verificar automaticamente os valores permitidos e corrigir suas configurações. Mas se você não quer codificar muito, pode usar o código acima para descobrir os valores certos e corrigir as configurações manualmente.


Posts Relacionados:


6 Respostas para & # 8220; Handling OrderSend Error 131 no MetaTrader 4 & # 8221;


Este é algum aprimoramento:


Imprimir (& # 8220; MODE_LOTSIZE = & # 8220 ;, MarketInfo (Symbol (), MODE_LOTSIZE), & # 8220 ;, Symbol = & # 8220 ;, Symbol ());


Imprimir (& # 8220; MODE_MINLOT = & # 8220 ;, MarketInfo (Symbol (), MODE_MINLOT), & # 8220 ;, Símbolo = & # 8220 ;, Símbolo ());


Imprimir (& # 8220; MODE_LOTSTEP = & # 8220 ;, MarketInfo (Symbol (), MODE_LOTSTEP), & # 8220 ;, Symbol = & # 8220 ;, Symbol ());


Imprimir (& # 8220; MODE_MAXLOT = & # 8220 ;, MarketInfo (Symbol (), MODE_MAXLOT), & # 8220 ;, Symbol = & # 8220 ;, Symbol ());


Ogün POLAt Responder:


27 de agosto de 2012 às 15h14.


Obrigado pela sua ajuda. Mas usei esse código e eu aprendi que o tamanho máximo do lote é 30.


Como posso aumentar o tamanho máximo do lote.


27 de agosto de 2012 às 16h09.


Somente seu corretor pode aumentar o tamanho máximo permitido do lote. Você pode tentar contatar seu serviço de suporte sobre isso, mas não tenho certeza de que o aumentará. Você realmente tem que abrir posições tão grandes?


& # 8220; Você pode incorporar a função MarketInfo () em um nível mais complexo em sua EA, portanto, pode verificar automaticamente os valores permitidos e corrigir suas configurações & # 8221;


Por favor, qual é o código. Eu preciso disso, mas não sou um codificador. Grato. Chade.


Chad, se você não quiser codificar, será melhor usar a solução proposta nesta postagem. A integração do MarketInfo () no código para ajustes automáticos é diferente em cada caso e eu não posso ajudá-lo aqui. Mais do que isso, você realmente não precisa se você não for um codificador profissional.


Fiquei louco tentando descobrir isso. Eu finalmente entendi por que o meu EA funciona em mini, mas não tão bem em contas normais.


Blog Forex.


Experiência de negociação de Forex em primeira mão e informações sobre o mercado de câmbio que serão úteis para os comerciantes.


Inscreva-se para obter atualizações diárias diretamente na sua caixa de entrada de e-mail.


OrderSend Error 130 - O que fazer?


Os consultores especializados que trabalham em um corretor podem parar de trabalhar em outro; o problema com eles geralmente está em OrderSend Error 130. Se você vir o Erro 130 no Log de sua plataforma do MetaTrader quando seu consultor especialista deve abrir uma posição, isso significa que os níveis de stop-loss ou take-profit estão configurados para fechar ao preço atual do mercado. Na documentação MQL, este erro é chamado ERR_INVALID_STOPS (& laquo; Invalid stops & raquo;). Alguns corretores de Forex definem a distância mínima entre o preço atual e os níveis de stop-loss / take-profit para evitar escalar ou abusar dos atrasos das cotações. Esse não é um problema real para a maioria dos consultores especializados que não usam scalping. Para evitar que este erro ocorra, você precisa alterar o código do especialista.


Primeiro, você pode querer saber qual é o nível mínimo estabelecido no servidor MetaTrader do seu corretor. Adicionando esta linha de código, será emitido o escopo mínimo atual para o par de moedas do gráfico, onde você executará o EA:


Você não deve usar o nível stop-loss ou take-profit, que está mais próximo do MarketInfo (Symbol (), MODE_STOPLEVEL) para o preço atual do mercado. Se o seu EA calcular paradas e tirar lucros dinamicamente, é o que eu sugiro que você faça:


Declare uma variável global para o StopLevel mínimo; por exemplo.:


StopLevel = MarketInfo (Symbol (), MODE_STOPLEVEL) + MarketInfo (Symbol (), MODE_SPREAD);


Note-se que a adição de uma diferença de spread também é necessária. A próxima vez que seu stop-loss ou take-profit for calculado, basta verificá-los para não ser inferior a StopLevel:


se (StopLoss & lt; StopLevel) StopLoss = StopLevel; se (TakeProfit & lt; StopLevel) TakeProfit = StopLevel;


Isso deve ajudar na maioria dos casos. Pelo menos, para mim, esse tratamento do OrderSend Error 130 sempre funcionou.


Atualize 2011-12-15: Alguns corretores (ECN) não permitem que os consultores especializados estabeleçam o nível stop-loss ou take-profit na função OrderSend (), mesmo que seja maior que o MODE_STOPLEVEL. Nesse caso, você precisará alterar sua EA para enviar ordens sem SL e TP e depois usar a função OrderModify () para definir stop-loss e take-profit na posição aberta.


Se você tiver dúvidas ou sugestões sobre o problema OrderSend Error 130 com consultores especializados, sinta-se à vontade para responder usando o formulário abaixo.


Posts Relacionados:


70 Responses to & # 8220; OrderSend Error 130 - O que fazer? & # 8221;


16 de agosto de 2013 às 5:04 da tarde.


Eu continuo recebendo esse erro sem parar. A minha função orderend () é a seguinte:


currentOrder = OrderSend (moedas [i], OP_SELL, 0.1, Bid, 3, Bid + (MarketInfo (moedas [i], MODE_STOPLEVEL) + MarketInfo (moedas [i], MODE_SPREAD)) * 0.0001, Bid - (MarketInfo (moedas [i ], MODE_STOPLEVEL) + MarketInfo (moedas [i], MODE_SPREAD)) * 0,0001, & # 8221; Sell & # 8221 ;, BlueViolet);


As coisas na perda de parada e as áreas de lucro foram coisas que a internet me disse para fazer, mas ainda não funciona. Por favor ajude!


16 de agosto de 2013 às 18:04.


Talvez, você está tentando isso na conta ECN, onde é proibida a colocação de pedidos com SL e TP? Nesse caso, você deve enviar primeiro um pedido sem SL / TP e depois modificá-lo para adicionar SL / TP.


18 de agosto de 2013 às 11h27.


Você pode me dizer o que eu tenho para colocar no stoploss se eu quiser configurá-lo para 5 pips e aproveitar para dez pips para comprar e vender negócios? Obrigado por responder à publicação original.


19 de agosto de 2013 às 7:34 am.


& # 8220; Alguns corretores de Forex definem a distância mínima entre o preço atual e os níveis de stop-loss / take-profit para evitar escalar ou abusar dos atrasos das cotações. & # 8221;


Qual é o motivo do corretor para fazer isso se você pode parar os loos à mão?


31 de março de 2009 às 10:09 horas.


Porque é quase impossível abusar constantemente da baixa parada-perda manualmente. Os abusadores reais criam EAs que fazem isso.


Obrigado pela informação & # 8211; Mas eu tenho uma pergunta com a qual eu possa ajudar. Meu EA coloca ordens pendentes, com TP e SL colocados entre 25 e 50 pips de aberto. De vez em quando eu recebo o erro 130, presumo porque o SL está próximo do preço atual. Certamente, o erro só deve ocorrer quando o SL estiver muito próximo do preço de abertura, NÃO o preço atual em um comércio pendente. Ajustar o SL demais mudará a natureza do comércio # 8211; qualquer ideia para este. BTW estou usando o Alpari UK.


4 de abril de 2009 às 9h31.


Não tenho certeza, mas acredito que não é porque SL ou TP estão perto do preço atual, mas porque seu preço de abertura na ordem pendente é muito próximo da atualidade.


Outra questão atual trata da Execução do Mercado vs Execução Instantânea. Um é MM com execução instantânea e o outro não está lidando com a Execução do Mercado. A execução do mercado que é feita por STP e ECN não pode enviar TP e SL juntamente com a ordem. Você deve modificar a ordem e depois definir o TP e o SL.


17 de fevereiro de 2010, às 8h43.


Porque você acha isso?


2 de março de 2010 às 12:57 pm.


Como posso fazer isso. Você pode ajudar passo a passo?


Muito obrigado pelo código.


Isso conserta meu problema.


Eu tento usar o EA na conta de demonstração e funciona bem. Mas, quando eu uso isso na conta real, sempre recebo erros de ordem 130.


Motivos! me ajude a saber por quê?


1 de setembro de 2011 às 21h21.


Qual configuração você usa?


1 de setembro de 2011 às 21h23.


Eu uso configurações de defeito para ambas as contas 2. Alguma coisa errada aqui?


1 de setembro de 2011 às 21h25.


Estou usando phoenix v56_03, por favor! Ajude-me.


1 de setembro de 2011 às 21h38.


Você baixou Phonex a partir daqui:


ou de outro lugar?


2 de setembro de 2011 às 3:47 da manhã.


Ninguém pode me ajudar com este problema :(


Sim ! Estou baixando sua fênix compartilhada e uso em GBPUSD.


Na conta de demonstração, não há problema, mas na conta real é problema.


2 de setembro de 2011 às 8:34 am.


O símbolo é chamado & # 8220; GBPUSD & # 8221; no MT4 do seu corretor? Você tem certeza de que não há símbolos extras, como # # 8220; # GBPUSD & # 8221; ou & # 8220; xGBPUSD & # 8221 ;?


2 de setembro de 2011 às 16h03.


Muito obrigado, corrigi esse promlem, agora que a EA funciona bem: D.


2 de setembro de 2011 às 18:24.


E como você fez isso?


juan david Responder:


29 de novembro de 2011 às 11:56 da tarde.


Estou tendo o mesmo problema com a Phoenix (formulário baixado aqui) e estou executando configurações padrão com os pares recomendados.


Eu tenho uma conta de demonstração 1000.


desde já, obrigado.


30 de novembro de 2011 às 9:55 da manhã.


Você tentou a solução proposta? Seu corretor permite configurar SL e TP em posições em ordem aberta?


Eu tenho um EA com SL definido para 650 (65 pips) e TP definido para 800 (80 pips), mas ainda estou recebendo erro 130 na execução. Funciona bem no Strategy Tester. O arquivo de log é o seguinte:


9:00:10 MACross GBPUSDm, H1: Alerta: cruzamento de MA - & gt; VENDA GBPUSDm.


09:00:10 MACross GBPUSDm, H1: cruzamento MA: Erro ao abrir a ordem VENDA: 130.


09:00:10 MACross GBPUSDm, H1: Licitação: 1.558 SL: 1.5645 TP: 1.55.


O código para isso é:


Você tem alguma idéia sobre como resolver isso?


15 de dezembro de 2011 às 14h04.


Se você estiver negociando na conta ECN, você pode configurar o SL ou o TP na abertura da posição, você deve fazer isso depois que o pedido for executado.


Não tenho certeza do que é uma conta ECN, mas eu sei para a ordem do mercado, não é possível definir o SL / TP na abertura, mas eu tenho outros EAs que funcionam bem fazendo isso.


15 de dezembro de 2011 às 15h24.


Se você tiver certeza de que outros EA estão definindo SL & # 038; TP em OrderSend () e não receba o erro OrderSend 130 nesta mesma conta, então minha única sugestão seria aplicar NormalizeDouble () aos seus níveis de stop-loss e take-profit. Por exemplo.:


OrderSend (Symbol (), OP_SELL, Lots, CurrPrice, 3, NormalizeDouble (CurrPrice + sLoss, Digits), NormalizeDouble (CurrPrice-tProf, Digits), "MA cross SELL", MAGICMA, 0, Vermelho);


Obrigado. Vou tentar isso.


As condições foram apenas atendidas, mas a EA não executou. Mesmo erro 130. Eu irei tentar uma abordagem diferente. Isso é para sua ajuda.


16 de dezembro de 2011 às 9:00 da tarde.


Por favor, avise-nos se você encontrar a solução.


Eu tenho EA que me dá 130 ERROR enquanto Execute Order.


Como você disse que o ECN Broker não permite colocar SL / TP enquanto o Order Execute.


Então, eu preciso de ajuda para o programa Chane EA, como esta primeira ordem de envio, depois de modificá-la com SL e TP. Também como ocultar SL / TP como FAPTURBO EA.


Por favor, eu preciso da sua ajuda.


Você pode contatar o suporte Fapturbo com este pedido.


Nome da EA: cm_martini.


trabalhou em outro corretor, mas não pode trabalhar no corretor da exatidão, você pode me ajudar a modificar essa EA. envie EA modificada para o meu email: almunpdamyahoo. co. id.


19 de julho de 2012 às 7:09 da manhã.


Se você colocar um link de download aqui, eu posso olhar para ele.


Eu tenho EA, isso funciona muito bem no par EUR / USD, mas quando estou tentando colocá-lo no S & amp; P ou Nasdaq, ele me dá um erro 130. Quando estou executando backtest, ele está funcionando de forma excelente.


Ao tentar trocar demonstração, sempre me dê erros e não envie meus pedidos. qualquer ideia? eu não entendi onde colocar esta linha: & # 8221; Imprimir (MarketInfo (Symbol (), MODE_STOPLEVEL)); & # 8221; para verificar.


Obrigado pela ajuda.


6 de novembro de 2012 às 8:28 da tarde.


Você precisa colocá-lo em qualquer lugar na função init () do código-fonte do EA & # 8217; (código. mq4). Se você não tiver o arquivo. mq4 e tiver apenas. ex4, então não é possível adicionar nada ao seu EA ou alterá-lo para corrigir o erro aparente.


6 de novembro de 2012 às 21:18.


Eu tenho o arquivo. mq4. eu coloquei aqui:


mas onde deveria me escrever quais os níveis de parada mínimos?


depois de fazer o que devo fazer?


e por que o teste de volta está funcionando bem, mas a demonstração ao vivo não é?


Muito obrigado. Menino.


6 de novembro de 2012 às 9:59 da tarde.


Ele deve imprimir o valor na guia de especialistas.


desculpe meu amigo, eu não sei onde é que eu não consigo encontrá-lo. De qualquer forma, qualquer explicação por que está funcionando no teste de volta e não na demo ao vivo?


Existe alguma chance porque ele envia a parada de venda + tp + sl ao mesmo tempo? talvez ele deve colocar o tp e sl logo após a parada de venda ser preenchida?


7 de novembro de 2012 às 9h43.


Aqui está a guia Especialista:


Sim, pode ser para que o TP / SL deve ser definido separadamente depois que o pedido já está aberto. Mas antes você disse que você tentou na demonstração em tempo real do EUR / USD e funcionou.


Bem, nesta guia, ele não me mostra o nível de parada apenas me escrevendo o erro.


No EURUSD, a EA funciona muito bem nas nasdaq e s & amp; p, me mostra o erro durante a negociação de demonstração ao vivo. Mas quando estou de volta, o teste funciona bem.


7 de novembro de 2012 às 16:26.


Você compilou a EA depois de ter adicionado essa linha de código à função init ()?


Tem certeza de que não imprime nada quando você anexa o EA a um gráfico?


O que é compilado?


7 de novembro de 2012 às 7:04 da tarde.


Quando você aplica alguma alteração ao código EA & # 8217; s, você precisa pressionar o botão Compilar (F7).


Veja este tutorial para obter mais informações:


Minha EA trabalha no testador de estratégia, mas não funciona na conta ao vivo (teste). Recebo uma ordemSend () 130.


8 de abril de 2013 às 11:59 da manhã.


Você troca na conta ECN e envia pedidos com SL / TP sobre eles?


9 de abril de 2013 às 1:42 da manhã.


Sim, estou tentando fazer scalping e meu corretor o permite, porque permitiria no teste de estratégia e não na conta ao vivo.


9 de abril de 2013 às 7:14 am.


Não tem nada a ver com permitir ou desautorizar scalping. Se seu corretor usa a execução ECN, sua EA deve definir SL / TP depois de abrir uma posição.


O Strategy Tester usa a execução não-ECN.


10 de abril de 2013 às 6h36.


Eu vejo que isso faz sentido, você sabia se Finfx é um corretor da ECN?


Muito obrigado por sua ajuda :)


10 de abril de 2013 às 8h05.


Tanto quanto eu sei, o FinFX oferece contas ECN e não ECN.


Minha EA criou o Erro 130 no FinFx ECN acc.


e eu não sei como consertar isso.


Posso enviar-lhe o meu EA mql4, para corrigir?


Agradeço antecipadamente.


12 de abril de 2013 às 8h50.


Você pode enviar seu EA para algum site de compartilhamento de arquivos e publicar o link de download aqui. Embora eu não possa prometer-lhe que vou consertá-lo.


12 de abril de 2013 às 9:01 da manhã.


Eu envio EA, este é um link:


12 de abril de 2013 às 10h11.


Sim, a EA aplica SL e TP diretamente na abertura da posição. Pode ser corrigido removendo SL / TP dos procedimentos de abertura de posição e transferi-lo para chamadas OrderModify () após as posições serem abertas.


Infelizmente, este EA é um código descompilado e é um trabalho infame fazer sentido de qualquer coisa lá. É melhor entrar em contato com seu autor pedindo para torná-lo amigável ECN.


Eu executei o EA e continuo mostrando Ordersend Error 130 e Ordermodify error 130. Existe um problema no seguinte que você pode conselhos?


11 de julho de 2014 às 2:46 da manhã.


Não consigo ver isso do que você postou. Você leu essa postagem no blog? Explica que o preço de stop-loss não deve estar mais próximo do preço de abertura que o corretor definido STOPLEVEL. Verifique se a sua EA segue esta regra.


Pode ser um atraso muito pequeno é a causa do erro 130?


Como é que o deslizamento é calcolado?


por exemplo. O deslizamento é 3. O que é 3?


por exemplo. preço 1.1111 + 3 = 1.1114 é permitido?


ou 1.11111 + 3 = 1.11114 é permitido?


29 de janeiro de 2015 às 8:48 da tarde.


Se 3 pips são normais ou fracionados depende da implementação de EA específica, mas OrderSend Error 130 não tem nada a ver com o deslizamento, mas sim com a taxa de SL, TP ou o preço aberto de uma ordem pendente.


Parabéns pela explicação do erro 130. E parabéns por ajudar e esclarecer os neófitos de EA.


Gostei muito da simplicidade da explicação.


Eu sempre consegui erro de pedidos 130.


É muito lucrativo scalper mq4.


você pode corrigir esse erro de envio de ordem.


16 de agosto de 2016 às 13h05.


Oi, o cálculo & # 8230; (StopLevel = MarketInfo (Symbol (), MODE_STOPLEVEL) + MarketInfo (Symbol (), MODE_SPREAD);) & # 8230; ainda é válido para um corretor de 5 dígitos? Ou o valor de StopLevel precisa ser dividido por 10?


8 de outubro de 2016 às 6:01 da manhã.


Ainda é verdade mesmo para corretores de 5 dígitos.


Meu problema é que o bilhete todos os dias é -1. ticket = OrderSend (& # 8230; ..)


25 de outubro de 2016 às 18h38.


Tente verificar o erro usando GetLastError ().


Oi, tenho o problema de 130 para todas as transações enviando meu código, alguém pode me ajudar por favor.


9 de janeiro de 2017 às 11h17.


Em primeiro lugar, 200 pips podem não ser suficientes & # 8211; você deve realmente compará-lo com SymbolInfoInteger (Symbol (), SYMBOL_TRADE_STOPS_LEVEL).


Então, há uma grande falha nesta função & # 8211; ele troca em um símbolo Symb dado através do argumento da função # 8217; s. No entanto, ele usa chamadas para Digits e Point para normalização. Digits e Point usam os parâmetros do instrumento de negociação atual, portanto, se você ligar a compra (& # 8220; EURUSD & # 8221 ;, 13123123) quando esta EA estiver anexada ao USD / JPY, você obterá valores completamente errados.


Códigos de mensagens de erro do Advisor Especial no gráfico.


Todos os Expert Advisors criados pela EA Coder exibem um código de mensagem de erro especial nos gráficos MT4 quando ocorre um erro durante a fase de abertura, fechamento ou modificação de um pedido. Se você vir uma mensagem como 'oe131' no seu gráfico quando um novo comércio deveria ser aberto, você saberá que ocorreu um erro.


Tipos de códigos de mensagens de erro.


Os códigos de mensagens de erro sempre começam com duas letras seguidas de um número de código de erro. The error codes I use are the same as those used in the MQL4 programming language and are explained in detail on the MQL4 documentation page.


When an error occurs during trade open.


Take our previous example oe131. Now we know that it indicates an error during a trade open, with the code 131 . If you look at the full list of error code descriptions, this one means “invalid trade volume”, which alerts us to check the money management settings that we have set for the Expert Advisor. This kind of error appears when a lot size is zero, if it is too small or if it is too big, because all brokers have lot size limitations. Some do not allow the lot size to be smaller than 0.1 while others allow lot sizes as low as 0.01. This varies among different brokers and different account types.


Usually Expert Advisors from EA Coder fix the lot size according to the broker limitations, but exceptions may apply because not all brokers report the correct limitation values for the EAs. An example of this is a broker reporting the minimum allowed lot size to be 0.01 while in reality it is actually 0.1. In a case like this, if you to set the EA to use a lot size somewhere between 0.01 and 0.09 it will fail to place orders as it won’t be able to fix the lot size because of it being reported incorrectly. Then you will get the oe131 error message printed on the chart.


Another example would be to get the oe133 error. This stands as “Trade is disabled” and it means that the broker does not allow to trade that pair. If this error appears even when customer tries to open trade manually on the same chart, then MT4 EA should be attached to a similar pair with the suffix. For example if you get this error on EURUSD, please look for pair name like EURUSD m or EURUSD FXF .


If you are able to open trades manually on the same pair it could be that your broker does not allow to use trading robots (EA’s) on that pair or account. Contact them for more info.


Common trade open errors:


128 – Trade timeout. 129 – Invalid price. 130 – Invalid stops. 131 – Invalid trade volume. 133 – Trade is disabled. 134 – Not enough money. 146 – Trade context is busy.


When an error occurs during order modification.


Let’s take a look at another common error that you may receive. It would be printed on your chart as me130 which stands for “modify error 130” and means “invalid stops”. This tells us that the stop loss and/or take profit values are incorrect or too close to the current market price. The minimum distance between the market and stop prices are called StopLevel limitation; this value simply tells the EA what size in pips the limitation is. On 5 digit brokers this is reported as points and must be converted to pips. However that is something the user don’t need to worry about, because EA Coder Expert Advisors handle these things automatically. But if you get a me130 error, be sure to check the TP and SL values that you’re using.


Common trade modification errors:


128 – Trade timeout. 130 – Invalid stops. 146 – Trade context is busy.


When an error occurs during trade close.


You may get a ce146 error when EA tries to close an order. This indicates that a “close error” occurred whose code is 146 . This means “trading context busy” and it is very common error, specially on older MT4 terminals when you have multiple Expert Advisors attached. EA Coder robots have an intelligent error handling mechanism built in and will do their best to avoid “trading context busy” errors even if you have multiple robots operating on your account. But in case you get one of these errors, just try to minimize the number of EAs running on the same account or set them to avoid performing trading operations at the same time if that’s possible with your EA.


Common trade close errors:


128 – Trade timeout. 146 – Trade context is busy.


Delaying of trading operations.


EA may need to delay a trading operation to avoid disrupting the MQL programming rules when an error occurs. It will retry the same trading operation if required and will have to wait somewhere between 1 to 5 seconds between each attempt. These are very logical rules of Metatrader programming and EA Coder trading robots obey them. See full list of execution errors.


In case there is a delay in performing a trading operation (whether it is opening, modifying or closing a trade) EA will print a small clock picture on the chart. This indicates that there was some kind of error and EA had to delay its operation for a few seconds to obey the rules and not overload the brokers’ servers.


Experts tab in MT4 terminal.


When any error occurs, the EA will print a more detailed error message in the Experts tab at the bottom of the MT4 terminal. You can switch to that tab any time and scroll down to see a complete list of errors, warnings and informational messages. These can help to solve a range of problems quickly even if you don’t have a lot of experience in using the MT4 platform and Expert Advisors or custom indicators.


Opening the log files folder directly from an MT4 terminal.


When you’re viewing the Experts tab you can click the right mouse button anywhere in that area and choose “Open”. This will open the log files folder for you. This folder contains files with the same messages that you see in the Experts tab, but from here you can access messages from previous days and weeks. Also, messages in the log files are presented in their full format and are not trimmed like some of the messages shown in the Experts tab when they are too long.


Reporting an error to EA Coder.


When you need to report an error to EA Coder, please describe the problem you are having in detail, include the trade numbers that you are having problems with, and make sure you attach any necessary files. It is very important that you send the log files from your \MT4-folder\experts\logs\ so that I’m able to investigate an error. Also please include screen shots of the chart where EA is running and if possible make sure that the problem is visible in the picture. This will help us provide you with more useful support.


You might notice that your log files folder is empty or doesn’t have any recent log files (the file names indicate the date they were created). In this case please carry out the steps described above which detail how to open the log files folder directly from the Experts tab at the bottom of your MT4 terminal.


Before you report a problem or request support for learning how an EA feature works, please refer to the instructional manual. This may help you solve your problem faster and you will also learn how to use the application better.


Order labeling during EA backtest.


Our Expert Advisors have a special order labeling mechanism built in. It is activated when you run EA in the Strategy Tester of your MT4 and it will create label numbers for each order that is placed during a backtest. This helps to track your trades easily as you will see the order numbers above each trade on the chart.


Publicações relacionadas:


Sobre o autor.


Primeiro eu sou pai, marido e depois o autor do livro "Como começar seu próprio serviço de sinais de Forex". Eu também sou um comerciante de Forex, um programador, um empreendedor e o fundador do e-codeer Forex blog. Criei duas das copiadoras comerciais mais populares e outras ferramentas de negociação para MT4 que já são usadas em todo o mundo por centenas de comerciantes de moeda.


4 Comentários.


my fxopen mt4 forex is reporting invalid volumn. i try all the leverage sieze and open the highest demo balance but the same message keep on reporting. porque?


my MFIforex platform still mt4 has refuse to update or connect to the network. what can i do i will to open live account after this test running this demo but now am discorrage.


it is truly difficult to solve your problem when I do not know if you are using EA created by me or by someone else.


However, I think you have this problem when EA does not prepare the right lot size. For example if your EA use lot size of 0.15 and your broker allows lot sizes only by increments of 0.1 you will get “invalid volume” erro. In this case you can use lot sizes like this 0.1, 0.2, 0.3, 0.4, etc.


If your broker allows lot sizes by increments of 0.01, then 0.15 lot size should work just fine if there is enough money in your account.


All EA’s that I create automatically detect these settings from the broker and prepares the lot size avoid such error.


You may want to take a look at the “Experts” tab or log files for more error messages. Maybe there is an explanation of the exact lot size printed after it got rejected by the broker.


Espero que isto ajude.


Hi, Thank you for the help.


In the expert advisor journal it says : trying to close short position, however there is no short position opened. how to solve that?


Dear Willy, you need to contact creator of the EA to get an answer to this question. If it is me, then contact me here.


But this message sounds like you can ignore it. EA probably has a rule to close all trades and simply checks to close SHORT trades when it gives this message. If there are any SHORT trades EA must be closing them, if there are no trades, it just does nothing.


Regards, Rimantas Petrauskas.


Cancelar resposta.


Inscreva-se para obter mais conhecimentos MT4.


Digite seu nome real e o melhor endereço de e-mail abaixo para se inscrever no meu boletim informativo. Seja o primeiro a receber meus novos tutoriais e artigos MT4.


Se você não pode ver o formulário de registro, ele deve estar oculto pela AdBlock e você terá que desativá-lo primeiro para este site.


P. S. Eu também enviarei uma cópia gratuita do meu eBook com conteúdo cheio (valor de US $ 19) que irá ensinar você a identificar fraudes Forex.


Siga-me no facebook.


Posts mais populares.


Rimantas Petrauskas é o autor, comerciante, programador, empresário, pai e marido de Forex. Ele criou software para troca de moeda e entrega de sinal desde 2009 e criou centenas de robôs comerciais para seus clientes. Ele acredita firmemente que, com uma Atitude Mental Positiva, podemos alcançar qualquer objetivo.


What is OrderSend Error 130 ?


The expert advisors that work on one broker can stop working on another; the problem with them often lies in OrderSend Error 130. If you see Error 130 in the Log of your MetaTrader platform when your expert advisor should be opening a position, then that means that the stop-loss or take-profit levels are set to close to the current market price. In the MQL documentation this error is called ERR_INVALID_STOPS («Invalid stops»). Some Forex broker set the minimum distance between the current price and the stop-loss/take-profit levels to prevent scalping or abusing the quote delays. That’s not a real problem for the majority of the expert advisors that don’t use scalping. To prevent this error from occurring, you need to change the expert’s code.


First, you might want to know what’s the minimum stoplevel is set in your broker’s MetaTrader server. Adding this line of code will output the current minimum stoplevel for the currency pair of the chart, where you run the EA:


You shouldn’t be using stop-loss or take-profit level, which are closer than MarketInfo(Symbol(), MODE_STOPLEVEL) to the current market price. If your EA calculates stops and take-profits dynamically, this is what I suggest you to do:


Declare a global variable for the minimum StopLevel; e. g.:


In the init() function of your expert advisor define the minimum StopLevel:


StopLevel = MarketInfo(Symbol(), MODE_STOPLEVEL) + MarketInfo(Symbol(), MODE_SPREAD);


Note, that adding a spread difference is also required.


The next time your stop-loss or take-profit is calculated, just check them to be not less than StopLevel:


if (StopLoss < StopLevel) StopLoss = StopLevel;


if (TakeProfit < StopLevel) TakeProfit = StopLevel;


Don’t forget to refresh the current market rates with RefreshRates() before adding the stop-loss/take-profits levels to the actual market rates.


That should help in the majority of the cases. At least, for me such handling of the OrderSend Error 130 has always worked.


forex trading Articles.


Get Forex Signal.


MT4/MT5 Programming Acticles.


Copyright © 2017 HongDi science technology development co.,ltd.

No comments:

Post a Comment