Выпущена бета-версия MetaTrader 4 Build 582 с обновленным языком MQL4 и Маркетом приложений - страница 17
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Метаквоты, всё же, есть проблемы с главным окном терминала, начиная, примерно, с 480 билда.
Ранее писал уже. Кажется, Слава отвечал примером кода, который работал. Но пример был из MQL4-скрипта.
Окно не выполняет команды по восстановлению, разворачиванию, активации, если эти команды посылает другое приложение из окна со стилем "всегда поверх других окон".
Экспериментировал из консоли с таким стилем.
Особенно странно, что окно разворачивается, но находится под всеми остальными окнами. Должно же развернуться там, где было в Z-порядке.
Но, если перед началом активировать MDI-клиента, то всё работает правильно.
======================
Хорошо, хоть, со стилем "без заголовка" разобрался. Мой косяк. Перерисовывал окно путём клика мыши на графике. Чтобы с другими сообщениями не возиться. Больно сложно.
Сделал ограничение в 2 открытых окна графика. Если меньше, чем 2 окна, то игнорируем операцию. В 509 было 2 окна открыто (работало), в 574 одно окно открыто (не работало) :-))
не помогло.
Посоветуйте как исправить.
Закройте файл с помощью FileClose
Потом уже открывайте файл с помощью других программ
Закройте файл с помощью FileClose
Потом уже открывайте файл с помощью других программ
В индикаторе FileClose прописан, в том то и дело. При компиляции индикатора терминал падает (это у него в последнее время постоянно происходит), после этого файл открыт. Применять и удалять индикатор снова тоже не помогает.
Посоветуйте как исправить.
1. При открытии используйте такую комбинацию флагов: FILE_BIN|FILE_WRITE|FILE_SHARE_WRITE|FILE_SHARE_READ|FILE_ANSI (зачем одновременно FILE_WRITE и FILE_SHARE_WRITE - не знаю)
2. В заголовке укажите новую версию и занулите записываемый массив:
3. Запись баровых данных переделайте на вызов вот такой функции:
4. Все переменные, связанные с volume, сделайте типа long.
Только сегодня переписывал 2 таких советника, все работает.
Удачи!
Buil 574 а так же актуальный Build 574
При переключении периода графика происходит переинициализация глобальных переменных причем только в индикаторах.
В справке однозначно написанно что инициализация происходит однажды при запуске программы
Из лога видно, что эксперт выводит правильные измененные значения а индикатор производит инициализацию
Используется в эксперте и индикаторе этот простой код
Чем обосновывается такое поведение в индикаторе?
Ошибка или не документированная особенность?
было бы еще удобно показ уровней на горячую клавишу положить
1. При открытии используйте такую комбинацию флагов: FILE_BIN|FILE_WRITE|FILE_SHARE_WRITE|FILE_SHARE_READ|FILE_ANSI (зачем одновременно FILE_WRITE и FILE_SHARE_WRITE - не знаю)
2. В заголовке укажите новую версию и занулите записываемый массив:
3. Запись баровых данных переделайте на вызов вот такой функции:
4. Все переменные, связанные с volume, сделайте типа long.
Только сегодня переписывал 2 таких советника, все работает.
Удачи!
И от меня спасибо. До функции я уже дошёл, а до проверки формата ещё нет. Кстати, функция вроде и так работает
Чем обосновывается такое поведение в индикаторе?
Ошибка или не документированная особенность?
Да. Это - ошибка. Исправили. Спасибо за замечание