Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - страница 352
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
спасибо, но она
iCustom в помощь
спасибо, но она каждый раз при вызове полностью выполняет код индикатора,и если мне необходимо в советнике много параметров индикатора(а это так) то вместо одного просчета индикатора получим несколько,что может существенно замедлить процесс вплодь до пропуска текущего тика, забыл про предопределенные переменные.....
int rates_total=Bars;
определил глобальную переменную
int prev_calculated=0;
вылетает на количестве элементов массива
простите разобрался,но непонятно зачем в oncalculate передавать значения предопределенных переменных, если они глобальные и так-же доступны
Вот посмотрите пример
Параметры функции могут быть входные - которые мы ей передаем, и выходные - которые она нам возвращает
Эти переменные нужны для расчета всей линии индикатора, а Вам надо одно значение. Все намного проще. Проанализируйте программу-индикатор и определите, по какой формуле производится расчет. И эту формулу используйте в эксперте
Ребят подскажите, как реализовать такой алгоритм:
Есть таймcерия с объёмом Volume
Нужно сделать сравнение, что-бы последний бар Volume[1] был больше каждого из предыдущих, и что-бы окно(кол-во) предыдущих баров задавалось внешней переменной (extern int)
Напишите пример кода, если не сложно
Ребят подскажите, как реализовать такой алгоритм:
Есть таймcерия с объёмом Volume
Нужно сделать сравнение, что-бы последний бар Volume[1] был больше каждого из предыдущих, и что-бы окно(кол-во) предыдущих баров задавалось внешней переменной (extern int)
Напишите пример кода, если не сложно
Помогло? А как раньше работало?
Работало без ошибок, я похоже сам убрал, автозаменой через ctrl+h, и не заметил >_<. А в общем,наверняка это иллюминаты постарались. Еще раз спасибо !
Ребят подскажите, как реализовать такой алгоритм:
Есть таймcерия с объёмом Volume
Нужно сделать сравнение, что-бы последний бар Volume[1] был больше каждого из предыдущих, и что-бы окно(кол-во) предыдущих баров задавалось внешней переменной (extern int)
Напишите пример кода, если не сложно
Не сложно. На коленке написал по памяти (может чего и упустил)...
Здравствуйте. Не могу получить общий доступ к файлу. Задача - нужно, чтобы при ручном тестировании в тестере МТ4 (MQL4) на М1 формировался файл более старшего периода (например М20). Для этого написан индикатор на базе скрипта PeriodConverter. Т.к. в режиме теститрования нельзя сохранить файл (EURUSD20.csv) сразу в папку History, файл сохраняется в общей для всех терминалов папке - \\MetaQuotes\Terminal\Common. Далее зацикленный скрипт, работающий уже на обычном графике М1 копирует данные из файла EURUSD20.csv в файл EURUSD20.hst, расположенный в папке History. В скрипте файл EURUSD20.csv не открывается, если в это же время он открыт в индикаторе в тестере (5004 ERR_FILE_CANNOT_OPEN Ошибка открытия файла). Если удалить индикатор из тестера, то этот файл в скрипте открывается и копирутся без проблем. Файл в индикаторе открыт так: ExtHandle=FileOpen(c_symbol+(string)20+".csv",FILE_BIN|FILE_WRITE|FILE_SHARE_WRITE|FILE_READ|FILE_SHARE_READ|FILE_COMMON);
Файл в скрипте открыт так: ExtHandleR=FileOpen("EURUSD20.csv",FILE_BIN|FILE_READ|FILE_SHARE_READ);
Прошу указать на мою ошибку.
Здравствуйте. Не могу получить общий доступ к файлу. Задача - нужно, чтобы при ручном тестировании в тестере МТ4 (MQL4) на М1 формировался файл более старшего периода (например М20). Для этого написан индикатор на базе скрипта PeriodConverter. Т.к. в режиме теститрования нельзя сохранить файл (EURUSD20.csv) сразу в папку History, файл сохраняется в общей для всех терминалов папке - \\MetaQuotes\Terminal\Common. Далее зацикленный скрипт, работающий уже на обычном графике М1 копирует данные из файла EURUSD20.csv в файл EURUSD20.hst, расположенный в папке History. В скрипте файл EURUSD20.csv не открывается, если в это же время он открыт в индикаторе в тестере (5004 ERR_FILE_CANNOT_OPEN Ошибка открытия файла). Если удалить индикатор из тестера, то этот файл в скрипте открывается и копирутся без проблем. Файл в индикаторе открыт так: ExtHandle=FileOpen(c_symbol+(string)20+".csv",FILE_BIN|FILE_WRITE|FILE_SHARE_WRITE|FILE_READ|FILE_SHARE_READ|FILE_COMMON);
Файл в скрипте открыт так: ExtHandleR=FileOpen("EURUSD20.csv",FILE_BIN|FILE_READ|FILE_SHARE_READ|FILE_COMMON);
Прошу указать на мою ошибку.
Указал?
Указал?
Я не понял. Эта опция указывает на местоположение файла - \\MetaQuotes\Terminal\Common. Без этой опции я не смогу взять файл, который сформировался в тестере. Без этой опции файл будет искаться в MQL4\Files - а туда файл из тестера я не смогу положить.