Да. действительно.
Если указывать получение данных с валюты, отличной от текущей, iClose и MarketInfo работают синхронно. То есть показывают последнюю известную цену.
RefresRates не требуется.
int start() { while(true) { Print("1 "+iClose("GBPUSD", Period(), 0)); Print("ModeAsk "+MarketInfo("GBPUSD", MODE_BID)); Sleep(5000); } return(0); }
но если валюта будет указана текущая, то iClose не будет обновлятся, получается. что iClose для текущей валюты берёт свои данные с массива Close?
А значит требуется обновления RefreshRates.
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Часто в постах видел, что вызывать RefreshRates для получения Ask / Bid необязательно, если использовать MarketInfo (, MODE_ASK / MODE_BID).
Вопрос тогда в следующем: можно ли не вызывать RefreshRates, если обращаться к ценам не через массивы Close/Open... а через функции iClose/iOpen итд?
Обновляются ли массивы, вызываемые через функции сами. Или всё таки нужен RefreshRates для получения обновления последних баров?
То есть, если например советнег долго вычисляет на тике, то нужно ли обращаться к iClose только после RefreshRates, или же ядро само обновляет данные?