MT5 NÃO ABRE ORDEM

Para adicionar comentários, por favor Faça o login ou registrar
northedan
176
northedan  
Estou programando um EA no mt5 da modal. Lá abre ordem tanto no mini indice como no mini dolar. Quando vou testar o mesmo EA no mt5 da XP, lá só abre ordem no mini índice. Alguém sabe por que?
Rogerio Giannetti Torres
3139
Rogerio Giannetti Torres  
northedan:
Estou programando um EA no mt5 da modal. Lá abre ordem tanto no mini indice como no mini dolar. Quando vou testar o mesmo EA no mt5 da XP, lá só abre ordem no mini índice. Alguém sabe por que?

Olá,

veja no log aba <DIÁRIO>.

northedan
176
northedan  
Rogerio Giannetti Torres:

Olá,

veja no log aba <DIÁRIO>.

Na aba <DIÁRIO> não aparece nenhuma mensagem de erro. Segue o código que colocar a ordem.


if(latest_price.last > maCerto && (highCerto - maCerto) == Afastamento && LastBar != ThisBar 
      && volumeVal[0] >= Volume && trade_money && trade_time && PositionSelect(_Symbol) == false)
      {
         request.action = TRADE_ACTION_PENDING;
         request.type = ORDER_TYPE_SELL_LIMIT;
         request.symbol = _Symbol;
         request.volume = Contrato;
         request.type_filling = ORDER_FILLING_FOK;
         request.price = (maCerto + Afastamento);
         request.sl = (maCerto + Afastamento) + StopLoss;
         request.tp = (maCerto + Afastamento) - TakeProfit;
         request.type_time = ORDER_TIME_DAY;
         request.deviation = 0;
         request.magic = MagicNumber;
         
         OrderSend(request,result);

         LastBar = ThisBar;
      }
Joscelino
911
Joscelino  
northedan:

Na aba <DIÁRIO> não aparece nenhuma mensagem de erro. Segue o código que colocar a ordem.


Man !

Estava com problema semelhante em meu código e acabei por descobrir que era na identificação da nova barra (dentro do if). Apesar do código estar correto, por algum motivo ao inserir esta checagem no if a ordem não era enviada. Nao sei se você esta com problema igual, eh apenas um insight.

Fora isso, reescreva a OrderSend. Uma alternativa seria: "bool ok = OrderSend(request, result);". O MT5 precisa entender que você ira tratar o resultado da mesma.

[ ]'s

Rogerio Giannetti Torres
3139
Rogerio Giannetti Torres  
northedan:

Na aba <DIÁRIO> não aparece nenhuma mensagem de erro. Segue o código que colocar a ordem.


Bom dia,

se no log não aparece msg de execução e/ou erro, significa então que nenhuma ordem foi emitida.

northedan
176
northedan  
Joscelino Celso de Oliveira:

Man !

Estava com problema semelhante em meu código e acabei por descobrir que era na identificação da nova barra (dentro do if). Apesar do código estar correto, por algum motivo ao inserir esta checagem no if a ordem não era enviada. Nao sei se você esta com problema igual, eh apenas um insight.

Fora isso, reescreva a OrderSend. Uma alternativa seria: "bool ok = OrderSend(request, result);". O MT5 precisa entender que você ira tratar o resultado da mesma.

[ ]'s

Essa linha de código eu deveria substituir pelo OrderSend(request, result) do meu código, é isso?!!! Ah acho que entendi. Lá no código de checagem da nova barra eu coloco a codição bool ok = OrderSend(request, result); e passo o ok a checagem de envio da ordem. Estou certo?
northedan
176
northedan  
Joscelino botei a condição da checagem da nova barra e não deu certo. Eu não sei o que é. Na modal abre as ordens normalmente, na xp chegar até a abrir, mas não tanto quanto na modal. Se na modal abre no dia 10 operações, na XP abre 1.
northedan
176
northedan  
Rogerio Giannetti Torres:

Bom dia,

se no log não aparece msg de execução e/ou erro, significa então que nenhuma ordem foi emiti

Ele envia, mas como comentei em cima, no mesmo período na Modal ele envia mais ordens.



northedan
176
northedan  
Bom eu verifiquei uma coisa. Na Modal quando boto série continua não funciona.
Joscelino
911
Joscelino  
northedan:
Essa linha de código eu deveria substituir pelo OrderSend(request, result) do meu código, é isso?!!! Ah acho que entendi. Lá no código de checagem da nova barra eu coloco a codição bool ok = OrderSend(request, result); e passo o ok a checagem de envio da ordem. Estou certo?

Isso mesmo.

[ ]'s

Joscelino
911
Joscelino  
northedan:
Joscelino botei a condição da checagem da nova barra e não deu certo. Eu não sei o que é. Na modal abre as ordens normalmente, na xp chegar até a abrir, mas não tanto quanto na modal. Se na modal abre no dia 10 operações, na XP abre 1.

Talvez seja o problema seja o tipo de preenchimento de ordens. Pode ser que a Modal esteja aceitando a FOK e a XP nao aceite.. Mas confesso que estou "chutando". Tenta testar isso.

[ ]'s

12
Para adicionar comentários, por favor Faça o login ou registrar