Котировки и проблемы и за них

 

Столкнулся тут с проблемой. У меня многотаймфреймовый индикатор и, если котировки по паре не подкачаны, то при установке индикатора терминал повисает, а при эксплуатации вообще терминал вылетает, что его даже не оживить. Внимание! вопросы:

1. Как программно определить хватает ли котировок и выдать ошибку.

2. Как подкачать котировки программно.

3. Помню был скрипт для подкачки всех котировок... может ли кто-то поделиться.

 
zfs:

Столкнулся тут с проблемой...

1. Через iBars(). Вы же знаете сколько нужно минимум баров, для того чтобы индикатор работал корректно, если это число меньше iBars() значит работаем, если нет значит выдаем ошибку. Пример из кода МА:

if(Bars<=MA_Period) return(0);

 
2. Если они нужны какой либо функции, они подкачиваются автоматически, если терминал по каким либо причинам не может этого сделать генерируется ошибка 4066 - ERR_HISTORY_WILL_UPDATED - Запрошенные исторические данные в состоянии обновления.

3.https://www.mql5.com/ru/code/8443 или https://www.mql5.com/ru/code/7775 или https://www.mql5.com/ru/code/9099 или https://www.mql5.com/ru/code/7294.Только нужно ли?

 
ToLik_SRGV:

1. Через iBars(). Вы же знаете сколько нужно минимум баров, для того чтобы индикатор работал корректно, если это число равно или меньше iBars() значин работаем, если нет значит выдаем ошибку. Пример из кода МА:

2. Если они нужны какой либо функции, они подкачиваются автоматически, если терминал по каким либо причинам не может этого сделать генерируется ошибка 4066 - ERR_HISTORY_WILL_UPDATED - Запрошенные исторические данные в состоянии обновления.

3. Он вам не нужен. https://www.mql5.com/ru/code/8443.

Спасибо, Толик. Все очень просто)).
 

Может ещё один вопрос.

Я гружу на терминал кучу индикаторов. При последующем запуске терминала он повисает видимо из-за невозможности справиться со всем эти делом.

Можно ли что-то прописать, чтобы как-то сгладить подобные тормоза.

 
zfs:

Может ещё один вопрос.

Я гружу на терминал кучу индикаторов. При последующем запуске терминала он повисает видимо из-за невозможности справиться со всем эти делом.

Можно ли что-то прописать, чтобы как-то сгладить подобные тормоза.

Уменьшите в настройках количество баров в окне.
 
zfs:

Может ещё один вопрос.

Я гружу на терминал кучу индикаторов. При последующем запуске терминала он повисает видимо из-за невозможности справиться со всем эти делом.

Можно ли что-то прописать, чтобы как-то сгладить подобные тормоза.

Прописать где? В загружаемых индикаторах? Можно конечно, попытаться оптимизировать код каждого из них, для более быстрой работы (например ограничить количество просчитываемых баров) только времени уйдет на это многовато :)))

Ну а из универсальных советов, надо сделать все наоборот, не закачивать все историю котировок, а наоборот оставить только последнюю для работы, потому как чем меньше баров в истории тем быстрее все работает.

P.S.

 Я гружу на терминал кучу индикаторов...

В смысле включаете одновременно? или просто бросаете в папку \experts\indicators? Если первый вариант, то тогда попробуйте мой совет выше, если второй вариант, то это нормально, если индикатор новый, и вы только что положили его в папку для индикаторов, то при первом запуске терминала, он компилирует (то есть из .mq4 в ex4) все новые индикаторы которые обнаружит, эти записи есть в журнале.

 

 
int init(){
Print(iBars(Symbol(),TF2));
Print(iBars(Symbol(),TF4));
if (iBars(Symbol(),TF2)<VisualBars){Print("Нет котировок ТФ2");return(0);}
if (iBars(Symbol(),TF4)<VisualBars){Print("Нет котировок ТФ4");return(0);} 
Ничего не выводит и сразу висит.... Чего делать???
 
ToLik_SRGV:
Прописать где? В загружаемых индикаторах? Можно конечно, попытаться оптимизировать код каждого из них, для более быстрой работы (например ограничить количество просчитываемых баров) только времени уйдет на это многовато :)))

Ну а из универсальных советов, надо сделать все наоборот, не закачивать все историю котировок, а наоборот оставить только последнюю для работы, потому как чем меньше баров в истории тем быстрее все работает.

P.S.

В смысле включаете одновременно? или просто бросаете в папку \experts\indicators? Если первый вариант, то тогда попробуйте мой совет выше, если второй вариант, то это нормально, если индикатор новый, и вы только что положили его в папку для индикаторов, то при первом запуске терминала, он компилирует (то есть из .mq4 в ex4) все новые индикаторы которые обнаружит, эти записи есть в журнале.


Нет я кидаю на график... закрываю терминал. Открываю терминал (любого брокера) и терминал висит. Кол-во баров =50. Котировок мало, попробую совет khorosha.
 
И мне никто не ответил на вопрос Как подкачать котировки программно - может это ка-то решило бы проблему.
 
Э, народ, всё-таки кто-нибудь знает?
Причина обращения: