Discusión sobre el artículo "Redes neuronales de propagación inversa del error en matrices MQL5" - página 3

 

Para trabajar con cuentas de compensación, es necesario añadir una indicación explícita de símbolo a la función ClosePosition:

 bool ClosePosition()
{
    // definir una estructura vacía
   MqlTradeRequest request = {};
   ...
   // rellene los campos obligatorios
   request.action = TRADE_ACTION_DEAL;
   request.position = PositionGetInteger(POSITION_TICKET);
   request.symbol = _Symbol;
   const ENUM_ORDER_TYPE type = (ENUM_ORDER_TYPE)(PositionGetInteger(POSITION_TYPE) ^ 1);
   request.type = type;
   request.price = SymbolInfoDouble(_Symbol, type == ORDER_TYPE_BUY ? SYMBOL_ASK : SYMBOL_BID);
   request.volume = PositionGetDouble(POSITION_VOLUME);
   ...
     
   // enviar la solicitud
   ...
}
 

Foro sobre negociación, sistemas automatizados de negociación y ensayo de estrategias de negociación

Discusión del artículo "Redes neuronales de retropropagación en matrices MQL5"

Stanislav Korotky, 2024.04.16 17:34

Para trabajar en cuentas de compensación, es necesario especificar el símbolo explícitamente en la función ClosePosition:

 bool ClosePosition()
{
    // definir estructura vacía
   MqlTradeRequest request = {};
   ...
   // rellene los campos obligatorios
   request.action = TRADE_ACTION_DEAL;
   request.position = PositionGetInteger(POSITION_TICKET);
   request.symbol = _Symbol;
   const ENUM_ORDER_TYPE type = (ENUM_ORDER_TYPE)(PositionGetInteger(POSITION_TYPE) ^ 1);
   request.type = type;
   request.price = SymbolInfoDouble(_Symbol, type == ORDER_TYPE_BUY ? SYMBOL_ASK : SYMBOL_BID);
   request.volume = PositionGetDouble(POSITION_VOLUME);
   ...
     
   // enviar la solicitud
   ...
}

 

Un artículo que merece la pena leer.

Gracias.

 

Gracias, muy buen artículo.

Por alguna razón lo había pasado por alto.