Как я могу скопировать symbols.raw и symgroups.raw в новый файл с дополнительной группой и символом в соответствующей группе MQL4/MT4?

 

Я хочу знать, как я могу создать новый файл, скажем symbols_extra.raw и symgroups_extra.raw на MQL4, используя существующие symbols.raw и symgroups.raw.

Пожалуйста, направьте меня, если есть что-нибудь, что поможет.

Я искал, но я не мог получить соответствующий ответ. Я пытался изучить SymbolsLib.mq4 из CodeBase, но это не помогло.

Пожалуйста, предложите мне что-нибудь полезное. Я хочу создать копию файла, а не редактировать один и тот же файл symbols.raw и symgroup.raw.

Пожалуйста, дайте мне знать, если у вас есть что сказать мне.

 
jaffer wilson:

Пожалуйста, предложите мне что-нибудь полезное. Я хочу создать копию файла, а не редактировать один и тот же файл symbols.raw и symgroup.raw.

это не возможно сделать средствами языка MQL по причине того, что разработчики терминала гарантируют безопасное выполнение кода MQL, все программы MQL не имеют возможности доступа к файлам за пределами папки MQL/Files и общей папки Common

 

Я говорю о MQL4. Вы говорите о MQL4?

Потому что, если это так, что бы вы сказали о функции FileOpenHistory ()?

 
jaffer wilson:

Я говорю о MQL4. Вы говорите о MQL4?

Потому что, если это так, что бы вы сказали о функции FileOpenHistory ()?

я говорю и об MQL4 и об MQL5 - нельзя средствами MQL 

https://www.mql5.com/en/docs/files/fileopen

Note

For security reasons, work with files is strictly controlled in the MQL5 language. Files with which file operations are conducted using MQL5 means, cannot be outside the file sandbox.

.....

 
Igor Makanu :

я говорю и об MQL4 и об MQL5 - нельзя средствами MQL 

https://www.mql5.com/en/docs/files/fileopen

Что насчет этого:

Форум по трейдингу, автоматизированным торговым системам и тестированию торговых стратегий

Получение всех доступных символов

Бен Линус , 2013.09.06 15:32

Я попытался изменить код AllMarketData.mq4:

 int start() 
{
   string SymbolArray[];
  StoreSymbols(SymbolArray);
   Alert (SymbolArray[ 0 ]);
  
  
}

void StoreSymbols( string & SymbolArray[]) //no pointers in mql4 :(
{
  
   int handle=FileOpenHistory( "symbols.raw" , FILE_BIN | FILE_READ );
   if (handle< 1 )
    {
     Print ( "Error Opening File: " , GetLastError ());
     return ( false );
    }  
    
   int TotalRecords= FileSize (handle) / 1936 ;
  
   string SymbolName ;
  
   for ( int i= 0 ; i<TotalRecords; i++) 
  {
     SymbolName = FileReadString (handle, 12 );
     FileSeek (handle, 1849 , SEEK_CUR ); // goto the next record
     
    SymbolArray[i]= SymbolName ;
    
  }
 
   FileClose (handle);
   return (TotalRecords);
}


Предупреждение просто пустое, и я не уверен, что не так.

Кто-нибудь видит ошибки в коде?


?

 
jaffer wilson:

Что насчет этого:


?

А ЭТО вообще бред сивой кобылы...основанный на гипотезе что строки одинаковой длины.. FileReadString не стоит применять к бинарным файлам

  int TotalRecords= FileSize (handle) / 1936 ;
  
   string SymbolName ;
  
   for ( int i= 0 ; i<TotalRecords; i++) 
  {
     SymbolName = FileReadString (handle, 12 );
     FileSeek (handle, 1849 , SEEK_CUR ); // goto the next recor
 
Maxim Kuznetsov :

А ЭТО вообще бред сивой кобылы...основанный на гипотезе что строки одинаковой длины.. FileReadString не стоит применять к бинарным файлам

Итак, скажите, пожалуйста, как я могу использовать его и скопировать содержимое в другой файл с какой-либо информацией?

 
Maxim Kuznetsov:

А ЭТО вообще бред сивой кобылы...

Дык, может она и заказывала, сивенькая. Парню помог бы. 

 
jaffer wilson:

Итак, скажите, пожалуйста, как я могу использовать его и скопировать содержимое в другой файл с какой-либо информацией?

Никак. 

 
Должен сказать, что покривил душой. 
Причина обращения: