Voir comment télécharger gratuitement des robots de trading
Retrouvez-nous sur Facebook !
Rejoignez notre page de fans
Un script intéressant ?
Poster un lien vers celui-ci -
laisser les autres l'évaluer
Vous avez aimé le script ? Essayez-le dans le terminal MetaTrader 5
Vues:
3831
Note:
(27)
Publié:
2013.03.29 11:55
Mise à jour:
2016.11.22 07:32
Besoin d'un robot ou d'un indicateur basé sur ce code ? Commandez-le sur Freelance Aller sur Freelance

When writing to a file, the data may be actually found there only after some time. To save the data in the file instantly, use the FileFlush() function. If the function is not used, part of the data that has not been stored in the disk yet, will be forcibly written there only when the file is closed using the FileClose() function.

The script in the loop gets the current Bid and Ask prices data and calls the FileWrite() function to write them. At each 128 iteration the FileFlush() function is called for the forced reset of pre-written data to disk.

Code:

//--- show the window of input parameters when launching the script
#property script_show_inputs
//--- file name for writing
input string InpFileName="example.csv"; // file name
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
//--- reset error value
   ResetLastError();
//--- open the file
   int file_handle=FileOpen(InpFileName,FILE_READ|FILE_WRITE|FILE_CSV);
   if(file_handle!=INVALID_HANDLE)
     {
      //--- write data to the file
      for(int i=0;i<1000;i++)
        {
         //--- call write function
         FileWrite(file_handle,TimeCurrent(),SymbolInfoDouble(Symbol(),SYMBOL_BID),SymbolInfoDouble(Symbol(),SYMBOL_ASK));
         //--- save data on the disk at each 128th iteration
         if((i & 127)==127)
           {
            //--- now, data will be located in the file and will not be lost in case of a critical error
            FileFlush(file_handle);
            PrintFormat("i = %d, OK",i);
           }
         //--- 0.01 second pause
         Sleep(10);
        }
      //--- close the file
      FileClose(file_handle);
     }
   else
      PrintFormat("Error, code = %d",GetLastError());
  }

Traduit du russe par MetaQuotes Ltd.
Code original : https://www.mql5.com/ru/code/1615

Demo_FileMove Demo_FileMove

The script demonstrates the example of using the FileMove() function

The20sv0.20 The20sv0.20

The semaphore trend signal indicator

i-IntradayFibonacci i-IntradayFibonacci

Intraday Fibonacci levels

Demo_FileIsEnding Demo_FileIsEnding

The script demonstrates the example of using the FileIsEnding() function