Info_SymbolList

Author: Copyright � 2012, Oleg Kitaev
0 Views
0 Downloads
0 Favorites
Info_SymbolList
//+------------------------------------------------------------------+
//|                                              Info_SymbolList.mq4 |
//|                                    Copyright © 2012, Oleg Kitaev |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2012, Oleg Kitaev"
#property link "e-mail: kit144@rbcmail.ru"

#include <WinUser32.mqh>
#include <stderror.mqh>
#include <stdlib.mqh>
#import "user32.dll"
#import "kernel32.dll"
    int _lclose (int);
    int _lopen  (string,int);
    int _llseek (int,int,int);
    int _lread  (int,string,int);
#import


int start()

{   
   bool Selected; 
   string SymbolsFileName;
   int Offset, SymbolsNumber;
   string symbolName;

//Îïðåäåëÿåì èìåíà ôàéëîâ ñ ñèìâîëàìè   
   if(Selected) SymbolsFileName = "symbols.sel";
   else         SymbolsFileName = "symbols.raw";

// Îòêðûâàåì ôàéë ñ îïèñàíèåì ñèìâîëîâ
 
   int hFile = FileOpenHistory(SymbolsFileName, FILE_BIN|FILE_READ);
   if(hFile < 0) return(-1);
 
// Îïðåäåëÿåì êîëè÷åñòâî ñèìâîëîâ, çàðåãèñòðèðîâàííûõ â ôàéëå
 
   if(Selected) { SymbolsNumber = (FileSize(hFile) - 4) / 128; Offset = 116;  }
   else         { SymbolsNumber = FileSize(hFile) / 1936;      Offset = 1924; }

// Ñ÷èòûâàåì ñèìâîëû èç ôàéëà
 
   if(Selected) FileSeek(hFile, 4, SEEK_SET);
   
 
         int handle=FileOpen("Orders_Total.csv",FILE_WRITE|FILE_CSV,"\t");
         if(handle < 1) return(0);
         else
         
   {      
      // çàïèøåì çàãîëîâîê â ôàéë
    FileWrite(handle,"Èìÿ Ñèìâîëà:","Ñïðýä:","Ìèíèìàëüíûé ëîò:","Çàëîã çà ìèíèìàëüíûé ëîò:","Öåíà 100 ïóíêòîâ:","Ìèíèìàëüíûé ñòîï:","Òîðãîâëÿ (Äà/Íåò):");  

// Íà÷èíàåì öèêë ïåðåáîðà ñèìâîëîâ

     for(int i = 0; i < SymbolsNumber; i++)
    {
        symbolName = FileReadString(hFile, 12);
      FileSeek(hFile, Offset, SEEK_CUR);

// îïðåäåëÿåì ðàçðåøåíèå íà òðîãîâëþ
                string str2;
                if(MarketInfo(symbolName,MODE_TRADEALLOWED)==0)
                                    str2="çàïðåùåíà";
                                   else
                                    str2="ðàçðåøåíà";
// Çàïèñûâàåì ïîëó÷åííûå ðåçóëüòàòû â ôàéë %SystemDrive%\%"Program Files"%\"TerminalPath()+AccountServer()"\experts\files\Orders_Total.csv
FileWrite(handle,symbolName,":\t",MarketInfo(symbolName,MODE_SPREAD),":\t",MarketInfo(symbolName,MODE_MINLOT),":\t",MarketInfo(symbolName,MODE_MARGINREQUIRED)*MarketInfo(symbolName,MODE_MINLOT),":\t",(MarketInfo(symbolName,MODE_TICKVALUE)*MarketInfo(symbolName,MODE_MINLOT))*100,":\t",MarketInfo(symbolName,MODE_STOPLEVEL),":\t",str2,":\t\n");

     }
//Çàêðûâàåì ôàéë   
         FileClose(handle);
  } // âîçâðàò ê íà÷àëó öèêëà ïîêà íå äîñòèãíåò êîíöàêîëè÷åñòâî ñèìâîëîâ íóëþ.
//*****************************************************************************
    Print("Îáùåå ÷èñëî Ñèìâîëîâ: ", SymbolsNumber);
    _lclose(hFile);
 
//*****************************************************************************
    return;
}

Comments