
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Файл шаблона
Ну, значит действительно не применился шаблон. Дело не в объекте линии.
ChartApplyTemplate отдает лишь признак успешной постановки команды в очередь чарта.
Как и описано в справке: "Отданная команда поступает в очередь сообщений графика и выполняется только после обработки всех предыдущих команд."
Значит у вас проблемы именно в применении шаблона.
Ну, значит действительно не применился шаблон. Дело не в объекте линии.
ChartApplyTemplate отдает лишь признак успешной постановки команды в очередь чарта.
Как и описано в справке: "Отданная команда поступает в очередь сообщений графика и выполняется только после обработки всех предыдущих команд."
Значит у вас проблемы именно в применении шаблона. Скорее всего, какие-то проблемы с чтением файла.
И у других пользователей программы из маркета то же ?
Шаблон не применяется стабильно. Не как попало а просто не применяется.Тест на VPS сервере проблема есть...
И у других пользователей программы из маркета то же ?
Шаблон не применяется стабильно. Не как попало а просто не применяется.Это зависит от скорости работы вашей системы.
Вы в цикле без задержек многократно совершаете парное действие: меняете символ чарта через ChartSetSymbolPeriod и применяете на него шаблон ChartApplyTemplate.
Т.к. на чарте есть кастомный индикатор, то каждое из этих действий вызывает его остановку.
Остановка кастомного индикатора не является моментальным действием, как минимум у него может быть OnDeinit, в котором возможен и доступ к чарту.
До завершения остановки кастомного индикатора по предыдущему ChartApplyTemplate следующее применение ChartApplyTemplate игнорируется. Аналогичное ограничение есть и на ChartSetSymbolPeriod.
При этом соломка "Двигаем очередь на графике" тут совершенно не помогает.
Можно сказать, что некая проблема в этом есть. Подумаем. Пока могу посоветовать не делать бессмысленных действий.
Это зависит от скорости работы вашей системы.
Вы в цикле без задержек многократно совершаете парное действие: меняете символ чарта через ChartSetSymbolPeriod и применяете на него шаблон ChartApplyTemplate.
Т.к. на чарте есть кастомный индикатор, то каждое из этих действий вызывает его остановку.
Остановка кастомного индикатора не является моментальным действием, как минимум у него может быть OnDeinit, в котором возможен и доступ к чарту.
До завершения остановки кастомного индикатора по предыдущему ChartApplyTemplate следующее применение ChartApplyTemplate игнорируется. Аналогичное ограничение есть и на ChartSetSymbolPeriod.
При этом соломка "Двигаем очередь на графике" тут совершенно не помогает.
Можно сказать, что некая проблема в этом есть. Подумаем. Пока могу посоветовать не делать бессмысленных действий.
Подобный механизм как в коде даст больше возможностей для скрининга акций и других фин инструментов.
Поможет ли Sleep(...) между применениями шаблона? Что может помочь что бы код представленный выше работал корректно?
Программа в маркете помогает людям делать скрининг фин инструментов, соответственно люди могут переключать фин инструменты быстро кликая по именам фин инструментов.
Программа сохраняет шаблоны и для нового инструмента загружает свой шаблон. Вот тут и происходит БАГ.
С EURUSD трейдер переходит на GBPUSD и не получает свой шаблон сделанный ранее, у него остается предыдущая разметка трендов.
Буду благодарен за любую помощь...
Буду благодарен за любую помощь...
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Библиотеки: Expert
fxsaber, 2017.09.08 14:45
ChartApply не сразу срабатывает. А какие-либо дальнейшие действия можно делать только после срабатывания.
Чтобы понять, что шаблон применился, нужно изменить сам шаблон (в библе изменяется цвет одной характеристики чарта - 4-й байт, отвечающий за прозрачность) и через Sleep дождаться (ChartGetInterger), когда это значение станет свойством чарта. После этого задать ему нормальное значение через ChartSetInteger.
Этот механизм гарантирует применение шаблона.
Этот механизм гарантирует применение шаблона.
Не гарантирует... Можете проверить сами...
Задержка с Sleep(1000) то же не помогает...Не гарантирует... Можете проверить сами...
Задержка с Sleep(1000) то же не помогает...Дело не в Sleep, а в проверке совпадения свойств.
Комментарий неверный, чтение хендла чарта не вызывает обработку его очереди.
Похоже, ошибаетесь. Сам пришел к выводу, что влияет.
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Библиотеки: Sequence
fxsaber, 2020.10.14 14:42
Совмещение с FileSelectDialog, чтобы при запуске Терминала не возникала каша из диалоговых окон.