Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Теперь, в отличие от MT4, период не означает количество секунд в периоде.
Количество секунд он никогда не показывал, даже в МТ4 уважаемый... А вот минуты в МТ4 он показывал четко. Что тогда показывает _Period на графике H1? По моему это серьезный баг.
Читайте внимательнее, я писал про _Period а не про PeriodSeconds. И не забивайте своими ошибками восприятия страницы пожалуйста.
Таким образом H1 = 16385 это не ахинея, а числовое представление H1 в ENUM_TIMEFRAMES.
Читаем справку по Period-у
Period
Возвращает значение таймфрейма текущего графика.
ENUM_TIMEFRAMES Period();
Возвращаемое значение
Содержимое переменной _Period, в которой хранится значение таймфрейма текущего графика. Значение может быть одним из значений перечисления ENUM_TIMEFRAMES.
PS
Таким образом возвращается не количество минут соответствующее периоду (как это было в МТ4), а элемент перечисления ENUM_TIMEFRAMES (или его числовое представление, при необходимости работы с ним)...
Уже исправил. Общий смысл таков, при помощи PeriodSeconds получаем именно секунды в периоде, а затем делаем с ними все что душе угодно...
Таким образом H1 = 16385 это не ахинея, а числовое представление H1 в ENUM_TIMEFRAMES.
Ну а всетаки, если я запрашиваю _Period на H1 получаю эту самую ENUM_TIMEFRAMES = 16385, то как мне из этого получить минуты?
Хотя конечно поделить PeriodSeconds()/60 ничего не стоит. Но всетаки что это за идентификаторы и как с ними работать.
Ну а всетаки, если я запрашиваю _Period на H1 получаю эту самую ENUM_TIMEFRAMES = 16385, то как мне из этого получить минуты?
Уже месяцев 11 использую в соей миграционной библиотеке вот эту функцию, пока все четко было
ANG3110:
Хотя конечно поделить PeriodSeconds()/60 ничего не стоит. Но всетаки что это за идентификаторы и как с ними работать.
Этот вопрос можно отнести к основам ООП. Касается он идентификаторов и перечислений (нумераторов). Подробно можно почитать в справке или в нормальных книгах по программированию на C++.
Такое было уже и в MQL4, но не так явно бросалось в глаза.
У каждого идентификатора (в независимости от того прописан он в MQL5 или его создал пользователь) может быть свое "число представление".
Если по простому (объясняю как умею)...
Можете считать, что это для совместимости работы с внешней средой, скажем с DLL или иной другой (не имеющей представления не о MQL не о его идентификаторах).
Таким образом, если вам нужно внутри MQL5 программы работать с периодом, то разумнее всего использовать идентификатор PERIOD_H1 перечисления ENUM_TIMEFRAMES.
Но если скажем требуется сообщить внешней среде (к примеру DLL), что мы работаем с периодом H1, это удобней сделать при помощи числового представления этого идентификатора, в нашем случае это 16385.
Ну а всетаки, если я запрашиваю _Period на H1 получаю эту самую ENUM_TIMEFRAMES = 16385, то как мне из этого получить минуты?
Хотя конечно поделить PeriodSeconds()/60 ничего не стоит. Но всетаки что это за идентификаторы и как с ними работать.
примерно так
Уже месяцев 11 использую в соей миграционной библиотеке вот эту функцию, пока все четко было
примерно так
Разработчикам.
1. При определенных условиях строка OHLC начинает подмигивать. Выявилось при тестировании советника на одноядерном компе (видимо проц перегружен)...
2. Можно будет поместить список классов и их функционал (начинку) в навигатор, подобно тому как это сделано в Delphi (а то не очень удобно работать со списком процедур и функций модуля)?
Попытался сохранить отчет тестера в формате Open XML. Минут 20 ожидания (Pentium 4, 3.0GHz), приложение не отвечает, в диспетчере задач бурная активность процесса terminal.exe (примерно 50% процессора) по пожиранию оперативки (примерно до 250Мб), Результат - ничего. MT5 реагирует, только котировки поступать перестали (Индикатор состояние подключения с серым крутящимся кружком). Вторая попытка - аналогично. В окне "Инструменты" в журнале 2 записи "MemoryException 107878464 bytes not available", по времени соответствующие попытке получить отчет в OpenXML.
В формате HTML файл сформировался почти мгновенно (примерно 12 Мб). Открывается долго, но тут уж MT5 не виноват...