Preguntas de los principiantes MQL5 MT5 MetaTrader 5 - página 165

 

Hola a todos.

En el programa EA hay que realizar cálculos: Resta, división y comparación de números por valor de tipo > y <. Los números son enteros de 0 a 300. Aparentemente son grandes para este dispositivo aritmético,

ya que estas operaciones no se realizan. Lasoperaciones aritméticas con precios se ejecutan normalmente. Por cierto, el compilador no genera errores. Si ha encontrado un problema de este tipo, por favor, sugiera una forma de solucionarlo.

Realmente lo necesito.

Документация по MQL5: Основы языка / Операции и выражения / Арифметические операции
Документация по MQL5: Основы языка / Операции и выражения / Арифметические операции
  • www.mql5.com
Основы языка / Операции и выражения / Арифметические операции - Документация по MQL5
 
Boris.45:

Hola a todos.

En el programa EA hay que realizar cálculos: Resta, división y comparación de números por valor de tipo > y <. Los números son enteros de 0 a 300. Aparentemente son grandes para este dispositivo aritmético,

ya que estas operaciones no se realizan. Lasoperaciones aritméticas con precios se ejecutan normalmente. Por cierto, el compilador no genera errores. Si ha encontrado un problema de este tipo, por favor, sugiera una forma de solucionarlo.

Realmente lo necesito.

Pon un ejemplo concreto de una operación fallida, no está claro en lo que se ha escrito.
 
Boris.45:

Hola a todos.

En el programa EA hay que realizar cálculos: Resta, división y comparación de números por valor de tipo > y <. Los números son enteros de 0 a 300. Aparentemente son grandes para este dispositivo aritmético,

ya que estas operaciones no se realizan. Lasoperaciones aritméticas con precios se ejecutan normalmente. Por cierto, el compilador no genera errores. Si ha encontrado un problema de este tipo, por favor, sugiera una forma de solucionarlo.

Realmente lo necesito.

¿Redondeo?

 

Hazlo:

MqlTradeRequest request;
ZeroMemory(request);
request.action=TRADE_ACTION_DEAL;
request.magic=0;
request.symbol=Symbol();
request.volume=Lots;
request.price=last_tick.ask;
request.sl=0.0;
request.tp=0.0;
request.deviation=slip;
request.type=ORDER_TYPE_BUY;
request.type_filling=ORDER_FILLING_FOK;
request.comment="";
MqlTradeResult result;
ZeroMemory(result);
OrderSend(request,result);
 
sandex:

Haz esto:

un montón de errores están apareciendo...

'last_tick' - identificador no declarado

'ask' - tipo de estructura o clase esperada

'slip' - identificador no declarado

También había un error en Lots, pero lo he sustituido por Lot y uno menos.

 
¿Deberíamos intentar eliminar primero el SL y el TP? ¿O no se trata de ellos?
 
Te he dado un ejemplo, establece tus propias variables.
 

sólo añadió...

ZeroMemory(mrequest);

¡y ha funcionado! Gracias.

 
paladin800:
Dame un ejemplo concreto de una operación fallida, no está claro en lo que está escrito.
Gracias por su atención y disculpe las molestias. He encontrado un error en la formación del algoritmo de procesamiento.
 

¿Cómo se conecta la señal en MT5? La señal está suscrita en MQL5, pero no se muestra en MT5...