Блог им. 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:
Фото
EUR/NZD: битва под линией, или почему быки могут снизить скорость
Кросс-курс EUR/NZD протестировал линию нисходящего тренда и уровень сопротивления 2.0100, который, хоть и сформирован с небольшими графическими...
Фото
Слабая коммуникация с инвесторами обходится компаниям дороже, чем кажется
Московская биржа и консалтинговое агентство ЕМ провели исследование инвестиционных настроений представителей ведущих управляющих компаний и...
Фото
5 акций, которые сейчас хорошо покупают
Рынок акций последние полгода находится в нисходящем тренде: за это время Индекс МосБиржи потерял более 17%. Но даже в такой обстановке есть...
Фото
Мозговой штурм: какие идеи в моменте?
Доброго вечера. Сегодня мы провели традиционный мозговой штурм. Выпишу некоторые идеи:

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

....все тэги



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