Bom dia
Nao estou conseguindo rodar nenhum EA na Modal. Erro "OnInit Failed". Só acontece quando estou logado na Modal, em outras funciona corretamente.
A negociação automatizada nao funciona, as ordens não são enviadas. Verifiquei no testador de estratégia que as operações não são feitas, devido a esse erro.
Alguém poderia me ajudar?
Que mensagens aparecem na aba "Journal" quando ocorre esse erro? (acho que o nome da aba em português é "Diário")
"tester stoped because OnInit failed"
Isso aparece quando uso o testador de estratégia. Quando coloco o EA na conta real as ordens não são enviadas.
"tester stoped because OnInit failed"
Isso aparece quando uso o testador de estratégia. Quando coloco o EA na conta real as ordens não são enviadas.
E na conta demo (usando o EA direto, sem o tester) as ordens são enviadas?
Se forem enviadas na conta demo e não forem na conta real, pode ser que esteja faltando configurar a margem na corretora.
Se não estiverem sendo enviadas nem na conta demo, mande imprimir o código de retorno recebido no comando OrderSend (ele vem preenchido no campo retcode na estrutura MqlTradeResult) e verifique nesta tabela o motivo pelo qual a ordem está sendo rejeitada.
E na conta demo (usando o EA direto, sem o tester) as ordens são enviadas?
Se forem enviadas na conta demo e não forem na conta real, pode ser que esteja faltando configurar a margem na corretora.
Se não estiverem sendo enviadas nem na conta demo, mande imprimir o código de retorno recebido no comando OrderSend (ele vem preenchido no campo retcode na estrutura MqlTradeResult) e verifique nesta tabela o motivo pelo qual a ordem está sendo rejeitada.
Bem, eu não testei na conta demo, porque a conta demo não é grátis na Modal, apenas a conta real é grátis (legal, né?). Eu estava testando na conta demo de outra corretora e estava funcionando.
Não sei como verificar esse código. Aonde utilizo esse comando?
Bem, eu não testei na conta demo, porque a conta demo não é grátis na Modal, apenas a conta real é grátis (legal, né?). Eu estava testando na conta demo de outra corretora e estava funcionando.
Não sei como verificar esse código. Aonde utilizo esse comando?
Vc já verificou se consegue enviar as mesmas ordens manualmente?
Se não conseguir enviar as ordens manualmente, provavelmente o problema é falta de margem na corretora.
Na Modal vc precisa configurar margens específicas para WIN, IND, WDO e DOL na tela "Limites BM&F" para poder operar.
Verifique se a ordem que está sendo rejeitada faz sua posição exceder o número máximo de contratos que aparece nessa tela para o ativo negociado.
Se vc consegue enviar as ordens manualmente, mas não no robô, certifique-se de que a opção "AutoTrading" esteja habilitada no menu do MT5.
Quanto ao código de retorno do OrderSend, se não foi você mesmo que programou o robô, terá que pedir isso a quem o programou, pois tem que ver dentro do código-fonte como está sendo feito.
Vc já verificou se consegue enviar as mesmas ordens manualmente?
Se não conseguir enviar as ordens manualmente, provavelmente o problema é falta de margem na corretora.
Na Modal vc precisa configurar margens específicas para WIN, IND, WDO e DOL na tela "Limites BM&F" para poder operar.
Verifique se a ordem que está sendo rejeitada faz sua posição exceder o número máximo de contratos que aparece nessa tela para o ativo negociado.
Se vc consegue enviar as ordens manualmente, mas não no robô, certifique-se de que a opção "AutoTrading" esteja habilitada no menu do MT5.
Quanto ao código de retorno do OrderSend, se não foi você mesmo que programou o robô, terá que pedir isso a quem o programou, pois tem que ver dentro do código-fonte como está sendo feito.
As configurações de margem estão corretas e o AutoTrading está ativado. Ainda não tentei realizar operações manualmente. Entrei em contato com a Modal e parece que o problema é o tipo de preenchimento da ordem que o EA está fazendo. Vou ver com o desenvolvedor do EA para mudar o código.
Entrei em contato com a Modal e parece que o problema é o tipo de preenchimento da ordem que o EA está fazendo.
É possível que seja isso sim!
Nesse caso a ordem vai retornar código
10030 |
TRADE_RETCODE_INVALID_FILL |
Invalid order filling type |
É possível que seja isso sim!
Nesse caso a ordem vai retornar código
10030 |
TRADE_RETCODE_INVALID_FILL |
Invalid order filling type |
Aonde verifico esse código?
Aonde verifico esse código?
Isso tem que ser verificado via programação, lendo o campo retcode da estrutura MqlTradeResult que é retornada quando a ordem é enviada (documentação aqui).
Você precisará pedir ao desenvolvedor do seu EA para verificar isso.
Se estiver mesmo dando esse erro, provavelmente é por causa da forma como foi preenchido o atributo type_filling. O que eu uso e funciona na Modal (e em todas as corretoras brasileiras que já testei) é type_filling = ORDER_FILLING_RETURN.
Isso tem que ser verificado via programação, lendo o campo retcode da estrutura MqlTradeResult que é retornada quando a ordem é enviada (documentação aqui).
Você precisará pedir ao desenvolvedor do seu EA para verificar isso.
Se estiver mesmo dando esse erro, provavelmente é por causa da forma como foi preenchido o atributo type_filling. O que eu uso e funciona na Modal (e em todas as corretoras brasileiras que já testei) é type_filling = ORDER_FILLING_RETURN.
Ok, o desenvolvedor arrumou o código mas parece que os problemas continuam. Agora o EA realiza uma operação e para. Quando eu removo o EA e coloco novamente para rodar acontece a mesma coisa.
Olha, já estou pensando em desistir dessa Modal, são tantos problemas.
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Você concorda com a política do site e com os termos de uso
Bom dia
Nao estou conseguindo rodar nenhum EA na Modal. Erro "OnInit Failed". Só acontece quando estou logado na Modal, em outras funciona corretamente.
A negociação automatizada nao funciona, as ordens não são enviadas. Verifiquei no testador de estratégia que as operações não são feitas, devido a esse erro.
Alguém poderia me ajudar?