Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
А в чем проблема то в онлайн? Может быть, дело в том, что два и более баров имеют одно и то же время открытия? Потому как в других случаях приведенный код работает корректно.
Другой вариант выявления нового бара - ориентироваться на количество баров:
По количеству баров ситуация точно такая же, видимо придется пробовать брать данные из hst.
Была такая мысль, но все-таки хочется видеть наглядно что происходит.
Более того, какое-то время желательно сравнивать значения характерных точек на графике с расчетными в советнике.
Отладчика нет, а проверять надо. Куда же денешься.
По количеству баров ситуация точно такая же, видимо придется пробовать брать данные из hst.
Если только момент появления нового "кирпича", то нет ничего проще:
- пишете примитивный индикатор, который ловит этот момент и выставляет значение в "Глобальную переменную терминала".
- навешиваете этот индюк на автономный график. И все на этом. Глобальные переменные работают на любых графиках.
Можно в индюк добавить еще OPEN и CLOSE предыдущего кирпича. Тоже в глобальных переменных.
Сам же советник сидит на обычном графике и, время от времени, проверяет эти "Глобальные переменные терминала".
По количеству баров ситуация точно такая же, видимо придется пробовать брать данные из hst.
Игорь, я когда-то тоже пытался поставить советник на автономный график, не получилось.
Если не трудно, покажите полный текст вашего примера, который работает отлично.
Вот в чем дело - необходимо поставить советник на автономный график. Я как то упустил это в контексте разговора. Тогда дело не в самом коде программы, а в том, что на автономном графике советник не получает тики. Это решается добавлением в стандартный скрипт PeriodConverter (или в ту программу, которая создает автономный график) следующего кода вслед за обновлением графика:
где hwnd - дескриптор окна автономного графика,
mt4Message:
В итоге получаем такой код обновленного стандартного скрипта.
Вот в чем дело - необходимо поставить советник на автономный график. Я как то упустил это в контексте разговора. Тогда дело не в самом коде программы, а в том, что на автономном графике советник не получает тики. Это решается добавлением в стандартный скрипт PeriodConverter (или в ту программу, которая создает автономный график) следующего кода вслед за обновлением графика:
где hwnd - дескриптор окна автономного графика,
mt4Message:
В итоге получаем такой код обновленного стандартного скрипта.
Спасибо, Игорь!
Я уже и сам понял, что вы автономный график упустили из виду. Потому и пост удалил, понял, что халявы нет и не ожидается.
Не судьба, увы.
PS. про SendMessageW() не слышал, посмотрю.
Спасибо, Игорь!
Я уже и сам понял, что вы автономный график упустили из виду. Потому и пост удалил, понял, что халявы нет и не ожидается.
Не судьба, увы.
Нет, автономный график я из виду не упускал. Я про советник не понял. Но решение есть и оно работает (проверьте у себя - коды приложены). Поэтому все равно не понимаю, в чем проблема.
Определить появление нового бара через время открытия бара нельзя только в том случае, когда несколько свечей имеют одинаковое время открытия. Но в таком случае помогает функция подсчета баров.
Нет, автономный график я из виду не упускал. Я про советник не понял. Но решение есть и оно работает (проверьте у себя - коды приложены). Поэтому все равно не понимаю, в чем проблема.
Определить появление нового бара через время открытия бара нельзя только в том случае, когда несколько свечей имеют одинаковое время открытия. Но в таком случае помогает функция подсчета баров.
Я этот RenkoLive посмотрел, время там есть, для быстрых тиков просто инкрементом добавляется ++. Для тех, которые строятся по истории, берется из бара.
Дело не в самом индикаторе. Ведь он просто создает автономный график. Проблема топикстартера в том (я так ее понимаю), что его советник, повешенный на автономный график, некорректно работает. Хотя, по идее, без поступления тиков эксперта он вообще не должен работать. Решается это тремя способами:
1. Зациклить советник на автономном графике.
2. Обеспечить генерацию тиков советника на автономном графике (указанный мною вариант).
3. Повесить советник на онлайн-график, но запрашивать данные с автономного графика.
Спасибо, Игорь, пункт 2 меня заинтересовал.
Дальше попробую разобраться сам.