Я собираюсь начать сбор больших объемов числовых данных в режиме реального времени (для тех, кто заинтересован: bid / ask / last или 'tape' для различных акций и фьючерсов). Данные будут позже получены для анализа и моделирования. Это совсем не сложно, но я хотел бы сделать это эффективно, и это вызывает много вопросов. Мне не нужно лучшее решение (и в любом случае, в зависимости от метрики, вероятно, много «лучших»). Я просто хотел бы решение, которое одобрил бы ученый. (Или не смейся?)
(1) Оптимизировать для дискового пространства, скорости ввода-вывода или памяти?
Для симуляции важна общая скорость. Мы хотим, чтобы скорость ввода / вывода (на самом деле, I) данных была выше, чем вычислительная машина, поэтому мы не ограничены в вводе / выводе.
(2) Сохранить текст или что-то еще (двоичное число)?
(3) Учитывая набор вариантов из (1) - (2), существуют ли какие-либо выдающиеся комбинации языка / библиотеки для выполнения работы - Java, Python, C ++ или что-то еще?
Я бы классифицировал этот код как «пиши и забывай», так что больше баллов за эффективность по сравнению с ясностью / компактностью кода. Я очень, очень хотел бы придерживаться Python для кода симуляции (потому что симы сильно меняются и должны быть ясны). Так что бонусные баллы за хорошие решения Pythonic.
Редактировать: это для системы Linux (Ubuntu)
Спасибо