Encontrando dificuldades para enviar pedidos.

 

Continuo recebendo o erro "volume inválido", o saldo da conta é 10 000 e o tamanho do lote é 0,07.

Este é meu código, acho que pode não ser o volume tbh.

MqlTradeResult StageOneBuyRes={0};
MqlTradeRequest StageOneBuy={0};

StageOneBuy.action=TRADE_ACTION_DEAL;  
StageOneBuy.magic=MagicNumber;  
StageOneBuy.symbol=_Symbol;            // symbol
StageOneBuy.volume=Lot;
StageOneBuy.price=SymbolInfoDouble(_Symbol,SYMBOL_ASK);
StageOneBuy.sl=0;                  // Stop Loss is not specified
StageOneBuy.tp=0;                 // Take Profit is not specified 
StageOneBuy.deviation =7;  
StageOneBuy.type=ORDER_TYPE_BUY; // order type
StageOneBuy.type_filling = ORDER_FILLING_FOK;
StageOneBuy.comment = "test";
 

MqlTradeResult StageOneSellRes={1};
MqlTradeRequest StageOneSell={1};

StageOneSell.action=TRADE_ACTION_DEAL;  
StageOneSell.magic=MagicNumber;  
StageOneSell.symbol=_Symbol;            // symbol
StageOneSell.volume=Lot;
StageOneSell.price=SymbolInfoDouble(_Symbol,SYMBOL_BID);
StageOneSell.sl=0;                  // Stop Loss is not specified
StageOneSell.tp=0;                 // Take Profit is not specified 
StageOneSell.deviation =7;  
StageOneSell.type=ORDER_TYPE_SELL; // order type
StageOneSell.type_filling = ORDER_FILLING_FOK;
StageOneSell.comment = "test";
 
MetaNt:

Continuo recebendo o erro "volume inválido", o saldo da conta é 10 000 e o tamanho do lote é 0,07.

Este é meu código, acho que pode não ser o volume tbh.

Qual é o volume mínimo permitido por seu corretor para este símbolo?
 
angevoyageur:
Qual é o volume mínimo permitido por seu corretor para este símbolo?
0.01.
 
MetaNt:

Continuo recebendo o erro "volume inválido", o saldo da conta é 10 000 e o tamanho do lote é 0,07.

Este é meu código, acho que pode não ser o volume tbh.

Tive um problema semelhante com minha EA (tive o mesmo erro). O volume negociado era menor do que o tamanho mínimo permitido do meu corretor ou o tamanho do incremento/passo era muito pequeno.

(Verifique o tamanho mínimo de volume de seu corretor, talvez o tamanho mínimo de negociação ou o tamanho do incremento/passo seja maior do que seu 0,07) "já feito".

A variável "Lote" é do tipo duplo?

 
snelle_moda:

Tive um problema semelhante com minha EA (tive o mesmo erro). O volume negociado era menor do que o tamanho mínimo permitido do meu corretor ou o tamanho do incremento/passo era muito pequeno.

Verifique o tamanho mínimo de volume de seu corretor, talvez o tamanho mínimo de negociação ou o tamanho do incremento/passo seja maior do que seu 0,07.

A variável "Lote" é do tipo duplo?

É do tipo duplo, eu não defini um incremento.

Eu tentei usar 1 como o valor do lote de pedido mais cedo para ver se funcionaria, e o erro persistiu, vou tentar usar 10 agora.

 
Não funcionou.
 

Use

ZeroMemory(StageOneBuy);

ZeroMemory(StageOneSell);


Antes de preencher o pedido e enviar o pedido.

 
snelle_moda:

Use

ZeroMemory(StageOneBuy);

ZeroMemory(StageOneSell);


Antes de preencher o pedido e enviar o pedido.

Já está feito com {0}. Exatamente o mesmo.
 
angevoyageur:
Já está feito com {0}. Exatamente o mesmo.
Inicialmente ambos eram 0, mas eu mudei a venda para 1 para ver se isso resolveria o problema, e é por isso que diz um no código que coloquei.
 
MetaNt:
Inicialmente ambos eram 0, mas mudei a venda para 1 para ver se isso resolveria o problema, e é por isso que diz um no código que publiquei.
Btw quando corri a impressão para obter o código de erro que eu estava recebendo o código de erro 4756, este é um erro de entrada inválido, portanto não foi uma grande ajuda.
 
Alguma sugestão?