#property tester_file "test.txt"
Разделяемые файлы лучше хранить в common пути.
Спасибо, Ренат. Для этого нужно отказаться от использования агента, если я правильно осведомлен. А он мне нужен, поскольку я использую графическую визуализацию тестера. Сам файл мне нужен для использования в тестере. Я его сначала тестером создаю, а при следующем запуске тестера хочу его использовать. Как?
А если не нужно возвращать результат, то можно воспользоваться и:
К сожалению,
#property tester_file "test.txt"
не решает проблему. Мне нужен доступ к файлу test.txt из тестера, а #property делает его доступным для чтения при обычной работе советника. Спасибо.
Спасибо, Ренат. Для этого нужно отказаться от использования агента, если я правильно осведомлен. А он мне нужен, поскольку я использую графическую визуализацию тестера. Сам файл мне нужен для использования в тестере. Я его сначала тестером создаю, а при следующем запуске тестера хочу его использовать. Как?
Я говорю про флаг FILE_COMMON при работе с файлами, который позволяет работать с файлами в общей разделяемой и неочищаемой папке из терминала и агентов.
Без этого флага файлы используются только локальные. У агентов локальные папки и файлы очищаются.
h = FileOpen("test.txt",FILE_READ|FILE_ANSI|FILE_TXT);
но потом заявляете, что в этот файл результат должен записываться....... Чудеса.
- Имеется ошибочное понимание работы #property tester_file
Читайте справку. Файл, который доступный советнику, копируется в папку Files для каждого отдельного агента тестирования. Это копии файла, и изменения в них не будут сохранены.
На сколько понял, то задачи следующие:
1. Передать файл с входными параметрами на агенты тестирования.
2. Вернуть полученные результаты с агентов тестирования и сохранить их в файл.
Возможные решения:
1. Предложенное Ренатом - через FILE_COMMON (скорее всего придется добавить FILE_SHARE_READ, возможно и FILE_SHARE_WRITE).
Решение требует минимум изменения кода.
Однако есть минусы:
- код нельзя будет использовать для тестирования в MQL Cloud;
- если все писать в один файл - возможны проблемы с синхронизацией очередности данных вносимых от разных агентов.
2. Передать файл с входными параметрами на агенты тестирования через #property tester_file "test.txt".
Возвращать файлы с результатами из агентов тестирования через FrameAdd и обрабатывать их с сохранением в файл через FrameFirst, FrameNext в функции OnTesterPass терминала.
- Вы приводите кусок сода без FILE_WRITE:
но потом заявляете, что в этот файл результат должен записываться....... Чудеса.
В этом куске сказано лишь о том, что делается попытка открыть файл для чтения. А создан этот файл (т.е. запись в него с FILE_WRITE) сделана ранее, при предыдущем прогоне тестера соответствующим кодом.
Ошибочное понимание возможно, разберусь. Спасибо за подсказки.
Я говорю про флаг FILE_COMMON при работе с файлами, который позволяет работать с файлами в общей разделяемой и неочищаемой папке из терминала и агентов.
Без этого флага файлы используются только локальные. У агентов локальные папки и файлы очищаются.
Спасибо, проблема решена с использованием FILE_COMMON.
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
При попытке открыть для чтения существующий файл по адресу
(при работе тестера) с помощью
файл уничтожается, а не открывается. В чем ошибка?
Спасибо.