МТ5 билд 1875
суть такая ставлю идикатор на м1 к примеру, он собирает данные с м5, м15, h1, h4
при появлении новой свечи на м5 к примеру - в первый тик , получается что это первый тик везде и на м1 и везде, и в первый тик получается что индикатор для м5, м15, h1 , h4 еще не посчитан, я отправляю на пересчет return(0) и жду след. тика типа
на след. тике он уже посчитан и выдается значение со всех ТФ
НО, но в момент вот этого отсутствия посчитанных данных с других ТФ , индикатор полностью гаснет, пропадает с графика до момента след. типа - пересчета
можно ли как то это излечить,
индикатор пересчитывает только последние бары и по этому для меня не понятно какого хрена он пропадает абсолютно весь - 4 линии данных в других ТФ
как можно грамотно синхронизировать данные индикаторов с разных ТФ чтоб индикатор не пропадал?
Благодарю
Почему "весь пропадает" - как раз понятно. При возврате 0 (return(0)), индикатор сбрасывается и пересчитывает все ранее рассчитанные данные. То же самое происходит при изменении данных в истории. Вы индикатору принудительно отправляете сообщение prev_calculate = 0. А вот что с этим делать - большой вопрос. Сейчас сам пишу пост на форуме на эту тему. ))))
Почему "весь пропадает" - как раз понятно. При возврате 0 (return(0)), индикатор сбрасывается и пересчитывает все ранее рассчитанные данные. То же самое происходит при изменении данных в истории. Вы индикатору принудительно отправляете сообщение prev_calculate = 0. А вот что с этим делать - большой вопрос. Сейчас сам пишу пост на форуме на эту тему. ))))
то есть может надо вернуть не 0, а бары минус посчитанные бары
то есть может надо вернуть не 0, а бары минус посчитанные бары
Попробуйте. Но нужно точно определить точку, на которую данные посчитаны правильно, и есть история по бОльшим таймфреймам. Хотя, если вас интересует только последний бар, то можно пересчитывать только его. Проверку на наличие истории по бОльшим таймфреймам нужно делать дополнительно.
if(prev_calculated==0){ return(0); }else{ return(rates_total-1); }
пока что так решил, тестирую
Попробуйте. Но нужно точно определить точку, на которую данные посчитаны правильно, и есть история по бОльшим таймфреймам. Хотя, если вас интересует только последний бар, то можно пересчитывать только его. Проверку на наличие истории по бОльшим таймфреймам нужно делать дополнительно.
Если решите поделитесь пожалуйста )))))
пока что не вижу как еще можно решить без дырки в один тик )
Если решите поделитесь пожалуйста )))))
пока что не вижу как еще можно решить без дырки в один тик )
Не достаточно кода. Где у Вас делается проверка на наличие истории по большему таймфрейму?
Не достаточно кода. Где у Вас делается проверка на наличие истории по большему таймфрейму?
в начале самого индикатора
if(BarsCalculated(h1)<Bars(_Symbol,TF1)){ if(prev_calculated==0){ return(0); }else{ return(rates_total-1); } }
в начале самого индикатора
Не могу точно сказать, нужно тестить. Но зачем возвращать rates_total-1? Возвращайте rates_total. Но отрисовку индикатора не делайте до получения истории. Можно же заполнять пустыми значениями последний бар, пока вся история по бОльшим таймфреймам не загрузится.
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
МТ5 билд 1875
суть такая ставлю идикатор на м1 к примеру, он собирает данные с м5, м15, h1, h4
при появлении новой свечи на м5 к примеру - в первый тик , получается что это первый тик везде и на м1 и везде, и в первый тик получается что индикатор для м5, м15, h1 , h4 еще не посчитан, я отправляю на пересчет return(0) и жду след. тика типа
на след. тике он уже посчитан и выдается значение со всех ТФ
НО, но в момент вот этого отсутствия посчитанных данных с других ТФ , индикатор полностью гаснет, пропадает с графика до момента след. типа - пересчета
можно ли как то это излечить,
индикатор пересчитывает только последние бары и по этому для меня не понятно какого хрена он пропадает абсолютно весь - 4 линии данных в других ТФ
как можно грамотно синхронизировать данные индикаторов с разных ТФ чтоб индикатор не пропадал?
Благодарю