Блог им. AlexShurenberg

Сравним библиотеки для алготрейдеров Python vs C#( OsEngine)

Попробуем сравнить Python и С# (берем OsEngine) в скорости тестирования стратегий
и смотрим что получится.

Сравним библиотеки для алготрейдеров  Python vs C#( OsEngine)

Для тестирования берем простую стратегию «Пересечение двух SMA», торгуем только лонг 1контракт, 
данные по акции Сбербанк 1мин  c 01.01.2024 по 10.10.2025 года все примерно 428000 свечек.

Сразу надо уточнить что с новой OsEngine на .NET 9 были проблемы, она напрочь отказывалась запускаться
на чистой машине с Windows10 и .NET 9.0
Вот с такой ошибкой при запуске
Сравним библиотеки для алготрейдеров  Python vs C#( OsEngine)
Кто знает что это за хрень?
Я думал уже что придется для тестирования брать старую версию OsEngine на NetFramework, но обнаружилась 
машина с Windows10 и установленной VS2022 на которой запустилась новая версия OsEngine .
На этой же машине и проводились все тестирования с Python и OsEngine.
Итак что у нас получилось.
Та дамммм !   Все подробности и детали => github.com/Alex-Shur/algo_trading_csharp_ws_Python
---------------------------------------------

Результаты тестирования

1. OsEngine (C#)

Источник: OsEngine
Язык: C#
Платформа: Windows
Время выполнения: 4.26 сек
Статус: ✅ Успешно


2. Backtesting.py (Python)

Источник: Backtesting.py
Язык: Python 3.13.9
Время выполнения: 3.47 сек
Статус: ✅ Успешно


3. Backtrader (Python)

Источник: Backtrader
Язык: Python 3.13.9
Время выполнения: 42.62 сек
Статус: ✅ Успешно


Итоговый анализ
Платформа Язык Время (сек) Ускорение Примечание
OsEngine C# 4.26 1.0x Базовое значение
Backtesting.py Python 3.47 1.23x Самый быстрый
Backtrader Python 42.62 0.1x Медленнее в 10 раз

Выводы

  1. Быстродействие: Backtesting.py показал лучший результат - на 23% быстрее, чем OsEngine на C#
  2. Удобство использования: Python-решения проще в развёртывании и не требуют установки IDE
  3. Производительность C#: OsEngine находится между Python-фреймворками по скорости
  4. Problematic: Backtrader значительно медленнее конкурентов (в 10 раз медленнее Backtesting.py)

Рекомендации

  • Для максимальной производительности: Backtesting.py
  • Для комбинированного подхода (скорость + GUI): OsEngine
  • Для быстрого прототипирования: Python с Backtesting.py
Данная публикация является личным мнением автора. Мнение владельца сайта может не совпадать с мнением автора.
  • обсудить на форуме:
  • OsEngine
1.7К | ★4
4 комментария
Воот, а я ведь писал что OsEngine  от OS_Engine_team тормознутая весчь!
avatar
зачем сравнивать теплое с мягким? энжино эта шлак для пишущих ее энтузазистов, которую через три года будут помнить только по статьям васюринских
avatar
Не видел здесь ни одного положительного отзыва об этом продукте, но он его с ослиным упорством продолжает делать.
Для кого он вообще это делает и зачем? Тратит время и деньги.
avatar
Попробуйте сравнить скорость Stocksharp и Lean.
avatar

Читайте на SMART-LAB:
Фото
Базис: как отчет за 2 кв поменял взгляд на компанию?
Базис отчитался ожидаемо. Выручка +30%, гайденс на 2026 год сохранен: рост выручки 2026 ожидается на уровне 30-40%, рентабельность OIBDA 60%....
Обновление кредитных рейтингов в ВДО и розничных облигациях (АПРИ подтвержден на уровне BBB-.ru от НКР / АО РОЛЬФ понижен до А-(RU) / Элит Строй присвоен на уровне BBB.ru)
🟢ПАО АПРИ НКР подтвердило кредитный рейтинг на уровне BBB-.ru  ПАО АПРИ – основная компания группы АПРИ, выполняющая функции девелопера...
Фото
Индикатор SuperTrend в OsEngine: сигналы, формулы расчёта и бесплатный робот.
В этом выпуске разберём индикатор SuperTrend для OsEngine — инструмент, который определяет направление тренда через текущую цену и рыночную...
Фото
Спреды рублевых облигаций: какой стратегии можно придерживаться в текущих условиях
Отслеживание G-спредов (корпоративных облигаций к ОФЗ) важно для понимания общей динамики доходностей долговых инструментов, отражающей текущую...

теги блога Красаучег

....все тэги



UPDONW
Новый дизайн