Mira cómo descargar robots gratis
¡Búscanos en Facebook!
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
Scripts

Demo_FileGetInteger - script para MetaTrader 5

Visualizaciones:
969
Ranking:
(29)
Publicado:
2014.01.14 14:34
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

El script abre un archivo desde la carpeta local del terminal y visualiza los valores de sus propiedades. La ubicación de la carpeta local del terminal puede obtenerse mediante la función TerminalInfoString().

PrintFormat("Ruta hacia la carpeta local del terminal: %s\\Files\\",TerminalInfoString(TERMINAL_DATA_PATH)); 
El script muestra un ejemplo del uso de la primera variante de la función FileGetInteger(), con lo que visualiza el valor de las propiedades. Para la segunda variante de la función solo se mostrarán las cinco primeras propiedades.

Código:

//--- muestra la ventana de parámetros de entrada al lanzar el script
#property script_show_inputs
//--- parámetros de entrada
input string InpFileName="data.csv";
input string InpDirectoryName="SomeFolder";
//+------------------------------------------------------------------+
//| Función de inicio del script                                     |
//+----------------------------- ------------------------------------+
void OnStart()
  {
   string path=InpDirectoryName+"//"+InpFileName;
   long   l=0;
//--- abre el archivo
   ResetLastError();
   int handle=FileOpen(path,FILE_READ|FILE_CSV);
   if(handle!=INVALID_HANDLE)
     {
      //--- imprime todas la información sobre el archivo 
      Print(InpFileName," file info:");
      FileInfo(handle,FILE_EXISTS,l,"bool");
      FileInfo(handle,FILE_CREATE_DATE,l,"date");
      FileInfo(handle,FILE_MODIFY_DATE,l,"date");
      FileInfo(handle,FILE_ACCESS_DATE,l,"date");
      FileInfo(handle,FILE_SIZE,l,"other");
      FileInfo(handle,FILE_POSITION,l,"other");
      FileInfo(handle,FILE_END,l,"bool");
      FileInfo(handle,FILE_IS_COMMON,l,"bool");
      FileInfo(handle,FILE_IS_TEXT,l,"bool");
      FileInfo(handle,FILE_IS_BINARY,l,"bool");
      FileInfo(handle,FILE_IS_CSV,l,"bool");
      FileInfo(handle,FILE_IS_ANSI,l,"bool");
      FileInfo(handle,FILE_IS_READABLE,l,"bool");
      FileInfo(handle,FILE_IS_WRITABLE,l,"bool");
      //--- close the file
      FileClose(handle);
     }
   else
      PrintFormat("No se abrió el archivo %s, ErrorCode = %d",InpFileName,GetLastError());
  }
//+------------------------------------------------------------------+
//| muestra el valor de una propiedad del archivo                    |
//+------------------------------------------------------------------+
void FileInfo(const int handle,const ENUM_FILE_PROPERTY_INTEGER id,
              long l,const string type)
  {
//--- obtiene el valor de la propiedad
   ResetLastError();
   if((l=FileGetInteger(handle,id))!=-1)
     {
      //--- el valor se ha recibido, mostrarlo en el formato correcto
      if(!StringCompare(type,"bool"))
         Print(EnumToString(id)," = ",l ? "true" : "false");
      if(!StringCompare(type,"date"))
         Print(EnumToString(id)," = ",(datetime)l);
      if(!StringCompare(type,"other"))
         Print(EnumToString(id)," = ",l);
     }
   else
      Print("Error, Code = ",GetLastError());
  }

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

Demo_FileWriteArray Demo_FileWriteArray

Este script muestra un ejemplo del uso de la función FileWriteArray()

Volatilidad Kaufman Volatilidad Kaufman

Indicador de volatilidad Kaufman según Perry Kaufman "Trading Inteligente: mejorar el rendimiento con el cambio de mercado".

Demo_FileIsEnding Demo_FileIsEnding

Este script muestra un ejemplo del uso de la función FileIsEnding()

Primer Oscilador Estocástico [v01] Primer Oscilador Estocástico [v01]

El Primer Oscilador Estocástico - Doble EMA suavizado de estocásticos, basado en el artículo de TASC de Lee Leibfarth (agosto de 2008)