Mira cómo descargar robots gratis
¡Búscanos en Telegram!
Pon "Me gusta" y sigue las noticias
¿Es interesante este script?
Deje un enlace a él, ¡qué los demás también lo valoren!
¿Le ha gustado el script?
Evalúe su trabajo en el terminal MetaTrader 5
Librerías

Descripción de Errores - ErrorDescription - librería para MetaTrader 5

Visualizaciones:
1705
Ranking:
(46)
Publicado:
2014.01.14 11:53
Actualizado:
2016.11.22 07:33
¿Necesita un robot o indicador basado en este código? Solicítelo en la bolsa freelance Pasar a la bolsa

La biblioteca contiene las siguientes funciones:

//+------------------------------------------------------------------+
//|                                             ErrorDescription.mqh |
//|                        Copyright 2010, MetaQuotes Software Corp. |
//|                                              http://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "2010, MetaQuotes Software Corp."
#property link      "http://www.mql5.com"
#property version   "1.00"
//+------------------------------------------------------------------+
//| devuelve la descripción de los códigos del servidor de trading   |
//+------------------------------------------------------------------+
string TradeServerReturnCodeDescription(int return_code)
//+------------------------------------------------------------------+
//| devuelve la descripción de errores en tiempo de ejecución        |
//+------------------------------------------------------------------+
string ErrorDescription(int err_code)

Ejemplo:

(No se olvide de copiar el archivo ErrorDescription.mq5 en la carpeta \MetaTrader 5\MQL5\Include)

//+------------------------------------------------------------------+
//|                                               ErrorDescrTest.mq5 |
//|                        Copyright 2010, MetaQuotes Software Corp. |
//|                                              http://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "2010, MetaQuotes Software Corp."
#property link      "http://www.mql5.com"
#property version   "1.00"
#include <ErrorDescription.mqh>
//+------------------------------------------------------------------+
//| Ejemplo de uso de la librería ErrorDescription.mqh               |
//+------------------------------------------------------------------+
void OnStart()
  {
   Print("----- Description of trade server return codes -----");
   for(int i=10004;i<=10034;i++)
     {
      Print("Trade server return code:",i,TradeServerReturnCodeDescription(i));
     }
   Print("-------- Description of runtime error codes ---------");
   for(int i=4001;i<=4014;i++)
     {
      Print("Runtime error code:",i,ErrorDescription(i));
     }
  }
//+------------------------------------------------------------------+

En algunos casos es necesario trabajar con errores definidos por el usuario. En MQL5 existe la función SetUserError, que modifica la variable predefinida _LastError en el valor correspondiente a ERR_USER_ERROR_FIRST + user_error.

Los códigos de error definidos por el usuario comienzan a partir del código ERR_USER_ERROR_FIRST. En estos casos se puede utilizar la función ErrorDescriptionExt para devolver la descripción de los errores, incluyendo los errores definidos por el usuario:

//+------------------------------------------------------------------+
//|                                               UserErrorDescr.mq5 |
//|                        Copyright 2010, MetaQuotes Software Corp. |
//|                                              http://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "2010, MetaQuotes Software Corp."
#property link      "http://www.mql5.com"
#property version   "1.00"
#include <ErrorDescription.mqh>
//+------------------------------------------------------------------+
//|  retorna la descripción de los errores en tiempo de ejecución,   |
//|  y también de los errores definidos por el usuario               |
//+------------------------------------------------------------------+
string ErrorDescriptionExt(int err_code,string&user_errors[])
  {
   if(err_code>=0 && err_code<ERR_USER_ERROR_FIRST) return(ErrorDescription(err_code));
//--- Errores en tiempo de ejecución del usuario
   err_code-=ERR_USER_ERROR_FIRST;
   if(err_code<=ArraySize(user_errors)) return(user_errors[err_code]);
//---
   return("Unknown error");
  };

// Matriz con las descripciones de los errores en tiempo de ejecución del usuario
string MyErrors[]=
  {
   "User error №1",
   "User error №2",
   "User error №3"
  };
//+------------------------------------------------------------------+
//| función de inicio del script                                     |
//+------------------------------------------------------------------+
void OnStart()
  {
//---
   for(int i=0;i<=2;i++)
     {
      SetUserError(i);
      Print("User defined error code:",i,ErrorDescriptionExt(GetLastError(),MyErrors));
     }
  }
//+------------------------------------------------------------------+

Traducción del ruso realizada por MetaQuotes Ltd
Artículo original: https://www.mql5.com/ru/code/79

MovingAverages - Medias Móviles MovingAverages - Medias Móviles

La biblioteca MovingAverages (Medias Móviles) contiene funciones para el cálculo de diferentes tipos de medias móviles.

Triple Exponential Average (TRIX - Media Triple Exponencial) Triple Exponential Average (TRIX - Media Triple Exponencial)

Es un oscilador de las condiciones del mercado de sobrecompra/sobreventa. También se puede utilizar como el Indicador de Momento. Se usa un suavizado triple para eliminar los componentes cíclicos en los movimientos del precio en un período inferior al período del TRIX.

WININET_TEST WININET_TEST

He aquí un ejemplo simple que muestra cómo descargar una página(archivo) de Internet utilizando la biblioteca wininet.dll.

Ticks Ticks

Ejemplo de un gráfico de ticks.