Вопросы от начинающих MQL5 MT5 MetaTrader 5 - страница 503
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
По валютной паре если ставить ограничение все работает, а вот по таймфрейму почемуто не работает, дже если ставишь на h1 индикатор не работает
https://docs.mql4.com/ru/chart_operations/periodwindow
https://docs.mql4.com/ru/constants/chartconstants/enum_timeframes
Возвращаемое значение Период текущего графика (в минутах).
Попробуйте, может так заработает.
Или убрать кавычки.
https://docs.mql4.com/ru/chart_operations/periodwindow
https://docs.mql4.com/ru/constants/chartconstants/enum_timeframes
Возвращаемое значение Период текущего графика (в минутах).
Попробуйте, может так заработает.
Еще вопрос, при добавлении в начале когда #property strict индикатор выдает ошибку array out of range in 'Название индикатора' (100,41) как с этим боротся
и че тут не так?
Извините, не знал, по поводу вставки кода, а по поводу самого кода, почемуже это происходит когда вставляешь #property strict а без нее все работает
Справку смотрели в MetaEditor'e?
Изменилась также работа с функциями, областью видимости переменных и освобождением памяти в локальных массивах. Так как изменений оказалось достаточно много, то для обеспечения максимальной совместимости со старым подходом к написанию программ MQL4 было решено ввести новое свойство #property strict. При создании новой программы MQL4 с помощью Мастера MQL4 это свойство всегда добавляется в шаблон.
и далее:
Таблица отличий между компиляторами:
Старый компилятор MQL4
Новый компилятор MQL4
Новый компилятор MQL4 с #property strict
Точки входа init(), start(), deinit() могут иметь любые параметры и любой тип возврата
init(), start(), deinit(), оставленные для совместимости,
и новые OnInit(), OnStart(), OnCalculate(), OnTick(),OnTimer(), OnChartEvent(), OnTester(), OnDeinit()должны точно соответствовать своим сигнатурам
То же
Результат возврата из функции init() никак не анализируется исполняющей подсистемой
Результат возврата из функций init() и OnInit() никак не анализируется исполняющей подсистемой
При возврате из OnInit() ненулевого значения выполнение эксперта или индикатора прекращается, программа выгружается
Имена переменных практически любые (кроме зарезервированных слов), включая спецсимволы и точки
Имена переменных не могут иметь спецсимволы и точки.
Список зарезервированных слов расширен, поэтому именами не могут быть такие широко распространенные слова, как short, long, const и т.д.
То же
Область видимости переменной - от объявления (даже во вложенном блоке) до конца функции
То же
Область видимости переменной - от объявления до конца блока, в котором переменная объявлена
Неявная инициализация всех переменных (и глобальных и локальных) нулями
То же
Инициализация только глобальных переменных. Из локальных переменных неявно инициализируются только строки
Локальные массивы при выходе из функции не освобождаются
Локальные массивы освобождаются при выходе из функции
Локальные массивы освобождаются при выходе из блока {}
Ошибка "Array out of range" (индекс за пределами массива) не приводит к критической ошибке*
То же. Кроме массивов структур и классов, для которых эта ошибка является критической
"Array out of range" - критическая ошибка и приводит к остановке программы
Структур и классов нет
Структуры и классы есть. Появились дополнительные типы данных
То же
Строки - однобайтовые.
datetime - 32-битное целое
Предопределенная переменная Volume имеет тип double
Строки - юникодные.
datetime - 64-битное целое
Предопределенная переменная Volume имеет тип long
То же
ArrayCopyRates() производит виртуальное копирование в массив double[][6]
ArrayCopyRates() производит виртуальное копирование в массив MqlRates[]. Для совместимости осталось копирование в массив double[][6], но это копирование не виртуальное, а реальное.
То же
Функции могут не возвращать значения, даже если они имеют тип. Для этого в конце функции компилятором автоматически проставляется return(0)
То же
Функции любого типа всегда должны возвращать значение
Количество одновременно открытых файлов - 32
Количество одновременно открытых файлов - 64
То же
Файлы всегда открываются в режиме совместного использования **
Режим совместного использования нужно указывать явно с помощью FILE_SHARE_READ и/или FILE_SHARE_WRITE
То же
Для скриптов в окне входных параметров показываются имена extern переменных
Для скриптов в режиме show_inputs в окне входных параметров показываются имена extern и input-переменных
Для скриптов в режиме show_inputs в окне входных параметров показываются строчные комментарии вместо имен extern- и input-переменных
* Следует обратить особое внимание на ошибку "Array out of range" - многие старые пользовательские индикаторы при запуске на графике будут выдавать эту ошибку в новом компиляторе в режиме strict. Желательно найти причину и устранить её.
** В новом MQL4 и MQL5 за режим совместного использования файлов отвечают флаги FILE_SHARE_READ и FILE_SHARE_WRITE, которых не было в старом MQL4.
скажите что тут не так?
Извините канешн если я вас достал, но теперь тут ошибку эту выдает
39 позиция
Туже самую ошибку, array out of range ?