//+------------------------------------------------------------------+ //| Script_OHLCV_CSV.mq5 | //| | //| | //+------------------------------------------------------------------+ #property copyright "" #property link "shmtrading3000@gmail.com" #property version "1.01" #property description "This script saves the available OHLCV data from the chart to a CSV file inside '\\AppData\\Roaming\\MetaQuotes\\Terminal\\Common\\Files'.\nMake sure 'Max bars in chart' is set to unlimited in 'Tools>Options>Chart'." #property script_show_inputs //+------------------------------------------------------------------+ //| Script program start function | //+------------------------------------------------------------------+ void OnStart() { //--- int digits = Digits(); double tick_size = SymbolInfoDouble(Symbol(), SYMBOL_TRADE_TICK_SIZE); int bars = iBars(Symbol(), PERIOD_CURRENT); string output_file_name = (string) Symbol() + "-" + (string) Period() + "-" + TimeToString(iTime(Symbol(), PERIOD_CURRENT, bars - 1), TIME_DATE) + "-" + TimeToString(iTime(Symbol(), PERIOD_CURRENT, 0), TIME_DATE) + ".csv"; ResetLastError(); int handle_write = FileOpen(output_file_name, FILE_WRITE | FILE_BIN | FILE_COMMON); if(handle_write == INVALID_HANDLE) { int error = GetLastError(); Print("Error " + (string) error + ", Failed to write the results to csv."); return; } //--- Write the header row to csv FileWriteString(handle_write, "" + ","); FileWriteString(handle_write, "