CopyRates

 

Доброго времени.

 

bool f_GetLatestRates()
{
    ResetLastError();
    if(CopyRates(_Symbol,_Period,0,gc_Min_BarsNumber,rateVal)<0)  
    {
       Print("Ошибка копирования исторических данных - ошибка:",GetLastError(),"!!");
       return false;
    }
    return true;
}    

 

Пишу такой код. Раньше всегда думал, что порядок записи в rateVal обратный. Т.е. последняя свечка будет класться в rateVal[0]. Сегодня наблюдаю обратную картину. Загружаю данные последних 5 свечек (gc_Min_BarsNumber=5) и вижу, последние данные находятся как раз в rateVal[4], что случилось?

 
combat.trader:

Доброго времени.

 

 

Пишу такой код. Раньше всегда думал, что порядок записи в rateVal обратный. Т.е. последняя свечка будет класться в rateVal[0]. Сегодня наблюдаю обратную картину. Загружаю данные последних 5 свечек (gc_Min_BarsNumber=5) и вижу, последние данные находятся как раз в rateVal[4], что случилось?

Сам разобрался. Оказывается для rates тоже нужно использовать ArraySetAsSeries

Причина обращения: