Variables globales temporales
En el subsistema de variables globales del terminal es posible hacer que algunas variables sean temporales: se almacenan sólo en la memoria y no se escriben en el disco cuando se cierra el terminal.
Debido a su naturaleza específica, las variables globales temporales se utilizan exclusivamente para el intercambio de datos entre programas MQL y no son adecuadas para guardar estados entre lanzamientos de MetaTrader 5. Uno de los usos más obvios de las variables temporales son diversas métricas de actividad operativa (por ejemplo, contadores de copias de programas en ejecución) que deben recalcularse de forma dinámica en cada inicio, en lugar de restaurarse desde el disco.
Una variable global debe declararse temporal de antemano, antes de asignarle ningún valor, mediante la función GlobalVariableTemp.
Por desgracia, es imposible averiguar por el nombre de una variable global si ésta es temporal: MQL5 no proporciona medios para ello.
Las variables temporales sólo pueden crearse mediante programas MQL. Las variables temporales se muestran en la ventana «Variables globales» junto con las variables globales ordinarias (persistentes), pero el usuario no tiene la posibilidad de añadir su propia variable temporal desde la GUI.
bool GlobalVariableTemp(const string name)
La función crea una nueva variable global con el nombre especificado, que existirá sólo hasta el final de la sesión de terminal actual.
Si ya existe una variable con el mismo nombre, no se convertirá en variable temporal.
No obstante, si una variable aún no existe, obtendrá el valor 0. Después, puede trabajar con ella como de costumbre; en concreto, puede asignarle otros valores utilizando la función GlobalVariableSet.
Mostraremos un ejemplo de esta función junto con las funciones de la siguiente sección.