Навигация по массиву котировок вне мета трейдера. Вопрос к программистам.

 

Все привет.

Наверно название темы не удалось, но смысл вот в чём,  в сторонней программе массив котировок по которому можно пробегаться по индексам, ну как обычный массив.

Вопрос такой, какой алгоритм доступа возможен к массиву котировок, обращаясь по времени, естественно как можно быстрее, то есть произвольный доступ к бару, находящемуся в массиве, который максимально соответствует заданному времени.

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

Спасибо за любые мысли и предложения.

Ещё раз повторюсь, всё вне терминала,  обычный массив структур баров.

 
логарифмический наверное.
 

Наименьших квадратов - самый экономный.

Индексный - самый быстрый.

В моих шаблонах классов для работы с историей оба реализованы. Для работы с файлом - первый, из памяти второй.

===================

Хотя, если лезть в историю за одним баром, то индексирование займёт больше времени, чем поиск бара наименьшими квадратами.

Т.е., если требуется долговременная работа с историей, то надо индексировать.

===================

Ещё проблема с индексированием тиковой истории. Слишком много памяти жрёт. Отказался от индексирования тиков. 

 
Zhunko:

Наименьших квадратов - самый экономный.

Для истории )
 
TheXpert:
логарифмический наверное.
Ржака... :-) Андрей, ты точно программист?
 
Пацаны, вы чо, рыбьего супа объелись?
 
Integer:
Пацаны, вы чо, рыбьего супа объелись?
:-)) Рыбий не ем. Рыбок жалко.
 
Zhunko:
Ржака... :-) Андрей, ты точно программист?

А ты? Сложность бинарного поиска -- O(ln(N)) -- логарифмический.

Иди квадраты экономь. Наименьшие )

 
TheXpert:

А ты? Сложность бинарного поиска -- O(ln(N)) -- логарифмический.

Иди квадраты экономь. Наименьшие )


А ты иди логарифмы экономь. Я память экономлю.

Не программист я. Это точно. Нет у меня жёсткой самоидентификации. Я и то, и это...

 

Всем спасибо, думаю достаточно информации. 

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