Несколько предложений по улучшению Гидры (по части UI и работы с инструментами):
1. Добавить в таблицу со списком инструментов столбцы с информацией об инструменте (см. файл HYDRA_main_window.png). Это даст возможность сортировать инструменты не только по тикеру или по количеству сделок, но и по бирже, к примеру.
2. Реализовать редактирование параметров нескольких инструментов одновременно. Зачем - не все инструменты имеют правильные предопределенные значения шага и размера лота, и поштучно их редактировать весьма утомительно. Идея состоит в том, чтобы сделать кнопку (например, рядом с кнопками "Добавить" и "Удалить" внизу главного окна), которая показывала бы диалог "Изменить инструмент" (вызываемый сейчас по двойному щелчку мыши) и позволяла бы задать Класс, Шаг цены, Размер лота и Биржу для выделенной группы инструментов. Примерная логика работы: если группа инструментов имеет одно и то же значение в каком-либо поле (например, Биржа = "РТС"), то при появлении окна редактирования инструмента поле заполняется автоматически (т.е. если для GZZ8 и RIZ8 инструмент стоит "РТС", то в диалоге выпадающий список принимает значение RTS). Если значения разные - соответствующее поле в диалоге редактирования оставляется пустым (т.е. если для GDZ2 шаг равен 0.1, а для RIZ2 - 10, то в диалоге редактирования свойств поле Шаг цены будет пустым). После нажатия на ОК, диалог закрывается и в списке инструментов для выделенных инструментов обновляются значения в соответствующих полях. Если поле в диалоге редактирования пустое, то значение этого поля для каждого инструмента остается без изменений.
3. Для фьючерсов и опционов задавать (или ещё лучше определять автоматически - она вычислима на основе информации из тикера) конечную дату, до которой скачиваются исторические данные. Сейчас задается глобальная дата, начиная с которой необходимо выкачивать историю, и эта дата применяется для всех инструментов. В то же время данные по фьючерсу/опциону существуют в течение некоторого времени до начала его обращения, но всегда заканчиваются в дату его экспирации. Например, данные по GZZ8 или по RIZ8 нет смысла скачивать за 2009-й, 2010, 2011 и 2012 годы - они не существуют. Скачивание всего подряд (особенно для источника RTS) ведет к разрастанию временной папки в космических масштабах. Для FINAM - к созданию кучи пустых файлов во временной директории.