Metadata-Version: 2.4
Name: cerebroview
Version: 0.8.2
Summary: Interactive Backtrader visualization with TradingView Lightweight Charts
Author: CerebroView contributors
License-Expression: MIT
Project-URL: Homepage, https://github.com/Celeevo//cerebroview
Project-URL: Repository, https://github.com/Celeevo//cerebroview
Project-URL: Issues, https://github.com/Celeevo//cerebroview/issues
Project-URL: Documentation, https://github.com/Celeevo//cerebroview/blob/main/docs/USER_GUIDE_RU.md
Keywords: backtrader,cerebro,plot,trading,visualization,lightweight-charts,charting
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Financial and Insurance Industry
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Office/Business :: Financial :: Investment
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.9
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: backtrader
Provides-Extra: examples
Requires-Dist: pandas; extra == "examples"
Dynamic: license-file

# CerebroView

Современная HTML-визуализация результатов [Backtrader](https://www.backtrader.com/) на основе [TradingView Lightweight Charts](https://github.com/tradingview/lightweight-charts). Прямая замена `cerebro.plot()` без изменения стратегии и расчетов.

![Python](https://img.shields.io/badge/python-3.9%2B-blue)
![License](https://img.shields.io/badge/license-MIT-green)
![Lightweight Charts](https://img.shields.io/badge/charts-Lightweight%20Charts-2962ff)

![img.png](img.png)

## Быстрый старт

```python
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;
- светлая и темная тема, переключатель типа графика (свечи / бары / линия) — без перезапуска стратегии.

## Установка

### Через pip

```bash
python -m pip install cerebroview
```

### Копированием папки

Альтернатива без установки в окружение, скопируйте папку `cerebroview` в корень проекта рядом со скриптом стратегии:

```text
your_project/
├── cerebroview/
└── your_strategy.py
```

Импорт остается прежним:

```python
from cerebroview import plot
```

## Использование

В верхней панели графика доступны:

- переключатель типа графика — свечи, бары или линия;
- светлая / темная тема;
- Undo / Redo для инструментов разметки;
- сохранение в автономный HTML;
- скачивание CSV (по одному файлу на источник данных);
- кнопки открытия дерева объектов и окна данных;
- панель инструментов разметки.


## Демонстрация

В репозитории есть демонстрационный скрипт со всеми возможностями:

```bash
python showcase_all_features_v082_updated.py
```

Он запускает Backtrader на двух искусственных инструментах с разными индикаторами и заранее подобранными сделками, а затем открывает интерактивный HTML-отчет.

## Требования

- Python 3.9 или новее;
- [backtrader](https://pypi.org/project/backtrader/);
- современный браузер;
- доступ в интернет при первом открытии графика — Lightweight Charts подгружается с CDN.

Для запуска демонстрационного скрипта дополнительно требуется `pandas`.

## Документация

- [`docs/USER_GUIDE_RU.md`](docs/USER_GUIDE_RU.md) — руководство пользователя, параметры `plot(...)`, описание поддерживаемых индикаторов и наблюдателей.

## Лицензия

MIT — см. файл [`LICENSE`](LICENSE).
