Problemas na Modal OnInit Failed

 

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? 

 
forgottenn:

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")
 
Trader_Patinhas:
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. 

 
forgottenn:

"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.

 
Trader_Patinhas:

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? 

 
forgottenn:

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.

 
Trader_Patinhas:

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. 

 
forgottenn:

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

 
Trader_Patinhas:

É 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? 

 
forgottenn:

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.

 
Trader_Patinhas:

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. 

Razão: