Poderiam notar a corretora o qual estão utilizando. Em um teste recente, com corretoras Rico e Modal, noto diferenças com o código o qual fiz.
Abaixo segue estrutura o qual funcionou perfeitamente na Modal, onde eu enfrentava os problemas semelhantes aos citados nos tópicos. Vejam se funciona com vcs:
//--- preparar um pedido -------------COMPRA ACIMA DO PREÇO ATUAL EM 2 PONTOS --------------------------------------
Compra=SymbolInfoDouble(Symbol(),SYMBOL_ASK)+2;
MqlTradeRequest request={0};
request.action=TRADE_ACTION_PENDING; // definição de uma ordem pendente
request.magic=1234; // ORDER_MAGIC
request.symbol=_Symbol; // símbolo
request.volume=1; // volume em lotes
request.sl=Compra-Loss; // Stop Loss (Parar Perda)
request.tp=Compra+Profit; // Take Profit (Tomar Lucro)
request.type_filling=ORDER_FILLING_RETURN;
//--- formar o tipo de ordem
request.type=ORDER_TYPE_BUY_STOP; // tipo de ordem
request.type_time=ORDER_TIME_DAY;
//--- formar o preço para uma ordem pendente
request.price=Compra; // preço de abertura//--- enviar um pedido de negociação MqlTradeResult result={0};
OrderSend(request,result); // ENVIO DA ORDEM//--- escrever resposta do servido para log Print(__FUNCTION__,":",result.comment);
if(result.retcode==10016) Print(result.bid,result.ask,result.price);
Prezados, o mini indice e o mini dolar não possuem casa decimal, então para enviar ordens precisam alterar a declaração da variável do preço de entrada e stops para int.
//-- declaração e inicialização do pedido e o seu resultadoMqlTradeRequest request={0};
MqlTradeResult result={0};
//--- parâmetros para colocação da ordem pendente
request.action =TRADE_ACTION_PENDING; // tipo de operação de negociação
request.symbol =_Symbol; // símbolo
request.volume =inp_volume; // volume de 0.1 lotes
request.deviation=2; //desvio permitido do preço
request.magic =EXPERT_MAGIC; // MagicNumber da ordem
request.type =ORDER_TYPE_BUY_LIMIT; // tipo de ordem
request.type_time=ORDER_TIME_DAY;
request.price = preco_compra; // нормализованная цена открытия
request.sl = stop_compra;
request.tp = take_compra;
request.type_filling = ORDER_FILLING_RETURN;
//--- enviar a ordemif(!OrderSend(request,result))
PrintFormat("OrderSend error %d",GetLastError()); // Se não for possível enviar o pedido, exibir um código de erro//--- informações sobre a operaçãoPrintFormat("retcode=%u deal=%I64u order=%I64u",result.retcode,result.deal,result.order);
Para login e uso do site MQL5.com, você deve ativar o uso de cookies.
Ative esta opção no seu navegador, caso contrário você não poderá fazer login.
Você entrou na conta. A autenticação de dois fatores foi desativada. Configure-a novamente e escaneie um novo código QR ou continue com a autenticação de dois fatores desativada.
Meus amigos, boa noite!
Estou começando com o meta trader e estou tendo o mesmo problema com mini dolar.
Heeeeeelp!!!!!
Prezados,
Poderiam notar a corretora o qual estão utilizando. Em um teste recente, com corretoras Rico e Modal, noto diferenças com o código o qual fiz.
Abaixo segue estrutura o qual funcionou perfeitamente na Modal, onde eu enfrentava os problemas semelhantes aos citados nos tópicos. Vejam se funciona com vcs:
Prezados, o mini indice e o mini dolar não possuem casa decimal, então para enviar ordens precisam alterar a declaração da variável do preço de entrada e stops para int.
aqui os testes estão funcionando assim:
Comigo funcionou assim.