Скачать MetaTrader 5

Работа с файлами из эксперта в тестере

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Знаете ли вы, что в MQL5 появились классы?
Dmitry Fedoseev
42902
Dmitry Fedoseev 2012.08.26 18:20 

Вообще существует в природе? Пробую создать файл в ините эксперта, не появляется файл нигде (это проблема 1).  В справке написано:

Файл открывается в папке клиентского терминала в подпапке MQL5\files (или каталог_агента_тестирования\MQL5\files в случае тестирования). Если среди флагов указан FILE_COMMON, то файл открывается в общей папке всех клиентских терминалов MetaTrader 5. 

Проблема 2. Как написано, файл в папке агента, это значит, что если эксперт в начале тестирования должен загрузить данные из файла, то в облаке это работать не будет?

Комбинатор
15924
Комбинатор 2012.08.26 18:26  
Integer:

Проблема 2. Как написано, файл в папке агента, это значит, что если эксперт в начале тестирования должен загрузить данные из файла, то в облаке это работать не будет?

Если прописать файл как ресурс наверное будет передаваться.
Dmitry Fedoseev
42902
Dmitry Fedoseev 2012.08.26 18:34  
Попробовал прочитать созданый файл. Читается. Но где же он?
Dmitry Fedoseev
42902
Dmitry Fedoseev 2012.08.26 18:35  
Попробовал на одном запуске создать, на другом прочитать - нет файла.
Ilnur Iksanov
5760
Vladimir Gomonov
8277
Vladimir Gomonov 2012.08.26 18:53  
Integer:
Попробовал на одном запуске создать, на другом прочитать - нет файла.
В общей папке (FILE_COMMON) ??
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы ввода/вывода / Флаги открытия файлов
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы ввода/вывода / Флаги открытия файлов
  • www.mql5.com
Стандартные константы, перечисления и структуры / Константы ввода/вывода / Флаги открытия файлов - Документация по MQL5
Комбинатор
15924
Комбинатор 2012.08.26 18:54  
Ага, в любом случае надо.
hrenfx
3672
hrenfx 2012.08.26 19:14  
Integer:

Проблема 2. Как написано, файл в папке агента, это значит, что если эксперт в начале тестирования должен загрузить данные из файла, то в облаке это работать не будет?

Для мат. задач с начальными данными, как вариант, прописывать их (автоматом) прямо в исходнике.

P.S. Как быстро распространяются по облаку многомегабайтные EX5-файлы - не знаю.

Dmitry Fedoseev
42902
Dmitry Fedoseev 2012.08.26 20:05  

Значит в тестере нам дано только с один файлом работать и с неизменным именем. Если для себя можно сделать API CopyFile(), это если один файл, тогда можно будет в окне свойств менять имя. 

Если много файлов, значит сначала надо собирать все файлы в один перед тестированием (не в эксперте), в эксперте разрезать назад. При тестировании возможна работа с множеством файлов, только они виртуальные. Значит можно разрезать один тестерный файл, создать из него сколько надо виртуальных. Если с API, то можно напрямую прочитать все файлы и как бы создать такие же функцией mql, будут виртуальные файлы. 

Лучше теперь всегда ориентироваться на работу с одним файлом. 

Но есть и нечто приятное во всем этом, надо полагать, этот тестерный файл будет по облаку распространяться.


Dmitry Fedoseev
42902
Dmitry Fedoseev 2012.08.26 20:07  
hrenfx:

Для мат. задач с начальными данными, как вариант, прописывать их (автоматом) прямо в исходнике.

P.S. Как быстро распространяются по облаку многомегабайтные EX5-файлы - не знаю.

Если бы этого было бы достаточно, вопроса бы не возникало. Но у компьютерных прграмм, кроме программистов есть пользователи которые совсем не программисты.

 

hrenfx
3672
hrenfx 2012.08.26 21:15  
Integer:

Лучше теперь всегда ориентироваться на работу с одним файлом.

Это шутка такая? Конечно, MT5+MQL5 не знаю совсем, но неужели элементарщину, о которой в MQL4 даже не задумываешься, нельзя сделать в MT5? Что-то не стыкуется с фразами о всепревосходстве пятерки. Хотелось бы понять причины существующего решения.

Если бы этого было бы достаочно, вопроса бы не возникало. Но у компьютерных прграмм, кроме программистов есть пользователи которые совсем не программисты.

Так автоматом данные в исходник запихивать и компилить. Юзер ничего даже не заметит. 

123
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий