Bibliotecas: Descripción de Errores - ErrorDescription

 

Descripción de Errores - ErrorDescription:

La biblioteca contiene funciones que devuelven la descripción de los códigos de error en tiempo de ejecución y los códigos de retorno del servidor de trading.

Autor: MetaQuotes Software Corp.

 
Automated-Trading posted  :

ErrorDescription:

Autor: MetaQuotes Software Corp.

¿Qué pasa con el código de retorno 10027 del servidor de comercio ?


https://www.mql5.com/en/forum/458

 
Intente utilizar esta biblioteca con el código 10027. Vamos a actualizar la ayuda de MQL5.
 
Rosh:
Intente utilizar esta biblioteca con el código 10027. Vamos a actualizar la ayuda de MQL5.


La libreria no compila en MT5 build 244


'ErrorDescription.mqh'    ErrorDescription.mqh    1    1
'TRADE_RETCODE_NO_CHANGES' - undeclared identifier    ErrorDescription.mqh    37    12
'TRADE_RETCODE_SERVER_DISABLES_AT' - undeclared identifier    ErrorDescription.mqh    38    12
'TRADE_RETCODE_CLIENT_DISABLES_AT' - undeclared identifier    ErrorDescription.mqh    39    12
'TRADE_RETCODE_LOCKED' - undeclared identifier    ErrorDescription.mqh    40    12
'TRADE_RETCODE_FROZEN' - undeclared identifier    ErrorDescription.mqh    41    12
no executable file produced        1    1
6 error(s), 0 warning(s)        1    1
 
investeo:


La librería no compila en MT5 build 244

Lo sentimos, espere a la actualización, por favor.
 

Me gustaría obtener recomendaciones sobre cómo la centralita debería tratar estos mensajes.

TradeServerReturnCodeDescription(int return_code) 

Me gustaría obtener recomendaciones de los creadores del terminal, de cómo la PBX debería procesarlos.

Digamos que ha recibido la respuesta

case TRADE_RETCODE_REQUOTE: return(" Requote");

puede repetir inmediatamente la petición o se recomienda algún tiempo de retraso.

Digamos que tienes que aporrear el servidor hasta que recibas este mensaje

case TRADE_RETCODE_TOO_MANY_REQUESTS: return(" Demasiadas frecuentes peticiones");

a su vez qué hacer con él... cómo debe reaccionar la centralita, etc.

 
El campeonato es en 2 meses, y de hecho no hay ninguna función de abrir la posición... un error vendrá ... y la culpa a ti mismo ... puede poner una pausa de unos segundos en cualquier error? ¿qué piensa usted?
 
Prival:

Me gustaría, además de los mensajes

me gustaría recibir recomendaciones de los creadores del terminal sobre cómo debería procesarlos la centralita.

Digamos que recibió respuesta

case TRADE_RETCODE_REQUOTE: return (" Requote");

¿es posible repetir la solicitud inmediatamente o se recomienda algún tiempo de espera?


Estructura del resultado de la consulta comercial

Descripción del campo

Campo

Descripción

código de retorno

Código de retorno del servidor de operaciones

trato

Ticket de la operación, si se ha ejecutado. Se notifica durante una operación comercial TRADE_ACTION_DEAL

orden

Ticket de la orden, si se ha realizado. Se notifica durante una operación TRADE_ACTION_PENDING

volumen

Volumen de la operación confirmado por el corredor. Depende del tipo de ejecución de la orden

precio

Precio de la operación confirmado por el intermediario. Depende del campo de desviación en la solicitud de operación y/o del tipo de operación.

oferta

Precio de oferta actual del mercado (precio de recotización)

ask

Precio de oferta actual del mercado (precio de recotización)

comentario

Comentario del broker sobre la operación (rellenado por defecto)


Intenta enviar una nueva solicitud de operación a los precios ofertados

 
El código ERR_CHART_WRONG_TIMER_PARAMETER no está definido en la compilación 1100. Debe eliminarse de esta biblioteca, ya que da un error de compilación.
 

En errordescription.mqh debe corregirse la línea82

// case ERR_CHART_WRONG_TIMER_PARAMETER: return(" Parámetro incorrecto para el temporizador");
case ERR_CHART_WRONG_PARAMETER:return("Parámetro incorrecto para el temporizador");

Lo he comentado para que funcione.

 

Me parece que en el archivo errordescription.mqh tiene sentido cambiar las líneas return("Código desconocido de la respuesta a la solicitud de operación") y return("Error desconocido") por algo más informativo, por ejemplo, así:

return("Código desconocido de la respuesta a la solicitud de operación: " + IntegerToString(return_code)) y

return("Error desconocido: " + IntegerToString(err_code) );

La ventaja es obvia. Podrás atrapar códigos de error pasados erróneamente que no son códigos y buscar descripciones de códigos que no están en el archivo errordescription.mqh en el mismo google. Así es exactamente como yo lo he cambiado.