Современная HTML-визуализация результатов Backtrader на основе TradingView Lightweight Charts. Прямая замена cerebro.plot() без изменения стратегии и расчетов.
from cerebroview import plot
# здесь создается cerebro, добавляются данные, стратегия, комиссии и т.п.
cerebro.run()
plot(cerebro)После cerebro.run() вместо cerebro.plot() вызывается plot(cerebro). График открывается на вкладке браузера.
- свечи, объем и индикаторы рисуются автоматически по
plotinfo.subplotиplotyhlinesстратегии; - маркеры сделок с подсказками: цена входа, цена выхода, длительность в барах и PnL;
- панель Cash / Value по стандартному наблюдателю Backtrader;
- несколько источников данных в одном HTML, с общей временной шкалой;
- масштабирование колесом мыши, перетаскивание, синхронизация перекрестия между панелями;
- перетаскиваемые границы панелей и адаптация к высоте окна;
- дерево объектов — галочками включаются и выключаются индикаторы, отдельные панели, сделки и рисунки;
- окно данных, показывающее значения всех серий ровно под курсором;
- инструменты разметки (линии, прямоугольники, флаги, стрелки, выноски, текст) с сохранением в памяти браузера;
- экспорт в автономный HTML и CSV;
- светлая и темная тема, переключатель типа графика (свечи / бары / линия) — без перезапуска стратегии.
python -m pip install cerebroviewАльтернатива без установки в окружение, скопируйте папку cerebroview в корень проекта рядом со скриптом стратегии:
your_project/
├── cerebroview/
└── your_strategy.py
Импорт остается прежним:
from cerebroview import plotВ верхней панели графика доступны:
- переключатель типа графика — свечи, бары или линия;
- светлая / темная тема;
- Undo / Redo для инструментов разметки;
- сохранение в автономный HTML;
- скачивание CSV (по одному файлу на источник данных);
- кнопки открытия дерева объектов и окна данных;
- панель инструментов разметки.
В репозитории есть демонстрационный скрипт со всеми возможностями:
python showcase_all_features_v082_updated.pyОн запускает Backtrader на двух искусственных инструментах с разными индикаторами и заранее подобранными сделками, а затем открывает интерактивный HTML-отчет.
- Python 3.9 или новее;
- backtrader;
- современный браузер;
- доступ в интернет при первом открытии графика — Lightweight Charts подгружается с CDN.
Для запуска демонстрационного скрипта дополнительно требуется pandas.
docs/USER_GUIDE_RU.md— руководство пользователя, параметрыplot(...), описание поддерживаемых индикаторов и наблюдателей.
MIT — см. файл LICENSE.
