Компилируется советник, а Библиотека.mqh тихо лежит в include и никого не трогает. И Вы ее не трогайте, отдельно ее компилировать нельзя. При компиляции советника код библиотеки включается компилятором в код советника и компилируется вместе с ним.
Если отдельно откомпилировать библиотеку, компилятор может изменить ее расширение на .mq4 и советник перестает ее находить. В этом случае необходимо вручную изменить расширение библиотеки обратно на .mqh.
Инклуд файлы изначально были рассчитаны именно для использования в советниках.
Попробуйте так:
#include <../include/aivengo_lib.mqh>
При таком подключении файл найдется и в советнике и в индикаторе.
Если указаны угловые скобки, то поиск ведётся в experts\include (Только что сам проверил на всякий случай)
В показанном Вами случае лучше указывать mqh в апострофах
Проблема возможна, если файл mq4 открывается "чужим" MetaEditor - при этом поиск ведётся от директория этого самого "чужого" эдитора.
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Добрый день!
Создал библиотеку
F:\__files\XTB-Trader 4\experts\libraries\aivengo_lib.mq4
к ней mqh:
F:\__files\XTB-Trader 4\experts\include\aivengo_lib.mqh
в советнике прикручиваю таким образом:
#include <aivengo_lib.mqh>
работает!
Прикручиваю также в индикаторе и получаю вот что:
ContinuousPattern.mq4;10:1;'aivengo_lib.mqh' - cannot open the program file
Что не так?