Андрей Аурис, для HFT-бота, который эксплуатирует фактор скорости критическими местами является:
1) маршрут (нужно убрать всё лишнее)
2) работа со строковыми типами данных
3) проверки ошибок (придётся пожертвовать гибкостью и устойчивостью кода в пользу скорости)
Чтобы решать кодерские задачи для HFT, лучше всего, на мой взгляд, подходит интеловский компиллер C++.
В HFT обычно на уровне кода нет никаких таких циклических математических рассчётов, главные задержки которые реально убрать программисту — это избавиться всяких конекторов-адаптеров-трансляторов-проверок.
Например, важнее всего избавиться от библиотеки-посредника, которая безумно тупо проверяет строковые значения и очень-очень дебильно парсит их в float'ы и int'ы, когда на самом деле надо получить родные для x64 даблы и лонги.
А затем максимально быстро обратно сгенерировать строку из даблов без всяких проверок, но с кучей оговорок (с фиксированной точностью и не полным диапазоном допускаемых входных значений).