Join our fan page
- Views:
- 4201
- Rating:
- Published:
- 2013.03.29 11:55
- Updated:
- 2016.11.22 07:32
-
Need a robot or indicator based on this code? Order it on Freelance Go to 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()); }
Translated from Russian by MetaQuotes Ltd.
Original code: https://www.mql5.com/ru/code/1615

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

The semaphore trend signal indicator

Intraday Fibonacci levels

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