Доступ к внутрисвечной информации в индикаторе

 
Разработчикам.

Существует ли возможность получить в индикаторе не только OHLC-данные о свечах, но и ВНУТРИСВЕЧНЫЕ цены (те, что использует тестер экспертов).
Если нет, то как правильно обратиться к данным меньших уровней и синхронизировать их по периодам графика, на котором строится индикатор.
Например:
Я хоче постоить индикатор, к примеру на H1, основанный на средневзвешанной цене свечи (суммируються все цены внутри свечи и деляться на их колличество).
 
Можно использовать функцию ArrayCopyRates(), но при ее использовании я обнаружил, что не все внутренние бары возврящаются. Например, на графике M5 мы достаем периоды M1, через вызов
ArrayCopyRates(parentBuf, NULL, PERIOD_M1)

, возвращается 9422 бара M1 в промежутке с 2005.02.22 18:18 до 2005.03.03 12:39. Однако в этом же временном промежутке находится 1935 баром M5. Логично ожидать, что мы получим 1935*5=9675 баров M1 (или если быть точным 9671 бар, так как первый и последний бары M5 не полностью заполнены барами M1). Однако реально мы получаем на 249 баров M1 меньше и в среднем в каждом восьмом баре M5 не будет какого-то бара M1.


Почему так происходит я не знаю, может этому есть какое-то объяснение?

Вероятно, ArrayCopyRates() возвращает данные из временного промежутка соответсвующему промежутку на графике (график M1 у меня начинается с 2005.02.22 18:18), но почему некоторые котировки пропущены?

Предложение разработчикам: может быть имеет смысл добавить функцию, проверяющую наличие данных? Например:

PeriodLoad(string symbol, int timeframe, int barNumber)

?

Тогда можно было бы перед использованием ArrayCopyRates(), если нам необходимо не менее 1000 M5 баров вызвать эту функцию PeriodLoad(NULL, PERIOD_M1, 1000), которая бы проверила наличие этих баров, а при необходимости и загрузила недостающие данные с сервера.

 
И еще вопрос по теме доступа к барам другой периодичности. Что будет, если обратиться к примеру из индикатора на графике D1, к данным по M15, через одну из встроенных функций индикаторов. Например:
double bulls = iBullsPower(NULL, PERIOD_M15, 14, PRICE_CLOSE, 100)



Интересует результат функции, если в момент обращения нет данных по барам M15? Функция будет блокирована до момента загрузки необходимых данных по M15 барам или ее результат будет неопределен?

Гарантируется ли, что функция вернет в точности такое же значение, которое будет на соотвествующем индикаторе (использующем эту функию) на графике M15? Если не гарантируется всегда, то при каких условиях гарантируется?

 
если соответствующих данных нет совсем (нет соответствующего исторического файла), то вернётся ошибка массива. если соответствующие данные есть, но не было открыто ни одного графика по запрашиваемому инструменту, то опять же вернётся ошибка, но будет произведена подкачка данных, так что со второго запроса Вы сможете спокойно работать.
Причина обращения: