Precisa de ajuda para evitar o erro 131.
Este é o que eu criei para fechar todos os negócios de compra (não há pedidos pendentes).
Eu defini as variáveis antes de usá-las no código acima e não tive nenhum problema na compilação. Mas, de alguma forma, o valor da variável "lot & quot; é sempre 0 e continuo recebendo o erro 131.
Eu realmente não sei o que estou fazendo de errado. Tenho em mente que eu sou novo para isso, então eu talvez precise de você para colher me alimentar. Agradeço antecipadamente por sua ajuda.
Oi, eu preciso de ajuda para evitar a ordemEnviar erro 131 e comprima o erro 131. Aqui está o valor atribuído ao tamanho do lote:
O erro 131 significa que o volume é inválido. Você deve verificar se seu tamanho de lote está em conformidade com MODE_MINLOT e MODE_LOTSTEP antes de usá-lo (embora eu não tenha certeza de por que você obtém lotes = 0, talvez o problema esteja em outro lugar em seu código?). Use MarketInfo () para obter esses valores. Veja aqui - & gt; docs. mql4 / common / MarketInfo, docs. mql4 / constantes / marketinfo.
Borda de fechamento de pedidos - você precisa diminuir o contador e não o incrementar. Veja aqui - & gt; mql5 / pt / forum / 119840. btw - Recomenda-se contar de 0 em vez de usar i-1. (Mas isso depende de você). Certifique-se de que Dica não seja zero por padrão, caso contrário, se OrderSelect () falhar, então você pode obter um erro OrderClose (). Você também deve usar RefreshRates () imediatamente antes de tentar fechar - & gt; docs. mql4 / windows / RefreshRates.
Problema dois. Depois de fechar a primeira ordem, a posição da ordem 2 torna-se 1, 3 torna-se 2, etc. Você fechará todas as ordens OUTRAS. e então a ordem seleciona começar a falhar, mas você não prova para isso.
Problema três. Depois de fazer qualquer pedidoSend / modificar / fechar ou excluir, você deve atualizar antes de fazer outro.
Como corrigir uma EA quebrada.
Desculpe, não existe um depurador interno para o MQL4.
Mas, aqui estão algumas informações que irão ajudá-lo a resolver qualquer problema:
1. Expert Advisor não irá construir?
2. O Consultor Especial não irá negociar?
3. Precisa depurar sua EA?
O erro Orderend 130 é um & # 8220; Invalid stops & # 8221; erro.
Verifique os valores do stoploss e takeprofit para se certificar de que eles são bons para sua plataforma e amp; tipo de conta.
O comprimento máximo para o nome de uma variável para MT4 parece ser de 30 caracteres. (Esse valor pode mudar, mas sempre haverá algum máximo)
A mensagem de erro é bastante clara:
& # 8216; v1234567890123456789012345678901 & # 8217; & # 8211; Nome de variável muito longo C: \ Arquivos de Programas (x86) \ MetaTrader 4 \ experts \ exits. mq4 (4, 5)
Não deve ser fácil dar uma variável a um nome que seja muito longo usando VTS.
A maioria das telas de entrada do VTS evita que você crie uma variável ou função com muito tempo de um nome, mas ocasionalmente acontece.
Se assim for, exclua a variável da caixa de ferramentas clicando com o botão direito do mouse e selecionando excluir. E, em seguida, exclua todas as referências (todos os elementos no bloco de desenho) da variável.
Se você ainda tiver problemas, siga estas etapas:
Como faço para configurar o VTS para usar minha plataforma MetaTrader?
O VTS EA Builder usa sua Plataforma MetaTrader local para criar Expert Advisors. Você só precisa dizer ao VTS onde você possui MT instalado para cada um desses valores:
Depois que o VTS converte desenhos em código MQL legível, o VTS usa o compilador MetaTrader para converter o MQL em um Expert Advisor. O botão Construir no menu principal inicia o compilador MetaTrader.
Bandeiras do compilador.
Permite que as opções do compilador sejam definidas.
O botão Editor no menu principal inicia o metaeditor. exe MetaTrader. Este programa abre o editor MQL.
O botão Plataforma no menu principal inicia o terminal. exe do programa MetaTrader. Este programa abre a plataforma MetaTrader.
Pasta de Saída EA.
Define onde os arquivos EA são criados.
Pasta do indicador personalizado.
Define onde os indicadores personalizados são fornecidos.
Como posso criar um modelo de estratégia:
No VTS, com o sistema aberto, você gostaria de criar um modelo.
Vá para Ferramentas - & gt; Pacote & amp; Compartilhar.
Marque & # 8220; Salvar como Modelo de Estratégia & # 8221;
Em seguida, selecione salvar - & gt; Salvar & amp; Fechar.
Na próxima vez que você abrir o VTS.
O sistema aparecerá no & # 8220; Criar Novo Sistema & # 8221; seção da página de boas-vindas.
Ao clicar no botão na tela de boas-vindas, será criado um novo sistema.
com base no seu sistema original.
O comportamento é como clicar em Cross Over Strategy.
na tela de boas-vindas.
Como um sistema VTS.
O processo acima de criar um Template de Estratégia criará um arquivo *.zip nesta pasta:
C: \ Arquivos de Programas \ iExpertAdvisor \ Visual Trader Studio para MetaTrader \ Data \ Packages.
(Isso pode ser diferente se você instalou o VTS em uma pasta além de & # 8220; Arquivos de Programas & # 8221; ou & # 8220; Arquivos de Programas (x86) & # 8221;)
O arquivo zip talvez esteja anexado a um.
Além disso, o arquivo zip pode ser aberto no VTS usando o & # 8220; Open Existing System & # 8221; na tela de boas-vindas.
Aqui está um link para uma publicação sobre como definir o nome da empresa e os valores de direitos autorais para o seu Consultor Especialista:
É possível criar um Assessor Especial de Alerta?
Quando você clica no botão de compilação no aplicativo VTS, duas coisas acontecem:
O VTS converte os desenhos em código MQL. O VTS cria um arquivo com o mesmo nome que o sistema VTS, exceto com um & # 8220; mq4 & # 8221; extensão. Por exemplo: system1.mq4. O VTS usa sua plataforma MetaTrader para criar um consultor especialista do arquivo MQ4. Este arquivo é o EA e tem um & # 8220; ex4 & # 8221; extensão. Por exemplo: system1.ex4.
Esses arquivos (o MQ4 e EX4) são criados em suas plataformas MetaTrader & # 8220; especialistas & # 8221; pasta. Por exemplo:
C: \ Arquivos de Programas (x86) \ MetaTrader 4 \ experts.
Para copiar sua EA para outra plataforma, basta copiar o arquivo EX4 para o & # 8220; especialistas & # 8221; pasta da outra plataforma. Talvez seja necessário reiniciar sua plataforma MT para que a EA apareça sob o & # 8220; consultor especialista & # 8221; guia na janela do navegador MT.
Uma das características da Mutli-Platform & amp; Script plug-in é uma cópia automática do seu EA para várias plataformas MT.
Para excluir um elemento VTS do bloco de desenho, selecione o Elemento e, em seguida, pressione a tecla Excluir no seu teclado.
Para excluir um elemento VTS permanentemente do sistema, encontre o Elemento na ToolBox, clique com o botão direito do mouse com o mouse e selecione Excluir.
O MetaEditor oferece grande ajuda em todas as funções do MetaTrader.
Você pode aprender a usá-lo aqui:
Primeiro, certifique-se de que os MT Paths estão configurados corretamente. Veja aqui para obter detalhes: MT Path Help.
Quando você seleciona os botões Editor ou Plataforma na parte superior do aplicativo VTS, o VTS simplesmente chama o arquivo executável e tenta carregá-lo em uma guia VTS.
Em alguns sistemas do Windows, a chamada para carregar o arquivo executável do MetaTrader (terminal. exe ou metaeditor. exe) falha. A razão nem sempre é clara, mas provavelmente está relacionada às Permissões de Acesso do Usuário (UAC).
Os botões são apenas por conveniência, você sempre pode abrir a plataforma ou o MetaEditor de fora do VTS.
Geralmente, cada plug-in possui uma versão VTS mínima necessária para suportar o plug-in.
Quando você entra na área de membros, você verá a versão mínima listada ao lado de cada um de seus plug-ins.
Para determinar qual versão do VTS você está executando, no VTS vá para Help - & gt; sobre.
Há duas maneiras de atualizar o VTS:
Faça login na área de membros e baixe & amp; execute o arquivo de instalação mais recente. O login da área dos membros está no menu superior direito da nossa página inicial no iExpertAdvisor Ou, no VTS, acesse Help-& gt; Verifique as atualizações e siga as instruções.
Como atualizar Visual Traders Studio (VTS)
Para encontrar a versão do VTS, no VTS, acesse a Ajuda do About - & gt; Ajuda.
Sim, o VTS deve funcionar através do seu servidor proxy padrão.
Aqui estão algumas instruções avançadas para configurar manualmente um servidor proxy específico se você não puder usar seu servidor proxy padrão.
& lt; system & gt; & lt; defaultProxy & gt; & lt; proxy proxyaddress = "[endereço do proxy]: [porta do proxy]" bypassonlocal = "false" / & gt; & lt; / defaultProxy & gt; & lt; / system & gt;
Você substitui [endereço de proxy] pelo seu nome de proxy e amp; [porta de proxy] com sua porta.
Todos os dados criados por um usuário ao criar sistemas VTS são armazenados nesta pasta:
Se você está tendo muitos problemas para configurar os MT Paths para corrigir os locais da sua plataforma MetaTrader, há um manual de trabalho.
Faça login na área de membros da nossa página inicial iExpertAdvisor.
Uma vez na área de membros, você pode acessar todos os seus produtos.
Se você esqueceu sua senha, há um link para redefini-la.
Usamos o endereço usado para comprar para criar sua conta. Nós não temos um método automatizado para mudar seu endereço. Se você realmente, realmente precisa mudar o endereço, avise-nos e nós o faremos manualmente.
Os últimos arquivos de ajuda estão sempre neste link:
A maioria das suas perguntas de pré-venda sobre o VTS Expert Advisor Builder são respondidas aqui:
Indicadores.
Como posso alterar os valores padrão dos indicadores que eu adiciono aos meus sistemas. Por exemplo, quando adiciono o indicador CCI ao meu sistema, sempre preciso alterar o valor padrão do período CCI de 15 para 14. É possível alterá-lo para sempre?
Quando você primeiro configura seu CCI, nomeie-o & amp; salve-o como algo como & # 8220; CCI_14 & # 8220 ;.
O ir para a caixa de ferramentas Função, sob o nome do sistema, você encontrará & # 8220; CCI_14 & # 8220 ;.
Quando você precisa, arraste & amp; solte a função CCI_14.
Observe quando você arrasta e solta a função CCI_14 no pad, o VTS não o renomeia. O nome da função permanece CCI_14. Você realmente possui mais de uma cópia da função CCI_14 no desenho.
Isso significa que se você alterar quaisquer valores de parâmetros da função CCI_14, as alterações serão refletidas em todas as cópias da função CCI_14. Se você não quiser esse comportamento, use uma função com nome diferente.
Se quiser que a função CCI_14 esteja disponível fora do sistema atual, adicione-a ao menu Favoritos clicando com o botão direito na função na Caixa de ferramentas e escolha "# 8220" Adicionar aos Favoritos e # 8221 ;.
Como posso criar uma variável que define apenas o sinal do indicador MACD. Eu quero colocar uma lógica na qual a linha de sinal MACD é cruzada para cima ou para baixo.
Use o parâmetro de modo para obter o valor do sinal para MACD. O VTS irá preencher um menu suspenso com os valores permitidos.
O VTS irá preencher o menu de parâmetros de modo para todos os indicadores MQL que suportam o parâmetro de modo (ADX, Stochastic, MACD).
Basicamente, qualquer indicador que exiba mais de uma linha quando você adiciona o indicador a um gráfico de preços terá um parâmetro de modo.
Além disso, este é um bom momento para nomear a função de forma adequada, algo como MACD_signal.
Depois de conectar a função e salvar o desenho, o valor MACD_signal estará disponível no menu Escolher para usar em uma condição lógica.
Quando eu escolho indicadores para adicionar ao meu sistema, alguns deles terminam no número 1 e alguns no número 2 (por exemplo, iRSI2, iStochastic1). Qual é a diferença, e o que significam esses números?
O VTS gera um nome cada vez que você arrasta e solta uma função de indicador na almofada de desenho. Ele simplesmente leva o nome básico do indicador e adiciona um número ao final para obter o próximo nome disponível.
Cada função em um sistema VTS deve ter um nome exclusivo, isso é apenas um primeiro palpite.
Você, como o desenvolvedor do sistema, deve dar a todos os nomes de variáveis e funções um nome descritivo. Um bom nome percorre um longo caminho.
Por exemplo, uma função iMA (média móvel) com um período de 6 pode ser o nome FastMA.
Alguns comerciantes adicionarão os valores dos parâmetros ao nome: RSI_12.
Você pode simplesmente arrastar e soltar o mesmo elemento da variável MQL para o verdadeiro & amp; saídas falsas de um elemento Logic & amp; defina o valor de acordo com a guia de atribuição.
Depois que uma variável foi salva, está disponível na Caixa de Ferramentas de Variáveis, sob o nome do sistema em que foi criado. Então, você pode arrastar a variável a partir de onde sempre que for necessário.
Sim, o VTS suporta múltiplas ligações.
Você pode ter mais de 1 link de saída em qualquer elemento, e você pode numerar cada link para controlar a ordem de execução.
Você pode aprender mais aqui a partir do arquivo de ajuda do VTS:
A EA abrirá negociações no gráfico ao qual está anexado, então anexe seu EA ao gráfico MetaTrader H1. No VTS, você apenas usa o menu suspenso para escolher o cronograma H4 para o indicador. A EA usará o cronograma 4H para calcular o indicador, independentemente do gráfico ao qual o EA está anexado.
Toda janela de configuração de indicadores no VTS permite que você escolha explicitamente o prazo:
O & # 8220; shift & # 8221; O parâmetro é usado para iMA (a função de média móvel ou qualquer indicador) para obter um valor de qualquer barra de & # 8220; e # 8221;
O preço Fechar para barras de trás é acessado da seguinte maneira: Fechar [0], Fechar [1], Fechar [2] & # 8230; Use o Ponto de função incorporado se quiser converter de um número inteiro como 20, para um valor de pip:
Por exemplo, no campo de atribuição de um tipo de variável: 20 * Ponto.
Use a função fnOpenOrder para definir s / l, t / p e trilha. Inverta a lógica no & # 8220; Close * Order & # 8221; desenhos para fechar negócios (usa fnOrderFechar)
100 pips de altura de BAIXA a ALTA barra de alta o OPEN menos o CLOSE compreende 80% da barra.
1. Crie uma variável, com um tipo de & # 8216; duplicar & # 8217; e nomeie-o & # 8220; range1 & # 8221;
1. Arraste, solte, conecte e configure suas duas funções de indicadores.
Arraste & amp; solte uma média móvel (iMA), defina seu período para 6 e salve-a como FastMA Drag & amp; solte outra média móvel (iMA), defina seu período para 21 e salve-a como SlowMA.
2. Arraste, solte e conecte um elemento Lógica.
Configure a condição lógica:
Defina o operando esquerdo para _SlowMA.
Defina o operando direito _FastMA.
Defina o operador como CROSS_UP.
Esta lógica verificará se o SlowMA cruzou o FastMA,
Como faço para abrir um comércio Buy quando o preço Ask é N pontos abaixo do & # 8216; Lower Low & # 8217; nas últimas M bares & # 8221 ;?
1. Quando você cria seu sistema VTS pela primeira vez, marque a caixa para criar um desenho OpenBuyTrade:
2. No desenho do OpenBuyTrade, arraste, solte e conecte a função fnGetLowest e uma nova variável chamada MyLow.
(fnGetLowest é encontrado na caixa de ferramentas de funções no menu de barras)
3. Configure a função fnGetLowest, defina o parâmetro da barra final como seu valor M: (M = 12)
4. Configure a variável MyLowest para manter o valor mais baixo menos N pontos: (N = 25)
5. Adicione a condição lógica ao IsOpenBuyTrue:
6. Construa e teste!
Gerenciamento de pedidos.
Stoploss takeprofit ou lógica próxima.
Se você quer que sua EA feche todos os seus negócios abertos, use a função fnCloseAll. A função fnCloseAll é encontrada na Caixa de ferramentas da Função, no menu Comércio.
O código MQL geralmente se parece com isto:
Eu não sou fã de dormir em um loop de tempo e # 8211; O código pode pendurar para sempre. O loop de tempo raramente é necessário: uma EA é executada em cada marca, portanto, se a ordem falhar, ela será repetida no próximo tiquetaque, geralmente em menos de 1 segundo.
Estratégias.
Sim. Na tela de boas-vindas, no grupo Criar novo sistema há um ícone para criar um novo sistema CrossOver.
Isso criará um sistema comercial VTS que usa um crossover médio móvel para abrir e fechar negócios. Pode ser usado como ponto de partida para um sistema, ou apenas como um exemplo para aprender.
Gerentes de sistema.
Sim, o TradeSignal Manager pode ser usado para atrasar a abertura de negociações subsequentes.
O atraso pode ser baseado em velas ou baseado em minutos:
Você pode limitar sua EA a 1 troca por vela usando o TradeSignal Manager para limitar o próximo comércio.
marque NEXT_SIGNAL_RULE_DELAY_CANDLE digite 1 para o valor de atraso.
Que eventos podem ser usados para enviar s?
Os eventos suportados pelo Communication Manager são:
Talvez seja necessário determinar a hora local do MT Broker & # 8217; usar o recurso de compensação GMT do Trade Time Manager.
Aqui está uma maneira:
Arraste, solte e conecte a função MQL TimeCurrent (Toolbox - & gt; Functions - & gt; Time). Clique no botão (+) para configurar a função TimeCurrent e, em seguida, selecione a aba da mensagem. Na guia mensagem, marque: & # 8216; envie mensagem & # 8217; & # 8216; escreva o valor do tempo atual & # 8217; & # 8216; escreva no gráfico & # 8217;
Qualquer intervalo de tempo que não seja definido especificamente no Trade Time Manager terá o comportamento padrão de poder abrir ou fechar qualquer e todas as negociações. Em outras palavras, é como se não houvesse uma regra de tempo de troca definida para esse período.
Por exemplo, se você definir uma única regra, para fechar todas as negociações de 3: 00-4: 59, os períodos de 0: 00-2: 59 e 5: 00-23: 59 terão o comportamento padrão de abertura e negociações de encerramento.
ユ ビ キ タ シ ナ プ ス.
MetaTrader4: バ ッ ク テ ス ト の OrderSend error 131 エ ラ ー.
調 べ た 結果 & # 12289; & # 12300; 操作 履 歴 & # 12301; タ ブ に Encomendar Erro 131 と エ ラ ー が 出 い た の で & # 12289; 解決 方法 を 記述 し ま す & # 12290;
エ ラ ー 内容 2010.10.20 18:23:32 2010.09.16 00:00 Média móvel USDJPY, diariamente: PedidoEnviar erro 131 解決 方法 1. 最小 取 引 ロ ッ ト 数 を 増 や す & # 12290;
MT4 の メ ニ ュ ー か ら ツ ー ル (T) & gt;オ プ シ ョ ン (O) & gt;取 引 タ ブ の 数量 の デ ォ ォ ル ト を 1.0 以上 に 指定 す る & # 12290;
ま た は & # 12289; Testes de Estratégia の セ ッ テ ィ ン タ ブ の & # 12300; Propriedades experientes & # 12301; ボ タ ン を ク リ ッ ク し て & # 12289; & # 12300; パ ラ メ ー タ の 入 力 & # 12301; タ ブ の "Lotes" の 値 を & # 12289; 増 や す & # 12290;
eToro é a melhor plataforma de negociação forex para comerciantes novos e de tempo integral.
EA Forex Programming.
Programação - edição - modificação EA, Script ou Indicador para MT4 OU MT5 ---- A negociação no mercado Forex envolve riscos substanciais, incluindo perda de fundos completa e outras perdas e não é adequado para todos os membros. O cliente deve fazer um julgamento independente sobre se o comércio é apropriado para ele / ela em função de sua condição financeira, experiência de investimento, tolerância ao risco e outros fatores.
Terça-feira, 21 de maio de 2013.
Manipulação do pedidoEnviar erro 131 no MetaTrader 4.
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á primeiro começando 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 usual; provavelmente, você precisará apenas corrigir a quantidade de lotes que sua EA comercializa de 0,1 para 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 ordens com tamanho de 0,333 lotes e o volume máximo que 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, você pode usar o código acima para descobrir os valores certos e corrigir as configurações manualmente.
Posts Relacionados:
5 Respostas para Manter a OrdemEnviar Erro 131 no MetaTrader 4 & # 8221;
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 ());
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?
21 de novembro de 2009 às 10:29 pm & # 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.
21 de novembro de 2009 às 10:43 pm Chad, se você não for o melhor programador para 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.
4 comentários:
Gostaria de aconselhar que você vá com o # 1 corretor de Forex.
O comércio de Forex é muito mais fácil quando é feito por um consultor especializado e o EA Builder permite que você crie seu próprio consultor especializado.
Se você precisa de sua ex-namorada ou ex-namorado para vir rastejando de volta para você de joelhos (não importa por que você terminou), você deve assistir a esse vídeo.
No comments:
Post a Comment