Два движка бэктеста, один конвейер
Поиск и проверка требуют противоположного: поиску нужна пропускная способность по огромному пространству параметров, проверке нужна полная реалистичность на горстке выживших. Мы используем два специализированных движка вместо того, чтобы идти на компромисс с одним, и объединяем их для всего, что достаточно сложно, чтобы понадобились оба.
Векторный движок
Вся сетка параметров считается разом — а не бар за баром.
Вся стратегия выражена как операции над массивами и скомпилированные ядра — цикла по барам нет вообще. Лучше всего подходит для трендовых сценариев и любого грубого перебора параметров: тысячи комбинаций индикаторов и порогов по всей истории, ранжированные за секунды. Его задача не в финальном ответе — а в том, чтобы сузить огромное пространство поиска до короткого списка кандидатных конфигураций и срезов рынка (режимов, временных окон), которые стоят детального рассмотрения.
Быстрее движков с открытым исходным кодом
Один идентичный перебор параметров, число сделок зафиксировано на одном значении — во сколько раз быстрее наш движок выполняет его по сравнению с каждым движком с открытым исходным кодом.
Событийный движок
Бар за баром, тик за тиком — каждое исполнение заслуживает свое место.
Проигрывание бар за баром / тик за тиком по сделкам и полным стаканам, с добавлением свечей, футпринта (поток ордеров по ценовым уровням) и профиля объема по мере необходимости. Именно здесь стратегия встречается с реалистичными исполнениями, проскальзыванием, маржой и позицией в очереди — и где AI или новостной агент получает возможность принимать одно решение на свечу, ровно как он делал бы это вживую. Это также единственный движок, которому мы доверяем HFT-стратегии, где стакан и задержка и есть стратегия. Медленнее по своей природе: эта стоимость на каждое событие — цена реализма, и для короткого списка выживших она пренебрежимо мала.
Дополнительное чтение
Вопросы о движках?
Свяжитесь с командой — обычно отвечаем быстро.