Добрый день.
Проблема следующая: функция ChartSetSymbolPeriod отлично работает с онлайн чартами, но она не хочет менять таймфрейм на оффлайновый, например, Н2.
Если ли способ изменить таймфрейм открытого оффлайн чарта?
- Закрыть чарт.
- Открыть новый.
- Закрыть чарт.
- Открыть новый.
Сейчас я так и делаю.
Но это не удобно тем, что мешает работать на других чартах, фокус постоянно перемещается на новый открывающийся чарт.
При смене таймфрейма или инструмента у уже открытого чарта такого не происходит.
Сейчас я так и делаю.
Но это не удобно тем, что мешает работать на других чартах, фокус постоянно перемещается на новый открывающийся чарт.
При смене таймфрейма или инструмента у уже открытого чарта такого не происходит.
Фокус можно вернуть при помощи WinAPI. Ведь, если работаете с оффлайн-чартами, то в любом случае требуется разрешение на вызов функций из DLL.
Фокус можно вернуть при помощи WinAPI. Ведь, если работаете с оффлайн-чартами, то в любом случае требуется разрешение на вызов функций из DLL.
Подскажите, пожалуйста, как вернуть фокус с помощью WinAPI.
Подскажите, пожалуйста, как вернуть фокус с помощью WinAPI.
Оказалось, что даже WinAPI не нужно )) Все есть в MQL:
ChartSetInteger(0, CHART_BRING_TO_TOP, true);
Оказалось, что даже WinAPI не нужно )) Все есть в MQL:
Спасибо, но даже кратковременная потеря фокуса с текущего чарта очень неудобна.
Возвращаясь к начальному вопросу: может быть кто-то знает почему функция ChartSetSymbolPeriod не меняет таймфрейм у оффлайн чарта?
В описании к функции ничего про такую ее особенность не написано.
Может быть я что-то неправильно делаю?
Спасибо, но даже кратковременная потеря фокуса с текущего чарта очень неудобна.
Возвращаясь к начальному вопросу: может быть кто-то знает почему функция ChartSetSymbolPeriod не меняет таймфрейм у оффлайн чарта?
Оффлайн-чарт - это не полноценный чарт, т. к. он не имеет подключения к потоку котировок. Это что-то вроде кастомного символа в МТ5. А потому для такого чарта нет возможности переключения ТФ. Такой возможности нет даже у пользователя:
Мне кажется все немного хитрее.
В описании функции ChartSetSymbolPeriod написано: Функция работает асинхронно, то есть отдает команду и не ждет окончания ее выполнения. Отданная команда поступает в очередь сообщений графика и выполняется только после обработки всех предыдущих команд.
Возвращает true в случае удачного помещения команды в очередь графика, иначе false.
При выполнении на оффлайн чарте функция возвращает true, т.е. команда успешно помещается в очередь. Но вот видимо эта очередь не обрабатывается для оффлайн чарта. К сожалению подобные вещи нигде не описаны.
Оффлайн-чарт - это не полноценный чарт, т. к. он не имеет подключения к потоку котировок. Это что-то вроде кастомного символа в МТ5. А потому для такого чарта нет возможности переключения ТФ. Такой возможности нет даже у пользователя:
в настройках панели
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Добрый день.
Проблема следующая: функция ChartSetSymbolPeriod отлично работает с онлайн чартами, но она не хочет менять таймфрейм на оффлайновый, например, Н2.
Если ли способ изменить таймфрейм открытого оффлайн чарта?