Ошибки, баги, вопросы - страница 1178
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Тогда надо читать флаг видимости и делать логическое & с константой.
Если Вы имеете в виду:
Или
Тоже самое.Если Вы имеете в виду:
Или
Тоже самое.Если Вы имеете в виду:
Или
Тоже самое.Ваша ошибка в вот тут bool(res), т.к. res всегда больше 1 при любом отображении, посмотрите что возвращается в рез, тем самым bool(res) выдаст 0 или false только в случае когда res=0
Вы невнимательно используете преобразование типов и сравнение
OBJ_NO_PERIODS
0
Объект не показывается ни на одном таймфрейме
OBJ_PERIOD_M1
0x00000001
Объект рисуется на 1-минутных графиках
OBJ_PERIOD_M2
0x00000002
Объект рисуется на 2-минутных графиках
OBJ_PERIOD_M3
0x00000004
Объект рисуется на 3-минутных графиках
OBJ_PERIOD_M4
0x00000008
Объект рисуется на 4-минутных графиках
OBJ_PERIOD_M5
0x00000010
Объект рисуется на 5-минутных графиках
OBJ_PERIOD_M6
0x00000020
Объект рисуется на 6-минутных графиках
OBJ_PERIOD_M10
0x00000040
Объект рисуется на 10-минутных графиках
OBJ_PERIOD_M12
0x00000080
Объект рисуется на 12-минутных графиках
OBJ_PERIOD_M15
0x00000100
Объект рисуется на 15-минутных графиках
OBJ_PERIOD_M20
0x00000200
Объект рисуется на 20-минутных графиках
OBJ_PERIOD_M30
0x00000400
Объект рисуется на 30-минутных графиках
OBJ_PERIOD_H1
0x00000800
Объект рисуется на 1-часовых графиках
OBJ_PERIOD_H2
0x00001000
Объект рисуется на 2-часовых графиках
OBJ_PERIOD_H3
0x00002000
Объект рисуется на 3-часовых графиках
OBJ_PERIOD_H4
0x00004000
Объект рисуется на 4-часовых графиках
OBJ_PERIOD_H6
0x00008000
Объект рисуется на 6-часовых графиках
OBJ_PERIOD_H8
0x00010000
Объект рисуется на 8-часовых графиках
OBJ_PERIOD_H12
0x00020000
Объект рисуется на 12-часовых графиках
OBJ_PERIOD_D1
0x00040000
Объект рисуется на дневных графиках
OBJ_PERIOD_W1
0x00080000
Объект рисуется на недельных графиках
OBJ_PERIOD_MN1
0x00100000
Объект рисуется на месячных графиках
OBJ_ALL_PERIODS
0x001fffff
Объект рисуется на всех таймфреймах
Вот так:
Если флаг видимости на H1 установлен, будет true.В продолжение своего прошлого поста. Методом научного тыка мне удалось отыскать проблемное место, приводящие к багу.
Имеем такую библиотеку с функцией:
А вот основной файл:
Получившийся советник не работает, в логе выдаётся: "EX5 loading failed"
Добрый день. Я зациклил советник в функции OnInit и видимо из-за этого терминал при выключении советника и изменении тайм-фрейма виснет(тайм фрейм после тормозов так и не меняется). Так вот вопрос: Причиной является зацикленность? Если да , то исправится ли проблема , если перенесу алгоритм в OnTiick? Если нет, то что поможет?
PS: В цикле есть ф-ция Sleep,так что терминал не перегружается. В цикле считываются поля ввода.
Добрый день. Я зациклил советник в функции OnInit и видимо из-за этого терминал при выключении советника и изменении тайм-фрейма виснет(тайм фрейм после тормозов так и не меняется). Так вот вопрос: Причиной является зацикленность? Если да , то исправится ли проблема , если перенесу алгоритм в OnTiick? Если нет, то что поможет?
PS: В цикле есть ф-ция Sleep,так что терминал не перегружается. В цикле считываются поля ввода.
Добрый день. Я зациклил советник в функции OnInit и видимо из-за этого терминал при выключении советника и изменении тайм-фрейма виснет(тайм фрейм после тормозов так и не меняется). Так вот вопрос: Причиной является зацикленность? Если да , то исправится ли проблема , если перенесу алгоритм в OnTiick? Если нет, то что поможет?
PS: В цикле есть ф-ция Sleep,так что терминал не перегружается. В цикле считываются поля ввода.
OnInit - служит только для инициализации. Все расчеты нужно проводить дальше - OnTick, OnTimer и т.д.
Если нужно знать изменение в поле ввода - для этого есть стандартная библиотека: https://www.mql5.com/ru/docs/standardlibrary/controls/cedit
Добрый день. Я зациклил советник в функции OnInit и видимо из-за этого терминал при выключении советника и изменении тайм-фрейма виснет(тайм фрейм после тормозов так и не меняется). Так вот вопрос: Причиной является зацикленность? Если да , то исправится ли проблема , если перенесу алгоритм в OnTiick? Если нет, то что поможет?
PS: В цикле есть ф-ция Sleep,так что терминал не перегружается. В цикле считываются поля ввода.
Наверно цикл такой: while(true){}? Да?
Надо так: while(!isStopped()) {}. Но тогда будет другая проблема, будет случаться выход из него по непонятным причинам. Надо в старте его делать. Если надо ускорить запуск, можно из инита вызвать старт.
Лучше зацикливание вобще не делать, сейчас есть тамер, надо таймером пользоваться.
Если надо ускорить запуск, можно из инита вызвать старт.