
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
При вызову моей функции передать массив по ссылке, через указатель или как-то ещё?
Прочитайте раздел Справочника про передачу параметров по значению и по ссылке:
Справочник MQL5 / Основы языка / Функции / Передача параметров
Прочитайте раздел Справочника про передачу параметров по значению и по ссылке:
Справочник MQL5 / Основы языка / Функции / Передача параметров
В общем-то, я только что оттуда и указанные в предыдущем сообщении ошибки компиляции были как раз после прочтения раздела.
Сейчас перечитал повнимательнее - всё дело в const и в том, куда его приткнуть.
Спасибо, разобрался.
В OnCalculate я с лёгкостью могу использовать элементы массива вроде high по индексу. Возможно ли так же доступиться к индексным элементам этого массива в ExtFunc? При вызове моей функции передать массив-аргумент по ссылке, через указатель или как-то ещё? Пока удалось минимизировать сообщения об ошибках до: "'high' - parameter conversion is not allowed" и "'high' - constant variable cannot be passed as reference" в отношении одной и той же строки вызова моей функции с аргументом-массивом из OnCalculate. Безнадёжно или есть решение?
Пока в OnCalculate прибегаю к копированию high в другой массив:
а затем использую CopyOfHigh в ExtFunc вместо прямого использования high-массива.Надо просто передать массив в вашу функцию по ссылке
Всех приветствую!
Что означает предупреждение:
possible loss of data due to type conversion эксперт.mq5
при компиляции??? Ругается вот на это:
что не так?
Надо просто передать массив в вашу функцию по ссылке
Не совсем так:
Всех приветствую!
Что означает предупреждение:
possible loss of data due to type conversion эксперт.mq5
при компиляции??? Ругается вот на это:
что не так?
Что означает предупреждение:
possible loss of data due to type conversion
Значение этого сообщение различно, в зависимости от контекста в котором оно рассматривается.
Например:
1. "Сделайте явное приведение типов!"
2. "Возможна подеря данных при неявном приведении типов." // Это дословный перевод.
Это понятно, так как тип лонг, возвращаемый функцией, имеет больший размер и покрывает более широкий диапазон значений.
Ещё вариант, который мне чаще всего приходит в голову в последнее время:
3. "Сотрудники MetaQuotes не понимают, как было бы круто, привлекательно, и эффективно для изучения, если бы сообщения об ошибках и предупреждения компилятора mql5 выдавались на родном языке пользователя."
... как было бы круто, привлекательно, и эффективно для изучения, если бы сообщения об ошибках и предупреждения компилятора mql5 выдавались на родном языке пользователя."
Возникло подозрение, что если индикатор активирован через iCustom, то он рассчитывается на каждом тике. И это не зависит от обращений к нему через CopyBuffer. Это верно?
Если верно, то можно ли отключить пересчет индикатора и включить только перед обращением к CopyBuffer ?
Возникло подозрение, что если индикатор активирован через iCustom, то он рассчитывается на каждом тике. И это не зависит от обращений к нему через CopyBuffer. Это верно?
Всё зависит от того, какая логика заложена в пользовательский индикатор. В принципе, может и раз в сутки пересчитывать свои значения, пропуская все остальные тики. По воле автора, так сказать.
Если верно, то можно ли отключить пересчет индикатора и включить только перед обращением к CopyBuffer ?
В принципе, некоторые пытаются использовать такой чудовищный подход: создать копию индикатора через iCustom, скопировать нужные данные, уничтожить копию индикатора. По мере необходимости процедуру повторяют.
..Ещё есть функция OnTimer(). Сам с ней не работал, но, может быть, Вам удастся её скомпоновать под свою задачу.